@etherisc/gif-next 0.0.2-9b434da-265 → 0.0.2-9b58b75-869

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 (606) hide show
  1. package/README.md +209 -16
  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/{instance/IAccessManagerSimple.sol/IAccessManagerSimple.json → authorization/IAccessAdmin.sol/IAccessAdmin.json} +499 -549
  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/distribution/Distribution.sol/Distribution.json +1234 -0
  28. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  29. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1571 -0
  30. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  31. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +858 -0
  32. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  33. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +943 -0
  34. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  35. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +956 -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 +4 -0
  39. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +652 -0
  40. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
  41. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +757 -0
  42. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  43. package/artifacts/contracts/instance/Instance.sol/Instance.json +416 -3032
  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 +4 -0
  49. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1735 -0
  50. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  51. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1073 -30
  52. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
  53. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +734 -0
  54. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  55. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3591 -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/{AccessManagedSimple.sol/AccessManagedSimple.json → base/Cloneable.sol/Cloneable.json} +38 -2
  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 +30 -112
  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 +1496 -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 +1134 -0
  98. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  99. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +754 -0
  100. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  101. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +703 -0
  102. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  103. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +978 -0
  104. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  105. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1078 -0
  106. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  107. package/artifacts/contracts/pool/Pool.sol/Pool.json +1288 -0
  108. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  109. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1453 -0
  110. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  111. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +742 -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/product/IApplicationService.sol/IApplicationService.json +512 -0
  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/product/IPolicyService.sol/IPolicyService.json +720 -0
  130. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  131. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +549 -0
  132. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  133. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +985 -0
  134. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +4 -0
  135. package/artifacts/contracts/{instance/base/IService.sol/IService.json → product/IProductService.sol/IProductService.json} +145 -166
  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 +1012 -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/product/Product.sol/Product.json +1276 -0
  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 +60 -2
  152. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  153. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +404 -58
  154. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  155. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +389 -194
  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 +567 -150
  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 +698 -259
  164. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  165. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +368 -123
  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 +4 -0
  173. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +661 -0
  174. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  175. package/artifacts/contracts/shared/Component.sol/Component.json +896 -0
  176. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  177. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1640 -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/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +539 -0
  182. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  183. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
  184. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  185. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +631 -0
  186. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  187. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +977 -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/shared/IKeyValueStore.sol/IKeyValueStore.json +474 -0
  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 +34 -30
  196. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  197. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +15 -35
  198. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  199. package/artifacts/contracts/{experiment/inheritance/IA.sol/ISharedA.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +15 -17
  200. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
  201. package/artifacts/contracts/{components/IBaseComponent.sol/IBaseComponent.json → shared/IService.sol/IService.json} +134 -29
  202. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +4 -0
  203. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +39 -0
  204. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  205. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +1015 -0
  206. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  207. package/artifacts/contracts/{instance/base/IKeyValueStore.sol/IKeyValueStore.json → shared/KeyValueStore.sol/KeyValueStore.json} +78 -87
  208. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  209. package/artifacts/contracts/{experiment/statemachine/ISM.sol/ISM.json → shared/Lifecycle.sol/Lifecycle.json} +54 -45
  210. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  211. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
  212. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  213. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +115 -29
  214. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  215. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +132 -53
  216. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  217. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +71 -0
  218. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
  219. package/artifacts/contracts/{instance/base/ServiceBase.sol/ServiceBase.json → shared/Service.sol/Service.json} +203 -164
  220. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  221. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +60 -6
  222. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  223. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1438 -0
  224. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  225. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1035 -0
  226. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  227. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +460 -0
  228. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  229. package/artifacts/contracts/staking/Staking.sol/Staking.json +2005 -0
  230. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
  231. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +164 -0
  232. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  233. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +761 -0
  234. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  235. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +592 -0
  236. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  237. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1343 -0
  238. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  239. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +718 -0
  240. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  241. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2237 -0
  242. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  243. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +571 -0
  244. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  245. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +10 -0
  246. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  247. package/artifacts/contracts/type/Amount.sol/AmountLib.json +345 -0
  248. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  249. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
  250. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  251. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
  252. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  253. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
  254. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  255. package/artifacts/contracts/type/Fee.sol/FeeLib.json +312 -0
  256. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  257. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
  258. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  259. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +209 -0
  260. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  261. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
  262. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  263. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +239 -0
  264. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  265. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  266. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  267. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  268. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  269. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  270. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  271. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +86 -0
  272. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  273. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +369 -0
  274. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  275. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +198 -0
  276. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  277. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
  278. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  279. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  280. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  281. package/artifacts/contracts/{types → type}/StateId.sol/StateIdLib.json +3 -3
  282. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  283. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  284. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  285. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +293 -0
  286. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
  287. package/artifacts/contracts/type/UFixed.sol/MathLib.json +10 -0
  288. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  289. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +498 -0
  290. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  291. package/artifacts/contracts/type/Version.sol/VersionLib.json +177 -0
  292. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  293. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +68 -0
  294. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  295. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.json +55 -0
  296. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  297. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +617 -0
  298. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  299. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  300. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  301. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.json +78 -0
  302. package/contracts/authorization/AccessAdmin.sol +591 -0
  303. package/contracts/authorization/AccessManagerCloneable.sol +16 -0
  304. package/contracts/authorization/Authorization.sol +218 -0
  305. package/contracts/authorization/IAccess.sol +48 -0
  306. package/contracts/authorization/IAccessAdmin.sol +136 -0
  307. package/contracts/authorization/IAuthorization.sol +54 -0
  308. package/contracts/authorization/IModuleAuthorization.sol +21 -0
  309. package/contracts/authorization/IServiceAuthorization.sol +38 -0
  310. package/contracts/authorization/ModuleAuthorization.sol +78 -0
  311. package/contracts/authorization/ServiceAuthorization.sol +90 -0
  312. package/contracts/distribution/BasicDistribution.sol +138 -0
  313. package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
  314. package/contracts/distribution/Distribution.sol +295 -0
  315. package/contracts/distribution/DistributionService.sol +352 -0
  316. package/contracts/distribution/DistributionServiceManager.sol +39 -0
  317. package/contracts/distribution/IDistributionComponent.sol +52 -0
  318. package/contracts/distribution/IDistributionService.sol +98 -0
  319. package/contracts/instance/BundleSet.sol +126 -0
  320. package/contracts/instance/IInstance.sol +86 -0
  321. package/contracts/instance/IInstanceService.sol +92 -0
  322. package/contracts/instance/Instance.sol +185 -321
  323. package/contracts/instance/InstanceAdmin.sol +266 -0
  324. package/contracts/instance/InstanceAuthorizationV3.sol +204 -0
  325. package/contracts/instance/InstanceReader.sol +405 -0
  326. package/contracts/instance/InstanceService.sol +422 -24
  327. package/contracts/instance/InstanceServiceManager.sol +40 -0
  328. package/contracts/instance/InstanceStore.sol +276 -0
  329. package/contracts/instance/base/BalanceStore.sol +123 -0
  330. package/contracts/instance/base/Cloneable.sol +28 -0
  331. package/contracts/instance/base/ObjectCounter.sol +21 -0
  332. package/contracts/instance/base/ObjectLifecycle.sol +106 -0
  333. package/contracts/instance/base/ObjectSet.sol +79 -0
  334. package/contracts/instance/module/IAccess.sol +30 -22
  335. package/contracts/instance/module/IBundle.sol +8 -7
  336. package/contracts/instance/module/IComponents.sol +51 -0
  337. package/contracts/instance/module/IDistribution.sol +7 -4
  338. package/contracts/instance/module/IPolicy.sol +56 -17
  339. package/contracts/instance/module/IRisk.sol +1 -1
  340. package/contracts/{test/TestToken.sol → mock/Dip.sol} +5 -5
  341. package/contracts/oracle/BasicOracle.sol +48 -0
  342. package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
  343. package/contracts/oracle/IOracle.sol +36 -0
  344. package/contracts/oracle/IOracleComponent.sol +33 -0
  345. package/contracts/oracle/IOracleService.sol +65 -0
  346. package/contracts/oracle/Oracle.sol +166 -0
  347. package/contracts/oracle/OracleService.sol +278 -0
  348. package/contracts/oracle/OracleServiceManager.sol +39 -0
  349. package/contracts/pool/BasicPool.sol +164 -0
  350. package/contracts/pool/BasicPoolAuthorization.sol +52 -0
  351. package/contracts/pool/BundleService.sol +284 -0
  352. package/contracts/pool/BundleServiceManager.sol +39 -0
  353. package/contracts/pool/IBundleService.sol +106 -0
  354. package/contracts/pool/IPoolComponent.sol +51 -0
  355. package/contracts/pool/IPoolService.sol +150 -0
  356. package/contracts/pool/Pool.sol +311 -0
  357. package/contracts/pool/PoolService.sol +436 -0
  358. package/contracts/pool/PoolServiceManager.sol +39 -0
  359. package/contracts/product/ApplicationService.sol +230 -0
  360. package/contracts/product/ApplicationServiceManager.sol +38 -0
  361. package/contracts/product/BasicProduct.sol +82 -0
  362. package/contracts/product/BasicProductAuthorization.sol +43 -0
  363. package/contracts/product/ClaimService.sol +416 -0
  364. package/contracts/product/ClaimServiceManager.sol +38 -0
  365. package/contracts/product/IApplicationService.sol +62 -0
  366. package/contracts/product/IClaimService.sol +99 -0
  367. package/contracts/product/IPolicyService.sol +78 -0
  368. package/contracts/product/IPricingService.sol +39 -0
  369. package/contracts/product/IProductComponent.sol +40 -0
  370. package/contracts/product/IProductService.sol +33 -0
  371. package/contracts/product/PolicyService.sol +475 -0
  372. package/contracts/product/PolicyServiceManager.sol +39 -0
  373. package/contracts/product/PricingService.sol +300 -0
  374. package/contracts/product/PricingServiceManager.sol +39 -0
  375. package/contracts/product/Product.sol +392 -0
  376. package/contracts/product/ProductService.sol +99 -0
  377. package/contracts/product/ProductServiceManager.sol +39 -0
  378. package/contracts/registry/ChainNft.sol +55 -25
  379. package/contracts/registry/IRegistry.sol +91 -30
  380. package/contracts/registry/IRegistryService.sol +56 -16
  381. package/contracts/registry/ITransferInterceptor.sol +1 -0
  382. package/contracts/registry/Registry.sol +411 -326
  383. package/contracts/registry/RegistryAdmin.sol +365 -0
  384. package/contracts/registry/RegistryService.sol +155 -272
  385. package/contracts/registry/RegistryServiceManager.sol +29 -19
  386. package/contracts/registry/ReleaseLifecycle.sol +27 -0
  387. package/contracts/registry/ReleaseRegistry.sol +485 -0
  388. package/contracts/registry/ServiceAuthorizationV3.sol +200 -0
  389. package/contracts/registry/TokenRegistry.sol +315 -0
  390. package/contracts/shared/Component.sol +280 -0
  391. package/contracts/shared/ComponentService.sol +622 -0
  392. package/contracts/shared/ComponentServiceManager.sol +35 -0
  393. package/contracts/shared/ComponentVerifyingService.sol +117 -0
  394. package/contracts/shared/ERC165.sol +16 -10
  395. package/contracts/shared/IComponent.sol +70 -0
  396. package/contracts/shared/IComponentService.sol +112 -0
  397. package/contracts/shared/IInstanceLinkedComponent.sol +56 -0
  398. package/contracts/{instance/base → shared}/IKeyValueStore.sol +20 -14
  399. package/contracts/{instance/base → shared}/ILifecycle.sol +3 -4
  400. package/contracts/shared/INftOwnable.sol +13 -12
  401. package/contracts/shared/IRegisterable.sol +4 -6
  402. package/contracts/shared/IRegistryLinked.sol +11 -0
  403. package/contracts/shared/IService.sol +25 -0
  404. package/contracts/shared/InitializableCustom.sol +177 -0
  405. package/contracts/shared/InstanceLinkedComponent.sol +172 -0
  406. package/contracts/shared/KeyValueStore.sol +131 -0
  407. package/contracts/shared/Lifecycle.sol +77 -0
  408. package/contracts/shared/NftIdSet.sol +65 -0
  409. package/contracts/shared/NftOwnable.sol +60 -89
  410. package/contracts/shared/Registerable.sol +27 -41
  411. package/contracts/shared/RegistryLinked.sol +43 -0
  412. package/contracts/shared/Service.sol +82 -0
  413. package/contracts/shared/TokenHandler.sol +39 -8
  414. package/contracts/staking/IStaking.sol +167 -0
  415. package/contracts/staking/IStakingService.sol +160 -0
  416. package/contracts/staking/StakeManagerLib.sol +231 -0
  417. package/contracts/staking/Staking.sol +514 -0
  418. package/contracts/staking/StakingLifecycle.sol +23 -0
  419. package/contracts/staking/StakingManager.sol +50 -0
  420. package/contracts/staking/StakingReader.sol +183 -0
  421. package/contracts/staking/StakingService.sol +411 -0
  422. package/contracts/staking/StakingServiceManager.sol +44 -0
  423. package/contracts/staking/StakingStore.sol +605 -0
  424. package/contracts/staking/TargetManagerLib.sol +207 -0
  425. package/contracts/{types → type}/AddressSet.sol +1 -1
  426. package/contracts/type/Amount.sol +128 -0
  427. package/contracts/{types → type}/Blocknumber.sol +21 -3
  428. package/contracts/type/ClaimId.sol +75 -0
  429. package/contracts/{types → type}/DistributorType.sol +2 -2
  430. package/contracts/type/Fee.sol +66 -0
  431. package/contracts/{types → type}/NftId.sol +21 -15
  432. package/contracts/type/NftIdSet.sol +62 -0
  433. package/contracts/type/ObjectType.sol +271 -0
  434. package/contracts/type/PayoutId.sol +82 -0
  435. package/contracts/{types → type}/Referral.sol +5 -1
  436. package/contracts/type/RequestId.sol +75 -0
  437. package/contracts/{types → type}/RiskId.sol +1 -1
  438. package/contracts/type/RoleId.sol +174 -0
  439. package/contracts/type/Seconds.sol +81 -0
  440. package/contracts/type/Selector.sol +102 -0
  441. package/contracts/{types → type}/StateId.sol +38 -4
  442. package/contracts/type/String.sol +53 -0
  443. package/contracts/{types → type}/Timestamp.sol +23 -14
  444. package/contracts/type/UFixed.sol +332 -0
  445. package/contracts/{types → type}/Version.sol +8 -2
  446. package/contracts/{shared → upgradeability}/IVersionable.sol +5 -48
  447. package/contracts/upgradeability/ProxyManager.sol +198 -0
  448. package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +2 -4
  449. package/contracts/upgradeability/Versionable.sol +59 -0
  450. package/package.json +11 -7
  451. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  452. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  453. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  454. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  455. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  456. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  457. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  458. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  459. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  460. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  461. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  462. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  463. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  464. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  465. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  466. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  467. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  468. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  469. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  470. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  471. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  472. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  473. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  474. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  475. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  476. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  477. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  478. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  479. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  480. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  481. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  482. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  483. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  484. package/artifacts/contracts/instance/AccessManagedSimple.sol/AccessManagedSimple.dbg.json +0 -4
  485. package/artifacts/contracts/instance/AccessManagerSimple.sol/AccessManagerSimple.dbg.json +0 -4
  486. package/artifacts/contracts/instance/AccessManagerSimple.sol/AccessManagerSimple.json +0 -1119
  487. package/artifacts/contracts/instance/IAccessManagerSimple.sol/IAccessManagerSimple.dbg.json +0 -4
  488. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  489. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -917
  490. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  491. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  492. package/artifacts/contracts/instance/base/IService.sol/IService.dbg.json +0 -4
  493. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  494. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -736
  495. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  496. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -169
  497. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.dbg.json +0 -4
  498. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
  499. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
  500. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
  501. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.json +0 -457
  502. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +0 -4
  503. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +0 -107
  504. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  505. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +0 -205
  506. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
  507. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -349
  508. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
  509. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
  510. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  511. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +0 -228
  512. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  513. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  514. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  515. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -305
  516. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  517. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -10
  518. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  519. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -600
  520. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  521. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -338
  522. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  523. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  524. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  525. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -286
  526. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  527. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -338
  528. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  529. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.json +0 -10
  530. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  531. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  532. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  533. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  534. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +0 -4
  535. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +0 -104
  536. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  537. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -257
  538. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  539. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +0 -125
  540. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  541. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -153
  542. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  543. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +0 -10
  544. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +0 -4
  545. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +0 -100
  546. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  547. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  548. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +0 -4
  549. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +0 -123
  550. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  551. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +0 -86
  552. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  553. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -156
  554. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  555. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  556. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -249
  557. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +0 -4
  558. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.json +0 -479
  559. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  560. package/artifacts/contracts/types/Version.sol/VersionLib.json +0 -177
  561. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  562. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +0 -30
  563. package/contracts/components/IBaseComponent.sol +0 -19
  564. package/contracts/experiment/errors/Require.sol +0 -38
  565. package/contracts/experiment/errors/Revert.sol +0 -44
  566. package/contracts/experiment/inheritance/A.sol +0 -53
  567. package/contracts/experiment/inheritance/B.sol +0 -28
  568. package/contracts/experiment/inheritance/C.sol +0 -34
  569. package/contracts/experiment/inheritance/IA.sol +0 -13
  570. package/contracts/experiment/inheritance/IB.sol +0 -10
  571. package/contracts/experiment/inheritance/IC.sol +0 -12
  572. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  573. package/contracts/experiment/statemachine/ISM.sol +0 -25
  574. package/contracts/experiment/statemachine/SM.sol +0 -57
  575. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  576. package/contracts/experiment/types/TypeA.sol +0 -47
  577. package/contracts/experiment/types/TypeB.sol +0 -29
  578. package/contracts/instance/AccessManagedSimple.sol +0 -114
  579. package/contracts/instance/AccessManagerSimple.sol +0 -682
  580. package/contracts/instance/IAccessManagerSimple.sol +0 -391
  581. package/contracts/instance/InstanceAccessManager.sol +0 -288
  582. package/contracts/instance/base/IService.sol +0 -15
  583. package/contracts/instance/base/KeyValueStore.sol +0 -188
  584. package/contracts/instance/base/Lifecycle.sol +0 -100
  585. package/contracts/instance/base/ServiceBase.sol +0 -44
  586. package/contracts/instance/module/ISetup.sol +0 -41
  587. package/contracts/instance/module/ITreasury.sol +0 -23
  588. package/contracts/registry/IChainNft.sol +0 -22
  589. package/contracts/shared/ContractDeployerLib.sol +0 -72
  590. package/contracts/shared/ProxyManager.sol +0 -94
  591. package/contracts/shared/Versionable.sol +0 -147
  592. package/contracts/test/TestFee.sol +0 -25
  593. package/contracts/test/TestRegisterable.sol +0 -18
  594. package/contracts/test/TestRoleId.sol +0 -14
  595. package/contracts/test/TestService.sol +0 -26
  596. package/contracts/test/TestVersion.sol +0 -44
  597. package/contracts/test/TestVersionable.sol +0 -17
  598. package/contracts/test/Usdc.sol +0 -26
  599. package/contracts/types/ChainId.sol +0 -38
  600. package/contracts/types/Fee.sol +0 -56
  601. package/contracts/types/NftIdSet.sol +0 -60
  602. package/contracts/types/NumberId.sol +0 -52
  603. package/contracts/types/ObjectType.sol +0 -152
  604. package/contracts/types/RoleId.sol +0 -75
  605. package/contracts/types/UFixed.sol +0 -209
  606. /package/contracts/{types → type}/Key32.sol +0 -0
@@ -1,20 +1,42 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  pragma solidity ^0.8.20;
3
3
 
4
- import {IERC165} from "@openzeppelin5/contracts/utils/introspection/IERC165.sol";
4
+ import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
5
5
 
6
- import {NftId} from "../types/NftId.sol";
7
- import {ObjectType} from "../types/ObjectType.sol";
8
- import {VersionPart} from "../types/Version.sol";
9
- import {IChainNft} from "./IChainNft.sol";
6
+ import {NftId} from "../type/NftId.sol";
7
+ import {ObjectType} from "../type/ObjectType.sol";
8
+ import {VersionPart} from "../type/Version.sol";
9
+ import {Timestamp} from "../type/Timestamp.sol";
10
10
 
11
+ /// @title Chain Registry interface.
12
+ /// A chain registry holds all protocol relevant objects with basic metadata.
13
+ /// Registered objects include services, instances, products, pools, policies, bundles, stakes and more.
14
+ /// Registered objects are represented by NFTs.
11
15
  interface IRegistry is IERC165 {
12
16
 
13
- event LogRegistration(NftId indexed nftId, NftId parentNftId, ObjectType objectType, bool isInterceptor, address objectAddress, address initialOwner);
17
+ event LogRegistration(NftId nftId, NftId parentNftId, ObjectType objectType, bool isInterceptor, address objectAddress, address initialOwner);
18
+ event LogServiceRegistration(VersionPart majorVersion, ObjectType domain);
14
19
 
15
- event LogServiceNameRegistration(string serviceName, VersionPart majorVersion);
20
+ // register()
21
+ error ErrorRegistryCallerNotRegistryService();
22
+ error ErrorRegistryService(address service);
16
23
 
17
- event LogApproval(NftId indexed nftId, ObjectType objectType);
24
+ // registerService()
25
+ error ErrorRegistryCallerNotReleaseRegistry();
26
+ error ErrorRegistryServiceAddressZero();
27
+ error ErrorRegistryServiceVersionZero();
28
+ error ErrorRegistryNotService(address service, ObjectType objectType);
29
+ error ErrorRegistryServiceParentNotRegistry(NftId parentNftId);
30
+ error ErrorRegistryDomainZero(address service);
31
+ error ErrorRegistryDomainAlreadyRegistered(address service, VersionPart version, ObjectType domain);
32
+
33
+ // registerWithCustomTypes()
34
+ error ErrorRegistryCoreTypeRegistration();
35
+
36
+ // _register()
37
+ error ErrorRegistryParentAddressZero();
38
+ error ErrorRegistryTypesCombinationInvalid(ObjectType objectType, ObjectType parentType);
39
+ error ErrorRegistryContractAlreadyRegistered(address objectAddress);
18
40
 
19
41
  struct ObjectInfo {
20
42
  NftId nftId;
@@ -24,25 +46,45 @@ interface IRegistry is IERC165 {
24
46
  address objectAddress;
25
47
  address initialOwner;
26
48
  bytes data;
27
- }// TODO delete nftId and initialOwner(if not used) from struct
28
-
49
+ }
50
+
51
+ struct ReleaseInfo {
52
+ VersionPart version;
53
+ bytes32 salt;
54
+ address[] addresses;
55
+ string[] names;
56
+ ObjectType[] domains;
57
+ Timestamp activatedAt;
58
+ Timestamp disabledAt;
59
+ }
60
+
61
+ /// @dev Register an object with a known core type.
62
+ /// The function returns a newly minted object NFT ID.
63
+ /// May not be used to register services.
29
64
  function register(ObjectInfo memory info) external returns (NftId nftId);
30
-
31
- function registerFrom(
32
- address from,
33
- ObjectInfo memory info
34
- ) external returns (NftId nftId);
35
-
36
- function approve(
37
- NftId registrar,
38
- ObjectType object,
39
- ObjectType parent
40
- ) external;
41
-
42
- function allowance(
43
- NftId registrar,
44
- ObjectType object
45
- ) external view returns (bool);
65
+
66
+ /// @dev Register a service with using the provided domain and version.
67
+ /// The function returns a newly minted service NFT ID.
68
+ /// May only be used to register services.
69
+ function registerService(
70
+ ObjectInfo memory serviceInfo,
71
+ VersionPart serviceVersion,
72
+ ObjectType serviceDomain
73
+ ) external returns(NftId nftId);
74
+
75
+ /// @dev Register an object with a custom type.
76
+ /// The function returns a newly minted object NFT ID.
77
+ /// This function is reserved for GIF releases > 3.
78
+ /// May not be used to register known core types.
79
+ function registerWithCustomType(ObjectInfo memory info) external returns (NftId nftId);
80
+
81
+ function getInitialVersion() external view returns (VersionPart);
82
+
83
+ function getNextVersion() external view returns (VersionPart);
84
+
85
+ function getLatestVersion() external view returns (VersionPart);
86
+
87
+ function getReleaseInfo(VersionPart version) external view returns (ReleaseInfo memory);
46
88
 
47
89
  function getObjectCount() external view returns (uint256);
48
90
 
@@ -60,14 +102,33 @@ interface IRegistry is IERC165 {
60
102
 
61
103
  function isRegistered(address contractAddress) external view returns (bool);
62
104
 
63
- function getServiceName(NftId nftId) external view returns (string memory name);
105
+ function isRegisteredService(address contractAddress) external view returns (bool);
106
+
107
+ function isRegisteredComponent(address object) external view returns (bool);
108
+
109
+ function isActiveRelease(VersionPart version) external view returns (bool);
64
110
 
65
111
  function getServiceAddress(
66
- string memory serviceName,
67
- VersionPart majorVersion
112
+ ObjectType serviceDomain,
113
+ VersionPart releaseVersion
68
114
  ) external view returns (address serviceAddress);
69
115
 
70
- function getChainNft() external view returns (IChainNft);
116
+ function getProtocolNftId() external view returns (NftId protocolNftId);
117
+
118
+ function getNftId() external view returns (NftId nftId);
71
119
 
72
120
  function getOwner() external view returns (address);
121
+
122
+ // TODO refactor the address getters below to contract getters
123
+ function getChainNftAddress() external view returns (address);
124
+
125
+ function getReleaseRegistryAddress() external view returns (address);
126
+
127
+ function getStakingAddress() external view returns (address);
128
+
129
+ function getTokenRegistryAddress() external view returns (address);
130
+
131
+ function getRegistryAdminAddress() external view returns (address);
132
+
133
+ function getAuthority() external view returns (address);
73
134
  }
@@ -1,29 +1,69 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  pragma solidity ^0.8.20;
3
3
 
4
- import {NftId} from "../../contracts/types/NftId.sol";
5
- import {ObjectType} from "../../contracts/types/ObjectType.sol";
6
- import {RoleId} from "../../contracts/types/RoleId.sol";
7
- import {IService} from "../../contracts/instance/base/IService.sol";
8
- import {IRegistry} from "../../contracts/registry/IRegistry.sol";
4
+ // import {IAccessManaged} from "@openzeppelin/contracts/access/manager/IAccessManaged.sol";
9
5
 
10
- import {IRegisterable} from "../../contracts/shared/IRegisterable.sol";
11
- import {IBaseComponent} from "../../contracts/components/IBaseComponent.sol";
6
+ import {NftId} from "../type/NftId.sol";
7
+ import {ObjectType} from "../type/ObjectType.sol";
8
+ import {RoleId} from "../type/RoleId.sol";
9
+ import {IService} from "../shared/IService.sol";
10
+ import {IRegistry} from "./IRegistry.sol";
12
11
 
13
- interface IRegistryService is IService {
12
+ import {IRegisterable} from "../shared/IRegisterable.sol";
13
+ import {IComponent} from "../shared/IComponent.sol";
14
+ import {IInstanceLinkedComponent} from "../shared/IInstanceLinkedComponent.sol";
14
15
 
15
- function registerToken(address tokenAddress) external returns(NftId nftId);
16
16
 
17
- function registerService(IService service) external returns(IRegistry.ObjectInfo memory info, bytes memory data);
17
+ interface IRegistryService is
18
+ IService
19
+ {
20
+ error ErrorRegistryServiceNotRegistryOwner();
18
21
 
19
- function registerComponent(IBaseComponent component, ObjectType componentType, address owner)
20
- external returns(IRegistry.ObjectInfo memory info, bytes memory data);
22
+ error ErrorRegistryServiceNotService(address notService);
23
+ error ErrorRegistryServiceNotInstance(address notInstance);
24
+ error ErrorRegistryServiceNotComponent(address notComponent);
25
+ error ErrorRegistryServiceNotProduct(address notProduct);
26
+ error ErrorRegistryServiceNotPool(address notPool);
27
+ error ErrorRegistryServiceNotDistribution(address notDistribution);
21
28
 
22
- function registerInstance(IRegisterable instance)
23
- external returns(IRegistry.ObjectInfo memory info, bytes memory data);
29
+ error ErrorRegistryServiceRegisterableAddressInvalid(IRegisterable registerable, address found);
30
+ error ErrorRegistryServiceRegisterableTypeInvalid(IRegisterable registerable, ObjectType expected, ObjectType found);
31
+ error ErrorRegistryServiceRegisterableOwnerInvalid(IRegisterable registerable, address expected, address found);
32
+ error ErrorRegistryServiceRegisterableOwnerZero(IRegisterable registerable);
33
+ error ErrorRegistryServiceRegisterableOwnerRegistered(IRegisterable registerable, address owner);
34
+ error ErrorRegistryServiceRegisterableSelfRegistration(IRegisterable registerable);
24
35
 
25
- function registerPolicy(IRegistry.ObjectInfo memory info) external returns(NftId nftId); // -> easy to upgrade
36
+ error ErrorRegistryServiceObjectAddressNotZero(ObjectType objectType);
37
+ error ErrorRegistryServiceObjectTypeInvalid(ObjectType expected, ObjectType found);
38
+ error ErrorRegistryServiceObjectOwnerRegistered(ObjectType objectType, address owner);
39
+ error ErrorRegistryServiceObjectOwnerZero(ObjectType objectType);
40
+
41
+ error ErrorRegistryServiceInvalidInitialOwner(address initialOwner);
42
+ error ErrorRegistryServiceInvalidAddress(address registerableAddress);
43
+
44
+ function registerStake(IRegistry.ObjectInfo memory info)
45
+ external returns(NftId nftId);
46
+
47
+ function registerInstance(IRegisterable instance, address owner)
48
+ external returns(IRegistry.ObjectInfo memory info);
49
+
50
+ function registerComponent(IComponent component, ObjectType objectType, address owner)
51
+ external returns(IRegistry.ObjectInfo memory info);
52
+
53
+ // function registerProduct(IComponent product, address owner)
54
+ // external returns(IRegistry.ObjectInfo memory info);
55
+
56
+ // function registerPool(IComponent pool, address owner)
57
+ // external returns(IRegistry.ObjectInfo memory info);
58
+
59
+ // function registerDistribution(IComponent distribution, address owner)
60
+ // external returns(IRegistry.ObjectInfo memory info);
61
+
62
+ function registerDistributor(IRegistry.ObjectInfo memory info) external returns(NftId nftId);
63
+
64
+ function registerPolicy(IRegistry.ObjectInfo memory info) external returns(NftId nftId);
65
+
66
+ function registerBundle(IRegistry.ObjectInfo memory info) external returns(NftId nftId);
26
67
 
27
- function registerBundle(IRegistry.ObjectInfo memory info) external returns(NftId nftId);
28
68
  }
29
69
 
@@ -2,5 +2,6 @@
2
2
  pragma solidity ^0.8.20;
3
3
 
4
4
  interface ITransferInterceptor {
5
+ function nftMint(address to, uint256 tokenId) external;
5
6
  function nftTransferFrom(address from, address to, uint256 tokenId) external;
6
7
  }