@ledgerhq/coin-vechain 2.9.1 → 2.9.2-nightly.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 (475) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/.unimportedrc.json +16 -4
  3. package/CHANGELOG.md +19 -0
  4. package/lib/bridge/broadcast.d.ts.map +1 -1
  5. package/lib/bridge/broadcast.js +2 -3
  6. package/lib/bridge/broadcast.js.map +1 -1
  7. package/lib/bridge/broadcast.test.d.ts +2 -0
  8. package/lib/bridge/broadcast.test.d.ts.map +1 -0
  9. package/lib/bridge/broadcast.test.js +188 -0
  10. package/lib/bridge/broadcast.test.js.map +1 -0
  11. package/lib/bridge/buildOptimisticOperatioin.test.d.ts +2 -0
  12. package/lib/bridge/buildOptimisticOperatioin.test.d.ts.map +1 -0
  13. package/lib/bridge/buildOptimisticOperatioin.test.js +286 -0
  14. package/lib/bridge/buildOptimisticOperatioin.test.js.map +1 -0
  15. package/lib/bridge/createTransaction.d.ts.map +1 -1
  16. package/lib/bridge/createTransaction.js +2 -1
  17. package/lib/bridge/createTransaction.js.map +1 -1
  18. package/lib/bridge/createTransaction.test.d.ts +2 -0
  19. package/lib/bridge/createTransaction.test.d.ts.map +1 -0
  20. package/lib/bridge/createTransaction.test.js +167 -0
  21. package/lib/bridge/createTransaction.test.js.map +1 -0
  22. package/lib/bridge/estimateMaxSpendable.test.d.ts +2 -0
  23. package/lib/bridge/estimateMaxSpendable.test.d.ts.map +1 -0
  24. package/lib/bridge/estimateMaxSpendable.test.js +269 -0
  25. package/lib/bridge/estimateMaxSpendable.test.js.map +1 -0
  26. package/lib/bridge/getTransactionStatus.d.ts.map +1 -1
  27. package/lib/bridge/getTransactionStatus.js +3 -1
  28. package/lib/bridge/getTransactionStatus.js.map +1 -1
  29. package/lib/bridge/getTransactionStatus.test.d.ts +2 -0
  30. package/lib/bridge/getTransactionStatus.test.d.ts.map +1 -0
  31. package/lib/bridge/getTransactionStatus.test.js +282 -0
  32. package/lib/bridge/getTransactionStatus.test.js.map +1 -0
  33. package/lib/bridge/helpers.test.d.ts +2 -0
  34. package/lib/bridge/helpers.test.d.ts.map +1 -0
  35. package/lib/bridge/helpers.test.js +298 -0
  36. package/lib/bridge/helpers.test.js.map +1 -0
  37. package/lib/bridge/prepareTransaction.d.ts.map +1 -1
  38. package/lib/bridge/prepareTransaction.js +10 -3
  39. package/lib/bridge/prepareTransaction.js.map +1 -1
  40. package/lib/bridge/prepareTransaction.test.d.ts +2 -0
  41. package/lib/bridge/prepareTransaction.test.d.ts.map +1 -0
  42. package/lib/bridge/prepareTransaction.test.js +277 -0
  43. package/lib/bridge/prepareTransaction.test.js.map +1 -0
  44. package/lib/bridge/signOperation.d.ts.map +1 -1
  45. package/lib/bridge/signOperation.js +3 -3
  46. package/lib/bridge/signOperation.js.map +1 -1
  47. package/lib/bridge/signOperation.test.d.ts +2 -0
  48. package/lib/bridge/signOperation.test.d.ts.map +1 -0
  49. package/lib/bridge/signOperation.test.js +295 -0
  50. package/lib/bridge/signOperation.test.js.map +1 -0
  51. package/lib/bridge/synchronisation.d.ts.map +1 -1
  52. package/lib/bridge/synchronisation.js +2 -2
  53. package/lib/bridge/synchronisation.js.map +1 -1
  54. package/lib/bridge/transaction.test.d.ts +2 -0
  55. package/lib/bridge/transaction.test.d.ts.map +1 -0
  56. package/lib/bridge/transaction.test.js +353 -0
  57. package/lib/bridge/transaction.test.js.map +1 -0
  58. package/lib/common-logic/calculateClauses.d.ts +5 -0
  59. package/lib/common-logic/calculateClauses.d.ts.map +1 -0
  60. package/lib/common-logic/{logic.js → calculateClauses.js} +7 -10
  61. package/lib/common-logic/calculateClauses.js.map +1 -0
  62. package/lib/common-logic/calculateClauses.test.d.ts +2 -0
  63. package/lib/common-logic/calculateClauses.test.d.ts.map +1 -0
  64. package/lib/common-logic/calculateClauses.test.js +156 -0
  65. package/lib/common-logic/calculateClauses.test.js.map +1 -0
  66. package/lib/common-logic/calculateGasFees.d.ts +9 -0
  67. package/lib/common-logic/calculateGasFees.d.ts.map +1 -0
  68. package/lib/common-logic/calculateGasFees.js +39 -0
  69. package/lib/common-logic/calculateGasFees.js.map +1 -0
  70. package/lib/common-logic/calculateGasFees.test.d.ts +2 -0
  71. package/lib/common-logic/calculateGasFees.test.d.ts.map +1 -0
  72. package/lib/common-logic/calculateGasFees.test.js +279 -0
  73. package/lib/common-logic/calculateGasFees.test.js.map +1 -0
  74. package/lib/common-logic/calculateTransactionInfo.d.ts +10 -0
  75. package/lib/common-logic/calculateTransactionInfo.d.ts.map +1 -0
  76. package/lib/common-logic/calculateTransactionInfo.js +81 -0
  77. package/lib/common-logic/calculateTransactionInfo.js.map +1 -0
  78. package/lib/common-logic/calculateTransactionInfo.test.d.ts +2 -0
  79. package/lib/common-logic/calculateTransactionInfo.test.d.ts.map +1 -0
  80. package/lib/common-logic/calculateTransactionInfo.test.js +314 -0
  81. package/lib/common-logic/calculateTransactionInfo.test.js.map +1 -0
  82. package/lib/common-logic/estimateGas.d.ts +10 -0
  83. package/lib/common-logic/estimateGas.d.ts.map +1 -0
  84. package/lib/common-logic/estimateGas.js +17 -0
  85. package/lib/common-logic/estimateGas.js.map +1 -0
  86. package/lib/common-logic/estimateGas.test.d.ts +2 -0
  87. package/lib/common-logic/estimateGas.test.d.ts.map +1 -0
  88. package/lib/common-logic/estimateGas.test.js +129 -0
  89. package/lib/common-logic/estimateGas.test.js.map +1 -0
  90. package/lib/common-logic/fixPrefixCase.d.ts +2 -0
  91. package/lib/common-logic/fixPrefixCase.d.ts.map +1 -0
  92. package/lib/common-logic/fixPrefixCase.js +9 -0
  93. package/lib/common-logic/fixPrefixCase.js.map +1 -0
  94. package/lib/common-logic/fixPrefixCase.test.d.ts +2 -0
  95. package/lib/common-logic/fixPrefixCase.test.d.ts.map +1 -0
  96. package/lib/common-logic/fixPrefixCase.test.js +46 -0
  97. package/lib/common-logic/fixPrefixCase.test.js.map +1 -0
  98. package/lib/common-logic/generateNonce.d.ts +6 -0
  99. package/lib/common-logic/generateNonce.d.ts.map +1 -0
  100. package/lib/common-logic/generateNonce.js +13 -0
  101. package/lib/common-logic/generateNonce.js.map +1 -0
  102. package/lib/common-logic/generateNonce.test.d.ts +2 -0
  103. package/lib/common-logic/generateNonce.test.d.ts.map +1 -0
  104. package/lib/common-logic/generateNonce.test.js +59 -0
  105. package/lib/common-logic/generateNonce.test.js.map +1 -0
  106. package/lib/common-logic/getThorClient.d.ts +7 -0
  107. package/lib/common-logic/getThorClient.d.ts.map +1 -0
  108. package/lib/common-logic/getThorClient.js +14 -0
  109. package/lib/common-logic/getThorClient.js.map +1 -0
  110. package/lib/common-logic/getThorClient.test.d.ts +2 -0
  111. package/lib/common-logic/getThorClient.test.d.ts.map +1 -0
  112. package/lib/common-logic/getThorClient.test.js +53 -0
  113. package/lib/common-logic/getThorClient.test.js.map +1 -0
  114. package/lib/common-logic/index.d.ts +8 -6
  115. package/lib/common-logic/index.d.ts.map +1 -1
  116. package/lib/common-logic/index.js +8 -6
  117. package/lib/common-logic/index.js.map +1 -1
  118. package/lib/common-logic/{mapping-utils.d.ts → mapTransfersToOperations.d.ts} +2 -2
  119. package/lib/common-logic/mapTransfersToOperations.d.ts.map +1 -0
  120. package/lib/common-logic/{mapping-utils.js → mapTransfersToOperations.js} +26 -19
  121. package/lib/common-logic/mapTransfersToOperations.js.map +1 -0
  122. package/lib/common-logic/mapTransfersToOperations.test.d.ts +2 -0
  123. package/lib/common-logic/mapTransfersToOperations.test.d.ts.map +1 -0
  124. package/lib/common-logic/mapTransfersToOperations.test.js +274 -0
  125. package/lib/common-logic/mapTransfersToOperations.test.js.map +1 -0
  126. package/lib/common-logic/{pad-address.d.ts → padAddress.d.ts} +1 -1
  127. package/lib/common-logic/padAddress.d.ts.map +1 -0
  128. package/lib/common-logic/{pad-address.js → padAddress.js} +1 -1
  129. package/lib/common-logic/padAddress.js.map +1 -0
  130. package/lib/common-logic/padAddress.test.d.ts +2 -0
  131. package/lib/common-logic/padAddress.test.d.ts.map +1 -0
  132. package/lib/common-logic/padAddress.test.js +59 -0
  133. package/lib/common-logic/padAddress.test.js.map +1 -0
  134. package/lib/common-logic/parseAddress.d.ts +7 -0
  135. package/lib/common-logic/parseAddress.d.ts.map +1 -0
  136. package/lib/common-logic/parseAddress.js +15 -0
  137. package/lib/common-logic/parseAddress.js.map +1 -0
  138. package/lib/common-logic/parseAddress.test.d.ts +2 -0
  139. package/lib/common-logic/parseAddress.test.d.ts.map +1 -0
  140. package/lib/common-logic/parseAddress.test.js +97 -0
  141. package/lib/common-logic/parseAddress.test.js.map +1 -0
  142. package/lib/constants/env.d.ts +2 -0
  143. package/lib/constants/env.d.ts.map +1 -0
  144. package/lib/constants/env.js +6 -0
  145. package/lib/constants/env.js.map +1 -0
  146. package/lib/constants/index.d.ts +2 -0
  147. package/lib/constants/index.d.ts.map +1 -0
  148. package/lib/constants/index.js +18 -0
  149. package/lib/constants/index.js.map +1 -0
  150. package/lib/network/sdk.d.ts +3 -10
  151. package/lib/network/sdk.d.ts.map +1 -1
  152. package/lib/network/sdk.js +15 -30
  153. package/lib/network/sdk.js.map +1 -1
  154. package/lib/signer/getAddress.test.d.ts +2 -0
  155. package/lib/signer/getAddress.test.d.ts.map +1 -0
  156. package/lib/signer/getAddress.test.js +357 -0
  157. package/lib/signer/getAddress.test.js.map +1 -0
  158. package/lib/signer/signMessage.d.ts.map +1 -1
  159. package/lib/signer/signMessage.js +3 -3
  160. package/lib/signer/signMessage.js.map +1 -1
  161. package/lib/signer/signMessage.test.d.ts +2 -0
  162. package/lib/signer/signMessage.test.d.ts.map +1 -0
  163. package/lib/signer/signMessage.test.js +242 -0
  164. package/lib/signer/signMessage.test.js.map +1 -0
  165. package/lib/test/bridgeDatasetTest.d.ts.map +1 -1
  166. package/lib/test/bridgeDatasetTest.js +79 -53
  167. package/lib/test/bridgeDatasetTest.js.map +1 -1
  168. package/lib/test/cli.d.ts.map +1 -1
  169. package/lib/test/cli.js +5 -4
  170. package/lib/test/cli.js.map +1 -1
  171. package/lib/types/bridge.d.ts +11 -3
  172. package/lib/types/bridge.d.ts.map +1 -1
  173. package/lib/types/bridge.js +3 -0
  174. package/lib/types/bridge.js.map +1 -1
  175. package/lib/types/constants.d.ts +0 -3
  176. package/lib/types/constants.d.ts.map +1 -1
  177. package/lib/types/constants.js +1 -4
  178. package/lib/types/constants.js.map +1 -1
  179. package/lib/types/signer.d.ts +0 -2
  180. package/lib/types/signer.d.ts.map +1 -1
  181. package/lib-es/bridge/broadcast.d.ts.map +1 -1
  182. package/lib-es/bridge/broadcast.js +2 -3
  183. package/lib-es/bridge/broadcast.js.map +1 -1
  184. package/lib-es/bridge/broadcast.test.d.ts +2 -0
  185. package/lib-es/bridge/broadcast.test.d.ts.map +1 -0
  186. package/lib-es/bridge/broadcast.test.js +183 -0
  187. package/lib-es/bridge/broadcast.test.js.map +1 -0
  188. package/lib-es/bridge/buildOptimisticOperatioin.test.d.ts +2 -0
  189. package/lib-es/bridge/buildOptimisticOperatioin.test.d.ts.map +1 -0
  190. package/lib-es/bridge/buildOptimisticOperatioin.test.js +281 -0
  191. package/lib-es/bridge/buildOptimisticOperatioin.test.js.map +1 -0
  192. package/lib-es/bridge/createTransaction.d.ts.map +1 -1
  193. package/lib-es/bridge/createTransaction.js +3 -2
  194. package/lib-es/bridge/createTransaction.js.map +1 -1
  195. package/lib-es/bridge/createTransaction.test.d.ts +2 -0
  196. package/lib-es/bridge/createTransaction.test.d.ts.map +1 -0
  197. package/lib-es/bridge/createTransaction.test.js +162 -0
  198. package/lib-es/bridge/createTransaction.test.js.map +1 -0
  199. package/lib-es/bridge/estimateMaxSpendable.test.d.ts +2 -0
  200. package/lib-es/bridge/estimateMaxSpendable.test.d.ts.map +1 -0
  201. package/lib-es/bridge/estimateMaxSpendable.test.js +264 -0
  202. package/lib-es/bridge/estimateMaxSpendable.test.js.map +1 -0
  203. package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -1
  204. package/lib-es/bridge/getTransactionStatus.js +4 -2
  205. package/lib-es/bridge/getTransactionStatus.js.map +1 -1
  206. package/lib-es/bridge/getTransactionStatus.test.d.ts +2 -0
  207. package/lib-es/bridge/getTransactionStatus.test.d.ts.map +1 -0
  208. package/lib-es/bridge/getTransactionStatus.test.js +277 -0
  209. package/lib-es/bridge/getTransactionStatus.test.js.map +1 -0
  210. package/lib-es/bridge/helpers.test.d.ts +2 -0
  211. package/lib-es/bridge/helpers.test.d.ts.map +1 -0
  212. package/lib-es/bridge/helpers.test.js +293 -0
  213. package/lib-es/bridge/helpers.test.js.map +1 -0
  214. package/lib-es/bridge/prepareTransaction.d.ts.map +1 -1
  215. package/lib-es/bridge/prepareTransaction.js +11 -4
  216. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  217. package/lib-es/bridge/prepareTransaction.test.d.ts +2 -0
  218. package/lib-es/bridge/prepareTransaction.test.d.ts.map +1 -0
  219. package/lib-es/bridge/prepareTransaction.test.js +272 -0
  220. package/lib-es/bridge/prepareTransaction.test.js.map +1 -0
  221. package/lib-es/bridge/signOperation.d.ts.map +1 -1
  222. package/lib-es/bridge/signOperation.js +3 -3
  223. package/lib-es/bridge/signOperation.js.map +1 -1
  224. package/lib-es/bridge/signOperation.test.d.ts +2 -0
  225. package/lib-es/bridge/signOperation.test.d.ts.map +1 -0
  226. package/lib-es/bridge/signOperation.test.js +290 -0
  227. package/lib-es/bridge/signOperation.test.js.map +1 -0
  228. package/lib-es/bridge/synchronisation.d.ts.map +1 -1
  229. package/lib-es/bridge/synchronisation.js +1 -1
  230. package/lib-es/bridge/synchronisation.js.map +1 -1
  231. package/lib-es/bridge/transaction.test.d.ts +2 -0
  232. package/lib-es/bridge/transaction.test.d.ts.map +1 -0
  233. package/lib-es/bridge/transaction.test.js +347 -0
  234. package/lib-es/bridge/transaction.test.js.map +1 -0
  235. package/lib-es/common-logic/calculateClauses.d.ts +5 -0
  236. package/lib-es/common-logic/calculateClauses.d.ts.map +1 -0
  237. package/lib-es/common-logic/{logic.js → calculateClauses.js} +6 -6
  238. package/lib-es/common-logic/calculateClauses.js.map +1 -0
  239. package/lib-es/common-logic/calculateClauses.test.d.ts +2 -0
  240. package/lib-es/common-logic/calculateClauses.test.d.ts.map +1 -0
  241. package/lib-es/common-logic/calculateClauses.test.js +151 -0
  242. package/lib-es/common-logic/calculateClauses.test.js.map +1 -0
  243. package/lib-es/common-logic/calculateGasFees.d.ts +9 -0
  244. package/lib-es/common-logic/calculateGasFees.d.ts.map +1 -0
  245. package/lib-es/common-logic/calculateGasFees.js +32 -0
  246. package/lib-es/common-logic/calculateGasFees.js.map +1 -0
  247. package/lib-es/common-logic/calculateGasFees.test.d.ts +2 -0
  248. package/lib-es/common-logic/calculateGasFees.test.d.ts.map +1 -0
  249. package/lib-es/common-logic/calculateGasFees.test.js +274 -0
  250. package/lib-es/common-logic/calculateGasFees.test.js.map +1 -0
  251. package/lib-es/common-logic/calculateTransactionInfo.d.ts +10 -0
  252. package/lib-es/common-logic/calculateTransactionInfo.d.ts.map +1 -0
  253. package/lib-es/common-logic/calculateTransactionInfo.js +74 -0
  254. package/lib-es/common-logic/calculateTransactionInfo.js.map +1 -0
  255. package/lib-es/common-logic/calculateTransactionInfo.test.d.ts +2 -0
  256. package/lib-es/common-logic/calculateTransactionInfo.test.d.ts.map +1 -0
  257. package/lib-es/common-logic/calculateTransactionInfo.test.js +309 -0
  258. package/lib-es/common-logic/calculateTransactionInfo.test.js.map +1 -0
  259. package/lib-es/common-logic/estimateGas.d.ts +10 -0
  260. package/lib-es/common-logic/estimateGas.d.ts.map +1 -0
  261. package/lib-es/common-logic/estimateGas.js +13 -0
  262. package/lib-es/common-logic/estimateGas.js.map +1 -0
  263. package/lib-es/common-logic/estimateGas.test.d.ts +2 -0
  264. package/lib-es/common-logic/estimateGas.test.d.ts.map +1 -0
  265. package/lib-es/common-logic/estimateGas.test.js +127 -0
  266. package/lib-es/common-logic/estimateGas.test.js.map +1 -0
  267. package/lib-es/common-logic/fixPrefixCase.d.ts +2 -0
  268. package/lib-es/common-logic/fixPrefixCase.d.ts.map +1 -0
  269. package/lib-es/common-logic/fixPrefixCase.js +5 -0
  270. package/lib-es/common-logic/fixPrefixCase.js.map +1 -0
  271. package/lib-es/common-logic/fixPrefixCase.test.d.ts +2 -0
  272. package/lib-es/common-logic/fixPrefixCase.test.d.ts.map +1 -0
  273. package/lib-es/common-logic/fixPrefixCase.test.js +44 -0
  274. package/lib-es/common-logic/fixPrefixCase.test.js.map +1 -0
  275. package/lib-es/common-logic/generateNonce.d.ts +6 -0
  276. package/lib-es/common-logic/generateNonce.d.ts.map +1 -0
  277. package/lib-es/common-logic/generateNonce.js +9 -0
  278. package/lib-es/common-logic/generateNonce.js.map +1 -0
  279. package/lib-es/common-logic/generateNonce.test.d.ts +2 -0
  280. package/lib-es/common-logic/generateNonce.test.d.ts.map +1 -0
  281. package/lib-es/common-logic/generateNonce.test.js +57 -0
  282. package/lib-es/common-logic/generateNonce.test.js.map +1 -0
  283. package/lib-es/common-logic/getThorClient.d.ts +7 -0
  284. package/lib-es/common-logic/getThorClient.d.ts.map +1 -0
  285. package/lib-es/common-logic/getThorClient.js +10 -0
  286. package/lib-es/common-logic/getThorClient.js.map +1 -0
  287. package/lib-es/common-logic/getThorClient.test.d.ts +2 -0
  288. package/lib-es/common-logic/getThorClient.test.d.ts.map +1 -0
  289. package/lib-es/common-logic/getThorClient.test.js +51 -0
  290. package/lib-es/common-logic/getThorClient.test.js.map +1 -0
  291. package/lib-es/common-logic/index.d.ts +8 -6
  292. package/lib-es/common-logic/index.d.ts.map +1 -1
  293. package/lib-es/common-logic/index.js +8 -6
  294. package/lib-es/common-logic/index.js.map +1 -1
  295. package/lib-es/common-logic/{mapping-utils.d.ts → mapTransfersToOperations.d.ts} +2 -2
  296. package/lib-es/common-logic/mapTransfersToOperations.d.ts.map +1 -0
  297. package/lib-es/common-logic/mapTransfersToOperations.js +51 -0
  298. package/lib-es/common-logic/mapTransfersToOperations.js.map +1 -0
  299. package/lib-es/common-logic/mapTransfersToOperations.test.d.ts +2 -0
  300. package/lib-es/common-logic/mapTransfersToOperations.test.d.ts.map +1 -0
  301. package/lib-es/common-logic/mapTransfersToOperations.test.js +269 -0
  302. package/lib-es/common-logic/mapTransfersToOperations.test.js.map +1 -0
  303. package/lib-es/common-logic/{pad-address.d.ts → padAddress.d.ts} +1 -1
  304. package/lib-es/common-logic/padAddress.d.ts.map +1 -0
  305. package/lib-es/common-logic/{pad-address.js → padAddress.js} +1 -1
  306. package/lib-es/common-logic/padAddress.js.map +1 -0
  307. package/lib-es/common-logic/padAddress.test.d.ts +2 -0
  308. package/lib-es/common-logic/padAddress.test.d.ts.map +1 -0
  309. package/lib-es/common-logic/padAddress.test.js +57 -0
  310. package/lib-es/common-logic/padAddress.test.js.map +1 -0
  311. package/lib-es/common-logic/parseAddress.d.ts +7 -0
  312. package/lib-es/common-logic/parseAddress.d.ts.map +1 -0
  313. package/lib-es/common-logic/parseAddress.js +11 -0
  314. package/lib-es/common-logic/parseAddress.js.map +1 -0
  315. package/lib-es/common-logic/parseAddress.test.d.ts +2 -0
  316. package/lib-es/common-logic/parseAddress.test.d.ts.map +1 -0
  317. package/lib-es/common-logic/parseAddress.test.js +95 -0
  318. package/lib-es/common-logic/parseAddress.test.js.map +1 -0
  319. package/lib-es/constants/env.d.ts +2 -0
  320. package/lib-es/constants/env.d.ts.map +1 -0
  321. package/lib-es/constants/env.js +3 -0
  322. package/lib-es/constants/env.js.map +1 -0
  323. package/lib-es/constants/index.d.ts +2 -0
  324. package/lib-es/constants/index.d.ts.map +1 -0
  325. package/lib-es/constants/index.js +2 -0
  326. package/lib-es/constants/index.js.map +1 -0
  327. package/lib-es/network/sdk.d.ts +3 -10
  328. package/lib-es/network/sdk.d.ts.map +1 -1
  329. package/lib-es/network/sdk.js +5 -19
  330. package/lib-es/network/sdk.js.map +1 -1
  331. package/lib-es/signer/getAddress.test.d.ts +2 -0
  332. package/lib-es/signer/getAddress.test.d.ts.map +1 -0
  333. package/lib-es/signer/getAddress.test.js +352 -0
  334. package/lib-es/signer/getAddress.test.js.map +1 -0
  335. package/lib-es/signer/signMessage.d.ts.map +1 -1
  336. package/lib-es/signer/signMessage.js +3 -3
  337. package/lib-es/signer/signMessage.js.map +1 -1
  338. package/lib-es/signer/signMessage.test.d.ts +2 -0
  339. package/lib-es/signer/signMessage.test.d.ts.map +1 -0
  340. package/lib-es/signer/signMessage.test.js +240 -0
  341. package/lib-es/signer/signMessage.test.js.map +1 -0
  342. package/lib-es/test/bridgeDatasetTest.d.ts.map +1 -1
  343. package/lib-es/test/bridgeDatasetTest.js +80 -54
  344. package/lib-es/test/bridgeDatasetTest.js.map +1 -1
  345. package/lib-es/test/cli.d.ts.map +1 -1
  346. package/lib-es/test/cli.js +4 -3
  347. package/lib-es/test/cli.js.map +1 -1
  348. package/lib-es/types/bridge.d.ts +11 -3
  349. package/lib-es/types/bridge.d.ts.map +1 -1
  350. package/lib-es/types/bridge.js +6 -1
  351. package/lib-es/types/bridge.js.map +1 -1
  352. package/lib-es/types/constants.d.ts +0 -3
  353. package/lib-es/types/constants.d.ts.map +1 -1
  354. package/lib-es/types/constants.js +0 -3
  355. package/lib-es/types/constants.js.map +1 -1
  356. package/lib-es/types/signer.d.ts +0 -2
  357. package/lib-es/types/signer.d.ts.map +1 -1
  358. package/package.json +10 -9
  359. package/src/bridge/broadcast.test.ts +236 -0
  360. package/src/bridge/broadcast.ts +4 -5
  361. package/src/bridge/buildOptimisticOperatioin.test.ts +364 -0
  362. package/src/bridge/createTransaction.test.ts +201 -0
  363. package/src/bridge/createTransaction.ts +3 -2
  364. package/src/bridge/estimateMaxSpendable.test.ts +319 -0
  365. package/src/bridge/getTransactionStatus.test.ts +353 -0
  366. package/src/bridge/getTransactionStatus.ts +4 -2
  367. package/src/bridge/helpers.test.ts +356 -0
  368. package/src/bridge/prepareTransaction.test.ts +345 -0
  369. package/src/bridge/prepareTransaction.ts +20 -10
  370. package/src/bridge/signOperation.test.ts +354 -0
  371. package/src/bridge/signOperation.ts +6 -3
  372. package/src/bridge/synchronisation.ts +1 -1
  373. package/src/bridge/transaction.test.ts +440 -0
  374. package/src/common-logic/calculateClauses.test.ts +186 -0
  375. package/src/common-logic/calculateClauses.ts +44 -0
  376. package/src/common-logic/calculateGasFees.test.ts +363 -0
  377. package/src/common-logic/calculateGasFees.ts +45 -0
  378. package/src/common-logic/calculateTransactionInfo.test.ts +396 -0
  379. package/src/common-logic/calculateTransactionInfo.ts +96 -0
  380. package/src/common-logic/estimateGas.test.ts +162 -0
  381. package/src/common-logic/estimateGas.ts +18 -0
  382. package/src/common-logic/fixPrefixCase.test.ts +51 -0
  383. package/src/common-logic/fixPrefixCase.ts +5 -0
  384. package/src/common-logic/generateNonce.test.ts +72 -0
  385. package/src/common-logic/generateNonce.ts +9 -0
  386. package/src/common-logic/getThorClient.test.ts +66 -0
  387. package/src/common-logic/getThorClient.ts +10 -0
  388. package/src/common-logic/index.ts +8 -6
  389. package/src/common-logic/mapTransfersToOperations.test.ts +342 -0
  390. package/src/common-logic/mapTransfersToOperations.ts +77 -0
  391. package/src/common-logic/padAddress.test.ts +65 -0
  392. package/src/common-logic/parseAddress.test.ts +130 -0
  393. package/src/common-logic/parseAddress.ts +11 -0
  394. package/src/constants/env.ts +3 -0
  395. package/src/constants/index.ts +1 -0
  396. package/src/network/sdk.ts +22 -30
  397. package/src/signer/getAddress.test.ts +454 -0
  398. package/src/signer/signMessage.test.ts +329 -0
  399. package/src/signer/signMessage.ts +4 -5
  400. package/src/test/bridgeDatasetTest.ts +86 -58
  401. package/src/test/cli.ts +4 -3
  402. package/src/types/bridge.ts +16 -3
  403. package/src/types/constants.ts +0 -3
  404. package/lib/common-logic/address-utils.d.ts +0 -2
  405. package/lib/common-logic/address-utils.d.ts.map +0 -1
  406. package/lib/common-logic/address-utils.js +0 -19
  407. package/lib/common-logic/address-utils.js.map +0 -1
  408. package/lib/common-logic/hex-utils.d.ts +0 -8
  409. package/lib/common-logic/hex-utils.d.ts.map +0 -1
  410. package/lib/common-logic/hex-utils.js +0 -52
  411. package/lib/common-logic/hex-utils.js.map +0 -1
  412. package/lib/common-logic/logic.d.ts +0 -5
  413. package/lib/common-logic/logic.d.ts.map +0 -1
  414. package/lib/common-logic/logic.js.map +0 -1
  415. package/lib/common-logic/mapping-utils.d.ts.map +0 -1
  416. package/lib/common-logic/mapping-utils.js.map +0 -1
  417. package/lib/common-logic/pad-address.d.ts.map +0 -1
  418. package/lib/common-logic/pad-address.js.map +0 -1
  419. package/lib/common-logic/transaction-utils.d.ts +0 -30
  420. package/lib/common-logic/transaction-utils.d.ts.map +0 -1
  421. package/lib/common-logic/transaction-utils.js +0 -161
  422. package/lib/common-logic/transaction-utils.js.map +0 -1
  423. package/lib/contracts/abis/VIP180.d.ts +0 -17
  424. package/lib/contracts/abis/VIP180.d.ts.map +0 -1
  425. package/lib/contracts/abis/VIP180.js +0 -265
  426. package/lib/contracts/abis/VIP180.js.map +0 -1
  427. package/lib/contracts/abis/params.d.ts +0 -8
  428. package/lib/contracts/abis/params.d.ts.map +0 -1
  429. package/lib/contracts/abis/params.js +0 -69
  430. package/lib/contracts/abis/params.js.map +0 -1
  431. package/lib/contracts/constants.d.ts +0 -6
  432. package/lib/contracts/constants.d.ts.map +0 -1
  433. package/lib/contracts/constants.js +0 -10
  434. package/lib/contracts/constants.js.map +0 -1
  435. package/lib-es/common-logic/address-utils.d.ts +0 -2
  436. package/lib-es/common-logic/address-utils.d.ts.map +0 -1
  437. package/lib-es/common-logic/address-utils.js +0 -12
  438. package/lib-es/common-logic/address-utils.js.map +0 -1
  439. package/lib-es/common-logic/hex-utils.d.ts +0 -8
  440. package/lib-es/common-logic/hex-utils.d.ts.map +0 -1
  441. package/lib-es/common-logic/hex-utils.js +0 -50
  442. package/lib-es/common-logic/hex-utils.js.map +0 -1
  443. package/lib-es/common-logic/logic.d.ts +0 -5
  444. package/lib-es/common-logic/logic.d.ts.map +0 -1
  445. package/lib-es/common-logic/logic.js.map +0 -1
  446. package/lib-es/common-logic/mapping-utils.d.ts.map +0 -1
  447. package/lib-es/common-logic/mapping-utils.js +0 -44
  448. package/lib-es/common-logic/mapping-utils.js.map +0 -1
  449. package/lib-es/common-logic/pad-address.d.ts.map +0 -1
  450. package/lib-es/common-logic/pad-address.js.map +0 -1
  451. package/lib-es/common-logic/transaction-utils.d.ts +0 -30
  452. package/lib-es/common-logic/transaction-utils.d.ts.map +0 -1
  453. package/lib-es/common-logic/transaction-utils.js +0 -150
  454. package/lib-es/common-logic/transaction-utils.js.map +0 -1
  455. package/lib-es/contracts/abis/VIP180.d.ts +0 -17
  456. package/lib-es/contracts/abis/VIP180.d.ts.map +0 -1
  457. package/lib-es/contracts/abis/VIP180.js +0 -263
  458. package/lib-es/contracts/abis/VIP180.js.map +0 -1
  459. package/lib-es/contracts/abis/params.d.ts +0 -8
  460. package/lib-es/contracts/abis/params.d.ts.map +0 -1
  461. package/lib-es/contracts/abis/params.js +0 -67
  462. package/lib-es/contracts/abis/params.js.map +0 -1
  463. package/lib-es/contracts/constants.d.ts +0 -6
  464. package/lib-es/contracts/constants.d.ts.map +0 -1
  465. package/lib-es/contracts/constants.js +0 -7
  466. package/lib-es/contracts/constants.js.map +0 -1
  467. package/src/common-logic/address-utils.ts +0 -11
  468. package/src/common-logic/hex-utils.ts +0 -53
  469. package/src/common-logic/logic.ts +0 -44
  470. package/src/common-logic/mapping-utils.ts +0 -67
  471. package/src/common-logic/transaction-utils.ts +0 -190
  472. package/src/contracts/abis/VIP180.ts +0 -265
  473. package/src/contracts/abis/params.ts +0 -70
  474. package/src/contracts/constants.ts +0 -11
  475. /package/src/common-logic/{pad-address.ts → padAddress.ts} +0 -0
