@etherisc/gif-next 0.0.2-ffa91a6-022 → 3.0.0-04e2e0d-531

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 (511) hide show
  1. package/README.md +131 -332
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  3. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +111 -57
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  5. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +107 -45
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  7. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +65 -19
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +370 -141
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +1582 -202
  12. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  13. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +25 -6
  14. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  15. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +266 -64
  16. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  17. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  18. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +263 -87
  19. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  20. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +102 -19
  21. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  22. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +256 -16
  23. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  24. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +426 -27
  25. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  26. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +63 -38
  27. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  28. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +269 -69
  29. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  30. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +21 -12
  31. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  32. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +463 -149
  33. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  34. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +160 -78
  35. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  36. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +20 -11
  37. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  38. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +317 -19
  39. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  40. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  41. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +108 -79
  42. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  43. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +268 -68
  44. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  45. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +136 -95
  46. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  47. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +268 -68
  48. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  49. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +4 -0
  50. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +799 -0
  51. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +4 -0
  52. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +229 -0
  53. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +4 -0
  54. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +801 -0
  55. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +4 -0
  56. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +1353 -0
  57. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +4 -0
  58. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +896 -0
  59. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +4 -0
  60. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +1466 -0
  61. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +4 -0
  62. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +844 -0
  63. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +4 -0
  64. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +2289 -0
  65. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +4 -0
  66. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +891 -0
  67. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +4 -0
  68. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +711 -0
  69. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +4 -0
  70. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +586 -0
  71. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +4 -0
  72. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.json +901 -0
  73. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  74. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +86 -45
  75. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  76. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +268 -68
  77. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  78. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +35 -26
  79. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  80. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +130 -105
  81. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  82. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +268 -68
  83. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  84. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +333 -147
  85. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  86. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +268 -68
  87. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +4 -0
  88. package/artifacts/contracts/{shared/IKeyValueStore.sol/IKeyValueStore.json → instance/BaseStore.sol/BaseStore.json} +84 -212
  89. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  90. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +2 -2
  91. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +4 -0
  92. package/artifacts/contracts/{shared/KeyValueStore.sol/KeyValueStore.json → instance/IBaseStore.sol/IBaseStore.json} +61 -245
  93. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  94. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +374 -35
  95. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  96. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +366 -5
  97. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  98. package/artifacts/contracts/instance/Instance.sol/Instance.json +425 -97
  99. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  100. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +753 -401
  101. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  102. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +236 -80
  103. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  104. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +782 -553
  105. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  106. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +392 -31
  107. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  108. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +100 -42
  109. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  110. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +1374 -2013
  111. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +4 -0
  112. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +3477 -0
  113. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  114. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +101 -88
  115. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  116. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +8 -8
  117. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  118. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  119. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  120. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  121. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  122. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  123. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +2 -2
  124. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  125. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +20 -20
  126. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  127. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  128. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  129. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  130. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  131. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  132. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  133. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +25 -16
  134. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  135. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +282 -65
  136. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  137. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  138. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +19 -10
  139. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  140. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +29 -0
  141. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  142. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +19 -10
  143. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  144. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +83 -38
  145. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  146. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +116 -50
  147. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  148. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +59 -58
  149. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  150. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +268 -68
  151. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  152. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +312 -123
  153. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  154. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +144 -58
  155. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  156. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +198 -33
  157. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  158. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +29 -20
  159. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  160. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +250 -19
  161. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  162. package/artifacts/contracts/pool/Pool.sol/Pool.json +29 -20
  163. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  164. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +100 -34
  165. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  166. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +350 -79
  167. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  168. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +141 -63
  169. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  170. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +216 -59
  171. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  172. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +113 -43
  173. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  174. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +46 -37
  175. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  176. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +268 -68
  177. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  178. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +142 -102
  179. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  180. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +128 -70
  181. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  182. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +166 -1
  183. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  184. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +50 -10
  185. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  186. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +67 -0
  187. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  188. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +29 -0
  189. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  190. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +40 -31
  191. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  192. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +203 -18
  193. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  194. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +169 -86
  195. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  196. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +519 -21
  197. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  198. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +138 -72
  199. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  200. package/artifacts/contracts/product/PricingService.sol/PricingService.json +93 -112
  201. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  202. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +115 -65
  203. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  204. package/artifacts/contracts/product/Product.sol/Product.json +40 -31
  205. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  206. package/artifacts/contracts/product/RiskService.sol/RiskService.json +231 -46
  207. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  208. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +101 -43
  209. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  210. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  211. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  212. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +39 -22
  213. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  214. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +29 -0
  215. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  216. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  217. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  218. package/artifacts/contracts/registry/Registry.sol/Registry.json +77 -60
  219. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  220. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +539 -314
  221. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  222. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +335 -76
  223. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  224. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +41 -12
  225. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  226. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +96 -38
  227. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  228. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +551 -246
  229. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  230. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
  231. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  232. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +169 -111
  233. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  234. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +459 -26
  235. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  236. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +119 -59
  237. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  238. package/artifacts/contracts/shared/Component.sol/Component.json +19 -10
  239. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  240. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +221 -201
  241. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  242. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +130 -64
  243. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  244. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +76 -41
  245. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  246. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  247. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
  248. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +2 -2
  249. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +4 -0
  250. package/artifacts/contracts/shared/{ComponentVerifyingService.sol/ComponentVerifyingService.json → IAuthorizedComponent.sol/IAuthorizedComponent.json} +238 -90
  251. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  252. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +19 -10
  253. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  254. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +136 -132
  255. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  256. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +19 -10
  257. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  258. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  259. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +19 -0
  260. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  261. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  262. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +19 -0
  263. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  264. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  265. package/artifacts/contracts/shared/IService.sol/IService.json +29 -0
  266. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  267. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  268. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +19 -10
  269. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  270. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  271. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  272. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  273. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +21 -2
  274. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  275. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  276. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  277. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +19 -0
  278. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  279. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  280. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  281. package/artifacts/contracts/shared/Service.sol/Service.json +29 -0
  282. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  283. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
  284. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  285. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +2 -2
  286. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  287. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +2 -2
  288. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  289. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1415 -134
  290. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  291. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +109 -117
  292. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +4 -0
  293. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.json +50 -0
  294. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  295. package/artifacts/contracts/staking/Staking.sol/Staking.json +1504 -192
  296. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  297. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +77 -76
  298. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  299. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +139 -64
  300. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  301. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +296 -152
  302. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  303. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +143 -167
  304. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  305. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +96 -46
  306. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  307. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +1615 -815
  308. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +4 -0
  309. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +309 -0
  310. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  311. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +153 -91
  312. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  313. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  314. package/artifacts/contracts/type/Amount.sol/AmountLib.json +10 -10
  315. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  316. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +64 -19
  317. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +4 -0
  318. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +193 -0
  319. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  320. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  321. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  322. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  323. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  324. package/artifacts/contracts/type/Fee.sol/FeeLib.json +93 -37
  325. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  326. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  327. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  328. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
  329. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  330. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  331. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  332. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  333. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  334. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +22 -25
  335. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  336. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  337. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  338. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +23 -4
  339. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  340. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
  341. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +4 -0
  342. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +33 -0
  343. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  344. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  345. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  346. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +39 -218
  347. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  348. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +64 -2
  349. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  350. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  351. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  352. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  353. package/artifacts/contracts/type/String.sol/StrLib.json +69 -2
  354. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  355. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +37 -5
  356. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  357. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +60 -36
  358. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  359. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  360. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  361. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.json +10 -0
  362. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  363. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +81 -27
  364. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  365. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +15 -2
  366. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  367. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.json +10 -0
  368. package/contracts/accounting/AccountingService.sol +31 -31
  369. package/contracts/accounting/IAccountingService.sol +9 -8
  370. package/contracts/authorization/AccessAdmin.sol +281 -325
  371. package/contracts/authorization/AccessAdminLib.sol +535 -23
  372. package/contracts/authorization/AccessManagerCloneable.sol +3 -18
  373. package/contracts/authorization/Authorization.sol +64 -239
  374. package/contracts/authorization/IAccess.sol +29 -12
  375. package/contracts/authorization/IAccessAdmin.sol +25 -53
  376. package/contracts/authorization/IAuthorization.sol +3 -57
  377. package/contracts/authorization/IServiceAuthorization.sol +55 -17
  378. package/contracts/authorization/ServiceAuthorization.sol +228 -34
  379. package/contracts/distribution/BasicDistribution.sol +3 -4
  380. package/contracts/distribution/BasicDistributionAuthorization.sol +11 -4
  381. package/contracts/distribution/Distribution.sol +9 -8
  382. package/contracts/distribution/DistributionService.sol +127 -62
  383. package/contracts/distribution/IDistributionComponent.sol +3 -1
  384. package/contracts/distribution/IDistributionService.sol +21 -8
  385. package/contracts/examples/fire/FireProduct.sol +6 -6
  386. package/contracts/examples/flight/FlightLib.sol +337 -0
  387. package/contracts/examples/flight/FlightMessageVerifier.sol +128 -0
  388. package/contracts/examples/flight/FlightNft.sol +234 -0
  389. package/contracts/examples/flight/FlightOracle.sol +226 -0
  390. package/contracts/examples/flight/FlightOracleAuthorization.sol +57 -0
  391. package/contracts/examples/flight/FlightPool.sol +89 -0
  392. package/contracts/examples/flight/FlightPoolAuthorization.sol +37 -0
  393. package/contracts/examples/flight/FlightProduct.sol +687 -0
  394. package/contracts/examples/flight/FlightProductAuthorization.sol +70 -0
  395. package/contracts/examples/flight/FlightProductManager.sol +49 -0
  396. package/contracts/examples/flight/FlightUSD.sol +28 -0
  397. package/contracts/examples/flight/originalV1.sol +396 -0
  398. package/contracts/examples/unpermissioned/SimpleProduct.sol +83 -19
  399. package/contracts/instance/BaseStore.sol +97 -0
  400. package/contracts/instance/IBaseStore.sol +45 -0
  401. package/contracts/instance/IInstance.sol +57 -6
  402. package/contracts/instance/IInstanceService.sol +44 -7
  403. package/contracts/instance/Instance.sol +111 -56
  404. package/contracts/instance/InstanceAdmin.sol +150 -294
  405. package/contracts/instance/InstanceAuthorizationV3.sol +106 -66
  406. package/contracts/instance/InstanceReader.sol +384 -394
  407. package/contracts/instance/InstanceService.sol +190 -134
  408. package/contracts/instance/InstanceStore.sol +153 -128
  409. package/contracts/instance/ProductStore.sol +290 -0
  410. package/contracts/instance/RiskSet.sol +10 -2
  411. package/contracts/instance/TargetNames.sol +10 -0
  412. package/contracts/instance/base/BalanceStore.sol +4 -6
  413. package/contracts/instance/base/ObjectLifecycle.sol +2 -6
  414. package/contracts/instance/module/IBundle.sol +6 -5
  415. package/contracts/instance/module/IComponents.sol +15 -5
  416. package/contracts/instance/module/IDistribution.sol +17 -7
  417. package/contracts/instance/module/IPolicy.sol +28 -8
  418. package/contracts/instance/module/IRisk.sol +2 -0
  419. package/contracts/oracle/BasicOracle.sol +3 -3
  420. package/contracts/oracle/BasicOracleAuthorization.sol +18 -2
  421. package/contracts/oracle/IOracle.sol +9 -4
  422. package/contracts/oracle/IOracleService.sol +12 -12
  423. package/contracts/oracle/Oracle.sol +6 -8
  424. package/contracts/oracle/OracleService.sol +8 -8
  425. package/contracts/pool/BasicPool.sol +4 -16
  426. package/contracts/pool/BasicPoolAuthorization.sol +10 -5
  427. package/contracts/pool/BundleService.sol +34 -43
  428. package/contracts/pool/IBundleService.sol +14 -13
  429. package/contracts/pool/IPoolService.sol +8 -3
  430. package/contracts/pool/Pool.sol +6 -18
  431. package/contracts/pool/PoolLib.sol +127 -2
  432. package/contracts/pool/PoolService.sol +41 -182
  433. package/contracts/product/ApplicationService.sol +64 -11
  434. package/contracts/product/BasicProduct.sol +2 -3
  435. package/contracts/product/BasicProductAuthorization.sol +13 -5
  436. package/contracts/product/ClaimService.sol +99 -105
  437. package/contracts/product/IApplicationService.sol +21 -2
  438. package/contracts/product/IClaimService.sol +5 -4
  439. package/contracts/product/IPolicyService.sol +10 -3
  440. package/contracts/product/IRiskService.sol +18 -3
  441. package/contracts/product/PolicyService.sol +41 -60
  442. package/contracts/product/PolicyServiceLib.sol +83 -7
  443. package/contracts/product/PricingService.sol +28 -31
  444. package/contracts/product/Product.sol +40 -16
  445. package/contracts/product/RiskService.sol +50 -15
  446. package/contracts/registry/ChainNft.sol +1 -1
  447. package/contracts/registry/IRegistry.sol +15 -9
  448. package/contracts/registry/IRelease.sol +6 -3
  449. package/contracts/registry/Registry.sol +15 -9
  450. package/contracts/registry/RegistryAdmin.sol +39 -118
  451. package/contracts/registry/RegistryAuthorization.sol +139 -69
  452. package/contracts/registry/RegistryService.sol +1 -1
  453. package/contracts/registry/ReleaseAdmin.sol +59 -106
  454. package/contracts/registry/ReleaseRegistry.sol +20 -12
  455. package/contracts/registry/ServiceAuthorizationV3.sol +43 -32
  456. package/contracts/registry/TokenRegistry.sol +56 -52
  457. package/contracts/shared/Component.sol +8 -8
  458. package/contracts/shared/ComponentService.sol +250 -262
  459. package/contracts/shared/ContractLib.sol +106 -75
  460. package/contracts/shared/EcdsaChecker.sol +5 -0
  461. package/contracts/shared/IAuthorizedComponent.sol +15 -0
  462. package/contracts/shared/IComponent.sol +1 -1
  463. package/contracts/shared/IComponentService.sol +15 -15
  464. package/contracts/shared/IInstanceLinkedComponent.sol +2 -5
  465. package/contracts/shared/INftOwnable.sol +2 -0
  466. package/contracts/shared/IRegisterable.sol +0 -1
  467. package/contracts/shared/InstanceLinkedComponent.sol +64 -26
  468. package/contracts/shared/NftOwnable.sol +3 -1
  469. package/contracts/shared/PolicyHolder.sol +3 -2
  470. package/contracts/shared/Service.sol +6 -4
  471. package/contracts/staking/IStaking.sol +263 -70
  472. package/contracts/staking/IStakingService.sol +40 -85
  473. package/contracts/staking/ITargetLimitHandler.sol +17 -0
  474. package/contracts/staking/Staking.sol +469 -217
  475. package/contracts/staking/StakingLib.sol +38 -124
  476. package/contracts/staking/StakingManager.sol +4 -3
  477. package/contracts/staking/StakingReader.sol +62 -71
  478. package/contracts/staking/StakingService.sol +43 -186
  479. package/contracts/staking/StakingServiceManager.sol +1 -0
  480. package/contracts/staking/StakingStore.sol +1093 -331
  481. package/contracts/staking/TargetHandler.sol +132 -0
  482. package/contracts/staking/TargetManagerLib.sol +69 -46
  483. package/contracts/type/Amount.sol +4 -0
  484. package/contracts/type/Blocknumber.sol +17 -22
  485. package/contracts/type/ChainId.sol +101 -0
  486. package/contracts/type/Fee.sol +8 -8
  487. package/contracts/type/NftId.sol +3 -3
  488. package/contracts/type/ObjectType.sol +17 -33
  489. package/contracts/type/Referral.sol +6 -0
  490. package/contracts/type/RequestIdSet.sol +62 -0
  491. package/contracts/type/RoleId.sol +57 -59
  492. package/contracts/type/Seconds.sol +23 -0
  493. package/contracts/type/String.sol +42 -0
  494. package/contracts/type/Timestamp.sol +14 -3
  495. package/contracts/type/UFixed.sol +28 -10
  496. package/contracts/upgradeability/IVersionable.sol +3 -0
  497. package/contracts/upgradeability/ProxyManager.sol +26 -12
  498. package/contracts/upgradeability/UpgradableProxyWithAdmin.sol +12 -2
  499. package/contracts/upgradeability/Versionable.sol +6 -3
  500. package/package.json +2 -1
  501. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +0 -4
  502. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.json +0 -24
  503. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +0 -4
  504. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  505. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  506. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +0 -4
  507. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +0 -205
  508. package/contracts/shared/ComponentVerifyingService.sol +0 -128
  509. package/contracts/shared/IKeyValueStore.sol +0 -54
  510. package/contracts/shared/KeyValueStore.sol +0 -131
  511. package/contracts/staking/StakingLifecycle.sol +0 -23
