@etherisc/gif-next 3.0.0-7dc7dd0-141 → 3.0.0-7de86e2-316

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 (441) hide show
  1. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +14 -14
  3. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +44 -44
  5. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +4 -4
  7. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +99 -87
  9. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +2 -2
  11. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +23 -29
  13. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  14. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +2 -2
  15. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  16. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  17. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +75 -63
  18. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  19. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  20. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  21. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
  22. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  23. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +20 -114
  24. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  25. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
  26. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  27. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +2 -96
  28. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  29. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +128 -140
  30. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  31. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +75 -75
  32. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  33. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +2 -96
  34. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  35. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +36 -48
  36. package/artifacts/contracts/examples/crop/AccountingToken.sol/AccountingToken.dbg.json +4 -0
  37. package/artifacts/contracts/examples/crop/AccountingToken.sol/AccountingToken.json +376 -0
  38. package/artifacts/contracts/examples/crop/CropPool.sol/CropPool.dbg.json +4 -0
  39. package/artifacts/contracts/examples/crop/CropPool.sol/CropPool.json +1391 -0
  40. package/artifacts/contracts/examples/crop/CropPoolAuthorization.sol/CropPoolAuthorization.dbg.json +4 -0
  41. package/artifacts/contracts/examples/crop/CropPoolAuthorization.sol/CropPoolAuthorization.json +844 -0
  42. package/artifacts/contracts/examples/crop/CropProduct.sol/CropProduct.dbg.json +4 -0
  43. package/artifacts/contracts/examples/crop/CropProduct.sol/CropProduct.json +2366 -0
  44. package/artifacts/contracts/examples/crop/CropProductAuthorization.sol/CropProductAuthorization.dbg.json +4 -0
  45. package/artifacts/contracts/examples/crop/CropProductAuthorization.sol/CropProductAuthorization.json +891 -0
  46. package/artifacts/contracts/examples/crop/Location.sol/LocationLib.dbg.json +4 -0
  47. package/artifacts/contracts/examples/crop/Location.sol/LocationLib.json +199 -0
  48. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  49. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  50. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +16 -91
  51. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  52. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +2 -2
  53. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  54. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +12 -92
  55. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  56. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +2 -2
  57. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  58. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +2 -2
  59. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
  60. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +2 -2
  61. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
  62. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +2 -2
  63. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +1 -1
  64. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +2 -2
  65. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
  66. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +57 -177
  67. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  68. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +20 -20
  69. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
  70. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +16 -91
  71. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
  72. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +2 -2
  73. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
  74. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +45 -120
  75. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  76. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +20 -20
  77. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +1 -1
  78. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +22 -22
  79. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
  80. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +2 -2
  81. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
  82. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  83. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +26 -120
  84. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  85. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +2 -2
  86. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  87. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +89 -81
  88. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  89. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +24 -99
  90. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  91. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +2 -2
  92. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  93. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +14 -89
  94. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  95. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +2 -2
  96. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  97. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  98. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +59 -72
  99. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  100. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  101. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +34 -21
  102. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  103. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +51 -13
  104. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  105. package/artifacts/contracts/instance/Instance.sol/Instance.json +51 -33
  106. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  107. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +182 -170
  108. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  109. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +21 -21
  110. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  111. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +119 -36
  112. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  113. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +94 -40
  114. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  115. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +41 -41
  116. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  117. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +121 -121
  118. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  119. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +91 -91
  120. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.dbg.json +4 -0
  121. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +466 -0
  122. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  123. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +66 -79
  124. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  125. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +9 -9
  126. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  127. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  128. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  129. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  130. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  131. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  132. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +3 -3
  133. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  134. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +38 -2
  135. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  136. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  137. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  138. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  139. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  140. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  141. package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
  142. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  143. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +85 -77
  144. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  145. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  146. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  147. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  148. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +67 -59
  149. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  150. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +19 -13
  151. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  152. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +71 -63
  153. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  154. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +57 -51
  155. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  156. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +50 -50
  157. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  158. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +4 -79
  159. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  160. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
  161. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  162. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +78 -85
  163. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  164. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +62 -62
  165. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  166. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +20 -27
  167. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  168. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +4 -79
  169. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  170. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +43 -43
  171. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  172. package/artifacts/contracts/pool/Pool.sol/Pool.json +4 -79
  173. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  174. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +4 -9
  175. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  176. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +101 -101
  177. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  178. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +63 -63
  179. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  180. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +37 -37
  181. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  182. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +44 -44
  183. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  184. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +2 -77
  185. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  186. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
  187. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  188. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +86 -80
  189. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  190. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +67 -67
  191. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  192. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +11 -11
  193. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  194. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +24 -18
  195. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  196. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +10 -10
  197. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  198. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +2 -2
  199. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  200. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +2 -77
  201. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  202. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +15 -28
  203. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  204. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +70 -70
  205. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  206. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +2 -2
  207. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  208. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +60 -60
  209. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  210. package/artifacts/contracts/product/PricingService.sol/PricingService.json +34 -34
  211. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  212. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +51 -51
  213. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  214. package/artifacts/contracts/product/Product.sol/Product.json +2 -77
  215. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  216. package/artifacts/contracts/product/RiskService.sol/RiskService.json +37 -50
  217. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  218. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +42 -42
  219. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  220. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +58 -8
  221. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  222. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +25 -25
  223. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  224. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +2 -2
  225. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  226. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  227. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  228. package/artifacts/contracts/registry/Registry.sol/Registry.json +127 -67
  229. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  230. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +159 -147
  231. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  232. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -27
  233. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  234. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +8 -8
  235. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  236. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +37 -37
  237. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  238. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +189 -177
  239. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  240. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
  241. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  242. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +119 -110
  243. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  244. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +2 -2
  245. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  246. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +20 -20
  247. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  248. package/artifacts/contracts/shared/Component.sol/Component.json +2 -77
  249. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  250. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +314 -123
  251. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  252. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +61 -61
  253. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  254. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +2 -2
  255. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  256. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  257. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
  258. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
  259. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +2 -77
  260. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  261. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +2 -77
  262. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  263. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +256 -65
  264. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  265. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +2 -77
  266. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  267. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  268. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +2 -2
  269. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  270. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  271. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +2 -2
  272. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  273. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  274. package/artifacts/contracts/shared/IService.sol/IService.json +2 -2
  275. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  276. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
  277. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  278. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +2 -77
  279. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  280. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  281. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  282. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  283. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +4 -4
  284. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  285. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  286. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  287. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +2 -2
  288. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  289. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  290. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  291. package/artifacts/contracts/shared/Service.sol/Service.json +2 -2
  292. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  293. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +38 -65
  294. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  295. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +21 -48
  296. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  297. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +26 -26
  298. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  299. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +69 -150
  300. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  301. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +10 -228
  302. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  303. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  304. package/artifacts/contracts/staking/Staking.sol/Staking.json +117 -198
  305. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  306. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -7
  307. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  308. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +53 -53
  309. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  310. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  311. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  312. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +30 -248
  313. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  314. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +40 -40
  315. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  316. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +220 -220
  317. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  318. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +9 -14
  319. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  320. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -7
  321. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  322. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  323. package/artifacts/contracts/type/Amount.sol/AmountLib.json +2 -7
  324. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  325. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  326. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +2 -2
  327. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  328. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  329. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  330. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  331. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  332. package/artifacts/contracts/type/Fee.sol/FeeLib.json +2 -7
  333. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  334. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  335. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  336. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
  337. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  338. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  339. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  340. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  341. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  342. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
  343. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  344. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  345. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  346. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  347. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  348. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +23 -4
  349. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
  350. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +2 -2
  351. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  352. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  353. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  354. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
  355. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  356. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  357. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  358. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  359. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  360. package/artifacts/contracts/type/String.sol/StrLib.json +2 -2
  361. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  362. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  363. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -7
  364. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  365. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  366. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  367. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  368. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +22 -22
  369. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  370. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
  371. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  372. package/contracts/accounting/IAccountingService.sol +2 -2
  373. package/contracts/authorization/AccessAdmin.sol +10 -8
  374. package/contracts/authorization/AccessManagerCloneable.sol +1 -0
  375. package/contracts/authorization/IAccessAdmin.sol +9 -8
  376. package/contracts/distribution/DistributionService.sol +22 -19
  377. package/contracts/distribution/IDistributionComponent.sol +0 -2
  378. package/contracts/distribution/IDistributionService.sol +8 -8
  379. package/contracts/examples/crop/AccountingToken.sol +26 -0
  380. package/contracts/examples/crop/CropPool.sol +89 -0
  381. package/contracts/examples/crop/CropPoolAuthorization.sol +37 -0
  382. package/contracts/examples/crop/CropProduct.sol +495 -0
  383. package/contracts/examples/crop/CropProductAuthorization.sol +69 -0
  384. package/contracts/examples/crop/Location.sol +50 -0
  385. package/contracts/examples/flight/FlightOracle.sol +1 -98
  386. package/contracts/examples/flight/FlightOracleAuthorization.sol +2 -3
  387. package/contracts/examples/flight/FlightProduct.sol +2 -2
  388. package/contracts/examples/flight/FlightProductAuthorization.sol +1 -1
  389. package/contracts/instance/BundleSet.sol +7 -8
  390. package/contracts/instance/IInstance.sol +10 -7
  391. package/contracts/instance/IInstanceService.sol +11 -6
  392. package/contracts/instance/Instance.sol +8 -0
  393. package/contracts/instance/InstanceAdmin.sol +2 -1
  394. package/contracts/instance/InstanceAuthorizationV3.sol +15 -1
  395. package/contracts/instance/InstanceReader.sol +39 -4
  396. package/contracts/instance/InstanceService.sol +65 -37
  397. package/contracts/instance/InstanceStore.sol +14 -14
  398. package/contracts/instance/ProductStore.sol +14 -14
  399. package/contracts/instance/RequestSet.sol +63 -0
  400. package/contracts/instance/RiskSet.sol +6 -7
  401. package/contracts/instance/TargetNames.sol +1 -0
  402. package/contracts/instance/base/BalanceStore.sol +7 -7
  403. package/contracts/instance/base/ObjectSet.sol +9 -1
  404. package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
  405. package/contracts/oracle/IOracleComponent.sol +10 -0
  406. package/contracts/oracle/IOracleService.sol +5 -5
  407. package/contracts/oracle/Oracle.sol +49 -25
  408. package/contracts/oracle/OracleService.sol +26 -23
  409. package/contracts/pool/BundleService.sol +2 -2
  410. package/contracts/pool/IBundleService.sol +9 -10
  411. package/contracts/pool/IPoolComponent.sol +1 -1
  412. package/contracts/pool/IPoolService.sol +14 -14
  413. package/contracts/pool/PoolService.sol +1 -1
  414. package/contracts/product/ClaimService.sol +1 -1
  415. package/contracts/product/IApplicationService.sol +8 -8
  416. package/contracts/product/IClaimService.sol +9 -9
  417. package/contracts/product/IPolicyService.sol +7 -7
  418. package/contracts/product/IRiskService.sol +4 -5
  419. package/contracts/product/RiskService.sol +2 -2
  420. package/contracts/registry/ChainNft.sol +9 -8
  421. package/contracts/registry/IRegistry.sol +11 -10
  422. package/contracts/registry/Registry.sol +15 -12
  423. package/contracts/registry/RegistryAuthorization.sol +0 -2
  424. package/contracts/registry/ReleaseAdmin.sol +4 -4
  425. package/contracts/registry/ReleaseRegistry.sol +7 -8
  426. package/contracts/registry/TokenRegistry.sol +3 -3
  427. package/contracts/shared/ComponentService.sol +33 -4
  428. package/contracts/shared/IComponent.sol +0 -4
  429. package/contracts/shared/IComponentService.sol +31 -10
  430. package/contracts/shared/INftOwnable.sol +1 -1
  431. package/contracts/shared/InstanceLinkedComponent.sol +1 -1
  432. package/contracts/shared/TokenHandler.sol +5 -5
  433. package/contracts/staking/IStaking.sol +32 -32
  434. package/contracts/staking/IStakingService.sol +7 -16
  435. package/contracts/staking/Staking.sol +4 -4
  436. package/contracts/staking/StakingService.sol +2 -3
  437. package/contracts/staking/StakingStore.sol +3 -3
  438. package/contracts/staking/TargetHandler.sol +2 -2
  439. package/contracts/type/RequestId.sol +6 -0
  440. package/contracts/upgradeability/ProxyManager.sol +2 -2
  441. package/package.json +3 -3
