@etherisc/gif-next 0.0.2-b72409c-493 → 0.0.2-b7f4834-822

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 (546) hide show
  1. package/README.md +8 -84
  2. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  3. package/artifacts/contracts/{components → distribution}/Distribution.sol/Distribution.json +254 -157
  4. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  5. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1349 -0
  6. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  7. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +818 -0
  8. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  9. package/artifacts/contracts/{components → distribution}/IDistributionComponent.sol/IDistributionComponent.json +202 -96
  10. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  11. package/artifacts/contracts/{instance/service → distribution}/IDistributionService.sol/IDistributionService.json +121 -320
  12. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
  13. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +6 -6
  14. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  15. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +320 -1995
  16. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  17. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +155 -72
  18. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  19. package/artifacts/contracts/instance/Instance.sol/Instance.json +452 -2749
  20. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  21. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +708 -0
  22. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +4 -0
  23. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +228 -0
  24. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  25. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +762 -340
  26. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  27. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +238 -218
  28. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  29. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +119 -86
  30. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  31. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3642 -0
  32. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
  33. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
  34. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  35. package/artifacts/contracts/instance/{Cloneable.sol → base/Cloneable.sol}/Cloneable.json +1 -1
  36. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  37. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  38. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +4 -0
  39. package/artifacts/contracts/instance/{ObjectManager.sol → base/ObjectManager.sol}/ObjectManager.json +3 -3
  40. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  41. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +10 -118
  42. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  43. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  44. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  45. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  46. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  47. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +4 -0
  48. package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
  49. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  50. package/artifacts/contracts/{instance/module/ISetup.sol/ISetup.json → oracle/IOracle.sol/IOracle.json} +2 -2
  51. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  52. package/artifacts/contracts/{components/IProductComponent.sol/IProductComponent.json → oracle/IOracleComponent.sol/IOracleComponent.json} +221 -192
  53. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  54. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +662 -0
  55. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  56. package/artifacts/contracts/{components/Product.sol/Product.json → oracle/Oracle.sol/Oracle.json} +255 -266
  57. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  58. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +997 -0
  59. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  60. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +718 -0
  61. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  62. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1105 -0
  63. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  64. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +746 -0
  65. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  66. package/artifacts/contracts/{instance/service → pool}/IBundleService.sol/IBundleService.json +213 -153
  67. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  68. package/artifacts/contracts/{components → pool}/IPoolComponent.sol/IPoolComponent.json +288 -88
  69. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  70. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1065 -0
  71. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  72. package/artifacts/contracts/{components → pool}/Pool.sol/Pool.json +298 -89
  73. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  74. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1432 -0
  75. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  76. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +738 -0
  77. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  78. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +834 -0
  79. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  80. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +722 -0
  81. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  82. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1278 -0
  83. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  84. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +810 -0
  85. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  86. package/artifacts/contracts/{instance/service/IClaimService.sol/IClaimService.json → product/IApplicationService.sol/IApplicationService.json} +191 -101
  87. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  88. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +759 -0
  89. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  90. package/artifacts/contracts/{instance/service → product}/IPolicyService.sol/IPolicyService.json +268 -101
  91. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  92. package/artifacts/contracts/{instance/service/IApplicationService.sol/IApplicationService.json → product/IPricingService.sol/IPricingService.json} +141 -161
  93. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  94. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +995 -0
  95. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +4 -0
  96. package/artifacts/contracts/{instance/service → product}/IProductService.sol/IProductService.json +75 -72
  97. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  98. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1146 -0
  99. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  100. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +754 -0
  101. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  102. package/artifacts/contracts/product/PricingService.sol/PricingService.json +983 -0
  103. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  104. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +778 -0
  105. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  106. package/artifacts/contracts/product/Product.sol/Product.json +1397 -0
  107. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +4 -0
  108. package/artifacts/contracts/product/ProductService.sol/ProductService.json +679 -0
  109. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  110. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +694 -0
  111. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  112. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  113. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  114. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +179 -29
  115. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  116. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +305 -85
  117. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  118. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  119. package/artifacts/contracts/registry/Registry.sol/Registry.json +415 -43
  120. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  121. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +407 -0
  122. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  123. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +343 -105
  124. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  125. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +93 -54
  126. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
  127. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +834 -89
  128. package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.dbg.json +4 -0
  129. package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.json +137 -0
  130. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  131. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +316 -153
  132. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +4 -0
  133. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +1193 -0
  134. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +4 -0
  135. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +1715 -0
  136. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +4 -0
  137. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +1728 -0
  138. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +4 -0
  139. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +1806 -0
  140. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +4 -0
  141. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +1824 -0
  142. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  143. package/artifacts/contracts/{components → shared}/Component.sol/Component.json +144 -80
  144. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  145. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1490 -0
  146. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  147. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +792 -0
  148. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
  149. package/artifacts/contracts/{instance/base/ComponentService.sol/ComponentService.json → shared/ComponentVerifyingService.sol/ComponentVerifyingService.json} +95 -121
  150. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  151. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +2 -2
  152. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +4 -0
  153. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +1562 -0
  154. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +4 -0
  155. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +1600 -0
  156. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  157. package/artifacts/contracts/{components → shared}/IComponent.sol/IComponent.json +180 -54
  158. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  159. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +867 -0
  160. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  161. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +705 -0
  162. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  163. package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +50 -11
  164. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  165. package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +1 -1
  166. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  167. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +3 -10
  168. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  169. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +87 -9
  170. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  171. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +3 -10
  172. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  173. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +0 -13
  174. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  175. package/artifacts/contracts/shared/IService.sol/IService.json +91 -27
  176. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  177. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +4 -0
  178. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +39 -0
  179. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  180. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +1036 -0
  181. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  182. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +571 -0
  183. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  184. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +194 -0
  185. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +4 -0
  186. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +306 -0
  187. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  188. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +15 -22
  189. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  190. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +98 -26
  191. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  192. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +70 -35
  193. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  194. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +23 -22
  195. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  196. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
  197. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  198. package/artifacts/contracts/shared/Service.sol/Service.json +98 -29
  199. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  200. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +60 -6
  201. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  202. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  203. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  204. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  205. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1438 -0
  206. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  207. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +993 -0
  208. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  209. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +444 -0
  210. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  211. package/artifacts/contracts/staking/Staking.sol/Staking.json +2045 -0
  212. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  213. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +777 -0
  214. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  215. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +592 -0
  216. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  217. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1324 -0
  218. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  219. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +726 -0
  220. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  221. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2189 -0
  222. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  223. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +571 -0
  224. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  225. package/artifacts/contracts/{types → type}/AddressSet.sol/LibAddressSet.json +3 -3
  226. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  227. package/artifacts/contracts/type/Amount.sol/AmountLib.json +345 -0
  228. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  229. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
  230. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  231. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
  232. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  233. package/artifacts/contracts/{types → type}/DistributorType.sol/DistributorTypeLib.json +5 -5
  234. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  235. package/artifacts/contracts/type/Fee.sol/FeeLib.json +312 -0
  236. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  237. package/artifacts/contracts/{types → type}/Key32.sol/Key32Lib.json +3 -3
  238. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  239. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +209 -0
  240. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  241. package/artifacts/contracts/{types → type}/NftIdSet.sol/LibNftIdSet.json +3 -3
  242. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  243. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +105 -0
  244. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  245. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  246. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  247. package/artifacts/contracts/{types → type}/Referral.sol/ReferralLib.json +5 -5
  248. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  249. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  250. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  251. package/artifacts/contracts/{types → type}/RiskId.sol/RiskIdLib.json +5 -5
  252. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  253. package/artifacts/contracts/{types → type}/RoleId.sol/RoleIdLib.json +5 -5
  254. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  255. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +198 -0
  256. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  257. package/artifacts/contracts/{types → type}/StateId.sol/StateIdLib.json +3 -3
  258. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  259. package/artifacts/contracts/{types → type}/Timestamp.sol/TimestampLib.json +33 -7
  260. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
  261. package/artifacts/contracts/{types → type}/UFixed.sol/MathLib.json +3 -3
  262. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  263. package/artifacts/contracts/{types → type}/UFixed.sol/UFixedLib.json +3 -3
  264. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  265. package/artifacts/contracts/{types → type}/Version.sol/VersionLib.json +3 -3
  266. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  267. package/artifacts/contracts/{types → type}/Version.sol/VersionPartLib.json +3 -3
  268. package/contracts/{components → distribution}/Distribution.sol +47 -66
  269. package/contracts/distribution/DistributionService.sol +298 -0
  270. package/contracts/distribution/DistributionServiceManager.sol +42 -0
  271. package/contracts/{components → distribution}/IDistributionComponent.sol +11 -16
  272. package/contracts/{instance/service → distribution}/IDistributionService.sol +20 -37
  273. package/contracts/instance/BundleManager.sol +8 -9
  274. package/contracts/instance/IInstance.sol +51 -67
  275. package/contracts/instance/IInstanceService.sol +30 -21
  276. package/contracts/instance/Instance.sol +124 -215
  277. package/contracts/instance/InstanceAdmin.sol +331 -0
  278. package/contracts/instance/InstanceAuthorizationsLib.sol +377 -0
  279. package/contracts/instance/InstanceReader.sol +157 -57
  280. package/contracts/instance/InstanceService.sol +189 -322
  281. package/contracts/instance/InstanceServiceManager.sol +11 -21
  282. package/contracts/instance/InstanceStore.sol +281 -0
  283. package/contracts/instance/base/BalanceStore.sol +118 -0
  284. package/contracts/instance/{Cloneable.sol → base/Cloneable.sol} +1 -1
  285. package/contracts/instance/base/ObjectCounter.sol +21 -0
  286. package/contracts/instance/{ObjectManager.sol → base/ObjectManager.sol} +7 -7
  287. package/contracts/instance/module/IAccess.sol +5 -13
  288. package/contracts/instance/module/IBundle.sol +8 -9
  289. package/contracts/instance/module/IComponents.sol +22 -5
  290. package/contracts/instance/module/IDistribution.sol +7 -6
  291. package/contracts/instance/module/IPolicy.sol +28 -16
  292. package/contracts/instance/module/IRisk.sol +1 -1
  293. package/contracts/{test/TestToken.sol → mock/Dip.sol} +5 -5
  294. package/contracts/oracle/IOracle.sol +20 -0
  295. package/contracts/oracle/IOracleComponent.sol +32 -0
  296. package/contracts/oracle/IOracleService.sol +65 -0
  297. package/contracts/oracle/Oracle.sol +145 -0
  298. package/contracts/oracle/OracleService.sol +277 -0
  299. package/contracts/oracle/OracleServiceManager.sol +42 -0
  300. package/contracts/pool/BundleService.sol +296 -0
  301. package/contracts/pool/BundleServiceManager.sol +42 -0
  302. package/contracts/pool/IBundleService.sol +106 -0
  303. package/contracts/{components → pool}/IPoolComponent.sol +17 -18
  304. package/contracts/pool/IPoolService.sol +150 -0
  305. package/contracts/{components → pool}/Pool.sol +57 -57
  306. package/contracts/pool/PoolService.sol +453 -0
  307. package/contracts/pool/PoolServiceManager.sol +42 -0
  308. package/contracts/product/ApplicationService.sol +254 -0
  309. package/contracts/{instance/service → product}/ApplicationServiceManager.sol +11 -8
  310. package/contracts/product/ClaimService.sol +442 -0
  311. package/contracts/{instance/service → product}/ClaimServiceManager.sol +11 -8
  312. package/contracts/{instance/service → product}/IApplicationService.sol +15 -35
  313. package/contracts/product/IClaimService.sol +99 -0
  314. package/contracts/{instance/service → product}/IPolicyService.sol +37 -31
  315. package/contracts/product/IPricingService.sol +39 -0
  316. package/contracts/product/IProductComponent.sol +42 -0
  317. package/contracts/product/IProductService.sol +33 -0
  318. package/contracts/product/PolicyService.sol +475 -0
  319. package/contracts/product/PolicyServiceManager.sol +42 -0
  320. package/contracts/product/PricingService.sol +301 -0
  321. package/contracts/product/PricingServiceManager.sol +42 -0
  322. package/contracts/{components → product}/Product.sol +191 -107
  323. package/contracts/product/ProductService.sol +124 -0
  324. package/contracts/product/ProductServiceManager.sol +42 -0
  325. package/contracts/registry/ChainNft.sol +8 -1
  326. package/contracts/registry/IRegistry.sol +44 -21
  327. package/contracts/registry/IRegistryService.sol +39 -37
  328. package/contracts/registry/Registry.sol +192 -83
  329. package/contracts/registry/RegistryAdmin.sol +237 -0
  330. package/contracts/registry/RegistryService.sol +69 -86
  331. package/contracts/registry/RegistryServiceManager.sol +21 -25
  332. package/contracts/registry/ReleaseManager.sol +459 -181
  333. package/contracts/registry/ServiceAuthorizationsLib.sol +173 -0
  334. package/contracts/registry/TokenRegistry.sol +261 -62
  335. package/contracts/shared/AccessManagerCustom.sol +736 -0
  336. package/contracts/shared/AccessManagerExtended.sol +470 -0
  337. package/contracts/shared/AccessManagerExtendedInitializeable.sol +13 -0
  338. package/contracts/shared/AccessManagerExtendedWithDisable.sol +137 -0
  339. package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +14 -0
  340. package/contracts/shared/Component.sol +281 -0
  341. package/contracts/shared/ComponentService.sol +618 -0
  342. package/contracts/shared/ComponentServiceManager.sol +35 -0
  343. package/contracts/shared/ComponentVerifyingService.sol +117 -0
  344. package/contracts/shared/ERC165.sol +1 -1
  345. package/contracts/shared/IAccessManagerExtended.sol +74 -0
  346. package/contracts/shared/IAccessManagerExtendedWithDisable.sol +18 -0
  347. package/contracts/{components → shared}/IComponent.sol +23 -27
  348. package/contracts/shared/IComponentService.sol +102 -0
  349. package/contracts/shared/IInstanceLinkedComponent.sol +46 -0
  350. package/contracts/{instance/base → shared}/IKeyValueStore.sol +15 -11
  351. package/contracts/{instance/base → shared}/ILifecycle.sol +3 -3
  352. package/contracts/shared/INftOwnable.sol +2 -2
  353. package/contracts/shared/IPolicyHolder.sol +29 -10
  354. package/contracts/shared/IRegistryLinked.sol +0 -1
  355. package/contracts/shared/IService.sol +7 -7
  356. package/contracts/shared/IVersionable.sol +1 -1
  357. package/contracts/shared/InitializableCustom.sol +177 -0
  358. package/contracts/shared/InstanceLinkedComponent.sol +144 -0
  359. package/contracts/shared/KeyValueStore.sol +127 -0
  360. package/contracts/{instance/base → shared}/Lifecycle.sol +26 -5
  361. package/contracts/shared/NftIdSetManager.sol +65 -0
  362. package/contracts/shared/NftOwnable.sol +3 -16
  363. package/contracts/shared/PolicyHolder.sol +40 -19
  364. package/contracts/shared/ProxyManager.sol +34 -4
  365. package/contracts/shared/Registerable.sol +13 -12
  366. package/contracts/shared/RegistryLinked.sol +0 -5
  367. package/contracts/shared/Service.sol +29 -10
  368. package/contracts/shared/TokenHandler.sol +27 -2
  369. package/contracts/shared/Versionable.sol +1 -1
  370. package/contracts/staking/IStaking.sol +168 -0
  371. package/contracts/staking/IStakingService.sol +149 -0
  372. package/contracts/staking/StakeManagerLib.sol +179 -0
  373. package/contracts/staking/Staking.sol +551 -0
  374. package/contracts/staking/StakingManager.sol +54 -0
  375. package/contracts/staking/StakingReader.sol +187 -0
  376. package/contracts/staking/StakingService.sol +406 -0
  377. package/contracts/staking/StakingServiceManager.sol +45 -0
  378. package/contracts/staking/StakingStore.sol +572 -0
  379. package/contracts/staking/TargetManagerLib.sol +207 -0
  380. package/contracts/{types → type}/AddressSet.sol +1 -1
  381. package/contracts/type/Amount.sol +128 -0
  382. package/contracts/{types → type}/Blocknumber.sol +20 -3
  383. package/contracts/{types → type}/ClaimId.sol +25 -2
  384. package/contracts/{types → type}/Fee.sol +33 -24
  385. package/contracts/{types → type}/NftId.sol +14 -16
  386. package/contracts/{types → type}/NftIdSet.sol +2 -2
  387. package/contracts/{types → type}/ObjectType.sol +26 -15
  388. package/contracts/{types → type}/PayoutId.sol +33 -5
  389. package/contracts/{types → type}/Referral.sol +1 -1
  390. package/contracts/type/RequestId.sol +75 -0
  391. package/contracts/{types → type}/RiskId.sol +1 -1
  392. package/contracts/{types → type}/RoleId.sol +58 -9
  393. package/contracts/{types → type}/Seconds.sol +27 -0
  394. package/contracts/{types → type}/StateId.sol +33 -4
  395. package/contracts/{types → type}/Timestamp.sol +10 -1
  396. package/contracts/{types → type}/Version.sol +1 -1
  397. package/package.json +3 -3
  398. package/artifacts/contracts/components/Component.sol/Component.dbg.json +0 -4
  399. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
  400. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +0 -4
  401. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
  402. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  403. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  404. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  405. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  406. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +0 -4
  407. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +0 -1206
  408. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +0 -4
  409. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  410. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -1311
  411. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  412. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +0 -4
  413. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  414. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  415. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  416. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -532
  417. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  418. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -194
  419. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
  420. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
  421. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.json +0 -10
  422. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +0 -4
  423. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +0 -968
  424. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +0 -4
  425. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +0 -665
  426. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +0 -4
  427. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +0 -1093
  428. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +0 -4
  429. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +0 -661
  430. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +0 -4
  431. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +0 -754
  432. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +0 -4
  433. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +0 -637
  434. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
  435. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -1732
  436. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +0 -4
  437. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +0 -805
  438. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +0 -4
  439. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +0 -4
  440. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +0 -4
  441. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
  442. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +0 -4
  443. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  444. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +0 -428
  445. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  446. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +0 -4
  447. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +0 -1021
  448. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +0 -4
  449. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +0 -689
  450. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  451. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -824
  452. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +0 -4
  453. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +0 -657
  454. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  455. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -777
  456. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  457. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +0 -649
  458. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  459. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -285
  460. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +0 -4
  461. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +0 -107
  462. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  463. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  464. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  465. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -383
  466. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  467. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  468. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  469. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -521
  470. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  471. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -376
  472. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  473. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  474. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  475. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -104
  476. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  477. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -376
  478. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  479. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  480. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  481. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  482. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  483. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +0 -4
  484. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +0 -100
  485. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +0 -4
  486. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  487. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -257
  488. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  489. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  490. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -166
  491. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  492. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +0 -4
  493. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +0 -100
  494. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  495. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  496. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +0 -4
  497. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +0 -100
  498. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +0 -4
  499. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  500. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  501. package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +0 -4
  502. package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +0 -124
  503. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  504. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  505. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +0 -4
  506. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +0 -4
  507. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  508. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  509. package/contracts/components/Component.sol +0 -251
  510. package/contracts/components/IProductComponent.sol +0 -40
  511. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +0 -13
  512. package/contracts/instance/InstanceAccessManager.sol +0 -522
  513. package/contracts/instance/base/ComponentService.sol +0 -134
  514. package/contracts/instance/base/KeyValueStore.sol +0 -175
  515. package/contracts/instance/module/ISetup.sol +0 -33
  516. package/contracts/instance/module/ITreasury.sol +0 -23
  517. package/contracts/instance/service/ApplicationService.sol +0 -350
  518. package/contracts/instance/service/BundleService.sol +0 -336
  519. package/contracts/instance/service/BundleServiceManager.sol +0 -51
  520. package/contracts/instance/service/ClaimService.sol +0 -151
  521. package/contracts/instance/service/DistributionService.sol +0 -467
  522. package/contracts/instance/service/DistributionServiceManager.sol +0 -51
  523. package/contracts/instance/service/IBundleService.sol +0 -62
  524. package/contracts/instance/service/IClaimService.sol +0 -61
  525. package/contracts/instance/service/IPoolService.sol +0 -35
  526. package/contracts/instance/service/IProductService.sol +0 -40
  527. package/contracts/instance/service/PolicyService.sol +0 -403
  528. package/contracts/instance/service/PolicyServiceManager.sol +0 -54
  529. package/contracts/instance/service/PoolService.sol +0 -220
  530. package/contracts/instance/service/PoolServiceManager.sol +0 -51
  531. package/contracts/instance/service/ProductService.sol +0 -241
  532. package/contracts/instance/service/ProductServiceManager.sol +0 -54
  533. package/contracts/registry/RegistryAccessManager.sol +0 -216
  534. package/contracts/shared/ContractDeployerLib.sol +0 -72
  535. package/contracts/test/TestFee.sol +0 -25
  536. package/contracts/test/TestRegisterable.sol +0 -18
  537. package/contracts/test/TestRoleId.sol +0 -14
  538. package/contracts/test/TestService.sol +0 -25
  539. package/contracts/test/TestVersion.sol +0 -44
  540. package/contracts/test/TestVersionable.sol +0 -17
  541. package/contracts/test/Usdc.sol +0 -26
  542. package/contracts/types/ChainId.sol +0 -38
  543. package/contracts/types/NumberId.sol +0 -52
  544. /package/contracts/{types → type}/DistributorType.sol +0 -0
  545. /package/contracts/{types → type}/Key32.sol +0 -0
  546. /package/contracts/{types → type}/UFixed.sol +0 -0