@@ -6,29 +6,216 @@ import {AccessManagedUpgradeable} from "@openzeppelin/contracts-upgradeable/acce
6
6
  import {IAccess} from "./IAccess.sol";
7
7
  import {IAccessAdmin} from "./IAccessAdmin.sol";
8
8
  import {IAuthorization} from "./IAuthorization.sol";
9
+ import {IComponent} from "../shared/IComponent.sol";
10
+ import {IAuthorizedComponent} from "../shared/IAuthorizedComponent.sol";
9
11
  import {IRegistry} from "../registry/IRegistry.sol";
12
+ import {IService} from "../shared/IService.sol";
13
+ import {IServiceAuthorization} from "./IServiceAuthorization.sol";
10
14
 
15
+ import {AccessManagerCloneable} from "./AccessManagerCloneable.sol";
16
+ import {BlocknumberLib} from "../type/Blocknumber.sol";
11
17
  import {ContractLib} from "../shared/ContractLib.sol";
12
18
  import {ObjectType} from "../type/ObjectType.sol";
13
- import {RoleId} from "../type/RoleId.sol";
14
- import {SelectorLib} from "../type/Selector.sol";
19
+ import {RoleId, RoleIdLib, ADMIN_ROLE, PUBLIC_ROLE} from "../type/RoleId.sol";
20
+ import {Selector, SelectorLib} from "../type/Selector.sol";
15
21
  import {Str, StrLib} from "../type/String.sol";
