@etherisc/gif-next 3.0.0-6e4ae79-174 → 3.0.0-7b1e9d3-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 (306) hide show
  1. package/README.md +9 -1
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  3. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +2 -2
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  5. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +2 -2
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  7. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +44 -56
  9. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +145 -100
  11. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  13. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +2 -2
  14. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  15. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  16. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  17. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  18. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  19. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
  20. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  21. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +2 -2
  22. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  23. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
  24. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  25. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  26. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +2 -2
  27. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  28. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +2 -2
  29. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  30. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  31. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  32. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  33. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +2 -2
  34. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  35. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +2 -2
  36. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  37. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2 -2
  38. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  39. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +2 -2
  40. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  41. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
  42. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +251 -56
  43. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
  44. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +4 -0
  45. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +801 -0
  46. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
  47. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +183 -28
  48. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  49. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +82 -35
  50. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
  51. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +2 -2
  52. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
  53. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +2 -2
  54. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
  55. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +441 -674
  56. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  57. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +83 -36
  58. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +4 -0
  59. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +711 -0
  60. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
  61. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
  62. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  63. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +2 -2
  64. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  65. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +2 -2
  66. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  67. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +2 -2
  68. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  69. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +2 -2
  70. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  71. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +2 -2
  72. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  73. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2 -2
  74. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  75. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +2 -2
  76. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  77. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  78. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +2 -2
  79. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  80. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  81. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  82. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  83. package/artifacts/contracts/instance/Instance.sol/Instance.json +2 -2
  84. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  85. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +102 -114
  86. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  87. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +2 -2
  88. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  89. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +93 -34
  90. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  91. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +2 -2
  92. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  93. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +2 -2
  94. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  95. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
  96. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  97. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +2 -2
  98. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  99. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +2 -2
  100. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  101. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  102. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  103. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  104. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  105. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  106. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +2 -2
  107. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  108. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  109. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  110. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  111. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  112. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  113. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  114. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +2 -2
  115. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  116. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  117. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  118. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  119. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  120. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  121. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  122. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +2 -2
  123. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  124. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +2 -2
  125. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  126. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  127. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
  128. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  129. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +2 -2
  130. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  131. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +2 -2
  132. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  133. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  134. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  135. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  136. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  137. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +2 -2
  138. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  139. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +2 -2
  140. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  141. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +2 -2
  142. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  143. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +2 -2
  144. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  145. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +2 -2
  146. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  147. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  148. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
  149. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  150. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +2 -2
  151. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  152. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +2 -2
  153. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  154. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  155. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  156. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  157. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  158. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  159. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  160. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +2 -2
  161. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  162. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +20 -12
  163. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  164. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +2 -2
  165. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  166. package/artifacts/contracts/product/PricingService.sol/PricingService.json +2 -2
  167. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  168. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +2 -2
  169. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  170. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  171. package/artifacts/contracts/product/RiskService.sol/RiskService.json +2 -2
  172. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  173. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +2 -2
  174. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  175. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  176. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  177. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  178. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  179. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  180. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  181. package/artifacts/contracts/registry/Registry.sol/Registry.json +2 -2
  182. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  183. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +101 -113
  184. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  185. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -2
  186. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  187. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +2 -2
  188. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  189. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +2 -2
  190. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  191. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +110 -122
  192. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  193. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  194. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +56 -62
  195. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  196. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +2 -2
  197. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  198. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
  199. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  200. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  201. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +51 -26
  202. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  203. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +14 -14
  204. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  205. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  206. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  207. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
  208. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
  209. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  210. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  211. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +25 -0
  212. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  213. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  214. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  215. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  216. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  217. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  218. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  219. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  220. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  221. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  222. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  223. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  224. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  225. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  226. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  227. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  228. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  229. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  230. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  231. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  232. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +25 -0
  233. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  234. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  235. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  236. package/artifacts/contracts/staking/Staking.sol/Staking.json +73 -48
  237. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  238. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -2
  239. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  240. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +25 -25
  241. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  242. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  243. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  244. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +2 -2
  245. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  246. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +2 -2
  247. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  248. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2 -2
  249. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  250. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +2 -2
  251. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  252. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -2
  253. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  254. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  255. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  256. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  257. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  258. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  259. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  260. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  261. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  262. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  263. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  264. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  265. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  266. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  267. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  268. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
  269. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  270. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  271. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  272. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  273. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  274. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  275. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  276. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  277. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  278. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  279. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  280. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  281. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  282. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  283. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  284. package/contracts/authorization/AccessAdmin.sol +6 -25
  285. package/contracts/authorization/AccessAdminLib.sol +18 -1
  286. package/contracts/examples/flight/FlightLib.sol +90 -75
  287. package/contracts/examples/flight/FlightNft.sol +234 -0
  288. package/contracts/examples/flight/FlightOracle.sol +68 -9
  289. package/contracts/examples/flight/FlightOracleAuthorization.sol +28 -5
  290. package/contracts/examples/flight/FlightPool.sol +1 -1
  291. package/contracts/examples/flight/FlightProduct.sol +279 -243
  292. package/contracts/examples/flight/FlightProductAuthorization.sol +35 -10
  293. package/contracts/examples/flight/FlightProductManager.sol +49 -0
  294. package/contracts/instance/InstanceAdmin.sol +0 -1
  295. package/contracts/instance/InstanceReader.sol +16 -4
  296. package/contracts/oracle/BasicOracle.sol +1 -0
  297. package/contracts/oracle/Oracle.sol +2 -2
  298. package/contracts/product/PolicyServiceLib.sol +5 -3
  299. package/contracts/registry/ChainNft.sol +1 -1
  300. package/contracts/registry/RegistryAdmin.sol +7 -1
  301. package/contracts/registry/ReleaseAdmin.sol +8 -1
  302. package/contracts/shared/ComponentService.sol +5 -0
  303. package/contracts/shared/IComponentService.sol +1 -0
  304. package/contracts/staking/IStaking.sol +2 -0
  305. package/contracts/staking/Staking.sol +1 -0
  306. package/package.json +1 -1