@@ -3,65 +3,56 @@ pragma solidity ^0.8.20;
3
3
 
4
4
  import {AccessManagedUpgradeable} from "@openzeppelin/contracts-upgradeable/access/manager/AccessManagedUpgradeable.sol";
5
5
 
6
- import {Key32, KeyId, Key32Lib} from "../types/Key32.sol";
7
- import {NftId} from "../types/NftId.sol";
8
- import {ClaimId} from "../types/ClaimId.sol";
9
- import {NumberId} from "../types/NumberId.sol";
10
- import {ObjectType, BUNDLE, DISTRIBUTION, INSTANCE, POLICY, POOL, ROLE, PRODUCT, TARGET, COMPONENT, DISTRIBUTOR, DISTRIBUTOR_TYPE} from "../types/ObjectType.sol";
11
- import {RiskId, RiskIdLib} from "../types/RiskId.sol";
12
- import {RoleId, RoleIdLib, INSTANCE_ROLE, INSTANCE_OWNER_ROLE} from "../types/RoleId.sol";
13
- import {StateId, ACTIVE} from "../types/StateId.sol";
14
- import {TimestampLib} from "../types/Timestamp.sol";
15
- import {VersionPart, VersionPartLib} from "../types/Version.sol";
16
-
17
- import {ERC165} from "../shared/ERC165.sol";
6
+ import {Key32} from "../type/Key32.sol";
7
+ import {NftId} from "../type/NftId.sol";
8
+ import {RiskId} from "../type/RiskId.sol";
9
+ import {ObjectType, BUNDLE, DISTRIBUTION, INSTANCE, POLICY, POOL, ROLE, PRODUCT, TARGET, COMPONENT, DISTRIBUTOR, DISTRIBUTOR_TYPE} from "../type/ObjectType.sol";
10
+ import {RoleId, RoleIdLib, eqRoleId, ADMIN_ROLE, INSTANCE_ROLE, INSTANCE_OWNER_ROLE} from "../type/RoleId.sol";
11
+ import {VersionPart, VersionPartLib} from "../type/Version.sol";
12
+ import {ClaimId} from "../type/ClaimId.sol";
13
+ import {ReferralId} from "../type/Referral.sol";
14
+ import {PayoutId} from "../type/PayoutId.sol";
15
+ import {DistributorType} from "../type/DistributorType.sol";
16
+
18
17
  import {Registerable} from "../shared/Registerable.sol";