@@ -0,0 +1,277 @@
1
+ import BigNumber from "bignumber.js";
2
+ import { getTransactionStatus } from "./getTransactionStatus";
3
+ import { calculateTransactionInfo, parseAddress } from "../common-logic";
4
+ import { AmountRequired, FeeNotLoaded, InvalidAddress, InvalidAddressBecauseDestinationIsAlsoSource, NotEnoughBalance, RecipientRequired, } from "@ledgerhq/errors";
5
+ import { NotEnoughVTHO } from "../errors";
6
+ // Mock dependencies
7
+ jest.mock("../common-logic");
8
+ const mockedCalculateTransactionInfo = jest.mocked(calculateTransactionInfo);
9
+ const mockedParseAddress = jest.mocked(parseAddress);
10
+ describe("getTransactionStatus", () => {
11
+ const mockVthoAccount = {
12
+ type: "TokenAccount",
13
+ id: "vechain:1:0x123:+vtho",
14
+ parentId: "vechain:1:0x123:",
15
+ token: {},
16
+ balance: new BigNumber("1000000000000000000000"), // 1000 VTHO
17
+ spendableBalance: new BigNumber("1000000000000000000000"),
18
+ creationDate: new Date("2022-01-01"),
19
+ operationsCount: 5,
20
+ operations: [],
21
+ pendingOperations: [],
22
+ balanceHistoryCache: { HOUR: {}, DAY: {}, WEEK: {} },
23
+ swapHistory: [],
24
+ };
25
+ const mockAccount = {
26
+ type: "Account",
27
+ id: "vechain:1:0x123:",
28
+ seedIdentifier: "seed123",
29
+ derivationMode: "",
30
+ index: 0,
31
+ freshAddress: "0x742d35Cc6634C0532925a3b8D0B251d8c1743eC4",
32
+ freshAddressPath: "44'/818'/0'/0/0",
33
+ used: true,
34
+ balance: new BigNumber("5000000000000000000"), // 5 VET
35
+ spendableBalance: new BigNumber("5000000000000000000"),
36
+ creationDate: new Date("2022-01-01"),
37
+ blockHeight: 12345,
38
+ currency: { name: "VeChain" },
39
+ operationsCount: 10,
40
+ operations: [],
41
+ pendingOperations: [],
42
+ lastSyncDate: new Date("2022-01-01"),
43
+ balanceHistoryCache: { HOUR: {}, DAY: {}, WEEK: {} },
44
+ swapHistory: [],
45
+ subAccounts: [mockVthoAccount],
46
+ };
47
+ const mockTransaction = {
48
+ family: "vechain",
49
+ recipient: "0x456789012345678901234567890123456789abcd",
50
+ amount: new BigNumber("1000000000000000000"), // 1 VET
51
+ estimatedFees: "210000000000000000", // 0.21 VET
52
+ body: {
53
+ chainTag: 74,
54
+ blockRef: "0x00000000000b2bce",
55
+ expiration: 18,
56
+ clauses: [],
57
+ maxFeePerGas: 10000000000000,
58
+ maxPriorityFeePerGas: 1000000000000,
59
+ gas: 21000,
60
+ dependsOn: null,
61
+ nonce: "0x12345678",
62
+ },
63
+ };
64
+ beforeEach(() => {
65
+ jest.clearAllMocks();
66
+ mockedCalculateTransactionInfo.mockResolvedValue({
67
+ isTokenAccount: false,
68
+ amount: new BigNumber("1000000000000000000"),
69
+ spendableBalance: new BigNumber("4790000000000000000"), // 5 VET - 0.21 VET fees
70
+ balance: new BigNumber("5000000000000000000"),
71
+ tokenAccount: undefined,
72
+ estimatedFees: "210000000000000000",
73
+ estimatedGas: 21000,
74
+ maxFeePerGas: 10000000000000,
75
+ maxPriorityFeePerGas: 1000000000000,
76
+ });
77
+ mockedParseAddress.mockReturnValue(true);
78
+ });
79
+ describe("successful transaction validation", () => {
80
+ it("should return valid status for a normal VET transaction", async () => {
81
+ const result = await getTransactionStatus(mockAccount, mockTransaction);
82
+ expect(result.errors).toEqual({});
83
+ expect(result.warnings).toEqual({});
84
+ expect(result.estimatedFees).toEqual(new BigNumber("210000000000000000"));
85
+ expect(result.amount).toEqual(new BigNumber("1000000000000000000"));
86
+ expect(result.totalSpent).toEqual(new BigNumber("1000000000000000000"));
87
+ });
88
+ it("should return valid status for a token transaction", async () => {
89
+ const tokenTransaction = {
90
+ ...mockTransaction,
91
+ subAccountId: "vechain:1:0x123:+vtho",
92
+ };
93
+ mockedCalculateTransactionInfo.mockResolvedValue({
94
+ isTokenAccount: true,
95
+ amount: new BigNumber("1000000000000000000"),
96
+ spendableBalance: new BigNumber("999790000000000000000"),
97
+ balance: new BigNumber("1000000000000000000000"),
98
+ tokenAccount: mockVthoAccount,
99
+ estimatedFees: "210000000000000000",
100
+ estimatedGas: 21000,
101
+ maxFeePerGas: 10000000000000,
102
+ maxPriorityFeePerGas: 1000000000000,
103
+ });
104
+ const result = await getTransactionStatus(mockAccount, tokenTransaction);
105
+ expect(result.errors).toEqual({});
106
+ expect(result.totalSpent).toEqual(new BigNumber("1210000000000000000")); // amount + fees
107
+ });
108
+ });
109
+ describe("fee validation", () => {
110
+ it("should return FeeNotLoaded error when body is missing", async () => {
111
+ const transactionWithoutBody = { ...mockTransaction, body: undefined };
112
+ await expect(getTransactionStatus(mockAccount, transactionWithoutBody)).rejects.toThrow();
113
+ });
114
+ it("should return FeeNotLoaded error when gas is missing", async () => {
115
+ const transactionWithoutGas = {
116
+ ...mockTransaction,
117
+ body: { ...mockTransaction.body, gas: undefined },
118
+ };
119
+ const result = await getTransactionStatus(mockAccount, transactionWithoutGas);
120
+ expect(result.errors.fees).toBeInstanceOf(FeeNotLoaded);
121
+ });
122
+ it("should return FeeNotLoaded error when gas is zero", async () => {
123
+ const transactionWithZeroGas = {
124
+ ...mockTransaction,
125
+ body: { ...mockTransaction.body, gas: 0 },
126
+ };
127
+ const result = await getTransactionStatus(mockAccount, transactionWithZeroGas);
128
+ expect(result.errors.fees).toBeInstanceOf(FeeNotLoaded);
129
+ });
130
+ });
131
+ describe("recipient validation", () => {
132
+ it("should return RecipientRequired error when recipient is empty", async () => {
133
+ const transactionWithoutRecipient = { ...mockTransaction, recipient: "" };
134
+ const result = await getTransactionStatus(mockAccount, transactionWithoutRecipient);
135
+ expect(result.errors.recipient).toBeInstanceOf(RecipientRequired);
136
+ });
137
+ it("should return InvalidAddressBecauseDestinationIsAlsoSource warning when sending to self", async () => {
138
+ const selfTransaction = {
139
+ ...mockTransaction,
140
+ recipient: mockAccount.freshAddress,
141
+ };
142
+ const result = await getTransactionStatus(mockAccount, selfTransaction);
143
+ expect(result.warnings.recipient).toBeInstanceOf(InvalidAddressBecauseDestinationIsAlsoSource);
144
+ });
145
+ it("should handle case-insensitive self-send detection", async () => {
146
+ const selfTransaction = {
147
+ ...mockTransaction,
148
+ recipient: mockAccount.freshAddress.toUpperCase(),
149
+ };
150
+ const result = await getTransactionStatus(mockAccount, selfTransaction);
151
+ expect(result.warnings.recipient).toBeInstanceOf(InvalidAddressBecauseDestinationIsAlsoSource);
152
+ });
153
+ it("should return InvalidAddress error for invalid recipient", async () => {
154
+ mockedParseAddress.mockReturnValue(false);
155
+ const result = await getTransactionStatus(mockAccount, mockTransaction);
156
+ expect(result.errors.recipient).toBeInstanceOf(InvalidAddress);
157
+ expect(mockedParseAddress).toHaveBeenCalledWith(mockTransaction.recipient);
158
+ });
159
+ });
160
+ describe("amount validation", () => {
161
+ it("should return AmountRequired error when amount is zero and not useAllAmount", async () => {
162
+ const zeroAmountTransaction = {
163
+ ...mockTransaction,
164
+ amount: new BigNumber(0),
165
+ useAllAmount: false,
166
+ };
167
+ const result = await getTransactionStatus(mockAccount, zeroAmountTransaction);
168
+ expect(result.errors.amount).toBeInstanceOf(AmountRequired);
169
+ });
170
+ it("should return NotEnoughBalance error when amount is zero and useAllAmount is true", async () => {
171
+ const useAllAmountTransaction = {
172
+ ...mockTransaction,
173
+ amount: new BigNumber(0),
174
+ useAllAmount: true,
175
+ };
176
+ const result = await getTransactionStatus(mockAccount, useAllAmountTransaction);
177
+ expect(result.errors.amount).toBeInstanceOf(NotEnoughBalance);
178
+ });
179
+ it("should return NotEnoughBalance error when amount exceeds spendable balance", async () => {
180
+ const largeAmountTransaction = {
181
+ ...mockTransaction,
182
+ amount: new BigNumber("10000000000000000000"), // 10 VET, more than spendable
183
+ };
184
+ mockedCalculateTransactionInfo.mockResolvedValue({
185
+ isTokenAccount: false,
186
+ amount: new BigNumber("10000000000000000000"),
187
+ spendableBalance: new BigNumber("4790000000000000000"), // Less than amount
188
+ balance: new BigNumber("5000000000000000000"),
189
+ tokenAccount: undefined,
190
+ estimatedFees: "210000000000000000",
191
+ estimatedGas: 21000,
192
+ maxFeePerGas: 10000000000000,
193
+ maxPriorityFeePerGas: 1000000000000,
194
+ });
195
+ const result = await getTransactionStatus(mockAccount, largeAmountTransaction);
196
+ expect(result.errors.amount).toBeInstanceOf(NotEnoughBalance);
197
+ });
198
+ });
199
+ describe("VTHO balance validation", () => {
200
+ it("should return NotEnoughVTHO error when VTHO balance is insufficient for fees", async () => {
201
+ const accountWithLowVtho = {
202
+ ...mockAccount,
203
+ subAccounts: [{ ...mockVthoAccount, balance: new BigNumber("100000000000000000") }], // 0.1 VTHO
204
+ };
205
+ const result = await getTransactionStatus(accountWithLowVtho, mockTransaction);
206
+ expect(result.errors.amount).toBeInstanceOf(NotEnoughVTHO);
207
+ });
208
+ it("should handle missing VTHO subaccount gracefully", async () => {
209
+ const accountWithoutVtho = {
210
+ ...mockAccount,
211
+ subAccounts: [],
212
+ };
213
+ // This should throw an error when trying to access subAccounts[0].balance
214
+ await expect(getTransactionStatus(accountWithoutVtho, mockTransaction)).rejects.toThrow();
215
+ });
216
+ it("should handle undefined subAccounts gracefully", async () => {
217
+ const accountWithUndefinedSub = {
218
+ ...mockAccount,
219
+ subAccounts: [],
220
+ };
221
+ // This should throw an error when trying to access subAccounts[0].balance
222
+ await expect(getTransactionStatus(accountWithUndefinedSub, mockTransaction)).rejects.toThrow();
223
+ });
224
+ it("should not check VTHO balance for token transactions", async () => {
225
+ const tokenTransaction = {
226
+ ...mockTransaction,
227
+ subAccountId: "vechain:1:0x123:+vtho",
228
+ };
229
+ mockedCalculateTransactionInfo.mockResolvedValue({
230
+ isTokenAccount: true,
231
+ amount: new BigNumber("1000000000000000000"),
232
+ spendableBalance: new BigNumber("999790000000000000000"),
233
+ balance: new BigNumber("1000000000000000000000"),
234
+ tokenAccount: mockVthoAccount,
235
+ estimatedFees: "210000000000000000",
236
+ estimatedGas: 21000,
237
+ maxFeePerGas: 10000000000000,
238
+ maxPriorityFeePerGas: 1000000000000,
239
+ });
240
+ const accountWithLowVtho = {
241
+ ...mockAccount,
242
+ subAccounts: [{ ...mockVthoAccount, balance: new BigNumber("100000000000000000") }],
243
+ };
244
+ const result = await getTransactionStatus(accountWithLowVtho, tokenTransaction);
245
+ expect(result.errors.amount).toBeUndefined();
246
+ });
247
+ });
248
+ describe("multiple errors", () => {
249
+ it("should return multiple errors when multiple validations fail", async () => {
250
+ const invalidTransaction = {
251
+ ...mockTransaction,
252
+ recipient: "",
253
+ amount: new BigNumber(0),
254
+ useAllAmount: false,
255
+ body: undefined,
256
+ };
257
+ await expect(getTransactionStatus(mockAccount, invalidTransaction)).rejects.toThrow();
258
+ });
259
+ });
260
+ describe("calculateTransactionInfo integration", () => {
261
+ it("should call calculateTransactionInfo with correct parameters", async () => {
262
+ await getTransactionStatus(mockAccount, mockTransaction);
263
+ expect(mockedCalculateTransactionInfo).toHaveBeenCalledWith(mockAccount, mockTransaction, {
264
+ estimatedGas: mockTransaction.body.gas,
265
+ estimatedGasFees: new BigNumber(mockTransaction.estimatedFees),
266
+ maxFeePerGas: mockTransaction.body.maxFeePerGas,
267
+ maxPriorityFeePerGas: mockTransaction.body.maxPriorityFeePerGas,
268
+ });
269
+ });
270
+ it("should handle calculateTransactionInfo errors", async () => {
271
+ const error = new Error("Calculation failed");
272
+ mockedCalculateTransactionInfo.mockRejectedValue(error);
273
+ await expect(getTransactionStatus(mockAccount, mockTransaction)).rejects.toThrow("Calculation failed");
274
+ });
275
+ });
276
+ });
277
+ //# sourceMappingURL=getTransactionStatus.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionStatus.test.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=helpers.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.test.d.ts","sourceRoot":"","sources":["../../src/bridge/helpers.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,293 @@
1
+ import BigNumber from "bignumber.js";
2
+ import { isAccountEmpty } from "./helpers";
3
+ describe("isAccountEmpty", () => {
4
+ const baseAccount = {
5
+ balance: new BigNumber("0"),
6
+ operationsCount: 0,
7
+ subAccounts: undefined,
8
+ };
9
+ describe("empty accounts", () => {
10
+ it("should return true for completely empty account", () => {
11
+ const account = {
12
+ ...baseAccount,
13
+ balance: new BigNumber("0"),
14
+ operationsCount: 0,
15
+ subAccounts: undefined,
16
+ };
17
+ const result = isAccountEmpty(account);
18
+ expect(result).toBe(true);
19
+ });
20
+ it("should return true for account with undefined subAccounts", () => {
21
+ const account = {
22
+ balance: new BigNumber("0"),
23
+ operationsCount: 0,
24
+ subAccounts: undefined,
25
+ };
26
+ const result = isAccountEmpty(account);
27
+ expect(result).toBe(true);
28
+ });
29
+ it("should return true for account with empty subAccounts array", () => {
30
+ const account = {
31
+ ...baseAccount,
32
+ balance: new BigNumber("0"),
33
+ operationsCount: 0,
34
+ subAccounts: undefined,
35
+ };
36
+ const result = isAccountEmpty(account);
37
+ expect(result).toBe(true);
38
+ });
39
+ it("should return true when subAccount has zero balance", () => {
40
+ const mockSubAccount = {
41
+ type: "TokenAccount",
42
+ id: "vechain:1:0x123:+vtho",
43
+ parentId: "vechain:1:0x123:",
44
+ token: {},
45
+ balance: new BigNumber("0"),
46
+ spendableBalance: new BigNumber("0"),
47
+ creationDate: new Date("2022-01-01"),
48
+ operationsCount: 0,
49
+ operations: [],
50
+ pendingOperations: [],
51
+ balanceHistoryCache: { HOUR: {}, DAY: {}, WEEK: {} },
52
+ swapHistory: [],
53
+ };
54
+ const account = {
55
+ balance: new BigNumber("0"),
56
+ operationsCount: 0,
57
+ subAccounts: [mockSubAccount],
58
+ };
59
+ const result = isAccountEmpty(account);
60
+ expect(result).toBe(true);
61
+ });
62
+ });
63
+ describe("non-empty accounts", () => {
64
+ it("should return false when account has balance", () => {
65
+ const account = {
66
+ ...baseAccount,
67
+ balance: new BigNumber("1000000000000000000"), // 1 VET
68
+ operationsCount: 0,
69
+ subAccounts: undefined,
70
+ };
71
+ const result = isAccountEmpty(account);
72
+ expect(result).toBe(false);
73
+ });
74
+ it("should return false when account has operations", () => {
75
+ const account = {
76
+ ...baseAccount,
77
+ balance: new BigNumber("0"),
78
+ operationsCount: 5,
79
+ subAccounts: undefined,
80
+ };
81
+ const result = isAccountEmpty(account);
82
+ expect(result).toBe(false);
83
+ });
84
+ it("should return false when subAccount has balance", () => {
85
+ const mockSubAccountWithBalance = {
86
+ type: "TokenAccount",
87
+ id: "vechain:1:0x123:+vtho",
88
+ parentId: "vechain:1:0x123:",
89
+ token: {},
90
+ balance: new BigNumber("1000000000000000000"), // 1 VTHO
91
+ spendableBalance: new BigNumber("1000000000000000000"),
92
+ creationDate: new Date("2022-01-01"),
93
+ operationsCount: 0,
94
+ operations: [],
95
+ pendingOperations: [],
96
+ balanceHistoryCache: { HOUR: {}, DAY: {}, WEEK: {} },
97
+ swapHistory: [],
98
+ };
99
+ const account = {
100
+ ...baseAccount,
101
+ balance: new BigNumber("0"),
102
+ operationsCount: 0,
103
+ subAccounts: [mockSubAccountWithBalance],
104
+ };
105
+ const result = isAccountEmpty(account);
106
+ expect(result).toBe(false);
107
+ });
108
+ it("should return false when account has both balance and operations", () => {
109
+ const account = {
110
+ ...baseAccount,
111
+ balance: new BigNumber("1000000000000000000"),
112
+ operationsCount: 3,
113
+ subAccounts: undefined,
114
+ };
115
+ const result = isAccountEmpty(account);
116
+ expect(result).toBe(false);
117
+ });
118
+ it("should return false when account has balance and subAccount with balance", () => {
119
+ const mockSubAccountWithBalance = {
120
+ type: "TokenAccount",
121
+ id: "vechain:1:0x123:+vtho",
122
+ parentId: "vechain:1:0x123:",
123
+ token: {},
124
+ balance: new BigNumber("500000000000000000"), // 0.5 VTHO
125
+ spendableBalance: new BigNumber("500000000000000000"),
126
+ creationDate: new Date("2022-01-01"),
127
+ operationsCount: 0,
128
+ operations: [],
129
+ pendingOperations: [],
130
+ balanceHistoryCache: { HOUR: {}, DAY: {}, WEEK: {} },
131
+ swapHistory: [],
132
+ };
133
+ const account = {
134
+ ...baseAccount,
135
+ balance: new BigNumber("2000000000000000000"), // 2 VET
136
+ operationsCount: 0,
137
+ subAccounts: [mockSubAccountWithBalance],
138
+ };
139
+ const result = isAccountEmpty(account);
140
+ expect(result).toBe(false);
141
+ });
142
+ });
143
+ describe("edge cases", () => {
144
+ it("should handle very small balances", () => {
145
+ const account = {
146
+ ...baseAccount,
147
+ balance: new BigNumber("1"), // 1 wei
148
+ operationsCount: 0,
149
+ subAccounts: undefined,
150
+ };
151
+ const result = isAccountEmpty(account);
152
+ expect(result).toBe(false);
153
+ });
154
+ it("should handle very large balances", () => {
155
+ const account = {
156
+ ...baseAccount,
157
+ balance: new BigNumber("1000000000000000000000000"), // 1M VET
158
+ operationsCount: 0,
159
+ subAccounts: undefined,
160
+ };
161
+ const result = isAccountEmpty(account);
162
+ expect(result).toBe(false);
163
+ });
164
+ it("should handle negative balance", () => {
165
+ const account = {
166
+ ...baseAccount,
167
+ balance: new BigNumber("-1000000000000000000"), // -1 VET (edge case)
168
+ operationsCount: 0,
169
+ subAccounts: undefined,
170
+ };
171
+ const result = isAccountEmpty(account);
172
+ expect(result).toBe(false);
173
+ });
174
+ it("should handle multiple subAccounts where first is empty", () => {
175
+ const emptySubAccount = {
176
+ type: "TokenAccount",
177
+ id: "vechain:1:0x123:+empty",
178
+ parentId: "vechain:1:0x123:",
179
+ token: {},
180
+ balance: new BigNumber("0"),
181
+ spendableBalance: new BigNumber("0"),
182
+ creationDate: new Date("2022-01-01"),
183
+ operationsCount: 0,
184
+ operations: [],
185
+ pendingOperations: [],
186
+ balanceHistoryCache: { HOUR: {}, DAY: {}, WEEK: {} },
187
+ swapHistory: [],
188
+ };
189
+ const nonEmptySubAccount = {
190
+ type: "TokenAccount",
191
+ id: "vechain:1:0x123:+vtho",
192
+ parentId: "vechain:1:0x123:",
193
+ token: {},
194
+ balance: new BigNumber("1000000000000000000"),
195
+ spendableBalance: new BigNumber("1000000000000000000"),
196
+ creationDate: new Date("2022-01-01"),
197
+ operationsCount: 0,
198
+ operations: [],
199
+ pendingOperations: [],
200
+ balanceHistoryCache: { HOUR: {}, DAY: {}, WEEK: {} },
201
+ swapHistory: [],
202
+ };
203
+ const account = {
204
+ ...baseAccount,
205
+ balance: new BigNumber("0"),
206
+ operationsCount: 0,
207
+ subAccounts: [emptySubAccount, nonEmptySubAccount],
208
+ };
209
+ const result = isAccountEmpty(account);
210
+ // Should check only the first subAccount according to the implementation
211
+ expect(result).toBe(true);
212
+ });
213
+ it("should handle account with operations but zero balance", () => {
214
+ const account = {
215
+ ...baseAccount,
216
+ balance: new BigNumber("0"),
217
+ operationsCount: 1,
218
+ subAccounts: undefined,
219
+ };
220
+ const result = isAccountEmpty(account);
221
+ expect(result).toBe(false);
222
+ });
223
+ it("should handle decimal balance", () => {
224
+ const account = {
225
+ ...baseAccount,
226
+ balance: new BigNumber("0.5"), // 0.5 VET (unlikely but possible)
227
+ operationsCount: 0,
228
+ subAccounts: undefined,
229
+ };
230
+ const result = isAccountEmpty(account);
231
+ expect(result).toBe(false);
232
+ });
233
+ });
234
+ describe("subAccount balance checking logic", () => {
235
+ it("should correctly identify when subAccount balance isZero() returns false", () => {
236
+ const mockSubAccountWithBalance = {
237
+ type: "TokenAccount",
238
+ id: "vechain:1:0x123:+vtho",
239
+ parentId: "vechain:1:0x123:",
240
+ token: {},
241
+ balance: new BigNumber("0.000000000000000001"), // Very small but non-zero
242
+ spendableBalance: new BigNumber("0.000000000000000001"),
243
+ creationDate: new Date("2022-01-01"),
244
+ operationsCount: 0,
245
+ operations: [],
246
+ pendingOperations: [],
247
+ balanceHistoryCache: { HOUR: {}, DAY: {}, WEEK: {} },
248
+ swapHistory: [],
249
+ };
250
+ const account = {
251
+ ...baseAccount,
252
+ balance: new BigNumber("0"),
253
+ operationsCount: 0,
254
+ subAccounts: [mockSubAccountWithBalance],
255
+ };
256
+ const result = isAccountEmpty(account);
257
+ expect(result).toBe(false);
258
+ });
259
+ it("should correctly handle when subAccounts is null", () => {
260
+ const account = {
261
+ ...baseAccount,
262
+ balance: new BigNumber("0"),
263
+ operationsCount: 0,
264
+ subAccounts: null,
265
+ };
266
+ const result = isAccountEmpty(account);
267
+ expect(result).toBe(true);
268
+ });
269
+ });
270
+ describe("BigNumber behavior", () => {
271
+ it("should correctly use BigNumber.isZero() method", () => {
272
+ const zeroBalance = new BigNumber("0");
273
+ const nonZeroBalance = new BigNumber("1");
274
+ expect(zeroBalance.isZero()).toBe(true);
275
+ expect(nonZeroBalance.isZero()).toBe(false);
276
+ const accountWithZero = {
277
+ ...baseAccount,
278
+ balance: zeroBalance,
279
+ operationsCount: 0,
280
+ subAccounts: undefined,
281
+ };
282
+ const accountWithNonZero = {
283
+ ...baseAccount,
284
+ balance: nonZeroBalance,
285
+ operationsCount: 0,
286
+ subAccounts: undefined,
287
+ };
288
+ expect(isAccountEmpty(accountWithZero)).toBe(true);
289
+ expect(isAccountEmpty(accountWithNonZero)).toBe(false);
290
+ });
291
+ });
292
+ });
293
+ //# sourceMappingURL=helpers.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.test.js","sourceRoot":"","sources":["../../src/bridge/helpers.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepareTransaction.d.ts","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAQ/C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,YACpB,OAAO,eACH,WAAW,KACvB,QAAQ,WAAW,CAoBrB,CAAC"}
1
+ {"version":3,"file":"prepareTransaction.d.ts","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAO/C,OAAO,EAAE,WAAW,EAA+B,MAAM,UAAU,CAAC;AAGpE;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,YACpB,OAAO,eACH,WAAW,KACvB,QAAQ,WAAW,CA+BrB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { calculateTransactionInfo, isValid, calculateClausesVet, calculateClausesVtho, } from "../common-logic";
1
+ import { calculateTransactionInfo, calculateClausesVet, calculateClausesVtho, parseAddress, } from "../common-logic";
2
2
  import { getBlockRef } from "../network";
3
3
  /**
4
4
  * Prepare transaction before checking status
@@ -7,10 +7,10 @@ import { getBlockRef } from "../network";
7
7
  * @param {Transaction} t
8
8
  */
9
9
  export const prepareTransaction = async (account, transaction) => {
10
- const { amount, isTokenAccount, estimatedFees, estimatedGas } = await calculateTransactionInfo(account, transaction);
10
+ const { amount, isTokenAccount, estimatedFees, estimatedGas, maxFeePerGas, maxPriorityFeePerGas, } = await calculateTransactionInfo(account, transaction);
11
11
  let blockRef = "";
12
12
  let clauses = [];
13
- if (transaction.recipient && isValid(transaction.recipient)) {
13
+ if (transaction.recipient && parseAddress(transaction.recipient)) {
14
14
  blockRef = await getBlockRef();
15
15
  if (isTokenAccount) {
16
16
  clauses = await calculateClausesVtho(transaction.recipient, amount);
@@ -19,7 +19,14 @@ export const prepareTransaction = async (account, transaction) => {
19
19
  clauses = await calculateClausesVet(transaction.recipient, amount);
20
20
  }
21
21
  }
22
- const body = { ...transaction.body, gas: estimatedGas, blockRef, clauses };
22
+ const body = {
23
+ ...transaction.body,
24
+ gas: estimatedGas,
25
+ blockRef,
26
+ clauses,
27
+ maxFeePerGas,
28
+ maxPriorityFeePerGas,
29
+ };
23
30
  return { ...transaction, body, amount, estimatedFees };
24
31
  };
25
32
  //# sourceMappingURL=prepareTransaction.js.map