@@ -3,19 +3,42 @@ pragma solidity ^0.8.20;
3
3
 
4
4
  import {IAccess} from "../../../contracts/authorization/IAccess.sol";
5
5
 
6
+ import {AccessAdminLib} from "../../authorization/AccessAdminLib.sol";
6
7
  import {BasicProductAuthorization} from "../../product/BasicProductAuthorization.sol";
7
8
  import {FlightProduct} from "./FlightProduct.sol";
8
9
  import {ORACLE} from "../../../contracts/type/ObjectType.sol";
9
- import {PUBLIC_ROLE} from "../../../contracts/type/RoleId.sol";
10
+ import {RoleId, ADMIN_ROLE, PUBLIC_ROLE} from "../../../contracts/type/RoleId.sol";
10
11
 
11
12
 
12
13
  contract FlightProductAuthorization
13
14
  is BasicProductAuthorization
14
15
  {
15
16
 
16
- constructor(string memory poolName)
17
- BasicProductAuthorization(poolName)
18
- {}
17
+ uint64 public constant STATISTICS_PROVIDER_ROLE_IDX = 1; // 1st custom role for flight product
18
+ string public constant STATISTICS_PROVIDER_ROLE_NAME = "StatisticsProviderRole";
19
+ RoleId public STATISTICS_PROVIDER_ROLE;
20
+
21
+
22
+ constructor(string memory productName)
23
+ BasicProductAuthorization(productName)
24
+ { }
25
+
26
+
27
+ function _setupRoles()
28
+ internal
29
+ override
30
+ {
31
+ STATISTICS_PROVIDER_ROLE = AccessAdminLib.getCustomRoleId(STATISTICS_PROVIDER_ROLE_IDX);
32
+
33
+ _addRole(
34
+ STATISTICS_PROVIDER_ROLE,
35
+ AccessAdminLib.roleInfo(
36
+ ADMIN_ROLE(),
37
+ TargetType.Custom,
38
+ 1, // max member count special case: instance nft owner is sole role owner
39
+ STATISTICS_PROVIDER_ROLE_NAME));
40
+ }
41
+
19
42
 
20
43
  function _setupTargetAuthorizations()
21
44
  internal
@@ -28,14 +51,16 @@ contract FlightProductAuthorization
28
51
  functions = _authorizeForTarget(getMainTargetName(), getServiceRole(ORACLE()));
29
52
  _authorize(functions, FlightProduct.flightStatusCallback.selector, "flightStatusCallback");
30
53
 
31
- // authorize public role (open access to any account, only allows to lock target)
32
- functions = _authorizeForTarget(getMainTargetName(), PUBLIC_ROLE());
33
- _authorize(functions, FlightProduct.createPolicy.selector, "createPolicy");
54
+ // authorize statistics provider role
55
+ functions = _authorizeForTarget(getMainTargetName(), STATISTICS_PROVIDER_ROLE);
34
56
  _authorize(functions, FlightProduct.createPolicyWithPermit.selector, "createPolicyWithPermit");
35
57
 
36
- // TODO: only owner
37
- _authorize(functions, FlightProduct.processFlightStatus.selector, "processFlightStatus");
38
- _authorize(functions, FlightProduct.completeSetup.selector, "completeSetup");
58
+ // authorize public role (additional authz via onlyOwner)
59
+ functions = _authorizeForTarget(getMainTargetName(), PUBLIC_ROLE());
60
+ _authorize(functions, FlightProduct.resendRequest.selector, "resendRequest");
61
+ _authorize(functions, FlightProduct.processPayoutsAndClosePolicies.selector, "processPayoutsAndClosePolicies");
62
+ _authorize(functions, FlightProduct.setConstants.selector, "setConstants");
63
+ _authorize(functions, FlightProduct.setTestMode.selector, "setTestMode");
39
64
  _authorize(functions, FlightProduct.setDefaultBundle.selector, "setDefaultBundle");
40
65
  _authorize(functions, FlightProduct.approveTokenHandler.selector, "approveTokenHandler");
41
66
  _authorize(functions, FlightProduct.setLocked.selector, "setLocked");
@@ -0,0 +1,49 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ pragma solidity ^0.8.20;
3
+
4
+ import {IAuthorization} from "../../authorization/IAuthorization.sol";
5
+ import {IVersionable} from "../../upgradeability/IVersionable.sol";
6
+
7
+ import {NftId} from "../../type/NftId.sol";
8
+ import {ProxyManager} from "../../upgradeability/ProxyManager.sol";
9
+ import {FlightProduct} from "./FlightProduct.sol";
10
+
11
+
12
+ contract FlightProductManager is ProxyManager {
13
+
14
+ FlightProduct private _flightProduct;
15
+ bytes32 private _salt = "0x1234";
16
+
17
+ /// @dev initializes proxy manager with flight product implementation
18
+ constructor(
19
+ address registry,
20
+ NftId instanceNftId,
21
+ string memory componentName,
22
+ IAuthorization authorization
23
+ )
24
+ {
25
+ // FlightProduct prd = new FlightProduct{salt: _salt}();
26
+ // bytes memory data = abi.encode(
27
+ // registry,
28
+ // instanceNftId,
29
+ // componentName,
30
+ // authorization);
31
+
32
+ // IVersionable versionable = initialize(
33
+ // registry,
34
+ // address(prd),
35
+ // data,
36
+ // _salt);
37
+
38
+ // _flightProduct = FlightProduct(address(versionable));
39
+ }
40
+
41
+ //--- view functions ----------------------------------------------------//
42
+ function getFlightProduct()
43
+ external
44
+ view
45
+ returns (FlightProduct flightProduct)
46
+ {
47
+ return _flightProduct;
48
+ }
49
+ }
@@ -130,7 +130,6 @@ contract InstanceAdmin is
130
130
  _createTarget(target, name, TargetType.Instance, true);
131
131
  }
