@etherisc/gif-next 0.0.2-92c50c2-136 → 0.0.2-9346c9b-763

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 (402) hide show
  1. package/README.md +13 -1
  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/authorization/IAccess.sol/IAccess.json +10 -0
  10. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  11. package/artifacts/contracts/{shared → authorization}/IAccessAdmin.sol/IAccessAdmin.json +95 -252
  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/{registry → authorization}/IServiceAuthorization.sol/IServiceAuthorization.json +10 -10
  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 +1 -1
  27. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +46 -228
  28. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  29. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +272 -90
  30. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  31. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +70 -38
  32. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  33. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +100 -132
  34. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  35. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +134 -16
  36. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
  37. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +703 -0
  38. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  39. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +6 -19
  40. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  41. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +32 -44
  42. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  43. package/artifacts/contracts/instance/Instance.sol/Instance.json +35 -96
  44. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  45. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1208 -290
  46. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
  47. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +601 -0
  48. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  49. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +110 -76
  50. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  51. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +66 -126
  52. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  53. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +18 -42
  54. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  55. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +55 -61
  56. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  57. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  58. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  59. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  60. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  61. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  62. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  63. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
  64. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
  65. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  66. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  67. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  68. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  69. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  70. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  71. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  72. package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
  73. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
  74. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +1185 -0
  75. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
  76. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +418 -0
  77. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  78. package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +43 -1
  79. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  80. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +43 -0
  81. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  82. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  83. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +43 -96
  84. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  85. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +4 -4
  86. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  87. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +3 -3
  88. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
  89. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1520 -0
  90. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
  91. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +410 -0
  92. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  93. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +221 -55
  94. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  95. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +55 -23
  96. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  97. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +102 -0
  98. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  99. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +43 -195
  100. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  101. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  102. package/artifacts/contracts/pool/Pool.sol/Pool.json +43 -296
  103. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  104. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +2 -2
  105. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  106. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +2 -2
  107. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  108. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +4 -4
  109. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  110. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +3 -3
  111. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
  112. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1318 -0
  113. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
  114. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +410 -0
  115. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  116. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +2 -2
  117. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  118. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +2 -2
  119. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  120. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  121. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  122. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  123. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  124. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +32 -42
  125. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
  126. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  127. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +10 -10
  128. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  129. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +6 -6
  130. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  131. package/artifacts/contracts/product/PricingService.sol/PricingService.json +40 -40
  132. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  133. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +21 -21
  134. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  135. package/artifacts/contracts/product/Product.sol/Product.json +32 -153
  136. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
  137. package/artifacts/contracts/product/ProductService.sol/ProductService.json +2 -2
  138. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
  139. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +2 -2
  140. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  141. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  142. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  143. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +50 -46
  144. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  145. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +0 -183
  146. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  147. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  148. package/artifacts/contracts/registry/Registry.sol/Registry.json +97 -69
  149. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  150. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +234 -389
  151. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  152. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +2 -2
  153. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  154. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +2 -2
  155. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  156. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
  157. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
  158. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1159 -0
  159. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  160. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +24 -16
  161. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  162. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
  163. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  164. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  165. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +215 -86
  166. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  167. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +60 -44
  168. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  169. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  170. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  171. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  172. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +97 -0
  173. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  174. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +32 -0
  175. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  176. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  177. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  178. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  179. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  180. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  181. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  182. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +1 -1
  183. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  184. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +32 -53
  185. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  186. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  187. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  188. package/artifacts/contracts/shared/{NftIdSetManager.sol/NftIdSetManager.json → NftIdSet.sol/NftIdSet.json} +4 -4
  189. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  190. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +2 -2
  191. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  192. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  193. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  194. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +2 -2
  195. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  196. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  197. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  198. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  199. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
  200. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  201. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  202. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
  203. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +2 -2
  204. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  205. package/artifacts/contracts/staking/Staking.sol/Staking.json +36 -36
  206. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
  207. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +2 -2
  208. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  209. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +19 -19
  210. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  211. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  212. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  213. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +2 -2
  214. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  215. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +2 -2
  216. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  217. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +5 -5
  218. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  219. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -2
  220. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  221. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  222. package/artifacts/contracts/type/Amount.sol/AmountLib.json +32 -8
  223. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  224. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  225. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  226. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  227. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  228. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  229. package/artifacts/contracts/type/Fee.sol/FeeLib.json +2 -2
  230. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  231. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  232. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  233. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  234. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  235. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  236. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  237. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +55 -2
  238. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  239. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  240. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  241. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  242. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  243. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
  244. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  245. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  246. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  247. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +117 -14
  248. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  249. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  250. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  251. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  252. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  253. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  254. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
  255. package/artifacts/contracts/type/UFixed.sol/MathLib.json +2 -2
  256. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  257. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +21 -2
  258. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  259. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
  260. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  261. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +21 -2
  262. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  263. package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
  264. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  265. package/artifacts/contracts/{shared → upgradeability}/ProxyManager.sol/ProxyManager.json +3 -3
  266. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  267. package/artifacts/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
  268. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  269. package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
  270. package/contracts/{shared → authorization}/AccessAdmin.sol +135 -303
  271. package/contracts/authorization/AccessManagerCloneable.sol +16 -0
  272. package/contracts/authorization/Authorization.sol +218 -0
  273. package/contracts/authorization/IAccess.sol +48 -0
  274. package/contracts/{shared → authorization}/IAccessAdmin.sol +22 -54
  275. package/contracts/authorization/IAuthorization.sol +54 -0
  276. package/contracts/authorization/IModuleAuthorization.sol +21 -0
  277. package/contracts/{registry → authorization}/IServiceAuthorization.sol +5 -5
  278. package/contracts/authorization/ModuleAuthorization.sol +78 -0
  279. package/contracts/{registry → authorization}/ServiceAuthorization.sol +17 -17
  280. package/contracts/distribution/BasicDistribution.sol +149 -0
  281. package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
  282. package/contracts/distribution/Distribution.sol +142 -102
  283. package/contracts/distribution/DistributionService.sol +70 -22
  284. package/contracts/distribution/DistributionServiceManager.sol +2 -5
  285. package/contracts/distribution/IDistributionComponent.sol +25 -39
  286. package/contracts/distribution/IDistributionService.sol +17 -1
  287. package/contracts/instance/{BundleManager.sol → BundleSet.sol} +23 -23
  288. package/contracts/instance/IInstance.sol +8 -9
  289. package/contracts/instance/IInstanceService.sol +13 -18
  290. package/contracts/instance/Instance.sol +61 -70
  291. package/contracts/instance/InstanceAdmin.sol +202 -267
  292. package/contracts/instance/InstanceAuthorizationV3.sol +204 -0
  293. package/contracts/instance/InstanceReader.sol +22 -9
  294. package/contracts/instance/InstanceService.sol +74 -70
  295. package/contracts/instance/InstanceServiceManager.sol +2 -6
  296. package/contracts/instance/InstanceStore.sol +5 -1
  297. package/contracts/instance/base/{ObjectManager.sol → ObjectSet.sol} +11 -12
  298. package/contracts/instance/module/IComponents.sol +0 -1
  299. package/contracts/oracle/BasicOracle.sol +48 -0
  300. package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
  301. package/contracts/oracle/IOracle.sol +16 -0
  302. package/contracts/oracle/IOracleComponent.sol +2 -1
  303. package/contracts/oracle/Oracle.sol +72 -47
  304. package/contracts/oracle/OracleServiceManager.sol +2 -5
  305. package/contracts/pool/BasicPool.sol +164 -0
  306. package/contracts/pool/BasicPoolAuthorization.sol +55 -0
  307. package/contracts/pool/BundleService.sol +71 -25
  308. package/contracts/pool/BundleServiceManager.sol +2 -5
  309. package/contracts/pool/IBundleService.sol +14 -0
  310. package/contracts/pool/IPoolComponent.sol +6 -60
  311. package/contracts/pool/Pool.sol +160 -131
  312. package/contracts/pool/PoolService.sol +11 -27
  313. package/contracts/pool/PoolServiceManager.sol +2 -5
  314. package/contracts/product/ApplicationService.sol +12 -36
  315. package/contracts/product/ApplicationServiceManager.sol +2 -2
  316. package/contracts/product/BasicProduct.sol +82 -0
  317. package/contracts/product/BasicProductAuthorization.sol +43 -0
  318. package/contracts/product/ClaimService.sol +5 -31
  319. package/contracts/product/ClaimServiceManager.sol +2 -2
  320. package/contracts/product/IProductComponent.sol +7 -9
  321. package/contracts/product/PolicyServiceManager.sol +2 -5
  322. package/contracts/product/PricingServiceManager.sol +2 -5
  323. package/contracts/product/Product.sol +103 -88
  324. package/contracts/product/ProductService.sol +7 -32
  325. package/contracts/product/ProductServiceManager.sol +2 -5
  326. package/contracts/registry/IRegistry.sol +26 -16
  327. package/contracts/registry/IRegistryService.sol +6 -6
  328. package/contracts/registry/Registry.sol +81 -87
  329. package/contracts/registry/RegistryAdmin.sol +118 -88
  330. package/contracts/registry/RegistryService.sol +4 -18
  331. package/contracts/registry/RegistryServiceManager.sol +2 -2
  332. package/contracts/registry/{ReleaseManager.sol → ReleaseRegistry.sol} +97 -113
  333. package/contracts/registry/ServiceAuthorizationV3.sol +14 -14
  334. package/contracts/registry/TokenRegistry.sol +2 -2
  335. package/contracts/shared/Component.sol +13 -14
  336. package/contracts/shared/ComponentService.sol +71 -69
  337. package/contracts/shared/ComponentServiceManager.sol +2 -2
  338. package/contracts/shared/ComponentVerifyingService.sol +1 -1
  339. package/contracts/shared/IComponentService.sol +10 -0
  340. package/contracts/shared/IInstanceLinkedComponent.sol +10 -0
  341. package/contracts/shared/IService.sol +1 -1
  342. package/contracts/shared/InstanceLinkedComponent.sol +47 -19
  343. package/contracts/shared/{NftIdSetManager.sol → NftIdSet.sol} +1 -1
  344. package/contracts/shared/Service.sol +3 -4
  345. package/contracts/staking/IStaking.sol +1 -2
  346. package/contracts/staking/IStakingService.sol +12 -5
  347. package/contracts/staking/Staking.sol +17 -16
  348. package/contracts/staking/StakingManager.sol +2 -6
  349. package/contracts/staking/StakingReader.sol +12 -16
  350. package/contracts/staking/StakingServiceManager.sol +2 -2
  351. package/contracts/staking/StakingStore.sol +12 -22
  352. package/contracts/type/Amount.sol +7 -2
  353. package/contracts/type/ObjectType.sol +37 -7
  354. package/contracts/type/RoleId.sol +55 -82
  355. package/contracts/type/UFixed.sol +6 -0
  356. package/contracts/type/Version.sol +3 -1
  357. package/contracts/{shared → upgradeability}/ProxyManager.sol +3 -4
  358. package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
  359. package/package.json +3 -3
  360. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
  361. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -709
  362. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +0 -4
  363. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +0 -228
  364. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  365. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +0 -187
  366. package/artifacts/contracts/registry/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +0 -4
  367. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
  368. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1177
  369. package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +0 -4
  370. package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.json +0 -190
  371. package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.dbg.json +0 -4
  372. package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.json +0 -1559
  373. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +0 -4
  374. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +0 -1193
  375. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +0 -4
  376. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +0 -1747
  377. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +0 -4
  378. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +0 -1760
  379. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +0 -4
  380. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +0 -1838
  381. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +0 -4
  382. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +0 -1856
  383. package/artifacts/contracts/shared/IAccessAdmin.sol/IAccessAdmin.dbg.json +0 -4
  384. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +0 -4
  385. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +0 -1562
  386. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +0 -4
  387. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +0 -1600
  388. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  389. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +0 -4
  390. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
  391. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
  392. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  393. package/contracts/instance/InstanceAuthorizationsLib.sol +0 -377
  394. package/contracts/shared/AccessManagerCustom.sol +0 -741
  395. package/contracts/shared/AccessManagerExtended.sol +0 -481
  396. package/contracts/shared/AccessManagerExtendedInitializeable.sol +0 -13
  397. package/contracts/shared/AccessManagerExtendedWithDisable.sol +0 -137
  398. package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +0 -14
  399. package/contracts/shared/IAccessManagerExtended.sol +0 -74
  400. package/contracts/shared/IAccessManagerExtendedWithDisable.sol +0 -18
  401. /package/contracts/{shared → upgradeability}/IVersionable.sol +0 -0
  402. /package/contracts/{shared → upgradeability}/Versionable.sol +0 -0
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/9691244123a7bb449d69784e882fa0f3.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/9691244123a7bb449d69784e882fa0f3.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/9691244123a7bb449d69784e882fa0f3.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/9691244123a7bb449d69784e882fa0f3.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/9691244123a7bb449d69784e882fa0f3.json"
4
- }
@@ -1,377 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {ADMIN_ROLE, INSTANCE_OWNER_ROLE, ORACLE_SERVICE_ROLE, DISTRIBUTION_OWNER_ROLE, POOL_OWNER_ROLE, PRODUCT_OWNER_ROLE, ORACLE_OWNER_ROLE, INSTANCE_SERVICE_ROLE, COMPONENT_SERVICE_ROLE, DISTRIBUTION_SERVICE_ROLE, POOL_SERVICE_ROLE, PRODUCT_SERVICE_ROLE, APPLICATION_SERVICE_ROLE, POLICY_SERVICE_ROLE, CLAIM_SERVICE_ROLE, BUNDLE_SERVICE_ROLE, INSTANCE_ROLE} from "../type/RoleId.sol";
5
- import {APPLICATION, BUNDLE, CLAIM, COMPONENT, DISTRIBUTION, INSTANCE, ORACLE, POLICY, POOL, PRODUCT, REGISTRY} from "../type/ObjectType.sol";
6
- import {VersionPart} from "../type/Version.sol";
7
-
8
- import {IRegistry} from "../registry/IRegistry.sol";
9
-
10
- import {Instance} from "./Instance.sol";
11
- import {InstanceAdmin} from "./InstanceAdmin.sol";
12
- import {InstanceReader} from "./InstanceReader.sol";
13
- import {BundleManager} from "./BundleManager.sol";
14
- import {AccessManagerExtendedInitializeable} from "../shared/AccessManagerExtendedInitializeable.sol";
15
- import {InstanceStore} from "./InstanceStore.sol";
16
-
17
-
18
- library InstanceAuthorizationsLib
19
- {
20
- function grantInitialAuthorizations(
21
- AccessManagerExtendedInitializeable accessManager,
22
- InstanceAdmin instanceAdmin,
23
- Instance instance,
24
- BundleManager bundleManager,
25
- InstanceStore instanceStore,
26
- address instanceOwner,
27
- IRegistry registry,
28
- VersionPart majorVersion)
29
- external
30
- {
31
- _createRoles(instanceAdmin);
32
- _createTargets(instanceAdmin, instance, bundleManager, instanceStore);
33
- _grantComponentServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
34
- _grantOracleServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
35
- _grantDistributionServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
36
- _grantPoolServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
37
- _grantProductServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
38
- _grantApplicationServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
39
- _grantPolicyServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
40
- _grantClaimServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
41
- _grantBundleServiceAuthorizations(accessManager, instanceAdmin, instanceStore, bundleManager, registry, majorVersion);
42
- _grantInstanceServiceAuthorizations(accessManager, instanceAdmin, instance, registry, majorVersion);
43
- _grantInstanceAuthorizations(accessManager, instanceAdmin, instance, registry, majorVersion);
44
- _grantInstanceOwnerAuthorizations(instanceAdmin, instance, registry, majorVersion);
45
- }
46
-
47
- function _createRoles(InstanceAdmin instanceAdmin) private {
48
- // default roles controlled by ADMIN_ROLE -> core roles
49
- // all set/granted only once during cloning (the only exception is INSTANCE_OWNER_ROLE, hooked to instance nft)
50
- instanceAdmin.createCoreRole(INSTANCE_SERVICE_ROLE(), "InstanceServiceRole");
51
- instanceAdmin.createCoreRole(COMPONENT_SERVICE_ROLE(), "ComponentServiceRole");
52
- instanceAdmin.createCoreRole(DISTRIBUTION_SERVICE_ROLE(), "DistributionServiceRole");
53
- instanceAdmin.createCoreRole(ORACLE_SERVICE_ROLE(), "OracleServiceRole");
54
- instanceAdmin.createCoreRole(POOL_SERVICE_ROLE(), "PoolServiceRole");
55
- instanceAdmin.createCoreRole(APPLICATION_SERVICE_ROLE(), "ApplicationServiceRole");
56
- instanceAdmin.createCoreRole(PRODUCT_SERVICE_ROLE(), "ProductServiceRole");
57
- instanceAdmin.createCoreRole(CLAIM_SERVICE_ROLE(), "ClaimServiceRole");
58
- instanceAdmin.createCoreRole(POLICY_SERVICE_ROLE(), "PolicyServiceRole");
59
- instanceAdmin.createCoreRole(BUNDLE_SERVICE_ROLE(), "BundleServiceRole");
60
-
61
- // default roles controlled by INSTANCE_OWNER_ROLE -> gif roles
62
- instanceAdmin.createGifRole(DISTRIBUTION_OWNER_ROLE(), "DistributionOwnerRole", INSTANCE_OWNER_ROLE());
63
- instanceAdmin.createGifRole(ORACLE_OWNER_ROLE(), "OracleOwnerRole", INSTANCE_OWNER_ROLE());
64
- instanceAdmin.createGifRole(POOL_OWNER_ROLE(), "PoolOwnerRole", INSTANCE_OWNER_ROLE());
65
- instanceAdmin.createGifRole(PRODUCT_OWNER_ROLE(), "ProductOwnerRole", INSTANCE_OWNER_ROLE());
66
- }
67
-
68
- function _createTargets(
69
- InstanceAdmin instanceAdmin,
70
- Instance instance,
71
- BundleManager bundleManager,
72
- InstanceStore instanceStore)
73
- private
74
- {
75
- instanceAdmin.createCoreTarget(address(instance), "Instance");
76
- //instanceAdmin.createCoreTarget(address(instanceAdmin), "InstanceAdmin");
77
- instanceAdmin.createCoreTarget(address(bundleManager), "BundleManager");
78
- instanceAdmin.createCoreTarget(address(instanceStore), "InstanceStore");
79
- }
80
-
81
- function _grantComponentServiceAuthorizations(
82
- AccessManagerExtendedInitializeable accessManager,
83
- InstanceAdmin instanceAdmin,
84
- InstanceStore instanceStore,
85
- IRegistry registry,
86
- VersionPart majorVersion)
87
- private
88
- {
89
- // configure authorization for component service on instance store
90
- address componentServiceAddress = registry.getServiceAddress(COMPONENT(), majorVersion);
91
- accessManager.grantRole(COMPONENT_SERVICE_ROLE().toInt(), componentServiceAddress, 0);
92
-
93
- bytes4[] memory serviceSelectors = new bytes4[](8);
94
- serviceSelectors[0] = instanceStore.createComponent.selector;
95
- serviceSelectors[1] = instanceStore.updateComponent.selector;
96
- serviceSelectors[2] = instanceStore.createPool.selector;
97
- serviceSelectors[3] = instanceStore.createProduct.selector;
98
- serviceSelectors[5] = instanceStore.updateProduct.selector;
99
- serviceSelectors[6] = instanceStore.increaseBalance.selector;
100
- serviceSelectors[7] = instanceStore.increaseFees.selector;
101
-
102
- instanceAdmin.setTargetFunctionRoleByService(
103
- "InstanceStore",
104
- serviceSelectors,
105
- COMPONENT_SERVICE_ROLE());
106
- }
107
-
108
- function _grantOracleServiceAuthorizations(
109
- AccessManagerExtendedInitializeable accessManager,
110
- InstanceAdmin instanceAdmin,
111
- InstanceStore instanceStore,
112
- IRegistry registry,
113
- VersionPart majorVersion
114
- )
115
- private
116
- {
117
- // configure authorization for distribution service on instance
118
- address oracleServiceAddress = registry.getServiceAddress(ORACLE(), majorVersion);
119
- accessManager.grantRole(ORACLE_SERVICE_ROLE().toInt(), oracleServiceAddress, 0);
120
-
121
- bytes4[] memory instanceOracleServiceSelectors = new bytes4[](3);
122
- instanceOracleServiceSelectors[0] = instanceStore.createRequest.selector;
123
- instanceOracleServiceSelectors[1] = instanceStore.updateRequest.selector;
124
- instanceOracleServiceSelectors[2] = instanceStore.updateRequestState.selector;
125
-
126
- instanceAdmin.setTargetFunctionRoleByService(
127
- "InstanceStore",
128
- instanceOracleServiceSelectors,
129
- ORACLE_SERVICE_ROLE());
130
- }
131
-
132
- function _grantDistributionServiceAuthorizations(
133
- AccessManagerExtendedInitializeable accessManager,
134
- InstanceAdmin instanceAdmin,
135
- InstanceStore instanceStore,
136
- IRegistry registry,
137
- VersionPart majorVersion
138
- )
139
- private
140
- {
141
- // configure authorization for distribution service on instance
142
- address distributionServiceAddress = registry.getServiceAddress(DISTRIBUTION(), majorVersion);
143
- accessManager.grantRole(DISTRIBUTION_SERVICE_ROLE().toInt(), distributionServiceAddress, 0);
144
- bytes4[] memory instanceDistributionServiceSelectors = new bytes4[](9);
145
- //instanceDistributionServiceSelectors[0] = instanceStore.createDistributionSetup.selector;
146
- //instanceDistributionServiceSelectors[1] = instanceStore.updateDistributionSetup.selector;
147
- instanceDistributionServiceSelectors[0] = instanceStore.createDistributorType.selector;
148
- instanceDistributionServiceSelectors[1] = instanceStore.updateDistributorType.selector;
149
- instanceDistributionServiceSelectors[2] = instanceStore.updateDistributorTypeState.selector;
150
- instanceDistributionServiceSelectors[3] = instanceStore.createDistributor.selector;
151
- instanceDistributionServiceSelectors[4] = instanceStore.updateDistributor.selector;
152
- instanceDistributionServiceSelectors[5] = instanceStore.updateDistributorState.selector;
153
- instanceDistributionServiceSelectors[6] = instanceStore.createReferral.selector;
154
- instanceDistributionServiceSelectors[7] = instanceStore.updateReferral.selector;
155
- instanceDistributionServiceSelectors[8] = instanceStore.updateReferralState.selector;
156
- instanceAdmin.setTargetFunctionRoleByService(
157
- "InstanceStore",
158
- instanceDistributionServiceSelectors,
159
- DISTRIBUTION_SERVICE_ROLE());
160
- }
161
-
162
- function _grantPoolServiceAuthorizations(
163
- AccessManagerExtendedInitializeable accessManager,
164
- InstanceAdmin instanceAdmin,
165
- InstanceStore instanceStore,
166
- IRegistry registry,
167
- VersionPart majorVersion)
168
- private
169
- {
170
- // configure authorization for pool service on instance
171
- address poolServiceAddress = registry.getServiceAddress(POOL(), majorVersion);
172
- accessManager.grantRole(POOL_SERVICE_ROLE().toInt(), address(poolServiceAddress), 0);
173
- bytes4[] memory instancePoolServiceSelectors = new bytes4[](1); // TODO works with (4)
174
- instancePoolServiceSelectors[0] = instanceStore.updatePool.selector;
175
- instanceAdmin.setTargetFunctionRoleByService(
176
- "InstanceStore",
177
- instancePoolServiceSelectors,
178
- POOL_SERVICE_ROLE());
179
- }
180
-
181
- function _grantProductServiceAuthorizations(
182
- AccessManagerExtendedInitializeable accessManager,
183
- InstanceAdmin instanceAdmin,
184
- InstanceStore instanceStore,
185
- IRegistry registry,
186
- VersionPart majorVersion)
187
- private
188
- {
189
- // configure authorization for product service on instance
190
- address productServiceAddress = registry.getServiceAddress(PRODUCT(), majorVersion);
191
- accessManager.grantRole(PRODUCT_SERVICE_ROLE().toInt(), productServiceAddress, 0);
192
- bytes4[] memory instanceProductServiceSelectors = new bytes4[](3);
193
- instanceProductServiceSelectors[0] = instanceStore.createRisk.selector;
194
- instanceProductServiceSelectors[1] = instanceStore.updateRisk.selector;
195
- instanceProductServiceSelectors[2] = instanceStore.updateRiskState.selector;
196
- instanceAdmin.setTargetFunctionRoleByService(
197
- "InstanceStore",
198
- instanceProductServiceSelectors,
199
- PRODUCT_SERVICE_ROLE());
200
- }
201
-
202
- function _grantApplicationServiceAuthorizations(
203
- AccessManagerExtendedInitializeable accessManager,
204
- InstanceAdmin instanceAdmin,
205
- InstanceStore instanceStore,
206
- IRegistry registry,
207
- VersionPart majorVersion)
208
- private
209
- {
210
- // configure authorization for application services on instance
211
- address applicationServiceAddress = registry.getServiceAddress(APPLICATION(), majorVersion);
212
- accessManager.grantRole(APPLICATION_SERVICE_ROLE().toInt(), applicationServiceAddress, 0);
213
- bytes4[] memory instanceApplicationServiceSelectors = new bytes4[](3);
214
- instanceApplicationServiceSelectors[0] = instanceStore.createApplication.selector;
215
- instanceApplicationServiceSelectors[1] = instanceStore.updateApplication.selector;
216
- instanceApplicationServiceSelectors[2] = instanceStore.updateApplicationState.selector;
217
- instanceAdmin.setTargetFunctionRoleByService(
218
- "InstanceStore",
219
- instanceApplicationServiceSelectors,
220
- APPLICATION_SERVICE_ROLE());
221
- }
222
-
223
- function _grantPolicyServiceAuthorizations(
224
- AccessManagerExtendedInitializeable accessManager,
225
- InstanceAdmin instanceAdmin,
226
- InstanceStore instanceStore,
227
- IRegistry registry,
228
- VersionPart majorVersion)
229
- private
230
- {
231
- // configure authorization for policy services on instance
232
- address policyServiceAddress = registry.getServiceAddress(POLICY(), majorVersion);
233
- accessManager.grantRole(POLICY_SERVICE_ROLE().toInt(), policyServiceAddress, 0);
234
- bytes4[] memory instancePolicyServiceSelectors = new bytes4[](2);
235
- instancePolicyServiceSelectors[0] = instanceStore.updatePolicy.selector;
236
- instancePolicyServiceSelectors[1] = instanceStore.updatePolicyState.selector;
237
- instanceAdmin.setTargetFunctionRoleByService(
238
- "InstanceStore",
239
- instancePolicyServiceSelectors,
240
- POLICY_SERVICE_ROLE());
241
- }
242
-
243
- function _grantClaimServiceAuthorizations(
244
- AccessManagerExtendedInitializeable accessManager,
245
- InstanceAdmin instanceAdmin,
246
- InstanceStore instanceStore,
247
- IRegistry registry,
248
- VersionPart majorVersion)
249
- private
250
- {
251
- // configure authorization for claim/payout services on instance
252
- address claimServiceAddress = registry.getServiceAddress(CLAIM(), majorVersion);
253
- accessManager.grantRole(CLAIM_SERVICE_ROLE().toInt(), claimServiceAddress, 0);
254
-
255
- bytes4[] memory instancePolicyServiceSelectors = new bytes4[](1);
256
- instancePolicyServiceSelectors[0] = instanceStore.updatePolicyClaims.selector;
257
- instanceAdmin.setTargetFunctionRoleByService(
258
- "InstanceStore",
259
- instancePolicyServiceSelectors,
260
- CLAIM_SERVICE_ROLE());
261
-
262
- bytes4[] memory instanceClaimServiceSelectors = new bytes4[](4);
263
- instanceClaimServiceSelectors[0] = instanceStore.createClaim.selector;
264
- instanceClaimServiceSelectors[1] = instanceStore.updateClaim.selector;
265
- instanceClaimServiceSelectors[2] = instanceStore.createPayout.selector;
266
- instanceClaimServiceSelectors[3] = instanceStore.updatePayout.selector;
267
- instanceAdmin.setTargetFunctionRoleByService(
268
- "InstanceStore",
269
- instanceClaimServiceSelectors,
270
- CLAIM_SERVICE_ROLE());
271
- }
272
-
273
- function _grantBundleServiceAuthorizations(
274
- AccessManagerExtendedInitializeable accessManager,
275
- InstanceAdmin instanceAdmin,
276
- InstanceStore instanceStore,
277
- BundleManager bundleManager,
278
- IRegistry registry,
279
- VersionPart majorVersion)
280
- private
281
- {
282
- // configure authorization for bundle service on instance
283
- address bundleServiceAddress = registry.getServiceAddress(BUNDLE(), majorVersion);
284
- accessManager.grantRole(BUNDLE_SERVICE_ROLE().toInt(), bundleServiceAddress, 0);
285
- bytes4[] memory instanceBundleServiceSelectors = new bytes4[](5);
286
- instanceBundleServiceSelectors[0] = instanceStore.createBundle.selector;
287
- instanceBundleServiceSelectors[1] = instanceStore.updateBundle.selector;
288
- instanceBundleServiceSelectors[2] = instanceStore.updateBundleState.selector;
289
- instanceBundleServiceSelectors[3] = instanceStore.increaseLocked.selector;
290
- instanceBundleServiceSelectors[4] = instanceStore.decreaseLocked.selector;
291
- instanceAdmin.setTargetFunctionRoleByService(
292
- "InstanceStore",
293
- instanceBundleServiceSelectors,
294
- BUNDLE_SERVICE_ROLE());
295
-
296
- // configure authorization for bundle service on bundle manager
297
- bytes4[] memory bundleManagerBundleServiceSelectors = new bytes4[](5);
298
- bundleManagerBundleServiceSelectors[0] = bundleManager.linkPolicy.selector;
299
- bundleManagerBundleServiceSelectors[1] = bundleManager.unlinkPolicy.selector;
300
- bundleManagerBundleServiceSelectors[2] = bundleManager.add.selector;
301
- bundleManagerBundleServiceSelectors[3] = bundleManager.lock.selector;
302
- bundleManagerBundleServiceSelectors[4] = bundleManager.unlock.selector;
303
- instanceAdmin.setTargetFunctionRoleByService(
304
- "BundleManager",
305
- bundleManagerBundleServiceSelectors,
306
- BUNDLE_SERVICE_ROLE());
307
- }
308
-
309
- function _grantInstanceServiceAuthorizations(
310
- AccessManagerExtendedInitializeable accessManager,
311
- InstanceAdmin instanceAdmin,
312
- Instance instance,
313
- IRegistry registry,
314
- VersionPart majorVersion)
315
- private
316
- {
317
- // configure authorization for instance service on instance
318
- address instanceServiceAddress = registry.getServiceAddress(INSTANCE(), majorVersion);
319
- accessManager.grantRole(INSTANCE_SERVICE_ROLE().toInt(), instanceServiceAddress, 0);
320
- bytes4[] memory instanceInstanceServiceSelectors = new bytes4[](1);
321
- instanceInstanceServiceSelectors[0] = instance.setInstanceReader.selector;
322
- instanceAdmin.setTargetFunctionRoleByService(
323
- "Instance",
324
- instanceInstanceServiceSelectors,
325
- INSTANCE_SERVICE_ROLE());
326
-
327
- // configure authorizations for instance service on instance access manager
328
- bytes4[] memory instanceAdminInstanceServiceSelectors = new bytes4[](3);
329
- instanceAdminInstanceServiceSelectors[0] = instanceAdmin.createGifTarget.selector;
330
- instanceAdminInstanceServiceSelectors[1] = instanceAdmin.setTargetLockedByService.selector;
331
- instanceAdminInstanceServiceSelectors[2] = instanceAdmin.setTargetFunctionRoleByService.selector;
332
- instanceAdmin.setTargetFunctionRoleByService(
333
- "InstanceAdmin",
334
- instanceAdminInstanceServiceSelectors,
335
- INSTANCE_SERVICE_ROLE());
336
- }
337
-
338
- function _grantInstanceAuthorizations(
339
- AccessManagerExtendedInitializeable accessManager,
340
- InstanceAdmin instanceAdmin,
341
- Instance instance,
342
- IRegistry registry,
343
- VersionPart majorVersion)
344
- private
345
- {
346
- // configure authorizations for instance on instance admin
347
- bytes4[] memory instanceAdminInstanceSelectors = new bytes4[](4);
348
- instanceAdminInstanceSelectors[0] = instanceAdmin.createRole.selector;
349
- instanceAdminInstanceSelectors[1] = instanceAdmin.createTarget.selector;
350
- instanceAdminInstanceSelectors[2] = instanceAdmin.setTargetFunctionRoleByInstance.selector;
351
- instanceAdminInstanceSelectors[3] = instanceAdmin.setTargetLockedByInstance.selector;
352
- instanceAdmin.setTargetFunctionRoleByService(
353
- "InstanceAdmin",
354
- instanceAdminInstanceSelectors,
355
- INSTANCE_ROLE());
356
- }
357
-
358
- function _grantInstanceOwnerAuthorizations(
359
- InstanceAdmin instanceAdmin,
360
- Instance instance,
361
- IRegistry registry,
362
- VersionPart majorVersion)
363
- private
364
- {
365
- // configure authorization for instance owner on instance access manager
366
- // instance owner role is granted/revoked ONLY by INSTANCE_ROLE
367
- bytes4[] memory instanceInstanceOwnerSelectors = new bytes4[](4);
368
- instanceInstanceOwnerSelectors[0] = instance.createRole.selector;
369
- instanceInstanceOwnerSelectors[1] = instance.createTarget.selector;
370
- instanceInstanceOwnerSelectors[2] = instance.setTargetFunctionRole.selector;
371
- instanceInstanceOwnerSelectors[3] = instance.setTargetLocked.selector;
372
- instanceAdmin.setTargetFunctionRoleByService(
373
- "Instance",
374
- instanceInstanceOwnerSelectors,
375
- INSTANCE_OWNER_ROLE());
376
- }
377
- }