@@ -12,6 +12,7 @@ import {Blocknumber} from "../type/Blocknumber.sol";
12
12
  import {NftId} from "../type/NftId.sol";
13
13
  import {ObjectType} from "../type/ObjectType.sol";
14
14
  import {RoleId} from "../type/RoleId.sol";
15
+ import {Selector} from "../type/Selector.sol";
15
16
  import {Str} from "../type/String.sol";
16
17
  import {VersionPart} from "../type/Version.sol";
17
18
 
@@ -24,14 +25,14 @@ interface IAccessAdmin is
24
25
  {
25
26
 
26
27
  // roles, targets and functions
27
- event LogAccessAdminRoleCreated(string admin, RoleId roleId, TargetType targetType, RoleId roleAdminId, string name);
28
- event LogAccessAdminTargetCreated(string admin, string name, bool managed, address target, RoleId roleId);
29
-
30
- event LogAccessAdminRoleActivatedSet(string admin, RoleId roleId, bool active, Blocknumber lastUpdateIn);
31
- event LogAccessAdminRoleGranted(string admin, address account, string roleName);
32
- event LogAccessAdminRoleRevoked(string admin, address account, string roleName);
33
- event LogAccessAdminTargetLockedSet(string admin, address target, bool locked, Blocknumber lastUpdateIn);
34
- event LogAccessAdminFunctionGranted(string admin, address target, string func, Blocknumber lastUpdateIn);
28
+ event LogAccessAdminRoleCreated(RoleId indexed roleId, RoleId indexed roleAdminId, TargetType indexed targetType, string name, string admin);
29
+ event LogAccessAdminTargetCreated(address indexed target, RoleId indexed roleId, bool indexed managed, string name, string admin);
30
+
31
+ event LogAccessAdminRoleActivatedSet(RoleId indexed roleId, bool indexed active, string admin, Blocknumber indexed lastUpdateIn);
32
+ event LogAccessAdminRoleGranted(address indexed account, string roleName, string admin);
33
+ event LogAccessAdminRoleRevoked(address indexed account, string roleName, string admin);
34
+ event LogAccessAdminTargetLockedSet(address indexed target, bool indexed locked, string admin, Blocknumber indexed lastUpdateIn);
35
+ event LogAccessAdminFunctionGranted(address indexed target, Selector indexed selector, RoleId indexed roleId, string func, string admin, Blocknumber lastUpdateIn);
35
36
 
36
37
  // only deployer modifier
37
38
  error ErrorAccessAdminNotDeployer();
@@ -98,21 +98,24 @@ contract DistributionService is
98
98
  }
