@etherisc/gif-next 0.0.2-85cbb88-630 → 0.0.2-866ef18-420

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 (245) hide show
  1. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  2. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +2 -2
  3. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  4. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  5. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +2 -2
  6. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  7. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +2 -2
  13. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  14. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
  15. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  16. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +2 -2
  17. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  18. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
  19. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  20. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  21. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +2 -2
  22. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  23. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +2 -2
  24. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  25. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  26. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  27. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +2 -2
  28. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  29. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  30. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +1 -1
  31. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  32. package/artifacts/contracts/instance/Instance.sol/Instance.json +2 -2
  33. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  34. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +2 -2
  35. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  36. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +2 -2
  37. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  38. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +2 -2
  39. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  40. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +11 -11
  41. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  42. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +6 -6
  43. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  44. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
  45. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  46. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  47. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  48. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  49. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  50. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  51. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  52. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  53. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +2 -2
  54. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  55. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  56. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  57. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  58. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  59. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  60. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  61. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  62. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +2 -2
  63. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  64. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  65. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  66. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  67. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  68. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  69. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  70. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +2 -2
  71. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  72. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +2 -2
  73. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  74. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  75. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
  76. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  77. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +2 -2
  78. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  79. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +2 -2
  80. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  81. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  82. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  83. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  84. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  85. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +2 -2
  86. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  87. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +2 -2
  88. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  89. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +2 -2
  90. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  91. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +2 -2
  92. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  93. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  94. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
  95. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  96. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +2 -2
  97. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  98. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +2 -2
  99. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  100. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  101. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  102. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  103. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  104. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
  105. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  106. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +2 -2
  107. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  108. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +2 -2
  109. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  110. package/artifacts/contracts/product/PricingService.sol/PricingService.json +2 -2
  111. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  112. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +2 -2
  113. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  114. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
  115. package/artifacts/contracts/product/ProductService.sol/ProductService.json +2 -2
  116. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
  117. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +2 -2
  118. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  119. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  120. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +48 -0
  121. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  122. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +0 -183
  123. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  124. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  125. package/artifacts/contracts/registry/Registry.sol/Registry.json +90 -18
  126. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  127. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +2 -2
  128. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  129. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +2 -2
  130. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  131. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +2 -2
  132. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  133. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
  134. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  135. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +2 -2
  136. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  137. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +6 -6
  138. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  139. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
  140. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  141. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  142. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +2 -2
  143. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  144. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +2 -2
  145. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  146. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  147. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  148. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  149. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  150. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  151. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  152. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  153. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  154. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  155. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  156. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  157. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  158. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +1 -1
  159. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  160. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  161. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  162. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  163. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  164. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  165. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +2 -2
  166. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  167. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  168. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  169. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +2 -2
  170. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  171. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +2 -2
  172. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  173. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  174. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  175. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  176. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  177. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  178. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  179. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  180. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  181. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
  182. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +2 -2
  183. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  184. package/artifacts/contracts/staking/Staking.sol/Staking.json +2 -2
  185. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
  186. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +2 -2
  187. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  188. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +2 -2
  189. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  190. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  191. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  192. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +2 -2
  193. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  194. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +2 -2
  195. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  196. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2 -2
  197. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  198. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -2
  199. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  200. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  201. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  202. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  203. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  204. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  205. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  206. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  207. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  208. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  209. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  210. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  211. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  212. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  213. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  214. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
  215. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  216. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  217. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  218. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  219. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  220. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
  221. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  222. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  223. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  224. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
  225. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  226. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  227. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  228. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  229. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  230. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  231. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
  232. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  233. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  234. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
  235. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  236. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +21 -2
  237. package/contracts/instance/IInstanceService.sol +1 -1
  238. package/contracts/instance/InstanceService.sol +1 -1
  239. package/contracts/registry/IRegistry.sol +24 -11
  240. package/contracts/registry/IRegistryService.sol +6 -6
  241. package/contracts/registry/Registry.sol +62 -64
  242. package/contracts/registry/ServiceAuthorizationV3.sol +5 -5
  243. package/contracts/type/ObjectType.sol +3 -7
  244. package/contracts/type/Version.sol +3 -1
  245. package/package.json +1 -1