18
+ import {TokenHandler} from "../shared/TokenHandler.sol";
19
+ import {AccessManagerExtendedInitializeable} from "../shared/AccessManagerExtendedInitializeable.sol";
19
20
 
20
21
  import {IRegistry} from "../registry/IRegistry.sol";
21
22
 
22
23
  import {IInstance} from "./IInstance.sol";
23
24
  import {InstanceReader} from "./InstanceReader.sol";
24
- import {InstanceAccessManager} from "./InstanceAccessManager.sol";
25
+ import {InstanceAdmin} from "./InstanceAdmin.sol";
25
26
  import {BundleManager} from "./BundleManager.sol";
27
+ import {InstanceStore} from "./InstanceStore.sol";
26
28
 
27
- import {KeyValueStore} from "./base/KeyValueStore.sol";
29
+ import {KeyValueStore} from "../shared/KeyValueStore.sol";
28
30
 
29
- import {IAccess} from "./module/IAccess.sol";
30
31
  import {IBundle} from "./module/IBundle.sol";
31
32
  import {IComponents} from "./module/IComponents.sol";
32
33
  import {IDistribution} from "./module/IDistribution.sol";
33
34
  import {IPolicy} from "./module/IPolicy.sol";
34
35
  import {IRisk} from "./module/IRisk.sol";