99
99
 
100
100
  distributorType = DistributorTypeLib.toDistributorType(distributionNftId, name);
101
- IDistribution.DistributorTypeInfo memory info = IDistribution.DistributorTypeInfo({
102
- name: name,
103
- distributionNftId: distributionNftId,
104
- minDiscountPercentage: minDiscountPercentage,
105
- maxDiscountPercentage: maxDiscountPercentage,
106
- commissionPercentage: commissionPercentage,
107
- maxReferralCount: maxReferralCount,
108
- maxReferralLifetime: maxReferralLifetime,
109
- allowSelfReferrals: allowSelfReferrals,
110
- allowRenewals: allowRenewals,
111
- data: data});
112
-
113
- instance.getInstanceStore().createDistributorType(distributorType, info);
101
+
102
+ {
103
+ IDistribution.DistributorTypeInfo memory info = IDistribution.DistributorTypeInfo({
104
+ name: name,
105
+ distributionNftId: distributionNftId,
106
+ minDiscountPercentage: minDiscountPercentage,
107
+ maxDiscountPercentage: maxDiscountPercentage,
108
+ commissionPercentage: commissionPercentage,
109
+ maxReferralCount: maxReferralCount,
110
+ maxReferralLifetime: maxReferralLifetime,
111
+ allowSelfReferrals: allowSelfReferrals,
112
+ allowRenewals: allowRenewals,
113
+ data: data});
114
+
115
+ instance.getInstanceStore().createDistributorType(distributorType, info);
116
+ }
114
117
 