@@ -50,14 +50,14 @@ interface IRegistryService is
50
50
  function registerComponent(IComponent component, ObjectType objectType, address owner)
51
51
  external returns(IRegistry.ObjectInfo memory info);
52
52
 
53
- function registerProduct(IComponent product, address owner)
54
- external returns(IRegistry.ObjectInfo memory info);
53
+ // function registerProduct(IComponent product, address owner)
54
+ // external returns(IRegistry.ObjectInfo memory info);
55
55
 
56
- function registerPool(IComponent pool, address owner)
57
- external returns(IRegistry.ObjectInfo memory info);
56
+ // function registerPool(IComponent pool, address owner)
57
+ // external returns(IRegistry.ObjectInfo memory info);
58
58
 
59
- function registerDistribution(IComponent distribution, address owner)
60
- external returns(IRegistry.ObjectInfo memory info);
59
+ // function registerDistribution(IComponent distribution, address owner)
60
+ // external returns(IRegistry.ObjectInfo memory info);
61
61
 
62
62
  function registerDistributor(IRegistry.ObjectInfo memory info) external returns(NftId nftId);
63
63
 
@@ -8,7 +8,7 @@ import {InitializableCustom} from "../shared/InitializableCustom.sol";
8
8
 
9
9
  import {NftId, NftIdLib} from "../type/NftId.sol";
10
10
  import {VersionPart} from "../type/Version.sol";
11
- import {ObjectType, PROTOCOL, REGISTRY, TOKEN, SERVICE, INSTANCE, STAKE, STAKING, PRODUCT, DISTRIBUTION, DISTRIBUTOR, ORACLE, POOL, POLICY, BUNDLE} from "../type/ObjectType.sol";
11
+ import {ObjectType, PROTOCOL, REGISTRY, SERVICE, INSTANCE, STAKE, STAKING, PRODUCT, DISTRIBUTION, DISTRIBUTOR, ORACLE, POOL, POLICY, BUNDLE} from "../type/ObjectType.sol";
12
12
 
13
13
  import {ChainNft} from "./ChainNft.sol";
14
14
  import {IRegistry} from "./IRegistry.sol";
@@ -27,6 +27,8 @@ import {RegistryAdmin} from "./RegistryAdmin.sol";
27
27
  // 3) IRegisterable address by regular service (INSTANCE, PRODUCT, POOL, DISTRIBUTION, ORACLE)
28
28
  // 4) state object by regular service (POLICY, BUNDLE, STAKE)
29
29
 
30
+ /// @title Chain Registry contract implementing IRegistry.
31
+ /// @notice See IRegistry for method details.
30
32
  contract Registry is
31
33
  InitializableCustom,
32
34
  IRegistry
@@ -81,7 +83,8 @@ contract Registry is
81
83
  _;
82
84
  }
83
85
 
84
-
86
+ /// @dev Creates the registry contract and populates it with the protocol and registry objects.
87
+ /// Internally deploys the ChainNft contract.
85
88
  constructor(RegistryAdmin admin)
86
89
  InitializableCustom()
87
90
  {
@@ -98,8 +101,8 @@ contract Registry is
98
101
  }
99
102
 
100
103
 
101
- /// @dev wires release manager and token to registry (this contract).
102
- /// MUST be called by release manager.
104
+ /// @dev Wires release registry and token to registry (this contract).
105
+ /// MUST be called by release registry.
103
106
  function initialize(
104
107
  address releaseRegistry,
105
108
  address tokenRegistry,
@@ -115,6 +118,33 @@ contract Registry is
115
118
  _stakingNftId = _registerStaking();
116
119
  }
117
120
 