16
22
  import {TimestampLib} from "../type/Timestamp.sol";
17
- import {VersionPart} from "../type/Version.sol";
23
+ import {VersionPart, VersionPartLib} from "../type/Version.sol";
18
24
 
19
25
 
20
26
  library AccessAdminLib { // ACCESS_ADMIN_LIB
21
27
 
28
+ string public constant TOKEN_HANDLER_SUFFIX = "Th";
29
+ string public constant ROLE_SUFFIX = "_Role";
30
+
31
+ uint64 public constant SERVICE_DOMAIN_ROLE_FACTOR = 100;
32
+ uint64 public constant COMPONENT_ROLE_FACTOR = 1000;
33
+ uint64 public constant COMPONENT_ROLE_MAX = 19000;
34
+
35
+ uint64 public constant CORE_ROLE_MIN = 100;
36
+ uint64 public constant SERVICE_ROLE_MIN = 1000; // + service domain * SERVICE_ROLE_FACTOR + release
37
+ uint64 public constant SERVICE_ROLE_FACTOR = 1000;
38
+ uint64 public constant INSTANCE_ROLE_MIN = 100000;
39
+
40
+ // MUST match with Authorization.COMPONENT_ROLE_MIN
41
+ uint64 public constant COMPONENT_ROLE_MIN = 110000;
42
+
43
+ uint64 public constant CUSTOM_ROLE_MIN = 1000000;
44
+
45
+
46
+ function ADMIN_ROLE_NAME() public pure returns (string memory) {
47
+ return "AdminRole";
48
+ }
49
+
50
+
51
+ function isAdminRoleName(string memory name) public pure returns (bool) {
52
+ return StrLib.eq(name, ADMIN_ROLE_NAME());
53
+ }
54
+
55
+
56
+ function PUBLIC_ROLE_NAME() public pure returns (string memory) {
57
+ return "PublicRole";
58
+ }
59
+
60
+
61
+ function getAdminRole() public pure returns (RoleId adminRoleId) {
62
+ // see oz AccessManagerUpgradeable
63
+ return RoleId.wrap(type(uint64).min);
64
+ }
65
+
66
+
67
+ function getPublicRole() public pure returns (RoleId publicRoleId) {
68
+ // see oz AccessManagerUpgradeable
69
+ return RoleId.wrap(type(uint64).max);
70
+ }
71
+
72
+
73
+ function isAdminOrPublicRole(string memory name)
74
+ public
75
+ view
76
+ returns (bool)
77
+ {
78
+ return StrLib.eq(name, ADMIN_ROLE_NAME())
79
+ || StrLib.eq(name, PUBLIC_ROLE_NAME());
80
+ }
81
+
82
+
83
+ function isDynamicRoleId(RoleId roleId)
84
+ public
85
+ pure
86
+ returns (bool)
87
+ {
88
+ return roleId.toInt() >= COMPONENT_ROLE_MIN;
89
+ }
90
+
91
+
92
+ function adminRoleInfo()
93
+ public
94
+ view
95
+ returns (IAccess.RoleInfo memory)
96
+ {
97
+ return roleInfo(
98
+ getAdminRole(),
99
+ IAccess.TargetType.Core,
100
+ 1,
101
+ ADMIN_ROLE_NAME());
102
+ }
103
+
104
+
105
+ function publicRoleInfo()
106
+ public
107
+ view
108
+ returns (IAccess.RoleInfo memory)
109
+ {
110
+ return roleInfo(
111
+ getAdminRole(),
112
+ IAccess.TargetType.Custom,
113
+ type(uint32).max,
114
+ PUBLIC_ROLE_NAME());
115
+ }
116
+
117
+
118
+ function coreRoleInfo(string memory name)
119
+ public
120
+ view
121
+ returns (IAccess.RoleInfo memory)
122
+ {
123
+ return roleInfo(
124
+ getAdminRole(),
125
+ IAccess.TargetType.Core,
126
+ 1,
127
+ name);
128
+ }
129
+
130
+
131
+ function serviceRoleInfo(string memory serviceName)
132
+ public
133
+ view
134
+ returns (IAccess.RoleInfo memory)
135
+ {
136
+ return roleInfo(
137
+ getAdminRole(),
138
+ IAccess.TargetType.Service,
139
+ 1,
140
+ serviceName);
141
+ }
142
+
143
+
144
+ /// @dev Creates a role info object from the provided parameters
145
+ function roleInfo(
146
+ RoleId adminRoleId,
147
+ IAccess.TargetType targetType,
148
+ uint32 maxMemberCount,
149
+ string memory roleName
150
+ )
151
+ public
152
+ view
153
+ returns (IAccess.RoleInfo memory info)
154
+ {
155
+ return IAccess.RoleInfo({
156
+ name: StrLib.toStr(roleName),
157
+ adminRoleId: adminRoleId,
158
+ targetType: targetType,
159
+ maxMemberCount: maxMemberCount,
160
+ createdAt: TimestampLib.current(),
161
+ pausedAt: TimestampLib.max(),
162
+ lastUpdateIn: BlocknumberLib.current()});
163
+ }
164
+
165
+
166
+ function getSelectors(
167
+ IAccess.FunctionInfo[] memory functions
168
+ )
169
+ public
170
+ pure
171
+ returns (
172
+ bytes4[] memory selectors
173
+ )
174
+ {
175
+ uint256 n = functions.length;
176
+ selectors = new bytes4[](n);
177
+ for (uint256 i = 0; i < n; i++) {
178
+ selectors[i] = functions[i].selector.toBytes4();
179
+ }
180
+ }
181
+
182
+
183
+ function checkInitParameters(
184
+ address authority,
185
+ string memory adminName
186
+ )
187
+ public
188
+ view
189
+ {
190
+ // only contract check (authority might not yet be initialized at this time)
191
+ if (!ContractLib.isContract(authority)) {
192
+ revert IAccessAdmin.ErrorAccessAdminAuthorityNotContract(authority);
193
+ }
194
+
195
+ // check name not empty
196
+ if (bytes(adminName).length == 0) {
197
+ revert IAccessAdmin.ErrorAccessAdminAccessManagerEmptyName();
198
+ }
199
+ }
200
+
201
+
22
202
  function checkRoleCreation(
23
203
  IAccessAdmin accessAdmin,
24
204
  RoleId roleId,
25
- IAccess.RoleInfo memory info
205
+ IAccess.RoleInfo memory info,
206
+ bool revertOnExistingRole
26
207
  )
27
208
  public
28
209
  view
210
+ returns (bool isAdminOrPublicRole)
29
211
  {
30
- // check role does not yet exist // ACCESS_ADMIN_LIB role creation checks
31
- if(accessAdmin.roleExists(roleId)) {
212
+ // check
213
+ if (roleId == ADMIN_ROLE() || roleId == PUBLIC_ROLE()) {
214
+ return true;
215
+ }
216
+
217
+ // check role does not yet exist
218
+ if(revertOnExistingRole && accessAdmin.roleExists(roleId)) {
32
219
  revert IAccessAdmin.ErrorAccessAdminRoleAlreadyCreated(
33
220
  roleId,
34
221
  accessAdmin.getRoleInfo(roleId).name.toString());
@@ -45,13 +232,52 @@ library AccessAdminLib { // ACCESS_ADMIN_LIB
45
232
  }
46
233
 
47
234
  // check role name is not used for another role
48
- RoleId roleIdForName = accessAdmin.getRoleForName(StrLib.toString(info.name));
49
- if(roleIdForName.gtz()) {
235
+ (RoleId roleIdForName, bool exists) = accessAdmin.getRoleForName(StrLib.toString(info.name));
236
+ if(revertOnExistingRole && exists) {
50
237
  revert IAccessAdmin.ErrorAccessAdminRoleNameAlreadyExists(
51
238
  roleId,
52
239
  info.name.toString(),
53
240
  roleIdForName);
54
241
  }
242
+
243
+ return false;
244
+ }
245
+
246
+
247
+ function checkRoleExists(
248
+ IAccessAdmin accessAdmin,
249
+ RoleId roleId,
250
+ bool onlyActiveRole,
251
+ bool allowAdminAndPublicRoles
252
+ )
253
+ internal
254
+ view
255
+ {
256
+ // check role exists
257
+ if (!accessAdmin.roleExists(roleId)) {
258
+ revert IAccessAdmin.ErrorAccessAdminRoleUnknown(roleId);
259
+ }
260
+
261
+ // if onlyActiveRoles: check if role is disabled
262
+ if (onlyActiveRole && accessAdmin.getRoleInfo(roleId).pausedAt <= TimestampLib.current()) {
263
+ revert IAccessAdmin.ErrorAccessAdminRoleIsPaused(roleId);
264
+ }
265
+
266
+ // if not allowAdminAndPublicRoles, check if role is admin or public role
267
+ if (!allowAdminAndPublicRoles) {
268
+ checkNotAdminOrPublicRole(roleId);
269
+ }
270
+ }
271
+
272
+
273
+ function checkNotAdminOrPublicRole(RoleId roleId) public pure {
274
+ if (roleId == ADMIN_ROLE()) {
275
+ revert IAccessAdmin.ErrorAccessAdminInvalidUseOfAdminRole();
276
+ }
277
+
278
+ if (roleId == PUBLIC_ROLE()) {
279
+ revert IAccessAdmin.ErrorAccessAdminInvalidUseOfPublicRole();
280
+ }
55
281
  }
56
282
 
57
283
  function checkTargetCreation(
@@ -97,7 +323,73 @@ library AccessAdminLib { // ACCESS_ADMIN_LIB
97
323
  revert IAccessAdmin.ErrorAccessAdminTargetAuthorityMismatch(accessAdmin.authority(), targetAuthority);
98
324
  }
99
325
  }
326
+ }
327
+
328
+
329
+ function checkComponentInitialization(
330
+ IAccessAdmin accessAdmin,
331
+ IAuthorization instanceAuthorization,
332
+ address componentAddress,
333
+ ObjectType expectedType
334
+ )
335
+ public
336
+ view
337
+ returns (IAuthorization componentAuthorization)
338
+ {
339
+ checkIsRegistered(address(accessAdmin.getRegistry()), componentAddress, expectedType);
340
+
341
+ VersionPart expecteRelease = accessAdmin.getRelease();
342
+ IAuthorizedComponent component = IAuthorizedComponent(componentAddress);
343
+ componentAuthorization = component.getAuthorization();
100
344
 
345
+ checkAuthorization(
346
+ address(instanceAuthorization),
347
+ address(componentAuthorization),
348
+ expectedType,
349
+ expecteRelease,
350
+ false, // expectServiceAuthorization,
351
+ false); // checkAlreadyInitialized
352
+ }
353
+
354
+
355
+ function checkTargetAndRoleForFunctions(
356
+ IAccessAdmin accessAdmin,
357
+ address target,
358
+ RoleId roleId,
359
+ bool onlyComponentOrContractTargets
360
+ )
361
+ public
362
+ view
363
+ {
364
+ // check target exists
365
+ IAccess.TargetType targetType = accessAdmin.getTargetInfo(target).targetType;
366
+ if (targetType == IAccess.TargetType.Undefined) {
367
+ revert IAccessAdmin.ErrorAccessAdminTargetNotCreated(target);
368
+ }
369
+
370
+ // check target type
371
+ if (onlyComponentOrContractTargets) {
372
+ if (targetType != IAccess.TargetType.Component && targetType != IAccess.TargetType.Contract) {
373
+ revert IAccessAdmin.ErrorAccessAdminNotComponentOrCustomTarget(target);
374
+ }
375
+ }
376
+
377
+ // check role exist
378
+ checkRoleExists(accessAdmin, roleId, true, true);
379
+ }
380
+
381
+
382
+ function checkTargetExists(
383
+ IAccessAdmin accessAdmin,
384
+ address target
385
+ )
386
+ public
387
+ view
388
+ {
389
+ // check not yet created
390
+ if (!accessAdmin.targetExists(target)) {
391
+ revert IAccessAdmin.ErrorAccessAdminTargetNotCreated(target);
392
+ }
101
393
  }
102
394
 
103
395
 
@@ -106,6 +398,7 @@ library AccessAdminLib { // ACCESS_ADMIN_LIB
106
398
  address authorization,
107
399
  ObjectType expectedDomain,
108
400
  VersionPart expectedRelease,
401
+ bool expectServiceAuthorization,
109
402
  bool checkAlreadyInitialized
110
403
  )
111
404
  public
@@ -118,8 +411,14 @@ library AccessAdminLib { // ACCESS_ADMIN_LIB
118
411
  }
119
412
 
120
413
  // check contract type matches
121
- if (!ContractLib.supportsInterface(authorization, type(IAuthorization).interfaceId)) {
122
- revert IAccessAdmin.ErrorAccessAdminNotAuthorization(authorization);
414
+ if (expectServiceAuthorization) {
415
+ if (!ContractLib.supportsInterface(authorization, type(IServiceAuthorization).interfaceId)) {
416
+ revert IAccessAdmin.ErrorAccessAdminNotServiceAuthorization(authorization);
417
+ }
418
+ } else {
419
+ if (!ContractLib.supportsInterface(authorization, type(IAuthorization).interfaceId)) {
420
+ revert IAccessAdmin.ErrorAccessAdminNotAuthorization(authorization);
421
+ }
123
422
  }
124
423
 
125
424
  // check domain matches
@@ -144,6 +443,8 @@ library AccessAdminLib { // ACCESS_ADMIN_LIB
144
443
  public
145
444
  view
146
445
  {
446
+ checkRegistry(registry);
447
+
147
448
  ObjectType tagetType = IRegistry(registry).getObjectInfo(target).objectType;
148
449
  if (tagetType.eqz()) {
149
450
  revert IAccessAdmin.ErrorAccessAdminNotRegistered(target);
@@ -154,30 +455,241 @@ library AccessAdminLib { // ACCESS_ADMIN_LIB
154
455
  }
155
456
  }
156
457
 
157
- function toRole(RoleId adminRoleId, IAccessAdmin.RoleType roleType, uint32 maxMemberCount, string memory name)
458
+
459
+ function checkRegistry(
460
+ address registry
461
+ )
462
+ public
463
+ view
464
+ {
465
+ if (!ContractLib.isRegistry(registry)) {
466
+ revert IAccessAdmin.ErrorAccessAdminNotRegistry(registry);
467
+ }
468
+ }
469
+
470
+
471
+ function getAuthorizedRole(
472
+ IAccessAdmin accessAdmin,
473
+ IAuthorization authorization,
474
+ RoleId roleId
475
+ )
476
+ public
477
+ view
478
+ returns (RoleId authorizedRoleId)
479
+ {
480
+ string memory roleName = authorization.getRoleInfo(roleId).name.toString();
481
+ (authorizedRoleId, ) = accessAdmin.getRoleForName(roleName);
482
+ }
483
+
484
+
485
+ function getFunctionRoleId(
486
+ AccessManagerCloneable authority,
487
+ address target,
488
+ Selector selector
489
+ )
490
+ public
491
+ view
492
+ returns (RoleId functionRoleId)
493
+ {
494
+ return RoleIdLib.toRoleId(
495
+ authority.getTargetFunctionRole(
496
+ target,
497
+ selector.toBytes4()));
498
+ }
499
+
500
+
501
+ function getServiceRoleId(
502
+ address serviceAddress,
503
+ IAccess.TargetType serviceTargetType
504
+ )
505
+ public
506
+ view
507
+ returns (RoleId serviceRoleId)
508
+ {
509
+ IService service = IService(serviceAddress);
510
+
511
+ if (serviceTargetType == IAccess.TargetType.Service) {
512
+ return RoleIdLib.toServiceRoleId(service.getDomain(), service.getRelease());
513
+ } else if (serviceTargetType == IAccess.TargetType.GenericService) {
514
+ return RoleIdLib.toGenericServiceRoleId(service.getDomain());
515
+ }
516
+
517
+ revert IAccessAdmin.ErrorAccessAdminInvalidServiceType(serviceAddress, serviceTargetType);
518
+ }
519
+
520
+
521
+ function getVersionedServiceRoleId(
522
+ ObjectType serviceDomain,
523
+ VersionPart release
524
+ )
525
+ public
526
+ pure
527
+ returns (RoleId serviceRoleId)
528
+ {
529
+ return RoleIdLib.toRoleId(
530
+ SERVICE_ROLE_MIN + SERVICE_ROLE_FACTOR * serviceDomain.toInt() + release.toInt());
531
+ }
532
+
533
+
534
+ function getGenericServiceRoleId(
535
+ ObjectType serviceDomain
536
+ )
537
+ public
538
+ pure
539
+ returns (RoleId serviceRoleId)
540
+ {
541
+ return RoleIdLib.toRoleId(
542
+ SERVICE_ROLE_MIN + SERVICE_ROLE_FACTOR * serviceDomain.toInt() + VersionPartLib.releaseMax().toInt());
543
+ }
544
+
545
+
546
+ function getCustomRoleId(uint64 index)
547
+ public
548
+ pure
549
+ returns (RoleId customRoleId)
550
+ {
551
+ return RoleIdLib.toRoleId(CUSTOM_ROLE_MIN + index);
552
+ }
553
+
554
+
555
+ function isCustomRole(RoleId roleId)
556
+ public
557
+ pure
558
+ returns (bool)
559
+ {
560
+ return roleId.toInt() >= CUSTOM_ROLE_MIN;
561
+ }
562
+
563
+
564
+ function getTargetRoleId(
565
+ address target,
566
+ IAccess.TargetType targetType,
567
+ uint64 index
568
+ )
158
569
  public
570
+ view
571
+ returns (RoleId targetRoleId)
572
+ {
573
+ if (targetType == IAccess.TargetType.Core) {
574
+ return RoleIdLib.toRoleId(CORE_ROLE_MIN + index);
575
+ }
576
+
577
+ if (targetType == IAccess.TargetType.Service || targetType == IAccess.TargetType.GenericService ) {
578
+ return getServiceRoleId(target, targetType);
579
+ }
580
+
581
+ if (targetType == IAccess.TargetType.Instance) {
582
+ return RoleIdLib.toRoleId(INSTANCE_ROLE_MIN + index);
583
+ }
584
+
585
+ if (targetType == IAccess.TargetType.Component) {
586
+ return RoleIdLib.toRoleId(COMPONENT_ROLE_MIN + index);
587
+ }
588
+
589
+ if (targetType == IAccess.TargetType.Custom
590
+ || targetType == IAccess.TargetType.Contract)
591
+ {
592
+ return RoleIdLib.toRoleId(CUSTOM_ROLE_MIN + index);
593
+ }
594
+
595
+ revert IAccessAdmin.ErrorAccessAdminInvalidTargetType(target, targetType);
596
+ }
597
+
598
+
599
+ function getTokenHandler(
600
+ address target,
601
+ string memory targetName,
602
+ IAccess.TargetType targetType
603
+ )
604
+ public
605
+ view
606
+ returns (
607
+ address tokenHandler,
608
+ string memory tokenHandlerName
609
+ )
610
+ {
611
+ // not component or core (we need to check core because of staking)
612
+ if (targetType != IAccess.TargetType.Component && targetType != IAccess.TargetType.Core) {
613
+ return (address(0), "");
614
+ }
615
+
616
+ // not contract
617
+ if (!ContractLib.isContract(target)) {
618
+ return (address(0), "");
619
+ }
620
+
621
+ // not component
622
+ if (!ContractLib.supportsInterface(target, type(IComponent).interfaceId)) {
623
+ return (address(0), "");
624
+ }
625
+
626
+ tokenHandler = address(IComponent(target).getTokenHandler());
627
+ tokenHandlerName = string(abi.encodePacked(targetName, TOKEN_HANDLER_SUFFIX));
628
+ }
629
+
630
+
631
+ function toFunctionGrantingString(
632
+ IAccessAdmin accessAdmin,
633
+ Str functionName,
634
+ RoleId roleId
635
+ )
636
+ public
637
+ view
638
+ returns (string memory)
639
+ {
640
+ return string(
641
+ abi.encodePacked(
642
+ functionName.toString(),
643
+ "(): ",
644
+ getRoleName(accessAdmin, roleId)));
645
+ }
646
+
647
+
648
+ function getRoleName(
649
+ IAccessAdmin accessAdmin,
650
+ RoleId roleId
651
+ )
652
+ public
159
653
  view
160
- returns (IAccess.RoleInfo memory)
161
- {
162
- return IAccess.RoleInfo({
163
- name: StrLib.toStr(name),
164
- adminRoleId: adminRoleId,
165
- roleType: roleType,
166
- maxMemberCount: maxMemberCount,
167
- createdAt: TimestampLib.blockTimestamp(),
168
- pausedAt: TimestampLib.max()
169
- });
654
+ returns (string memory)
655
+ {
656
+ if (accessAdmin.roleExists(roleId)) {
657
+ return accessAdmin.getRoleInfo(roleId).name.toString();
658
+ }
659
+
660
+ return "<unknown-role>";
170
661
  }
171
662
 
172
- function toFunction(bytes4 selector, string memory name)
663
+
664
+ function toRoleName(string memory name) public pure returns (string memory) {
665
+ return string(
666
+ abi.encodePacked(
667
+ name,
668
+ ROLE_SUFFIX));
669
+ }
670
+
671
+
672
+ function toFunction(
673
+ bytes4 selector,
674
+ string memory name
675
+ )
173
676
  public
174
677
  view
175
678
  returns (IAccess.FunctionInfo memory)
176
679
  {
680
+ if(selector == bytes4(0)) {
681
+ revert IAccessAdmin.ErrorAccessAdminSelectorZero();
682
+ }
683
+
684
+ if(bytes(name).length == 0) {
685
+ revert IAccessAdmin.ErrorAccessAdminFunctionNameEmpty();
686
+ }
687
+
177
688
  return IAccess.FunctionInfo({
178
689
  name: StrLib.toStr(name),
179
690
  selector: SelectorLib.toSelector(selector),
180
- createdAt: TimestampLib.blockTimestamp()});
691
+ createdAt: TimestampLib.current(),
692
+ lastUpdateIn: BlocknumberLib.current()});
181
693
  }
182
694
 
183
695
  }
@@ -24,6 +24,8 @@ contract AccessManagerCloneable is
24
24
  error ErrorAccessManagerTargetAdminLocked(address target);
25
25
  error ErrorAccessManagerCallerAdminLocked(address caller);
26
26
 
27
+ event LogAccessManagerLocked(address indexed accessManager, bool indexed locked);
28
+
27
29
  VersionPart private _release;
28
30
  bool private _isLocked;
29
31
 
@@ -62,24 +64,6 @@ contract AccessManagerCloneable is
62
64
  _checkAndSetRelease(release);
63
65
  }
64
66
 
65
- // /// @dev Completes the setup of the access manager.
66
- // /// Links the access manager to the registry and sets the release version.
67
- // function completeSetup(
68
- // address registry,
69
- // VersionPart release,
70
- // bool verifyRelease
71
- // )
72
- // public
73
- // onlyAdminRole
74
- // reinitializer(uint64(release.toInt()))
75
- // {
76
- // _checkAndSetRegistry(registry);
77
-
78
- // if (verifyRelease) {
79
- // _checkAndSetRelease(release);
80
- // }
81
- // }
82
-
83
67
  /// @dev Returns true if the caller is authorized to call the target with the given selector and the manager lock is not set to locked.
84
68
  /// Feturn values as in OpenZeppelin AccessManager.
85
69
  /// For a locked manager the function reverts with ErrorAccessManagerTargetAdminLocked.
@@ -112,6 +96,7 @@ contract AccessManagerCloneable is
112
96
  onlyAdminRole()
113
97
  {
114
98
  _isLocked = locked;
99
+ emit LogAccessManagerLocked(address(this), locked);
115
100
  }
116
101
 
117
102