115
- emit LogDistributionServiceDistributorTypeCreated(distributionNftId, name, commissionPercentage);
118
+ emit LogDistributionServiceDistributorTypeCreated(distributionNftId, distributorType, name, commissionPercentage);
116
119
  }
117
120
 
118
121
 
@@ -148,7 +151,7 @@ contract DistributionService is
148
151
 
149
152
  instance.getInstanceStore().createDistributor(distributorNftId, info);
150
153
 
151
- emit LogDistributionServiceDistributorCreated(distributionNftId, distributorNftId, distributorType, distributor);
154
+ emit LogDistributionServiceDistributorCreated(distributionNftId, distributorNftId, distributor, distributorType);
152
155
  }
153
156
 
154
157
  function changeDistributorType(
@@ -236,7 +239,7 @@ contract DistributionService is
236
239
 
237
240
  instance.getInstanceStore().createReferral(referralId, info);
238
241
 
239
- emit LogDistributionServiceReferralCreated(distributionNftId, distributorNftId, referralId, code, discountPercentage, maxReferrals, expiryAt);
242
+ emit LogDistributionServiceReferralCreated(distributorNftId, referralId, code, discountPercentage, maxReferrals, expiryAt);
240
243
  }
241
244
  }
242
245
 
@@ -258,7 +261,7 @@ contract DistributionService is
258
261
  referralInfo.usedReferrals += 1;