121
+ /// @inheritdoc IRegistry
122
+ function register(ObjectInfo memory info)
123
+ external
124
+ onlyRegistryService
125
+ returns(NftId nftId)
126
+ {
127
+ ObjectType objectType = info.objectType;
128
+ ObjectType parentType = _info[info.parentNftId].objectType;
129
+
130
+ // check type combinations for core objects
131
+ if(info.objectAddress == address(0)) {
132
+ if(_coreObjectCombinations[objectType][parentType] == false) {
133
+ revert ErrorRegistryTypesCombinationInvalid(objectType, parentType);
134
+ }
135
+ }
136
+ // check type combinations for contract objects
137
+ else {
138
+ if(_coreContractCombinations[objectType][parentType] == false) {
139
+ revert ErrorRegistryTypesCombinationInvalid(objectType, parentType);
140
+ }
141
+ }
142
+
143
+ nftId = _register(info);
144
+ }
145
+
146
+
147
+ /// @inheritdoc IRegistry
118
148
  function registerService(
119
149
  ObjectInfo memory info,
120
150
  VersionPart version,
@@ -124,65 +154,45 @@ contract Registry is
124
154
  onlyReleaseRegistry
125
155
  returns(NftId nftId)
126
156
  {
157
+ // check service address is defined
127
158
  address service = info.objectAddress;
128
- /* must be guaranteed by release manager
129
159
  if(service == address(0)) {
130
- revert();
160
+ revert ErrorRegistryServiceAddressZero();
131
161
  }
132
162
 
163
+ // check version is defined
133
164
  if(version.eqz()) {
134
- revert();
165
+ revert ErrorRegistryServiceVersionZero();
135
166
  }
136
167
 
137
- if(info.objectType != SERVICE()) {
138
- revert();
139
- }
140
- if(info.parentType != REGISTRY()) {
141
- revert();
142
- }
143
- info.initialOwner == NFT_LOCK_ADDRESS <- if services are access managed
144
- */
145
-
168
+ // check domain is defined
146
169
  if(domain.eqz()) {
147
170
  revert ErrorRegistryDomainZero(service);
148
171
  }
149
172
 
150
- if(_service[version][domain] > address(0)) {
173
+ // check contract has not already been registered
174
+ if(_service[version][domain] != address(0)) {
151
175
  revert ErrorRegistryDomainAlreadyRegistered(service, version, domain);
152
176
  }
153
-
154
- _service[version][domain] = service;
155
177
 
178
+ // check service has proper type
179
+ if(info.objectType != SERVICE()) {
180
+ revert ErrorRegistryNotService(service, info.objectType);
181
+ }
182
+
183
+ // check that parent has registry type
184
+ if(info.parentNftId != _registryNftId) {
185
+ revert ErrorRegistryServiceParentNotRegistry(info.parentNftId);
186
+ }
187
+
188
+ _service[version][domain] = service;
156
189
  nftId = _register(info);
157
190
 
158
191
  emit LogServiceRegistration(version, domain);
159
192
  }
160
193
 
161
- function register(ObjectInfo memory info)
162
- external
163
- onlyRegistryService
164
- returns(NftId nftId)
165
- {
166
- ObjectType objectType = info.objectType;
167
- ObjectType parentType = _info[info.parentNftId].objectType;
168
-
169
- // only valid core types combinations
170
- if(info.objectAddress == address(0))
171
- {
172
- if(_coreObjectCombinations[objectType][parentType] == false) {
173
- revert ErrorRegistryTypesCombinationInvalid(objectType, parentType);
174
- }
175
- }
176
- else
177
- {
178
- if(_coreContractCombinations[objectType][parentType] == false) {
179
- revert ErrorRegistryTypesCombinationInvalid(objectType, parentType);
180
- }
181
- }
182
-
183
- nftId = _register(info);
184
- }
185
194
 
195
+ /// @inheritdoc IRegistry
186
196
  function registerWithCustomType(ObjectInfo memory info)
187
197
  external
188
198
  onlyRegistryService
@@ -197,7 +207,6 @@ contract Registry is
197
207
 
198
208
  if(
199
209
  parentType == PROTOCOL() ||
200
- parentType == REGISTRY() ||
201
210
  parentType == SERVICE()
202
211
  ) {
203
212
  revert ErrorRegistryTypesCombinationInvalid(objectType, parentType);
@@ -331,7 +340,6 @@ contract Registry is
331
340
  // Internals
332
341
 
333
342
  /// @dev registry protects only against tampering existing records, registering with invalid types pairs and 0 parent address
334
- // TODO registration of precompile addresses
335
343
  function _register(ObjectInfo memory info)
336
344
  internal
337
345
  returns(NftId nftId)
@@ -518,22 +526,18 @@ contract Registry is
518
526
  });
519
527
 
520
528
  _nftIdByAddress[_stakingAddress] = stakingNftId;
529
+
521
530
  // reverts if nftId was already minted
522
531
  _chainNft.mint(stakingOwner, stakingId);
523
532
  }
