@etherisc/gif-next 3.0.0-495114d-923 → 3.0.0-52a6f7a-323

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 (222) hide show
  1. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  2. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  3. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  4. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  5. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  6. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  7. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  13. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  14. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  15. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  16. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  17. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  18. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  19. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  20. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  21. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  22. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  23. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  24. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  25. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  26. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
  27. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
  28. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +1 -1
  29. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +136 -34
  30. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
  31. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  32. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
  33. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
  34. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
  35. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  36. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +1 -1
  37. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
  38. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
  39. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  40. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  41. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  42. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  43. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  44. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  45. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  46. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  47. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  48. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  49. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  50. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  51. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  52. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  53. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  54. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  55. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  56. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +2 -2
  57. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  58. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +2 -2
  59. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  60. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  61. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  62. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  63. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  64. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  65. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  66. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  67. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  68. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  69. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  70. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  71. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  72. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  73. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  74. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  75. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  76. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  77. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  78. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  79. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  80. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  81. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  82. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  83. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  84. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  85. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  86. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  87. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  88. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  89. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  90. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  91. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  92. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +2 -2
  93. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  94. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +2 -2
  95. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  96. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  97. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  98. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  99. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  100. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  101. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  102. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  103. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  104. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  105. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  106. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  107. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  108. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  109. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  110. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  111. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  112. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  113. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  114. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  115. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  116. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  117. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  118. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  119. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  120. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  121. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  122. package/artifacts/contracts/registry/Registry.sol/Registry.json +2 -2
  123. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  124. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +2 -2
  125. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  126. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -2
  127. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  128. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  129. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  130. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  131. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  132. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +2 -2
  133. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  134. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +2 -2
  135. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  136. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
  137. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  138. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  139. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +2 -2
  140. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  141. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +2 -2
  142. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  143. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  144. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  145. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
  146. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
  147. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  148. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  149. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  150. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  151. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  152. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  153. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  154. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  155. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  156. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  157. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  158. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  159. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  160. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  161. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  162. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  163. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  164. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  165. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  166. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  167. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  168. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  169. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  170. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  171. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  172. package/artifacts/contracts/staking/Staking.sol/Staking.json +2 -2
  173. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  174. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -2
  175. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  176. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +2 -2
  177. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  178. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  179. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  180. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +2 -2
  181. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  182. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +2 -2
  183. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  184. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2 -2
  185. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  186. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +2 -2
  187. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  188. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -2
  189. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  190. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  191. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  192. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  193. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  194. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  195. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  196. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  197. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  198. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  199. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  200. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  201. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  202. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  203. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  204. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
  205. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  206. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  207. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  208. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  209. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  210. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  211. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  212. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  213. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  214. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  215. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  216. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  217. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  218. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  219. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  220. package/contracts/examples/flight/FlightNft.sol +85 -82
  221. package/contracts/registry/ChainNft.sol +1 -1
  222. package/package.json +1 -1
@@ -5,8 +5,10 @@ import {ERC721} from "@openzeppelin/contracts/token/ERC721/ERC721.sol";
5
5
  import {IERC721Metadata} from "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol";
6
6
  import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";
7
7
 
8
+ import {IPolicy} from "../../instance/module/IPolicy.sol";
8
9
  import {IRegistry} from "../../registry/IRegistry.sol";
9
10
 
11
+ import {Amount} from "../../type/Amount.sol";
10
12
  import {ChainNft} from "../../registry/ChainNft.sol";
11
13
  import {FlightProduct} from "./FlightProduct.sol";
12
14
  import {InstanceReader} from "../../instance/InstanceReader.sol";
@@ -24,13 +26,28 @@ contract FlightNft is
24
26
  Ownable
