@lifi/sdk 3.5.2 → 3.6.0-beta.1

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 (227) hide show
  1. package/package.json +1 -1
  2. package/src/_cjs/constants.js +4 -2
  3. package/src/_cjs/constants.js.map +1 -1
  4. package/src/_cjs/core/EVM/EVM.js +0 -4
  5. package/src/_cjs/core/EVM/EVM.js.map +1 -1
  6. package/src/_cjs/core/EVM/EVMStepExecutor.js +156 -81
  7. package/src/_cjs/core/EVM/EVMStepExecutor.js.map +1 -1
  8. package/src/_cjs/core/EVM/abi.js +36 -43
  9. package/src/_cjs/core/EVM/abi.js.map +1 -1
  10. package/src/_cjs/core/EVM/checkAllowance.js +36 -30
  11. package/src/_cjs/core/EVM/checkAllowance.js.map +1 -1
  12. package/src/_cjs/core/EVM/getAllowance.js.map +1 -1
  13. package/src/_cjs/core/EVM/getEVMBalance.js.map +1 -1
  14. package/src/_cjs/core/EVM/getNativePermit.js +90 -0
  15. package/src/_cjs/core/EVM/getNativePermit.js.map +1 -0
  16. package/src/_cjs/core/EVM/parseEVMErrors.js +5 -2
  17. package/src/_cjs/core/EVM/parseEVMErrors.js.map +1 -1
  18. package/src/_cjs/core/EVM/permit2/allowanceTransfer.js +100 -0
  19. package/src/_cjs/core/EVM/permit2/allowanceTransfer.js.map +1 -0
  20. package/src/_cjs/core/EVM/permit2/constants.js +12 -0
  21. package/src/_cjs/core/EVM/permit2/constants.js.map +1 -0
  22. package/src/_cjs/core/EVM/permit2/domain.js +12 -0
  23. package/src/_cjs/core/EVM/permit2/domain.js.map +1 -0
  24. package/src/_cjs/core/EVM/permit2/signatureTransfer.js +121 -0
  25. package/src/_cjs/core/EVM/permit2/signatureTransfer.js.map +1 -0
  26. package/src/_cjs/core/EVM/setAllowance.js +3 -4
  27. package/src/_cjs/core/EVM/setAllowance.js.map +1 -1
  28. package/src/_cjs/core/EVM/signPermitMessage.js +169 -0
  29. package/src/_cjs/core/EVM/signPermitMessage.js.map +1 -0
  30. package/src/_cjs/core/EVM/typeguards.js +8 -0
  31. package/src/_cjs/core/EVM/typeguards.js.map +1 -0
  32. package/src/_cjs/core/EVM/types.js.map +1 -1
  33. package/src/_cjs/core/EVM/utils.js +2 -1
  34. package/src/_cjs/core/EVM/utils.js.map +1 -1
  35. package/src/_cjs/core/EVM/waitForBatchTransactionReceipt.js +32 -0
  36. package/src/_cjs/core/EVM/waitForBatchTransactionReceipt.js.map +1 -0
  37. package/src/_cjs/core/EVM/waitForRelayedTransactionReceipt.js +40 -0
  38. package/src/_cjs/core/EVM/waitForRelayedTransactionReceipt.js.map +1 -0
  39. package/src/_cjs/core/checkBalance.js +3 -3
  40. package/src/_cjs/core/checkBalance.js.map +1 -1
  41. package/src/_cjs/core/waitForTransactionStatus.js +4 -2
  42. package/src/_cjs/core/waitForTransactionStatus.js.map +1 -1
  43. package/src/_cjs/createConfig.js +2 -2
  44. package/src/_cjs/createConfig.js.map +1 -1
  45. package/src/_cjs/errors/constants.js +1 -0
  46. package/src/_cjs/errors/constants.js.map +1 -1
  47. package/src/_cjs/index.js +9 -6
  48. package/src/_cjs/index.js.map +1 -1
  49. package/src/_cjs/services/api.js +127 -53
  50. package/src/_cjs/services/api.js.map +1 -1
  51. package/src/_cjs/utils/checkPackageUpdates.js +20 -0
  52. package/src/_cjs/utils/checkPackageUpdates.js.map +1 -0
  53. package/src/_cjs/utils/convertQuoteToRoute.js +33 -0
  54. package/src/_cjs/utils/convertQuoteToRoute.js.map +1 -0
  55. package/src/_cjs/utils/fetchTxErrorDetails.js +13 -0
  56. package/src/_cjs/utils/fetchTxErrorDetails.js.map +1 -0
  57. package/src/_cjs/utils/invariant.js +17 -0
  58. package/src/_cjs/utils/invariant.js.map +1 -0
  59. package/src/_cjs/utils/waitForResult.js +16 -3
  60. package/src/_cjs/utils/waitForResult.js.map +1 -1
  61. package/src/_cjs/version.js +1 -1
  62. package/src/_cjs/version.js.map +1 -1
  63. package/src/_esm/constants.js +3 -1
  64. package/src/_esm/constants.js.map +1 -1
  65. package/src/_esm/core/EVM/EVM.js +0 -4
  66. package/src/_esm/core/EVM/EVM.js.map +1 -1
  67. package/src/_esm/core/EVM/EVMStepExecutor.js +186 -92
  68. package/src/_esm/core/EVM/EVMStepExecutor.js.map +1 -1
  69. package/src/_esm/core/EVM/abi.js +37 -42
  70. package/src/_esm/core/EVM/abi.js.map +1 -1
  71. package/src/_esm/core/EVM/checkAllowance.js +41 -32
  72. package/src/_esm/core/EVM/checkAllowance.js.map +1 -1
  73. package/src/_esm/core/EVM/getAllowance.js.map +1 -1
  74. package/src/_esm/core/EVM/getEVMBalance.js.map +1 -1
  75. package/src/_esm/core/EVM/getNativePermit.js +95 -0
  76. package/src/_esm/core/EVM/getNativePermit.js.map +1 -0
  77. package/src/_esm/core/EVM/parseEVMErrors.js +9 -1
  78. package/src/_esm/core/EVM/parseEVMErrors.js.map +1 -1
  79. package/src/_esm/core/EVM/permit2/allowanceTransfer.js +93 -0
  80. package/src/_esm/core/EVM/permit2/allowanceTransfer.js.map +1 -0
  81. package/src/_esm/core/EVM/permit2/constants.js +9 -0
  82. package/src/_esm/core/EVM/permit2/constants.js.map +1 -0
  83. package/src/_esm/core/EVM/permit2/domain.js +9 -0
  84. package/src/_esm/core/EVM/permit2/domain.js.map +1 -0
  85. package/src/_esm/core/EVM/permit2/signatureTransfer.js +117 -0
  86. package/src/_esm/core/EVM/permit2/signatureTransfer.js.map +1 -0
  87. package/src/_esm/core/EVM/setAllowance.js +3 -4
  88. package/src/_esm/core/EVM/setAllowance.js.map +1 -1
  89. package/src/_esm/core/EVM/signPermitMessage.js +163 -0
  90. package/src/_esm/core/EVM/signPermitMessage.js.map +1 -0
  91. package/src/_esm/core/EVM/typeguards.js +5 -0
  92. package/src/_esm/core/EVM/typeguards.js.map +1 -0
  93. package/src/_esm/core/EVM/types.js.map +1 -1
  94. package/src/_esm/core/EVM/utils.js +2 -1
  95. package/src/_esm/core/EVM/utils.js.map +1 -1
  96. package/src/_esm/core/EVM/waitForBatchTransactionReceipt.js +28 -0
  97. package/src/_esm/core/EVM/waitForBatchTransactionReceipt.js.map +1 -0
  98. package/src/_esm/core/EVM/waitForRelayedTransactionReceipt.js +36 -0
  99. package/src/_esm/core/EVM/waitForRelayedTransactionReceipt.js.map +1 -0
  100. package/src/_esm/core/checkBalance.js +3 -3
  101. package/src/_esm/core/checkBalance.js.map +1 -1
  102. package/src/_esm/core/waitForTransactionStatus.js +4 -2
  103. package/src/_esm/core/waitForTransactionStatus.js.map +1 -1
  104. package/src/_esm/createConfig.js +1 -1
  105. package/src/_esm/createConfig.js.map +1 -1
  106. package/src/_esm/errors/constants.js +1 -0
  107. package/src/_esm/errors/constants.js.map +1 -1
  108. package/src/_esm/index.js +4 -2
  109. package/src/_esm/index.js.map +1 -1
  110. package/src/_esm/services/api.js +165 -72
  111. package/src/_esm/services/api.js.map +1 -1
  112. package/src/_esm/utils/checkPackageUpdates.js +17 -0
  113. package/src/_esm/utils/checkPackageUpdates.js.map +1 -0
  114. package/src/_esm/utils/convertQuoteToRoute.js +37 -0
  115. package/src/_esm/utils/convertQuoteToRoute.js.map +1 -0
  116. package/src/_esm/utils/fetchTxErrorDetails.js +9 -0
  117. package/src/_esm/utils/fetchTxErrorDetails.js.map +1 -0
  118. package/src/_esm/utils/invariant.js +43 -0
  119. package/src/_esm/utils/invariant.js.map +1 -0
  120. package/src/_esm/utils/waitForResult.js +19 -3
  121. package/src/_esm/utils/waitForResult.js.map +1 -1
  122. package/src/_esm/version.js +1 -1
  123. package/src/_esm/version.js.map +1 -1
  124. package/src/_types/constants.d.ts +3 -1
  125. package/src/_types/constants.d.ts.map +1 -1
  126. package/src/_types/core/EVM/EVM.d.ts.map +1 -1
  127. package/src/_types/core/EVM/EVMStepExecutor.d.ts +7 -4
  128. package/src/_types/core/EVM/EVMStepExecutor.d.ts.map +1 -1
  129. package/src/_types/core/EVM/abi.d.ts +202 -5
  130. package/src/_types/core/EVM/abi.d.ts.map +1 -1
  131. package/src/_types/core/EVM/checkAllowance.d.ts +12 -2
  132. package/src/_types/core/EVM/checkAllowance.d.ts.map +1 -1
  133. package/src/_types/core/EVM/getAllowance.d.ts +5 -4
  134. package/src/_types/core/EVM/getAllowance.d.ts.map +1 -1
  135. package/src/_types/core/EVM/getEVMBalance.d.ts +2 -1
  136. package/src/_types/core/EVM/getEVMBalance.d.ts.map +1 -1
  137. package/src/_types/core/EVM/getNativePermit.d.ts +18 -0
  138. package/src/_types/core/EVM/getNativePermit.d.ts.map +1 -0
  139. package/src/_types/core/EVM/permit2/allowanceTransfer.d.ts +41 -0
  140. package/src/_types/core/EVM/permit2/allowanceTransfer.d.ts.map +1 -0
  141. package/src/_types/core/EVM/permit2/constants.d.ts +8 -0
  142. package/src/_types/core/EVM/permit2/constants.d.ts.map +1 -0
  143. package/src/_types/core/EVM/permit2/domain.d.ts +8 -0
  144. package/src/_types/core/EVM/permit2/domain.d.ts.map +1 -0
  145. package/src/_types/core/EVM/permit2/signatureTransfer.d.ts +42 -0
  146. package/src/_types/core/EVM/permit2/signatureTransfer.d.ts.map +1 -0
  147. package/src/_types/core/EVM/setAllowance.d.ts +2 -2
  148. package/src/_types/core/EVM/setAllowance.d.ts.map +1 -1
  149. package/src/_types/core/EVM/signPermitMessage.d.ts +25 -0
  150. package/src/_types/core/EVM/signPermitMessage.d.ts.map +1 -0
  151. package/src/_types/core/EVM/typeguards.d.ts +4 -0
  152. package/src/_types/core/EVM/typeguards.d.ts.map +1 -0
  153. package/src/_types/core/EVM/types.d.ts +8 -18
  154. package/src/_types/core/EVM/types.d.ts.map +1 -1
  155. package/src/_types/core/EVM/utils.d.ts +2 -2
  156. package/src/_types/core/EVM/utils.d.ts.map +1 -1
  157. package/src/_types/core/EVM/waitForBatchTransactionReceipt.d.ts +4 -0
  158. package/src/_types/core/EVM/waitForBatchTransactionReceipt.d.ts.map +1 -0
  159. package/src/_types/core/EVM/waitForRelayedTransactionReceipt.d.ts +4 -0
  160. package/src/_types/core/EVM/waitForRelayedTransactionReceipt.d.ts.map +1 -0
  161. package/src/_types/core/checkBalance.d.ts.map +1 -1
  162. package/src/_types/core/waitForTransactionStatus.d.ts.map +1 -1
  163. package/src/_types/createConfig.d.ts.map +1 -1
  164. package/src/_types/errors/constants.d.ts +2 -1
  165. package/src/_types/errors/constants.d.ts.map +1 -1
  166. package/src/_types/index.d.ts +5 -3
  167. package/src/_types/index.d.ts.map +1 -1
  168. package/src/_types/services/api.d.ts +93 -26
  169. package/src/_types/services/api.d.ts.map +1 -1
  170. package/src/_types/utils/checkPackageUpdates.d.ts +2 -0
  171. package/src/_types/utils/checkPackageUpdates.d.ts.map +1 -0
  172. package/src/_types/utils/convertQuoteToRoute.d.ts +11 -0
  173. package/src/_types/utils/convertQuoteToRoute.d.ts.map +1 -0
  174. package/src/_types/utils/fetchTxErrorDetails.d.ts +2 -0
  175. package/src/_types/utils/fetchTxErrorDetails.d.ts.map +1 -0
  176. package/src/_types/utils/invariant.d.ts +22 -0
  177. package/src/_types/utils/invariant.d.ts.map +1 -0
  178. package/src/_types/utils/waitForResult.d.ts +4 -1
  179. package/src/_types/utils/waitForResult.d.ts.map +1 -1
  180. package/src/_types/version.d.ts +1 -1
  181. package/src/_types/version.d.ts.map +1 -1
  182. package/src/constants.ts +6 -1
  183. package/src/core/EVM/EVM.ts +0 -4
  184. package/src/core/EVM/EVMStepExecutor.ts +239 -146
  185. package/src/core/EVM/abi.ts +40 -43
  186. package/src/core/EVM/checkAllowance.ts +96 -92
  187. package/src/core/EVM/getAllowance.ts +8 -8
  188. package/src/core/EVM/getEVMBalance.ts +2 -2
  189. package/src/core/EVM/getNativePermit.ts +114 -0
  190. package/src/core/EVM/parseEVMErrors.ts +9 -1
  191. package/src/core/EVM/permit2/allowanceTransfer.ts +168 -0
  192. package/src/core/EVM/permit2/constants.ts +11 -0
  193. package/src/core/EVM/permit2/domain.ts +20 -0
  194. package/src/core/EVM/permit2/signatureTransfer.ts +214 -0
  195. package/src/core/EVM/setAllowance.ts +14 -15
  196. package/src/core/EVM/signPermitMessage.ts +280 -0
  197. package/src/core/EVM/typeguards.ts +7 -0
  198. package/src/core/EVM/types.ts +11 -26
  199. package/src/core/EVM/utils.ts +4 -3
  200. package/src/core/EVM/waitForBatchTransactionReceipt.ts +61 -0
  201. package/src/core/EVM/waitForRelayedTransactionReceipt.ts +57 -0
  202. package/src/core/checkBalance.ts +6 -3
  203. package/src/core/waitForTransactionStatus.ts +6 -2
  204. package/src/createConfig.ts +1 -1
  205. package/src/errors/constants.ts +1 -0
  206. package/src/index.ts +4 -8
  207. package/src/services/api.ts +279 -105
  208. package/src/utils/checkPackageUpdates.ts +22 -0
  209. package/src/utils/convertQuoteToRoute.ts +45 -0
  210. package/src/utils/fetchTxErrorDetails.ts +10 -0
  211. package/src/utils/invariant.ts +51 -0
  212. package/src/utils/waitForResult.ts +22 -3
  213. package/src/version.ts +1 -1
  214. package/src/_cjs/core/EVM/multisig.js +0 -29
  215. package/src/_cjs/core/EVM/multisig.js.map +0 -1
  216. package/src/_cjs/helpers.js +0 -55
  217. package/src/_cjs/helpers.js.map +0 -1
  218. package/src/_esm/core/EVM/multisig.js +0 -25
  219. package/src/_esm/core/EVM/multisig.js.map +0 -1
  220. package/src/_esm/helpers.js +0 -58
  221. package/src/_esm/helpers.js.map +0 -1
  222. package/src/_types/core/EVM/multisig.d.ts +0 -6
  223. package/src/_types/core/EVM/multisig.d.ts.map +0 -1
  224. package/src/_types/helpers.d.ts +0 -13
  225. package/src/_types/helpers.d.ts.map +0 -1
  226. package/src/core/EVM/multisig.ts +0 -54
  227. package/src/helpers.ts +0 -75