524
533
 
525
534
  /// @dev defines which object - parent types relations are allowed to register
526
- // IMPORTANT:
527
- // 1) EACH object type MUST have only one parent type across ALL mappings
528
- // 2) DO NOT use object type (e.g. POLCY, BUNDLE, STAKE) as parent type
529
- // 3) DO NOT use REGISTRY as object type
530
- // 2) DO NOT use PROTOCOL and "ObjectTypeLib.zero"
535
+ /// EACH object type MUST have only one parent type across ALL mappings
531
536
  function _setupValidCoreTypesAndCombinations()
532
537
  private
533
538
  {
534
539
  _coreTypes[REGISTRY()] = true;
535
540
  _coreTypes[SERVICE()] = true;
536
- _coreTypes[TOKEN()] = true;
537
541
  _coreTypes[INSTANCE()] = true;
538
542
  _coreTypes[PRODUCT()] = true;
539
543
  _coreTypes[POOL()] = true;
@@ -545,28 +549,22 @@ contract Registry is
545
549
  _coreTypes[STAKING()] = true;
546
550
  _coreTypes[STAKE()] = true;
547
551
 
548
- uint256 registryId = _chainNft.calculateTokenId(REGISTRY_TOKEN_SEQUENCE_ID);
549
- if(registryId == _chainNft.GLOBAL_REGISTRY_ID()) {
550
- // we are global registry
551
- // object is registry from different chain
552
- // parent is global registry, this contract
553
- _coreContractCombinations[REGISTRY()][REGISTRY()] = true; // only for global regstry
554
- //_coreObjectCombinations[REGISTRY()][REGISTRY()] = true;
555
- } else {
556
- // we are not global registry
557
- // object is local registry, this contract
558
- // parent is global registry, object with 0 address or registry from mainnet???
552
+ // only global registry allowed to register registry (after initialization)
553
+ if(block.chainid == 1) {
554
+ _coreContractCombinations[REGISTRY()][REGISTRY()] = true;
559
555
  }
556
+
557
+ // contracts with registry parent
560
558
  _coreContractCombinations[STAKING()][REGISTRY()] = true; // only for chain staking contract
561
- _coreContractCombinations[TOKEN()][REGISTRY()] = true;
562
- //_coreContractCombinations[SERVICE()][REGISTRY()] = true;// do not need it here -> registerService() registers exactly this combination
563
559
  _coreContractCombinations[INSTANCE()][REGISTRY()] = true;
564
560
 
561
+ // components with instance parent
565
562
  _coreContractCombinations[PRODUCT()][INSTANCE()] = true;
566
563
  _coreContractCombinations[DISTRIBUTION()][INSTANCE()] = true;
567
564
  _coreContractCombinations[ORACLE()][INSTANCE()] = true;
568
565
  _coreContractCombinations[POOL()][INSTANCE()] = true;
569
566
 
567
+ // objects with coponent parents
570
568
  _coreObjectCombinations[DISTRIBUTOR()][DISTRIBUTION()] = true;
571
569
  _coreObjectCombinations[POLICY()][PRODUCT()] = true;
572
570
  _coreObjectCombinations[BUNDLE()][POOL()] = true;
@@ -69,14 +69,14 @@ contract ServiceAuthorizationV3
69
69
  functions = _authorizeForService(REGISTRY(), APPLICATION());
70
70
  _authorize(functions, IRegistryService.registerPolicy.selector, "registerPolicy");
71
71
 
72
- functions = _authorizeForService(REGISTRY(), POOL());
73
- _authorize(functions, IRegistryService.registerPool.selector, "registerPool");
72
+ // functions = _authorizeForService(REGISTRY(), POOL());
73
+ // _authorize(functions, IRegistryService.registerPool.selector, "registerPool");
74
74
 
75
75
  functions = _authorizeForService(REGISTRY(), BUNDLE());
76
76
  _authorize(functions, IRegistryService.registerBundle.selector, "registerBundle");
77
77
 
78
78
  functions = _authorizeForService(REGISTRY(), DISTRIBUTION());
79
- _authorize(functions, IRegistryService.registerDistribution.selector, "registerDistribution");
79
+ // _authorize(functions, IRegistryService.registerDistribution.selector, "registerDistribution");
80
80
  _authorize(functions, IRegistryService.registerDistributor.selector, "registerDistributor");
81
81
 
82
82
  functions = _authorizeForService(REGISTRY(), COMPONENT());
@@ -88,8 +88,8 @@ contract ServiceAuthorizationV3
88
88
  functions = _authorizeForService(REGISTRY(), STAKING());
89
89
  _authorize(functions, IRegistryService.registerStake.selector, "registerStake");
90
90
 
91
- functions = _authorizeForService(REGISTRY(), PRODUCT());
92
- _authorize(functions, IRegistryService.registerProduct.selector, "registerProduct");
91
+ // functions = _authorizeForService(REGISTRY(), PRODUCT());
92
+ // _authorize(functions, IRegistryService.registerProduct.selector, "registerProduct");
93
93
  }
94
94
 
95
95
 
@@ -27,20 +27,16 @@ function STAKING() pure returns (ObjectType) {
27
27
  return ObjectType.wrap(3);
28
28
  }
29
29
 
30
- function TOKEN() pure returns (ObjectType) {
31
- return ObjectType.wrap(6);
32
- }
33
-
34
30
  function RELEASE() pure returns (ObjectType) {
35
- return ObjectType.wrap(7);
31
+ return ObjectType.wrap(6);
36
32
  }
37
33
 
38
34
  function ROLE() pure returns (ObjectType) {
39
- return ObjectType.wrap(8);
35
+ return ObjectType.wrap(7);
40
36
  }
41
37
 
42
38
  function SERVICE() pure returns (ObjectType) {
43
- return ObjectType.wrap(9);
39
+ return ObjectType.wrap(8);
44
40
  }
45
41
 
46
42
  function INSTANCE() pure returns (ObjectType) {
@@ -7,6 +7,7 @@ using {
7
7
  versionPartGt as >,
8
8
  versionPartEq as ==,
9
9
  versionPartNe as !=,
10
+ VersionPartLib.eqz,
10
11
  VersionPartLib.toInt
11
12
  }
12
13
  for VersionPart global;
@@ -16,7 +17,8 @@ function versionPartEq(VersionPart a, VersionPart b) pure returns(bool isSame) {
16
17
  function versionPartNe(VersionPart a, VersionPart b) pure returns(bool isSame) { return VersionPart.unwrap(a) != VersionPart.unwrap(b); }
17
18
 
18
19
  library VersionPartLib {
19
- function toInt(VersionPart a) external pure returns(uint) { return VersionPart.unwrap(a); }
20
+ function eqz(VersionPart a) external pure returns(bool) { return VersionPart.unwrap(a) == 0; }
21
+ function toInt(VersionPart a) external pure returns(uint256) { return VersionPart.unwrap(a); }
20
22
  function toVersionPart(uint256 a) external pure returns(VersionPart) { return VersionPart.wrap(uint8(a)); }
21
23
  }
22
24
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etherisc/gif-next",
3
- "version": "0.0.2-85cbb88-630",
3
+ "version": "0.0.2-866ef18-420",
4
4
  "description": "This is the repository for the next version of the Generic Insurance Framework (GIF) smart contracts. ",
5
5
  "main": "index.js",
6
6
  "scripts": {