259
262
  instance.getInstanceStore().updateReferral(referralId, referralInfo, KEEP_STATE());
260
263
 
261
- emit LogDistributionServiceReferralProcessed(distributionNftId, referralInfo.distributorNftId, referralId, referralInfo.usedReferrals);
264
+ emit LogDistributionServiceReferralProcessed(referralInfo.distributorNftId, referralId, referralInfo.usedReferrals);
262
265
  }
263
266
  }
264
267
 
@@ -299,7 +302,7 @@ contract DistributionService is
299
302
  } else {
300
303
  // increase distribution balance by distribution owner fee
301
304
  _accountingService.increaseDistributionBalance(store, distributionNftId, AmountLib.zero(), distributionOwnerFee);
302
- emit LogDistributionServiceSaleProcessed(distributionNftId, referralId, premium.premiumAmount, distributionOwnerFee);
305
+ emit LogDistributionServiceSaleProcessed(distributionNftId, premium.premiumAmount, distributionOwnerFee);
303
306
  }
304
307
 
305
308
 
@@ -343,7 +346,7 @@ contract DistributionService is
343
346
  // transfer amount to distributor
344
347
  {
345
348
  address distributor = getRegistry().ownerOf(distributorNftId);
346
- emit LogDistributionServiceCommissionWithdrawn(distributorNftId, distributor, address(distributionInfo.tokenHandler.TOKEN()), withdrawnAmount);
349
+ emit LogDistributionServiceCommissionWithdrawn(distributorNftId, distributor, withdrawnAmount, address(distributionInfo.tokenHandler.TOKEN()));
347
350
  distributionInfo.tokenHandler.pushToken(distributor, withdrawnAmount);
348
351
  }
349
352
  }
@@ -11,8 +11,6 @@ import {UFixed} from "../type/UFixed.sol";
11
11
 