package/package.json CHANGED
@@ -67,5 +67,5 @@
67
67
  "sideEffects": false,
68
68
  "types": "./src/_types/index.d.ts",
69
69
  "typings": "./src/_types/index.d.ts",
70
- "version": "3.5.2"
70
+ "version": "3.6.0-beta.1"
71
71
  }
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SolSystemProgram = exports.wrappedSolAddress = exports.AlternativeAddressZero = exports.AddressZero = void 0;
3
+ exports.MaxUint256 = exports.MaxUint160 = exports.MaxUint48 = exports.SolSystemProgram = exports.AlternativeAddressZero = exports.AddressZero = void 0;
4
4
  exports.AddressZero = '0x0000000000000000000000000000000000000000';
5
5
  exports.AlternativeAddressZero = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';
6
- exports.wrappedSolAddress = 'So11111111111111111111111111111111111111112';
7
6
  exports.SolSystemProgram = '11111111111111111111111111111111';
7
+ exports.MaxUint48 = BigInt('0xffffffffffff');
8
+ exports.MaxUint160 = BigInt('0xffffffffffffffffffffffffffffffffffffffff');
9
+ exports.MaxUint256 = BigInt(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffn);
8
10
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG,4CAA4C,CAAA;AAC1D,QAAA,sBAAsB,GACjC,4CAA4C,CAAA;AACjC,QAAA,iBAAiB,GAAG,6CAA6C,CAAA;AACjE,QAAA,gBAAgB,GAAG,kCAAkC,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG,4CAA4C,CAAA;AAC1D,QAAA,sBAAsB,GACjC,4CAA4C,CAAA;AAEjC,QAAA,gBAAgB,GAAG,kCAAkC,CAAA;AAErD,QAAA,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAA;AACpC,QAAA,UAAU,GAAG,MAAM,CAAC,4CAA4C,CAAC,CAAA;AACjE,QAAA,UAAU,GACrB,MAAM,CAAC,mEAAmE,CAAC,CAAA"}
@@ -12,9 +12,6 @@ function EVM(options) {
12
12
  get type() {
13
13
  return types_1.ChainType.EVM;
14
14
  },
15
- get multisig() {
16
- return _options.multisig;
17
- },
18
15
  isAddress: viem_1.isAddress,
19
16
  resolveAddress: getENSAddress_js_1.getENSAddress,
20
17
  getBalance: getEVMBalance_js_1.getEVMBalance,
@@ -25,7 +22,6 @@ function EVM(options) {
25
22
  const walletClient = await _options.getWalletClient();
26
23
  const executor = new EVMStepExecutor_js_1.EVMStepExecutor({
27
24
  client: walletClient,
28
- multisig: _options.multisig,
29
25
  routeId: options.routeId,
30
26
  executionOptions: {
31
27
  ...options.executionOptions,
@@ -1 +1 @@
1
- {"version":3,"file":"EVM.js","sourceRoot":"","sources":["../../../core/EVM/EVM.ts"],"names":[],"mappings":";;AAQA,kBAsCC;AA9CD,uCAAuC;AACvC,+BAAgC;AAEhC,6DAAsD;AACtD,yDAAkD;AAClD,yDAAkD;AAGlD,SAAgB,GAAG,CAAC,OAA4B;IAC9C,MAAM,QAAQ,GAAuB,OAAO,IAAI,EAAE,CAAA;IAClD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,iBAAS,CAAC,GAAG,CAAA;QACtB,CAAC;QACD,IAAI,QAAQ;YACV,OAAO,QAAQ,CAAC,QAAQ,CAAA;QAC1B,CAAC;QACD,SAAS,EAAT,gBAAS;QACT,cAAc,EAAE,gCAAa;QAC7B,UAAU,EAAE,gCAAa;QACzB,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;YAC5C,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAA;YAErD,MAAM,QAAQ,GAAG,IAAI,oCAAe,CAAC;gBACnC,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;oBAC3B,eAAe,EACb,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE,eAAe;iBACpE;aACF,CAAC,CAAA;YAEF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,OAA2B;YACpC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"EVM.js","sourceRoot":"","sources":["../../../core/EVM/EVM.ts"],"names":[],"mappings":";;AAQA,kBAkCC;AA1CD,uCAAuC;AACvC,+BAAgC;AAEhC,6DAAsD;AACtD,yDAAkD;AAClD,yDAAkD;AAGlD,SAAgB,GAAG,CAAC,OAA4B;IAC9C,MAAM,QAAQ,GAAuB,OAAO,IAAI,EAAE,CAAA;IAClD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,iBAAS,CAAC,GAAG,CAAA;QACtB,CAAC;QACD,SAAS,EAAT,gBAAS;QACT,cAAc,EAAE,gCAAa;QAC7B,UAAU,EAAE,gCAAa;QACzB,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;YAC5C,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAA;YAErD,MAAM,QAAQ,GAAG,IAAI,oCAAe,CAAC;gBACnC,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;oBAC3B,eAAe,EACb,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE,eAAe;iBACpE;aACF,CAAC,CAAA;YAEF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,OAA2B;YACpC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EVMStepExecutor = void 0;
4
4
  const actions_1 = require("viem/actions");
5
+ const experimental_1 = require("viem/experimental");
5
6
  const utils_1 = require("viem/utils");
6
7
  const config_js_1 = require("../../config.js");
7
8
  const constants_js_1 = require("../../errors/constants.js");
@@ -13,10 +14,14 @@ const checkBalance_js_1 = require("../checkBalance.js");
13
14
  const stepComparison_js_1 = require("../stepComparison.js");
14
15
  const waitForDestinationChainTransaction_js_1 = require("../waitForDestinationChainTransaction.js");
15
16
  const checkAllowance_js_1 = require("./checkAllowance.js");
16
- const multisig_js_1 = require("./multisig.js");
17
+ const getNativePermit_js_1 = require("./getNativePermit.js");
17
18
  const parseEVMErrors_js_1 = require("./parseEVMErrors.js");
19
+ const signPermitMessage_js_1 = require("./signPermitMessage.js");
18
20
  const switchChain_js_1 = require("./switchChain.js");
21
+ const typeguards_js_1 = require("./typeguards.js");
19
22
  const utils_js_1 = require("./utils.js");
23
+ const waitForBatchTransactionReceipt_js_1 = require("./waitForBatchTransactionReceipt.js");
24
+ const waitForRelayedTransactionReceipt_js_1 = require("./waitForRelayedTransactionReceipt.js");
20
25
  const waitForTransactionReceipt_js_1 = require("./waitForTransactionReceipt.js");
21
26
  class EVMStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
22
27
  constructor(options) {
@@ -27,12 +32,6 @@ class EVMStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
27
32
  writable: true,
28
33
  value: void 0
29
34
  });
30
- Object.defineProperty(this, "multisig", {
31
- enumerable: true,
32
- configurable: true,
33
- writable: true,
34
- value: void 0
35
- });
36
35
  Object.defineProperty(this, "checkClient", {
37
36
  enumerable: true,
38
37
  configurable: true,
@@ -81,26 +80,49 @@ class EVMStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
81
80
  return step;
82
81
  }
83
82
  }
84
- const isMultisigClient = !!this.multisig?.isMultisigWalletClient;
85
- const multisigBatchTransactions = [];
86
- const shouldBatchTransactions = this.multisig?.shouldBatchTransactions &&
87
- !!this.multisig.sendBatchTransaction;
88
83
  const fromChain = await config_js_1.config.getChainById(step.action.fromChainId);
89
84
  const toChain = await config_js_1.config.getChainById(step.action.toChainId);
85
+ let atomicBatchSupported = false;
86
+ try {
87
+ const capabilities = (await (0, utils_1.getAction)(this.client, experimental_1.getCapabilities, 'getCapabilities')(undefined));
88
+ atomicBatchSupported = capabilities[fromChain.id]?.atomicBatch?.supported;
89
+ }
90
+ catch {
91
+ }
92
+ const calls = [];
90
93
  const isBridgeExecution = fromChain.id !== toChain.id;
91
94
  const currentProcessType = isBridgeExecution ? 'CROSS_CHAIN' : 'SWAP';
92
95
  const existingProcess = step.execution.process.find((p) => p.type === currentProcessType);
96
+ const isPermitStep = (0, typeguards_js_1.isEVMPermitStep)(step);
97
+ const nativePermit = await (0, getNativePermit_js_1.getNativePermit)(this.client, fromChain, step.action.fromToken.address);
98
+ const nativePermitSupported = !!fromChain.permit2Proxy &&
99
+ nativePermit.supported &&
100
+ !atomicBatchSupported &&
101
+ !isPermitStep;
102
+ const permit2Supported = !!fromChain.permit2 && !!fromChain.permit2Proxy && !atomicBatchSupported;
103
+ const permitSupported = permit2Supported || nativePermitSupported;
93
104
  const checkForAllowance = !existingProcess?.txHash &&
94
105
  !(0, isZeroAddress_js_1.isZeroAddress)(step.action.fromToken.address) &&
95
- (shouldBatchTransactions || !isMultisigClient);
106
+ !nativePermitSupported;
96
107
  if (checkForAllowance) {
97
- const data = await (0, checkAllowance_js_1.checkAllowance)(this.client, fromChain, step, this.statusManager, this.executionOptions, this.allowUserInteraction, shouldBatchTransactions);
108
+ const data = await (0, checkAllowance_js_1.checkAllowance)({
109
+ client: this.client,
110
+ chain: fromChain,
111
+ step,
112
+ statusManager: this.statusManager,
113
+ executionOptions: this.executionOptions,
114
+ allowUserInteraction: this.allowUserInteraction,
115
+ atomicBatchSupported,
116
+ permit2Supported,
117
+ });
98
118
  if (data) {
99
- const baseTransaction = {
100
- to: step.action.fromToken.address,
101
- data,
102
- };
103
- multisigBatchTransactions.push(baseTransaction);
119
+ if (atomicBatchSupported) {
120
+ calls.push({
121
+ chainId: step.action.fromToken.chainId,
122
+ to: step.action.fromToken.address,
123
+ data,
124
+ });
125
+ }
104
126
  }
105
127
  }
106
128
  let process = this.statusManager.findOrCreateProcess({
@@ -109,15 +131,7 @@ class EVMStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
109
131
  chainId: fromChain.id,
110
132
  });
111
133
  if (process.status !== 'DONE') {
112
- const multisigProcess = step.execution.process.find((p) => !!p.multisigTxHash);
113
134
  try {
114
- if (isMultisigClient && multisigProcess) {
115
- const multisigTxHash = multisigProcess.multisigTxHash;
116
- if (!multisigTxHash) {
117
- throw new errors_js_1.ValidationError('Multisig internal transaction hash is undefined.');
118
- }
119
- await (0, multisig_js_1.updateMultisigRouteProcess)(multisigTxHash, step, process.type, fromChain, this.statusManager, this.multisig);
120
- }
121
135
  let txHash;
122
136
  if (process.txHash) {
123
137
  const updatedClient = await this.checkClient(step, process);
@@ -131,7 +145,28 @@ class EVMStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
131
145
  await (0, checkBalance_js_1.checkBalance)(this.client.account.address, step);
132
146
  if (!step.transactionRequest) {
133
147
  const { execution, ...stepBase } = step;
134
- const updatedStep = await (0, api_js_1.getStepTransaction)(stepBase);
148
+ let updatedStep;
149
+ if (isPermitStep) {
150
+ const updatedRelayedStep = await (0, api_js_1.getRelayerQuote)({
151
+ fromChain: stepBase.action.fromChainId,
152
+ fromToken: stepBase.action.fromToken.address,
153
+ fromAddress: stepBase.action.fromAddress,
154
+ fromAmount: stepBase.action.fromAmount,
155
+ toChain: stepBase.action.toChainId,
156
+ toToken: stepBase.action.toToken.address,
157
+ slippage: stepBase.action.slippage,
158
+ toAddress: stepBase.action.toAddress,
159
+ allowBridges: [stepBase.tool],
160
+ });
161
+ updatedStep = {
162
+ ...updatedRelayedStep.data.quote.step,
163
+ ...updatedRelayedStep.data.quote,
164
+ id: stepBase.id,
165
+ };
166
+ }
167
+ else {
168
+ updatedStep = await (0, api_js_1.getStepTransaction)(stepBase);
169
+ }
135
170
  const comparedStep = await (0, stepComparison_js_1.stepComparison)(this.statusManager, step, updatedStep, this.allowUserInteraction, this.executionOptions);
136
171
  Object.assign(step, {
137
172
  ...comparedStep,
@@ -141,14 +176,6 @@ class EVMStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
141
176
  if (!step.transactionRequest) {
142
177
  throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
143
178
  }
144
- const updatedClient = await this.checkClient(step, process);
145
- if (!updatedClient) {
146
- return step;
147
- }
148
- process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED');
149
- if (!this.allowUserInteraction) {
150
- return step;
151
- }
152
179
  let transactionRequest = {
153
180
  to: step.transactionRequest.to,
154
181
  from: step.transactionRequest.from,
@@ -175,61 +202,110 @@ class EVMStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
175
202
  ...customizedTransactionRequest,
176
203
  };
177
204
  }
178
- if (shouldBatchTransactions && this.multisig?.sendBatchTransaction) {
179
- if (transactionRequest.to && transactionRequest.data) {
180
- const populatedTransaction = {
181
- value: transactionRequest.value,
182
- to: transactionRequest.to,
183
- data: transactionRequest.data,
184
- };
185
- multisigBatchTransactions.push(populatedTransaction);
186
- txHash = await this.multisig?.sendBatchTransaction(multisigBatchTransactions);
187
- }
188
- else {
189
- throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
190
- }
205
+ const updatedClient = await this.checkClient(step, process);
206
+ if (!updatedClient) {
207
+ return step;
191
208
  }
192
- else {
193
- txHash = await (0, utils_1.getAction)(this.client, actions_1.sendTransaction, 'sendTransaction')({
194
- to: transactionRequest.to,
195
- account: this.client.account,
209
+ process = this.statusManager.updateProcess(step, process.type, permitSupported ? 'PERMIT_REQUIRED' : 'ACTION_REQUIRED');
210
+ if (!this.allowUserInteraction) {
211
+ return step;
212
+ }
213
+ if (atomicBatchSupported) {
214
+ const transferCall = {
215
+ chainId: fromChain.id,
196
216
  data: transactionRequest.data,
217
+ to: transactionRequest.to,
197
218
  value: transactionRequest.value,
198
- gas: transactionRequest.gas,
199
- gasPrice: transactionRequest.gasPrice,
200
- maxFeePerGas: transactionRequest.maxFeePerGas,
201
- maxPriorityFeePerGas: transactionRequest.maxPriorityFeePerGas,
202
- chain: null,
203
- });
204
- }
205
- if (isMultisigClient) {
206
- process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED', {
207
- multisigTxHash: txHash,
208
- });
219
+ };
220
+ calls.push(transferCall);
221
+ txHash = (await (0, utils_1.getAction)(this.client, experimental_1.sendCalls, 'sendCalls')({
222
+ account: this.client.account,
223
+ calls,
224
+ }));
209
225
  }
210
226
  else {
211
- process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
227
+ let permitSignature;
228
+ if (permitSupported) {
229
+ permitSignature = await (0, signPermitMessage_js_1.signPermitMessage)(this.client, {
230
+ transactionRequest,
231
+ chain: fromChain,
232
+ tokenAddress: step.action.fromToken.address,
233
+ amount: BigInt(step.action.fromAmount),
234
+ nativePermit,
235
+ permitData: isPermitStep ? step.permitData : undefined,
236
+ useWitness: isPermitStep,
237
+ });
238
+ transactionRequest.to = fromChain.permit2Proxy;
239
+ }
240
+ if (isPermitStep && permitSignature) {
241
+ const relayedTransaction = await (0, api_js_1.relayTransaction)({
242
+ tokenOwner: this.client.account.address,
243
+ chainId: fromChain.id,
244
+ permit: step.permit,
245
+ witness: step.witness,
246
+ signedPermitData: permitSignature.signature,
247
+ callData: transactionRequest.data,
248
+ });
249
+ txHash = relayedTransaction.data.taskId;
250
+ }
251
+ else {
252
+ if (permitSignature) {
253
+ transactionRequest.data = permitSignature.data;
254
+ try {
255
+ transactionRequest.gas = await (0, actions_1.estimateGas)(this.client, {
256
+ account: this.client.account,
257
+ to: transactionRequest.to,
258
+ data: transactionRequest.data,
259
+ value: transactionRequest.value,
260
+ });
261
+ }
262
+ catch {
263
+ transactionRequest.gas = undefined;
264
+ }
265
+ }
266
+ process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED');
267
+ txHash = await (0, utils_1.getAction)(this.client, actions_1.sendTransaction, 'sendTransaction')({
268
+ to: transactionRequest.to,
269
+ account: this.client.account,
270
+ data: transactionRequest.data,
271
+ value: transactionRequest.value,
272
+ gas: transactionRequest.gas,
273
+ gasPrice: transactionRequest.gasPrice,
274
+ maxFeePerGas: transactionRequest.maxFeePerGas,
275
+ maxPriorityFeePerGas: transactionRequest.maxPriorityFeePerGas,
276
+ });
277
+ }
278
+ }
279
+ process = this.statusManager.updateProcess(step, process.type, 'PENDING', atomicBatchSupported
280
+ ? {
281
+ atomicBatchSupported,
282
+ }
283
+ : {
212
284
  txHash: txHash,
213
285
  txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${txHash}`,
214
286
  });
215
- }
216
287
  }
217
- const transactionReceipt = await (0, waitForTransactionReceipt_js_1.waitForTransactionReceipt)({
218
- client: this.client,
219
- chainId: fromChain.id,
220
- txHash,
221
- onReplaced: (response) => {
222
- this.statusManager.updateProcess(step, process.type, 'PENDING', {
223
- txHash: response.transaction.hash,
224
- txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${response.transaction.hash}`,
225
- });
226
- },
227
- });
228
- if (isMultisigClient && process.status === 'ACTION_REQUIRED') {
229
- await (0, multisig_js_1.updateMultisigRouteProcess)(transactionReceipt?.transactionHash || txHash, step, process.type, fromChain, this.statusManager, this.multisig);
288
+ let transactionReceipt;
289
+ if (atomicBatchSupported) {
290
+ transactionReceipt = await (0, waitForBatchTransactionReceipt_js_1.waitForBatchTransactionReceipt)(this.client, txHash);
291
+ }
292
+ else if (isPermitStep) {
293
+ transactionReceipt = await (0, waitForRelayedTransactionReceipt_js_1.waitForRelayedTransactionReceipt)(txHash);
294
+ }
295
+ else {
296
+ transactionReceipt = await (0, waitForTransactionReceipt_js_1.waitForTransactionReceipt)({
297
+ client: this.client,
298
+ chainId: fromChain.id,
299
+ txHash,
300
+ onReplaced: (response) => {
301
+ this.statusManager.updateProcess(step, process.type, 'PENDING', {
302
+ txHash: response.transaction.hash,
303
+ txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${response.transaction.hash}`,
304
+ });
305
+ },
306
+ });
230
307
  }
231
- if (!isMultisigClient &&
232
- transactionReceipt?.transactionHash &&
308
+ if (transactionReceipt?.transactionHash &&
233
309
  transactionReceipt.transactionHash !== txHash) {
234
310
  process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
235
311
  txHash: transactionReceipt.transactionHash,
@@ -269,7 +345,6 @@ class EVMStepExecutor extends BaseStepExecutor_js_1.BaseStepExecutor {
269
345
  }
270
346
  });
271
347
  this.client = options.client;
272
- this.multisig = options.multisig;
273
348
  }
274
349
  }
275
350
  exports.EVMStepExecutor = EVMStepExecutor;
@@ -1 +1 @@
1
- {"version":3,"file":"EVMStepExecutor.js","sourceRoot":"","sources":["../../../core/EVM/EVMStepExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EVMStepExecutor.js","sourceRoot":"","sources":["../../../core/EVM/EVMStepExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,46 +1,39 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.balanceOfAbi = exports.getEthBalanceAbi = exports.allowanceAbi = exports.approveAbi = void 0;
4
- exports.approveAbi = [
5
- {
6
- name: 'approve',
7
- inputs: [
8
- { internalType: 'address', name: 'spender', type: 'address' },
9
- { internalType: 'uint256', name: 'amount', type: 'uint256' },
10
- ],
11
- outputs: [{ internalType: 'bool', name: 'approved', type: 'bool' }],
12
- stateMutability: 'nonpayable',
13
- type: 'function',
14
- },
15
- ];
16
- exports.allowanceAbi = [
17
- {
18
- name: 'allowance',
19
- inputs: [
20
- { internalType: 'address', name: 'owner', type: 'address' },
21
- { internalType: 'address', name: 'spender', type: 'address' },
22
- ],
23
- outputs: [{ internalType: 'uint256', name: 'allowance', type: 'uint256' }],
24
- stateMutability: 'view',
25
- type: 'function',
26
- },
27
- ];
28
- exports.getEthBalanceAbi = [
29
- {
30
- inputs: [{ name: '_owner', type: 'address' }],
31
- name: 'getEthBalance',
32
- outputs: [{ name: 'balance', type: 'uint256' }],
33
- type: 'function',
34
- stateMutability: 'view',
35
- },
36
- ];
37
- exports.balanceOfAbi = [
38
- {
39
- inputs: [{ name: '_owner', type: 'address' }],
40
- name: 'balanceOf',
41
- outputs: [{ name: 'balance', type: 'uint256' }],
42
- type: 'function',
43
- stateMutability: 'view',
44
- },
45
- ];
3
+ exports.eip2612Types = exports.balanceOfAbi = exports.getEthBalanceAbi = exports.allowanceAbi = exports.approveAbi = exports.eip2612Abi = exports.permit2ProxyAbi = void 0;
4
+ const viem_1 = require("viem");
5
+ exports.permit2ProxyAbi = (0, viem_1.parseAbi)([
6
+ 'function callDiamondWithPermit2(bytes, ((address, uint256), uint256, uint256), bytes) external',
7
+ 'function callDiamondWithEIP2612Signature(address, uint256, uint256, uint8, bytes32, bytes32, bytes) external payable',
8
+ 'function nextNonce(address) external view returns (uint256)',
9
+ 'function callDiamondWithPermit2Witness(bytes, address, ((address, uint256), uint256, uint256), bytes) external payable',
10
+ ]);
11
+ exports.eip2612Abi = (0, viem_1.parseAbi)([
12
+ 'function permit(address, address, uint256, uint256, uint8, bytes32, bytes32) external',
13
+ 'function DOMAIN_SEPARATOR() external view returns (bytes32)',
14
+ 'function nonces(address) external view returns (uint256)',
15
+ 'function name() external view returns (string)',
16
+ 'function version() external view returns (string)',
17
+ ]);
18
+ exports.approveAbi = (0, viem_1.parseAbi)([
19
+ 'function approve(address, uint256) external returns (bool)',
20
+ ]);
21
+ exports.allowanceAbi = (0, viem_1.parseAbi)([
22
+ 'function allowance(address, address) external view returns (uint256)',
23
+ ]);
24
+ exports.getEthBalanceAbi = (0, viem_1.parseAbi)([
25
+ 'function getEthBalance(address) external view returns (uint256)',
26
+ ]);
27
+ exports.balanceOfAbi = (0, viem_1.parseAbi)([
28
+ 'function balanceOf(address) external view returns (uint256)',
29
+ ]);
30
+ exports.eip2612Types = {
31
+ Permit: [
32
+ { name: 'owner', type: 'address' },
33
+ { name: 'spender', type: 'address' },
34
+ { name: 'value', type: 'uint256' },
35
+ { name: 'nonce', type: 'uint256' },
36
+ { name: 'deadline', type: 'uint256' },
37
+ ],
38
+ };
46
39
  //# sourceMappingURL=abi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"abi.js","sourceRoot":"","sources":["../../../core/EVM/abi.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAQ;IAC7B;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7D;QACD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACnE,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACF,CAAA;AAEY,QAAA,YAAY,GAAQ;IAC/B;QACE,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;SAC9D;QACD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1E,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACF,CAAA;AAEY,QAAA,gBAAgB,GAAQ;IACnC;QACE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;KACxB;CACF,CAAA;AAEY,QAAA,YAAY,GAAQ;IAC/B;QACE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;KACxB;CACF,CAAA"}
1
+ {"version":3,"file":"abi.js","sourceRoot":"","sources":["../../../core/EVM/abi.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,eAAe,GAAG,IAAA,eAAQ,EAAC;IACtC,gGAAgG;IAChG,sHAAsH;IACtH,6DAA6D;IAC7D,wHAAwH;CACzH,CAAC,CAAA;AAEW,QAAA,UAAU,GAAG,IAAA,eAAQ,EAAC;IACjC,uFAAuF;IACvF,6DAA6D;IAC7D,0DAA0D;IAC1D,gDAAgD;IAChD,mDAAmD;CACpD,CAAC,CAAA;AAEW,QAAA,UAAU,GAAG,IAAA,eAAQ,EAAC;IACjC,4DAA4D;CAC7D,CAAC,CAAA;AAEW,QAAA,YAAY,GAAG,IAAA,eAAQ,EAAC;IACnC,sEAAsE;CACvE,CAAC,CAAA;AAEW,QAAA,gBAAgB,GAAG,IAAA,eAAQ,EAAC;IACvC,iEAAiE;CAClE,CAAC,CAAA;AAEW,QAAA,YAAY,GAAG,IAAA,eAAQ,EAAC;IACnC,6DAA6D;CAC9D,CAAC,CAAA;AAIW,QAAA,YAAY,GAAG;IAC1B,MAAM,EAAE;QACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;QAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;QAClC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;QAClC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;KACtC;CACO,CAAA"}