132
132
 
133
-
134
133
  /// @dev Initializes the authorization for the specified component.
135
134
  /// Important: The component MUST be registered.
136
135
  function initializeComponentAuthorization(
@@ -34,6 +34,7 @@ import {RiskId} from "../type/RiskId.sol";
34
34
  import {RiskSet} from "./RiskSet.sol";
35
35
  import {RoleId, INSTANCE_OWNER_ROLE} from "../type/RoleId.sol";
36
36
  import {StateId} from "../type/StateId.sol";
37
+ import {Str, StrLib} from "../type/String.sol";
37
38
  import {TokenHandler} from "../shared/TokenHandler.sol";
38
39
  import {UFixed, UFixedLib} from "../type/UFixed.sol";
39
40
 
@@ -466,6 +467,12 @@ contract InstanceReader {
466
467
  }
467
468
 
468
469
 
470
+ /// @dev Returns the role ID for the given index.
471
+ function getRoleForName(string memory name) public view returns (RoleId roleId, bool exists) {
472
+ return _instanceAdmin.getRoleForName(name);
473
+ }
474
+
475
+
469
476
  /// @dev Returns the role ID for the instance owner role.
470
477
  /// This role may be used as a "root" admin role for other custom roles defined for this instance.
471
478
  function getInstanceOwnerRole() public pure returns (RoleId roleId) {
@@ -595,13 +602,18 @@ contract InstanceReader {
595
602
  }
596
603
 
597
604
 
598
- function toUFixed(uint256 value, int8 exp) public pure returns (UFixed) {
599
- return UFixedLib.toUFixed(value, exp);
605
+ function toInt(UFixed value) public pure returns (uint256) {
606
+ return UFixedLib.toInt(value);
600
607
  }
601
608
 
602
609
 
603
- function toInt(UFixed value) public pure returns (uint256) {
604
- return UFixedLib.toInt(value);
610
+ function toString(Str str) public pure returns (string memory) {
611
+ return StrLib.toString(str);
612
+ }
613
+
614
+
615
+ function toUFixed(uint256 value, int8 exp) public pure returns (UFixed) {
616
+ return UFixedLib.toUFixed(value, exp);
605
617
  }
606
618
 
607
619
  //--- internal functions ----------------------------------------------------//
@@ -22,6 +22,7 @@ contract BasicOracle is
22
22
  _respond(requestId, responseData);
23
23
  }
24
24
 
25
+
25
26
  function _initializeBasicOracle(
26
27
  address registry,
27
28
  NftId instanceNftId,
@@ -140,10 +140,10 @@ abstract contract Oracle is
140
140
  internal
141
141
  virtual
142
142
  {
143
- _getOracleStorage()._oracleService.respond(
144
- requestId, responseData);
143
+ _getOracleStorage()._oracleService.respond(requestId, responseData);
145
144
  }
146
145
 
146
+
147
147
  function _getOracleStorage() private pure returns (OracleStorage storage $) {
148
148
  assembly {
149
149
  $.slot := ORACLE_STORAGE_LOCATION_V1
@@ -95,13 +95,14 @@ library PolicyServiceLib {
95
95
  {
96
96
  if (policyState != COLLATERALIZED()) {
97
97
  revert IPolicyService.ErrorPolicyServicePolicyNotActive(policyNftId, policyState);
98
- }
99
- if (TimestampLib.current() < policyInfo.activatedAt) {
98
+ }
99
+
100
+ if (policyInfo.activatedAt.eqz() || TimestampLib.current() < policyInfo.activatedAt) {
100
101
  revert IPolicyService.ErrorPolicyServicePolicyNotActive(policyNftId, policyState);
101
102
  }
102
103
 
103
104
  // check expiredAt represents a valid expiry time
104
- if (newExpiredAt >= policyInfo.expiredAt) {
105
+ if (newExpiredAt > policyInfo.expiredAt) {
105
106
  revert IPolicyService.ErrorPolicyServicePolicyExpirationTooLate(policyNftId, policyInfo.expiredAt, newExpiredAt);
106
107
  }
107
108
 
@@ -110,6 +111,7 @@ library PolicyServiceLib {
110
111
  }
111
112
  }
112
113
 
114
+
113
115
  function policyIsCloseable(InstanceReader instanceReader, NftId policyNftId)
114
116
  external
115
117
  view
@@ -11,7 +11,7 @@ contract ChainNft is ERC721Enumerable {
11
11
  event LogTokenInterceptorAddress(uint256 tokenId, address interceptor);
12
12
 
13
13
  // constants
14
- string public constant NAME = "Dezentralized Insurance Protocol NFT";
14
+ string public constant NAME = "Decentralized Insurance Protocol NFT";
15
15
  string public constant SYMBOL = "DIPNFT";
16
16
 
17
17
  uint256 public constant PROTOCOL_NFT_ID = 1101;
@@ -85,7 +85,13 @@ contract RegistryAdmin is
85
85
  registry,
86
86
  release);
87
87
 
88
- _checkAuthorization(authorization, REGISTRY(), release, false, true);
88
+ AccessAdminLib.checkAuthorization(
89
+ address(_authorization),
90
+ authorization,
91
+ REGISTRY(),
92
+ release,
93
+ false, // expectServiceAuthorization
94
+ false); // checkAlreadyInitialized);
89
95
 
90
96
  _registry = registry;
91
97
  _authorization = IAuthorization(authorization);
@@ -72,7 +72,14 @@ contract ReleaseAdmin is
72
72
  release);
73
73
 
74
74
  IServiceAuthorization serviceAuthorization = IServiceAuthorization(authorization);
75
- _checkAuthorization(address(serviceAuthorization), RELEASE(), release, true, true);
75
+ AccessAdminLib.checkAuthorization(
76
+ address(_authorization),
77
+ address(serviceAuthorization),
78
+ RELEASE(),
79
+ release,
80
+ true, // expectServiceAuthorization
81
+ true); // checkAlreadyInitialized);
82
+
76
83
  _serviceAuthorization = serviceAuthorization;
77
84
 
78
85
  // link nft ownability to registry
@@ -543,6 +543,11 @@ contract ComponentService is
543
543
  address(component), // initially, component is its own wallet
544
544
  token,
545
545
  instanceAdmin.authority());
546
+
547
+ emit LogComponentServiceTokenHandlerDeployed(
548
+ componentNftId,
549
+ address(componentInfo.tokenHandler),
550
+ token);
546
551
 
547
552
  // register component with instance
548
553
  instanceStore.createComponent(
@@ -46,6 +46,7 @@ interface IComponentService is
46
46
  error ErrorComponentServiceWalletAllowanceTooSmall(address wallet, address spender, uint256 allowance, uint256 amount);
47
47
 
48
48
  event LogComponentServiceComponentLocked(address component, bool locked);
49
+ event LogComponentServiceTokenHandlerDeployed(NftId componentNftId, address tokenHandler, address token);
49
50
  event LogComponentServiceRegistered(NftId instanceNftId, NftId componentNftId, ObjectType componentType, address component, address token, address initialOwner);
50
51
  event LogComponentServiceWalletAddressChanged(NftId componentNftId, address currentWallet, address newWallet);
51
52
  event LogComponentServiceWalletTokensTransferred(NftId componentNftId, address currentWallet, address newWallet, uint256 currentBalance);
@@ -25,6 +25,8 @@ interface IStaking is
25
25
  IVersionable
26
26
  {
27
27
 
28
+ event LogStakingTokenHandlerDeployed(NftId componentNftId, address tokenHandler, address token);
29
+
28
30
  // owner functions
29
31
  event LogStakingStakingRateSet(ChainId chainId, address token, UFixed newStakingRate, UFixed oldStakingRate, Blocknumber lastUpdateIn);
30
32
  event LogStakingStakingServiceSet(address stakingService, VersionPart release, address oldStakingService);
@@ -86,6 +86,7 @@ contract Staking is
86
86
  address(this),
87
87
  dipToken,
88
88
  getRegistry().getAuthority());
89
+ emit LogStakingTokenHandlerDeployed(getNftId(), address($._tokenHandler), dipToken);
89
90
  }
90
91
 
91
92
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etherisc/gif-next",
3
- "version": "3.0.0-6e4ae79-174",
3
+ "version": "3.0.0-7b1e9d3-822",
4
4
  "description": "This is the repository for the next version of the Generic Insurance Framework (GIF) smart contracts. ",
5
5
  "main": "index.js",
6
6
  "scripts": {