12
12
  interface IDistributionComponent is IInstanceLinkedComponent {
13
13
 
14
- event LogDistributorUpdated(address to, address operator);
15
-
16
14
  function getDiscountPercentage(
17
15
  string memory referralCode
18
16
  ) external view returns (UFixed discountPercentage, ReferralStatus status);
@@ -39,14 +39,14 @@ interface IDistributionService is IService {
39
39
  error ErrorDistributionServiceInvalidFeeTransferred(Amount transferredDistributionFeeAmount, Amount expectedDistributionFeeAmount);
40
40
  error ErrorDistributionServiceReferralDistributionMismatch(ReferralId referralId, NftId referralDistributionNft, NftId distributionNftId);
41
41
 
42
- event LogDistributionServiceCommissionWithdrawn(NftId distributorNftId, address recipient, address tokenAddress, Amount amount);
43
- event LogDistributionServiceDistributorTypeCreated(NftId distributionNftId, string name, UFixed commissionPercentage);
44
- event LogDistributionServiceDistributorCreated(NftId distributionNftId, NftId distributorNftId, DistributorType distributorType, address distributor);
45
- event LogDistributionServiceDistributorTypeChanged(NftId distributorNftId, DistributorType oldDistributorType, DistributorType newDistributorType);
46
- event LogDistributionServiceReferralCreated(NftId distributionNftId, NftId distributorNftId, ReferralId referralId, string code, UFixed discountPercentage, uint32 maxReferrals, Timestamp expiryAt);
47
- event LogDistributionServiceReferralProcessed(NftId distributionNftId, NftId distributorNftId, ReferralId referralId, uint32 usedReferrals);
48
- event LogDistributionServiceSaleProcessed(NftId distributionNftId, ReferralId referralId, Amount premium, Amount distributionOwnerFee);
49
- event LogDistributionServiceSaleProcessedWithReferral(NftId distributionNftId, NftId distributorNftId, ReferralId referralId, uint32 numPoliciesSold, Amount premium, Amount distributionOwnerFee, Amount commissionAmount);
42
+ event LogDistributionServiceCommissionWithdrawn(NftId indexed distributorNftId, address indexed recipient, Amount amount, address indexed tokenAddress);
43
+ event LogDistributionServiceDistributorTypeCreated(NftId indexed distributionNftId, DistributorType indexed distributorType, string name, UFixed commissionPercentage);
44
+ event LogDistributionServiceDistributorCreated(NftId indexed distributionNftId, NftId indexed distributorNftId, address indexed distributor, DistributorType distributorType);
45
+ event LogDistributionServiceDistributorTypeChanged(NftId indexed distributorNftId, DistributorType indexed oldDistributorType, DistributorType indexed newDistributorType);
46
+ event LogDistributionServiceReferralCreated(NftId indexed distributorNftId, ReferralId indexed referralId, string code, UFixed discountPercentage, uint32 maxReferrals, Timestamp expiryAt);
47
+ event LogDistributionServiceReferralProcessed(NftId indexed distributorNftId, ReferralId indexed referralId, uint32 usedReferrals);
48
+ event LogDistributionServiceSaleProcessed(NftId indexed distributionNftId, Amount premium, Amount distributionOwnerFee);
49
+ event LogDistributionServiceSaleProcessedWithReferral(NftId indexed distributionNftId, NftId indexed distributorNftId, ReferralId indexed referralId, uint32 numPoliciesSold, Amount premium, Amount distributionOwnerFee, Amount commissionAmount);
50
50
 
51
51
  function createDistributorType(
52
52
  string memory name,
@@ -0,0 +1,26 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ pragma solidity ^0.8.20;
3
+
4
+ import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
5
+
6
+ /// @dev FireUSD is a stablecoin with 6 decimals and an initial supply of 1 Billion tokens.
7
+ contract AccountingToken is ERC20 {
8
+
9
+ string public constant NAME = "Local Currency (Accounting Token)";
10
+ string public constant SYMBOL = "LCA";
11
+ uint8 public constant DECIMALS = 6;
12
+ uint256 public constant INITIAL_SUPPLY = 10**12 * 10**DECIMALS;
13
+
14
+ constructor()
15
+ ERC20(NAME, SYMBOL)
16
+ {
17
+ _mint(
18
+ _msgSender(),
19
+ INITIAL_SUPPLY
20
+ );
21
+ }
22
+
23
+ function decimals() public pure override returns(uint8) {
24
+ return DECIMALS;
25
+ }
26
+ }
@@ -0,0 +1,89 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ pragma solidity ^0.8.20;
3
+
4
+ import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
5
+
6
+ import {IAuthorization} from "../../authorization/IAuthorization.sol";
7
+ import {IComponents} from "../../instance/module/IComponents.sol";
8
+
9
+ import {Amount, AmountLib} from "../../type/Amount.sol";
10
+ import {BasicPool} from "../../pool/BasicPool.sol";
11
+ import {FeeLib} from "../../type/Fee.sol";
12
+ import {NftId} from "../../type/NftId.sol";
13
+ import {SecondsLib} from "../../type/Seconds.sol";
14
+ import {UFixedLib} from "../../type/UFixed.sol";
15
+
16
+
17
+ /// @dev CropPool implements the pool for the crop product.
18
+ /// Only the pool owner is allowed to create and manage bundles.
19
+ contract CropPool is
20
+ BasicPool
21
+ {
22
+ constructor(
23
+ address registry,
24
+ NftId productNftId,
25
+ string memory componentName,
26
+ IAuthorization authorization
27
+ )
28
+ {
29
+ address initialOwner = msg.sender;
30
+ _intialize(
31
+ registry,
32
+ productNftId,
33
+ componentName,
34
+ IComponents.PoolInfo({
35
+ maxBalanceAmount: AmountLib.max(),
36
+ isInterceptingBundleTransfers: false,
37
+ isProcessingConfirmedClaims: false,
38
+ isExternallyManaged: false,
39
+ isVerifyingApplications: false,
40
+ collateralizationLevel: UFixedLib.one(),
41
+ retentionLevel: UFixedLib.one()
42
+ }),
43
+ authorization,
44
+ initialOwner);
45
+ }
46
+
47
+ function _intialize(
48
+ address registry,
49
+ NftId productNftId,
50
+ string memory componentName,
51
+ IComponents.PoolInfo memory poolInfo,
52
+ IAuthorization authorization,
53
+ address initialOwner
54
+ )
55
+ internal
56
+ initializer
57
+ {
58
+ _initializeBasicPool(
59
+ registry,
60
+ productNftId,
61
+ componentName,
62
+ poolInfo,
63
+ authorization,
64
+ initialOwner);
65
+ }
66
+
67
+ function createBundle(
68
+ Amount initialAmount
69
+ )
70
+ external
71
+ virtual
72
+ restricted()
73
+ onlyOwner()
74
+ returns(NftId bundleNftId)
75
+ {
76
+ address owner = msg.sender;
77
+ bundleNftId = _createBundle(
78
+ owner,
79
+ FeeLib.zero(),
80
+ SecondsLib.fromDays(90),
81
+ "" // filter
82
+ );
83
+
84
+ _stake(bundleNftId, initialAmount);
85
+ }
86
+
87
+ function approveTokenHandler(IERC20Metadata token, Amount amount) external restricted() onlyOwner() { _approveTokenHandler(token, amount); }
88
+ function setWallet(address newWallet) external restricted() onlyOwner() { _setWallet(newWallet); }
89
+ }
@@ -0,0 +1,37 @@
1
+
2
+
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ pragma solidity ^0.8.20;
5
+
6
+ import {IAccess} from "../../../contracts/authorization/IAccess.sol";
7
+
8
+ import {BasicPoolAuthorization} from "../../pool/BasicPoolAuthorization.sol";
9
+ import {CropPool} from "./CropPool.sol";
10
+ import {PUBLIC_ROLE} from "../../../contracts/type/RoleId.sol";
11
+
12
+ contract CropPoolAuthorization
13
+ is BasicPoolAuthorization
14
+ {
15
+
16
+ constructor(string memory poolName)
17
+ BasicPoolAuthorization(poolName)
18
+ {}
19
+
20
+
21
+ function _setupTargetAuthorizations()
22
+ internal
23
+ virtual override
24
+ {
25
+ super._setupTargetAuthorizations();
26
+ IAccess.FunctionInfo[] storage functions;
27
+
28
+ // authorize public role (also protected by onlyOwner)
29
+ functions = _authorizeForTarget(getMainTargetName(), PUBLIC_ROLE());
30
+
31
+ // only owner
32
+ _authorize(functions, CropPool.createBundle.selector, "createBundle");
33
+ _authorize(functions, CropPool.approveTokenHandler.selector, "approveTokenHandler");
34
+ _authorize(functions, CropPool.setWallet.selector, "setWallet");
35
+ }
36
+ }
37
+