35
- import {ISetup} from "./module/ISetup.sol";
36
36
 
37
- import {IDistributionService} from "./service/IDistributionService.sol";
38
- import {IPoolService} from "./service/IPoolService.sol";
39
- import {IProductService} from "./service/IProductService.sol";
40
- import {IPolicyService} from "./service/IPolicyService.sol";
41
- import {IBundleService} from "./service/IBundleService.sol";
42
- import {TokenHandler} from "../shared/TokenHandler.sol";
43
- import {VersionPart, VersionPartLib} from "../types/Version.sol";
37
+ import {IDistributionService} from "../distribution/IDistributionService.sol";
38
+ import {IPoolService} from "../pool/IPoolService.sol";
39
+ import {IProductService} from "../product/IProductService.sol";
40
+ import {IPolicyService} from "../product/IPolicyService.sol";
41
+ import {IBundleService} from "../pool/IBundleService.sol";
44
42
 
45
43
  contract Instance is
46
44
  IInstance,
47
45
  AccessManagedUpgradeable,
48
- Registerable,
49
- KeyValueStore
46
+ Registerable
50
47
  {
51
-
52
48
  uint256 public constant GIF_MAJOR_VERSION = 3;
53
49
 
54
- uint64 public constant ADMIN_ROLE = type(uint64).min;
55
- uint64 public constant PUBLIC_ROLE = type(uint64).max;
56
- uint64 public constant CUSTOM_ROLE_ID_MIN = 10000;
57
-
58
- uint32 public constant EXECUTION_DELAY = 0;
59
-
60
50
  bool private _initialized;
61
51
 
62
- InstanceAccessManager internal _accessManager;
52
+ InstanceAdmin internal _instanceAdmin;
63
53
  InstanceReader internal _instanceReader;
64
54
  BundleManager internal _bundleManager;
55
+ InstanceStore internal _instanceStore;
65
56
 
66
57
  modifier onlyChainNft() {
67
58
  if(msg.sender != getRegistry().getChainNftAddress()) {
@@ -71,206 +62,156 @@ contract Instance is
71
62
  }
72
63
 
73
64
  function initialize(address authority, address registryAddress, address initialOwner)
74
- public
65
+ external
75
66
  initializer()
76
67
  {
68
+ if(authority == address(0)) {
69
+ revert ErrorInstanceInstanceAdminZero();
70
+ }
71
+
77
72
  __AccessManaged_init(authority);
78
73
 
79
74
  IRegistry registry = IRegistry(registryAddress);
80
75
  initializeRegisterable(registryAddress, registry.getNftId(), INSTANCE(), true, initialOwner, "");
81
- initializeLifecycle();
82
76
 
83
77
  registerInterface(type(IInstance).interfaceId);
84
78
  }
85
79
 
86
- //--- ProductSetup ------------------------------------------------------//
87
- function createProductSetup(NftId productNftId, ISetup.ProductSetupInfo memory setup) external restricted() {
88
- create(_toNftKey32(productNftId, PRODUCT()), abi.encode(setup));
89
- }
90
-
91
- function updateProductSetup(NftId productNftId, ISetup.ProductSetupInfo memory setup, StateId newState) external restricted() {
92
- update(_toNftKey32(productNftId, PRODUCT()), abi.encode(setup), newState);
93
- }
94
-
95
- function updateProductSetupState(NftId productNftId, StateId newState) external restricted() {
96
- updateState(_toNftKey32(productNftId, PRODUCT()), newState);
97
- }
98
-
99
- //--- DistributionSetup ------------------------------------------------------//
100
- function createDistributionSetup(NftId distributionNftId, ISetup.DistributionSetupInfo memory setup) external restricted() {
101
- create(_toNftKey32(distributionNftId, DISTRIBUTION()), abi.encode(setup));
102
- }
103
-
104
- function updateDistributionSetup(NftId distributionNftId, ISetup.DistributionSetupInfo memory setup, StateId newState) external restricted() {
105
- update(_toNftKey32(distributionNftId, DISTRIBUTION()), abi.encode(setup), newState);
106
- }
107
-
108
- function updateDistributionSetupState(NftId distributionNftId, StateId newState) external restricted() {
109
- updateState(_toNftKey32(distributionNftId, DISTRIBUTION()), newState);
110
- }
111
-
112
- //--- PoolSetup ------------------------------------------------------//
113
- function createPoolSetup(NftId poolNftId, IComponents.ComponentInfo memory info) external restricted() {
114
- create(_toNftKey32(poolNftId, POOL()), abi.encode(info));
115
- }
116
-
117
- function updatePoolSetup(NftId poolNftId, IComponents.ComponentInfo memory info, StateId newState) external restricted() {
118
- update(_toNftKey32(poolNftId, POOL()), abi.encode(info), newState);
119
- }
120
-
121
- function updatePoolSetupState(NftId poolNftId, StateId newState) external restricted() {
122
- updateState(_toNftKey32(poolNftId, POOL()), newState);
123
- }
124
-
125
- //--- DistributorType -------------------------------------------------------//
126
- function createDistributorType(Key32 distributorKey, IDistribution.DistributorTypeInfo memory info) external restricted() {
127
- create(distributorKey, abi.encode(info));
128
- }
80
+ //--- Roles ------------------------------------------------------------//
129
81
 
130
- function updateDistributorType(Key32 distributorKey, IDistribution.DistributorTypeInfo memory info, StateId newState) external restricted() {
131
- update(distributorKey, abi.encode(info), newState);
132
- }
133
-
134
- function updateDistributorTypeState(Key32 distributorKey, StateId newState) external restricted() {
135
- updateState(distributorKey, newState);
136
- }
137
-
138
- //--- Distributor -------------------------------------------------------//
139
- function createDistributor(NftId nftId, IDistribution.DistributorInfo memory info) external restricted() {
140
- create(toDistributorKey32(nftId), abi.encode(info));
141
- }
142
-
143
- function updateDistributor(NftId nftId, IDistribution.DistributorInfo memory info, StateId newState) external restricted() {
144
- update(toDistributorKey32(nftId), abi.encode(info), newState);
145
- }
146
-
147
- function updateDistributorState(NftId nftId, StateId newState) external restricted() {
148
- updateState(toDistributorKey32(nftId), newState);
149
- }
150
-
151
- //--- Referral ----------------------------------------------------------//
152
- function createReferral(Key32 referralKey, IDistribution.ReferralInfo memory referralInfo) external restricted() {
153
- create(referralKey, abi.encode(referralInfo));
154
- }
155
-
156
- function updateReferral(Key32 referralKey, IDistribution.ReferralInfo memory referralInfo, StateId newState) external restricted() {
157
- update(referralKey, abi.encode(referralInfo), newState);
158
- }
159
-
160
- function updateReferralState(Key32 referralKey, StateId newState) external restricted() {
161
- updateState(referralKey, newState);
162
- }
163
-
164
- //--- Bundle ------------------------------------------------------------//
165
- function createBundle(NftId bundleNftId, IBundle.BundleInfo memory bundle) external restricted() {
166
- create(toBundleKey32(bundleNftId), abi.encode(bundle));
82
+ function createRole(string memory roleName, string memory adminName)
83
+ external
84
+ restricted // INSTANCE_OWNER_ROLE
85
+ returns (RoleId roleId, RoleId admin)
86
+ {
87
+ (roleId, admin) = _instanceAdmin.createRole(roleName, adminName);
167
88
  }
168
89
 
169
- function updateBundle(NftId bundleNftId, IBundle.BundleInfo memory bundle, StateId newState) external restricted() {
170
- update(toBundleKey32(bundleNftId), abi.encode(bundle), newState);
90
+ function grantRole(RoleId roleId, address account)
91
+ external
92
+ restricted // INSTANCE_OWNER_ROLE
93
+ {
94
+ AccessManagerExtendedInitializeable(authority()).grantRole(roleId.toInt(), account, 0);
171
95
  }
172
96
 
173
- function updateBundleState(NftId bundleNftId, StateId newState) external restricted() {
174
- updateState(toBundleKey32(bundleNftId), newState);
97
+ function revokeRole(RoleId roleId, address account)
98
+ external
99
+ restricted // INSTANCE_OWNER_ROLE
100
+ {
101
+ AccessManagerExtendedInitializeable(authority()).revokeRole(roleId.toInt(), account);
175
102
  }
176
103
 
177
- //--- Risk --------------------------------------------------------------//
178
- function createRisk(RiskId riskId, IRisk.RiskInfo memory risk) external restricted() {
179
- create(riskId.toKey32(), abi.encode(risk));
180
- }
104
+ //--- Targets ------------------------------------------------------------//
181
105
 
182
- function updateRisk(RiskId riskId, IRisk.RiskInfo memory risk, StateId newState) external restricted() {
183
- update(riskId.toKey32(), abi.encode(risk), newState);
106
+ function createTarget(address target, string memory name)
107
+ external
108
+ restricted // INSTANCE_OWNER_ROLE
109
+ {
110
+ _instanceAdmin.createTarget(target, name);
184
111
  }
185
112
 
186
- function updateRiskState(RiskId riskId, StateId newState) external restricted() {
187
- updateState(riskId.toKey32(), newState);
113
+ function setTargetFunctionRole(
114
+ string memory targetName,
115
+ bytes4[] calldata selectors,
116
+ RoleId roleId
117
+ )
118
+ external
119
+ restricted // INSTANCE_OWNER_ROLE
120
+ {
121
+ _instanceAdmin.setTargetFunctionRoleByInstance(targetName, selectors, roleId);
188
122
  }
189
123
 
190
- //--- Application (Policy) ----------------------------------------------//
191
- function createApplication(NftId applicationNftId, IPolicy.PolicyInfo memory policy) external restricted() {
192
- create(toPolicyKey32(applicationNftId), abi.encode(policy));
124
+ function setTargetLocked(address target, bool locked)
125
+ external
126
+ restricted // INSTANCE_OWNER_ROLE
127
+ {
128
+ _instanceAdmin.setTargetLockedByInstance(target, locked);
193
129
  }
194
130
 
195
- function updateApplication(NftId applicationNftId, IPolicy.PolicyInfo memory policy, StateId newState) external restricted() {
196
- update(toPolicyKey32(applicationNftId), abi.encode(policy), newState);
197
- }
131
+ //--- ITransferInterceptor ----------------------------------------------//
198
132
 
199
- function updateApplicationState(NftId applicationNftId, StateId newState) external restricted() {
200
- updateState(toPolicyKey32(applicationNftId), newState);
133
+ // TODO interception of child components nfts
134
+ function nftMint(address to, uint256 tokenId) external onlyChainNft {
135
+ _instanceAdmin.transferInstanceOwnerRole(address(0), to);
201
136
  }
202
137
 
203
- //--- Policy ------------------------------------------------------------//
204
- function updatePolicy(NftId policyNftId, IPolicy.PolicyInfo memory policy, StateId newState) external restricted() {
205
- update(toPolicyKey32(policyNftId), abi.encode(policy), newState);
138
+ function nftTransferFrom(address from, address to, uint256 tokenId) external onlyChainNft {
139
+ _instanceAdmin.transferInstanceOwnerRole(from, to);
206
140
  }
207
141
 
208
- function updatePolicyState(NftId policyNftId, StateId newState) external restricted() {
209
- updateState(toPolicyKey32(policyNftId), newState);
210
- }
142
+ //function nftBurn(address from, uint256 tokenId) external onlyChainNft {
143
+ //_instanceAdmin.transferInstanceOwnerRole(from, address(0));
144
+ //}
211
145
 
212
- //--- Claim -------------------------------------------------------------//
213
- function createClaim(NftId policyNftId, ClaimId claimId, IPolicy.ClaimInfo memory claim) external restricted() {
214
- create(toPolicyKey32(policyNftId), abi.encode(claim));
215
- }
146
+ //--- initial setup functions -------------------------------------------//
216
147
 
217
- function updateClaim(NftId policyNftId, ClaimId claimId, IPolicy.ClaimInfo memory claim, StateId newState) external restricted() {
218
- update(toPolicyKey32(policyNftId), abi.encode(claim), newState);
148
+ function setInstanceAdmin(InstanceAdmin accessManager) external restricted {
149
+ if(address(_instanceAdmin) != address(0)) {
150
+ revert ErrorInstanceInstanceAdminAlreadySet(address(_instanceAdmin));
151
+ }
152
+ if(accessManager.authority() != authority()) {
153
+ revert ErrorInstanceInstanceAdminAuthorityMismatch(authority());
154
+ }
155
+ _instanceAdmin = accessManager;
219
156
  }
220
-
221
- function updateClaimState(NftId policyNftId, ClaimId claimId, StateId newState) external restricted() {
222
- updateState(toPolicyKey32(policyNftId), newState);
157
+
158
+ function setBundleManager(BundleManager bundleManager) external restricted() {
159
+ if(address(_bundleManager) != address(0)) {
160
+ revert ErrorInstanceBundleManagerAlreadySet(address(_bundleManager));
161
+ }
162
+ if(bundleManager.getInstance() != Instance(this)) {
163
+ revert ErrorInstanceBundleManagerInstanceMismatch(address(this));
164
+ }
165
+ if(bundleManager.authority() != authority()) {
166
+ revert ErrorInstanceBundleManagerAuthorityMismatch(authority());
167
+ }
168
+ _bundleManager = bundleManager;
223
169
  }
224
170
 
225
- //--- Payout ------------------------------------------------------------//
226
- function createPayout(NftId policyNftId, NumberId payoutId, IPolicy.PayoutInfo memory payout) external restricted() {
227
- create(toPolicyKey32(policyNftId), abi.encode(payout));
228
- }
171
+ function setInstanceReader(InstanceReader instanceReader) external restricted() {
172
+ if(instanceReader.getInstance() != Instance(this)) {
173
+ revert ErrorInstanceInstanceReaderInstanceMismatch(address(this));
174
+ }
229
175
 
230
- function updatePayout(NftId policyNftId, NumberId payoutId, IPolicy.PayoutInfo memory payout, StateId newState) external restricted() {
231
- update(toPolicyKey32(policyNftId), abi.encode(payout), newState);
176
+ _instanceReader = instanceReader;
232
177
  }
233
178
 
234
- function updatePayoutState(NftId policyNftId, StateId newState) external restricted() {
235
- updateState(toPolicyKey32(policyNftId), newState);
236
- }
179
+ //--- external view functions -------------------------------------------//
237
180
 
238
- //--- ITransferInterceptor ------------------------------------------------------------//
239
- function nftMint(address to, uint256 tokenId) external onlyChainNft {
240
- assert(_accessManager.roleMembers(INSTANCE_OWNER_ROLE()) == 0);// temp
241
- assert(_accessManager.grantRole(INSTANCE_OWNER_ROLE(), to) == true);
181
+ function getInstanceReader() external view returns (InstanceReader) {
182
+ return _instanceReader;
242
183
  }
243
184
 
244
- function nftTransferFrom(address from, address to, uint256 tokenId) external onlyChainNft {
245
- assert(_accessManager.revokeRole(INSTANCE_OWNER_ROLE(), from) == true);
246
- assert(_accessManager.grantRole(INSTANCE_OWNER_ROLE(), to) == true);
185
+ function getBundleManager() external view returns (BundleManager) {
186
+ return _bundleManager;
247
187
  }
248
188
 
249
- //--- internal view/pure functions --------------------------------------//
250
- function _toNftKey32(NftId nftId, ObjectType objectType) internal pure returns (Key32) {
251
- return nftId.toKey32(objectType);
189
+ function getInstanceAdmin() external view returns (InstanceAdmin) {
190
+ return _instanceAdmin;
252
191
  }
253
192
 
254
- function toBundleKey32(NftId bundleNftId) public pure returns (Key32) {
255
- return bundleNftId.toKey32(BUNDLE());
193
+ function getInstanceAccessManager() external view returns (AccessManagerExtendedInitializeable) {
194
+ return AccessManagerExtendedInitializeable(authority());
256
195
  }
257
196
 
258
- function toPolicyKey32(NftId policyNftId) public pure returns (Key32) {
259
- return policyNftId.toKey32(POLICY());
197
+ function setInstanceStore(InstanceStore instanceStore) external restricted {
198
+ if(address(_instanceStore) != address(0)) {
199
+ revert ErrorInstanceInstanceStoreAlreadySet(address(_instanceStore));
200
+ }
201
+ if(instanceStore.authority() != authority()) {
202
+ revert ErrorInstanceInstanceStoreAuthorityMismatch(authority());
203
+ }
204
+ _instanceStore = instanceStore;
260
205
  }
261
206
 
262
- function toDistributionKey32(NftId distNftId) public pure returns (Key32) {
263
- return distNftId.toKey32(DISTRIBUTION());
207
+ function getInstanceStore() external view returns (InstanceStore) {
208
+ return _instanceStore;
264
209
  }
265
210
 
266
- function toDistributorTypeKey32(NftId distNftId) public pure returns (Key32) {
267
- return distNftId.toKey32(DISTRIBUTOR_TYPE());
211
+ function getMajorVersion() external pure returns (VersionPart majorVersion) {
212
+ return VersionPartLib.toVersionPart(GIF_MAJOR_VERSION);
268
213
  }
269
214
 
270
- function toDistributorKey32(NftId distNftId) public pure returns (Key32) {
271
- return distNftId.toKey32(DISTRIBUTOR());
272
- }
273
-
274
215
  function getDistributionService() external view returns (IDistributionService) {
275
216
  return IDistributionService(getRegistry().getServiceAddress(DISTRIBUTION(), VersionPart.wrap(3)));
276
217
  }
@@ -291,37 +232,5 @@ contract Instance is
291
232
  return IBundleService(getRegistry().getServiceAddress(BUNDLE(), VersionPart.wrap(3)));
292
233
  }
293
234
 
294
- function setInstanceReader(InstanceReader instanceReader) external restricted() {
295
- require(instanceReader.getInstance() == Instance(this), "InstanceReader instance mismatch");
296
- _instanceReader = instanceReader;
297
- }
298
-
299
- function getMajorVersion() external pure returns (VersionPart majorVersion) {
300
- return VersionPartLib.toVersionPart(GIF_MAJOR_VERSION);
301
- }
302
-
303
- function getInstanceReader() external view returns (InstanceReader) {
304
- return _instanceReader;
305
- }
306
-
307
- function setBundleManager(BundleManager bundleManager) external restricted() {
308
- require(address(_bundleManager) == address(0), "BundleManager is set");
309
- require(bundleManager.getInstance() == Instance(this), "BundleManager instance mismatch");
310
- require(bundleManager.authority() == authority(), "BundleManager authority mismatch");
311
- _bundleManager = bundleManager;
312
- }
313
-
314
- function getBundleManager() external view returns (BundleManager) {
315
- return _bundleManager;
316
- }
317
-
318
- function setInstanceAccessManager(InstanceAccessManager accessManager) external restricted {
319
- require(address(_accessManager) == address(0), "InstanceAccessManager is set");
320
- require(accessManager.authority() == authority(), "InstanceAccessManager authority mismatch");
321
- _accessManager = accessManager;
322
- }
323
-
324
- function getInstanceAccessManager() external view returns (InstanceAccessManager) {
325
- return _accessManager;
326
- }
327
- }
235
+ //--- internal view/pure functions --------------------------------------//
236
+ }