25
27
  {
26
28
 
27
- ChainNft private _chainNft;
28
- FlightProduct private _flightProduct;
29
- InstanceReader private _reader;
30
- IRegistry private _registry;
29
+ error ErrorFlightNftNotMinter();
30
+ error ErrorFlightNftAlreadyMinted(uint256 tokenId);
31
+ error ErrorFlightNftNotAvailable(uint256 tokenId);
32
+ error ErrorFlightNftNotFlightPolicy(uint256 tokenId);
33
+
34
+ ChainNft public immutable chainNft;
35
+ FlightProduct public immutable flightProduct;
36
+ InstanceReader public immutable instanceReader;
37
+ IRegistry public registry;
38
+
39
+ address public minter;
31
40
  string private _baseUri;
32
41
 
33
42
 
43
+ modifier onlyMinter() {
44
+ if(msg.sender != minter) {
45
+ revert ErrorFlightNftNotMinter();
46
+ }
47
+ _;
48
+ }
49
+
50
+
34
51
  constructor(
35
52
  address flightProductAddress,
36
53
  string memory nftName,
@@ -40,10 +57,12 @@ contract FlightNft is
40
57
  ERC721(nftName, nftSymbol)
41
58
  Ownable(msg.sender)
42
59
  {
43
- _flightProduct = FlightProduct(flightProductAddress);
44
- _registry = _flightProduct.getRegistry();
45
- _chainNft = ChainNft(_registry.getChainNftAddress());
46
- _reader = _flightProduct.getInstance().getInstanceReader();
60
+ flightProduct = FlightProduct(flightProductAddress);
61
+ registry = flightProduct.getRegistry();
62
+ chainNft = ChainNft(registry.getChainNftAddress());
63
+ instanceReader = flightProduct.getInstance().getInstanceReader();
64
+
65
+ minter = msg.sender;
47
66
  _baseUri = baseUri;
48
67
  }
49
68
 
@@ -60,6 +79,43 @@ contract FlightNft is
60
79
  }
61
80
 
62
81
 
82
+ /**
83
+ * Set the minter address.
84
+ */
85
+ function setMinter(address minterAddress)
86
+ public
87
+ onlyOwner()
88
+ {
89
+ minter = minterAddress;
90
+ }
91
+
92
+
93
+ /**
94
+ * Mints a metadata NFT for the specified chainNft NFT.
95
+ * Only the minter can mint such NFTs.
96
+ */
97
+ function mint(uint256 tokenId)
98
+ external
99
+ onlyMinter()
100
+ {
101
+ // verify nft does not yet exist
102
+ if (_ownerOf(tokenId) != address(0)) {
103
+ revert ErrorFlightNftAlreadyMinted(tokenId);
104
+ }
105
+
106
+ // verify nft on chainNft exists
107
+ // also checks if nft exists (ERC721NonexistentToken)
108
+ address nftOwner = chainNft.ownerOf(tokenId);
109
+
110
+ // verify nft is flight delay policy
111
+ if (registry.getParentNftId(NftIdLib.toNftId(tokenId)) != registry.getNftIdForAddress(address(flightProduct))) {
112
+ revert ErrorFlightNftNotFlightPolicy(tokenId);
113
+ }
114
+
115
+ _mint(nftOwner, tokenId);
116
+ }
117
+
118
+
63
119
  /**
64
120
  * @dev Return the NFT token URI for the specified token.
65
121
  * No check is performed to ensure the token exists.
@@ -86,76 +142,27 @@ contract FlightNft is
86
142
  function transferFrom(address from, address to, uint256 tokenId) public override { _revert(); }
87
143
 
88
144
  function balanceOf(address owner) public override view returns (uint256 balance) {
89
- return _chainNft.balanceOf(owner);
145
+ return chainNft.balanceOf(owner);
90
146
  }
91
147
 
92
148
  function getApproved(uint256 tokenId) public override view returns (address operator) {
93
- return _chainNft.getApproved(tokenId);
149
+ return chainNft.getApproved(tokenId);
94
150
  }
95
151
 
96
152
  function isApprovedForAll(address owner, address operator) public override view returns (bool) {
97
- return _chainNft.isApprovedForAll(owner, operator);
153
+ return chainNft.isApprovedForAll(owner, operator);
98
154
  }
99
155
 
100
156
  function ownerOf(uint256 tokenId) public override view returns (address owner) {
101
- return _chainNft.ownerOf(tokenId);
157
+ return chainNft.ownerOf(tokenId);
102
158
  }
103
159
 
104
160
  function supportsInterface(bytes4 interfaceId) public override view returns (bool) {
105
- return _chainNft.supportsInterface(interfaceId);
161
+ return chainNft.supportsInterface(interfaceId);
106
162
  }
107
163
 
108
164
 
109
- // /**
110
- // * @dev See {IERC721Metadata-name}.
111
- // */
112
- // function name() public override view returns (string memory) {
113
- // return _nftName;
114
- // }
115
-
116
-
117
- // /**
118
- // * @dev See {IERC721Metadata-name}.
119
- // */
120
- // function symbol() public override view returns (string memory) {
121
- // return _nftSymbol;
122
- // }
123
-
124
-
125
- /**
126
- * @dev Return the NFT metadata in JSON format.
127
- * examples:
128
- * - https://basescan.org/address/0x4ed83635e2309a7c067d0f98efca47b920bf79b1#readContract
129
- * {"name":"No-Punk #7580","image":"https://gateway.irys.xyz/InMDGHEx3L1YyRz6boihZGDHw4CKCRlLBlKnW6D83i4/7580.png","attributes":[{"trait_type":"Hair","value":"Cap"},{"trait_type":"Mouth","value":"Purple Lipstick"},{"trait_type":"Type","value":"Female"}]}
130
- * - ,
131
- * {"name":"My NFT","description": "A unique digital asset", "image": "https://example.com/nft/1.png" }
132
- */
133
- function getMetadataJson(uint256 tokenId) external view returns (string memory) {
134
- (
135
- , // risk id
136
- string memory flightData,
137
- string memory departureTimeLocal,
138
- string memory arrivalTimeLocal,
139
- , // status
140
- // delay minutes
141
- ) = getRiskData(NftIdLib.toNftId(tokenId));
142
-
143
- return string(
144
- abi.encodePacked(
145
- "{\"name\":\"Flight Delay Policy #",
146
- toString(tokenId),
147
- "\",\"description\":\"Flight: ",
148
- flightData,
149
- ", Scheduled Departure: ",
150
- departureTimeLocal,
151
- ", Scheduled Arrival: ",
152
- arrivalTimeLocal,
153
- "\"}"
154
- ));
155
- }
156
-
157
-
158
- function getRiskData(NftId policyNftId)
165
+ function getPolicyData(NftId policyNftId)
159
166
  public
160
167
  view
161
168
  returns (
@@ -163,15 +170,27 @@ contract FlightNft is
163
170
  string memory flightData,
164
171
  string memory departureTimeLocal,
165
172
  string memory arrivalTimeLocal,
173
+ Amount premiumAmount,
174
+ Amount[5] memory payoutAmounts,
166
175
  bytes1 status,
167
176
  int256 delayMinutes
168
177
  )
169
178
  {
170
- riskId = _reader.getPolicyInfo(policyNftId).riskId;
171
- bytes memory data = _reader.getRiskInfo(riskId).data;
179
+ IPolicy.PolicyInfo memory info = instanceReader.getPolicyInfo(policyNftId);
180
+
181
+ // get financial data
182
+ premiumAmount = info.premiumAmount;
183
+
184
+ if (info.applicationData.length > 0) {
185
+ (, payoutAmounts) = abi.decode(info.applicationData, (Amount, Amount[5]));
186
+ }
187
+
188
+ // get risk data
189
+ riskId = info.riskId;
190
+ bytes memory data = instanceReader.getRiskInfo(riskId).data;
172
191
 
173
192
  if (data.length > 0) {
174
- FlightProduct.FlightRisk memory flightRisk = _flightProduct.decodeFlightRiskData(data);
193
+ FlightProduct.FlightRisk memory flightRisk = flightProduct.decodeFlightRiskData(data);
175
194
  flightData = flightRisk.flightData.toString();
176
195
  departureTimeLocal = flightRisk.departureTimeLocal;
177
196
  arrivalTimeLocal = flightRisk.arrivalTimeLocal;
@@ -181,22 +200,6 @@ contract FlightNft is
181
200
  }
182
201
 
183
202
 
184
- /**
185
- * returns the flight product address.
186
- */
187
- function getChainNft() external view returns (address) {
188
- return address(_chainNft);
189
- }
190
-
191
-
192
- /**
193
- * returns the flight product address.
194
- */
195
- function getFlightProduct() external view returns (address) {
196
- return address(_flightProduct);
197
- }
198
-
199
-
200
203
  function toString(uint256 value) public pure returns (string memory) {
201
204
  if (value == 0) {
202
205
  return "0";
@@ -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;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etherisc/gif-next",
3
- "version": "3.0.0-495114d-923",
3
+ "version": "3.0.0-52a6f7a-323",
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": {