@ledgerhq/coin-mina 1.1.0-next.0

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 (414) hide show
  1. package/.eslintrc.js +20 -0
  2. package/.turbo/turbo-build.log +4 -0
  3. package/.unimportedrc.json +24 -0
  4. package/CHANGELOG.md +15 -0
  5. package/LICENSE.txt +21 -0
  6. package/jest.config.js +8 -0
  7. package/jest.integ.config.js +8 -0
  8. package/lib/api/index.d.ts +13 -0
  9. package/lib/api/index.d.ts.map +1 -0
  10. package/lib/api/index.integ.test.d.ts +2 -0
  11. package/lib/api/index.integ.test.d.ts.map +1 -0
  12. package/lib/api/index.integ.test.js +57 -0
  13. package/lib/api/index.integ.test.js.map +1 -0
  14. package/lib/api/index.js +91 -0
  15. package/lib/api/index.js.map +1 -0
  16. package/lib/api/rosetta/index.d.ts +9 -0
  17. package/lib/api/rosetta/index.d.ts.map +1 -0
  18. package/lib/api/rosetta/index.js +90 -0
  19. package/lib/api/rosetta/index.js.map +1 -0
  20. package/lib/api/rosetta/types.d.ts +143 -0
  21. package/lib/api/rosetta/types.d.ts.map +1 -0
  22. package/lib/api/rosetta/types.js +3 -0
  23. package/lib/api/rosetta/types.js.map +1 -0
  24. package/lib/api/rosetta/utils.d.ts +43 -0
  25. package/lib/api/rosetta/utils.d.ts.map +1 -0
  26. package/lib/api/rosetta/utils.js +60 -0
  27. package/lib/api/rosetta/utils.js.map +1 -0
  28. package/lib/api/rosetta/utils.test.d.ts +2 -0
  29. package/lib/api/rosetta/utils.test.d.ts.map +1 -0
  30. package/lib/api/rosetta/utils.test.js +82 -0
  31. package/lib/api/rosetta/utils.test.js.map +1 -0
  32. package/lib/bridge/broadcast.d.ts +6 -0
  33. package/lib/bridge/broadcast.d.ts.map +1 -0
  34. package/lib/bridge/broadcast.js +11 -0
  35. package/lib/bridge/broadcast.js.map +1 -0
  36. package/lib/bridge/broadcast.test.d.ts +2 -0
  37. package/lib/bridge/broadcast.test.d.ts.map +1 -0
  38. package/lib/bridge/broadcast.test.js +36 -0
  39. package/lib/bridge/broadcast.test.js.map +1 -0
  40. package/lib/bridge/buildTransaction.d.ts +4 -0
  41. package/lib/bridge/buildTransaction.d.ts.map +1 -0
  42. package/lib/bridge/buildTransaction.js +37 -0
  43. package/lib/bridge/buildTransaction.js.map +1 -0
  44. package/lib/bridge/buildTransaction.test.d.ts +2 -0
  45. package/lib/bridge/buildTransaction.test.d.ts.map +1 -0
  46. package/lib/bridge/buildTransaction.test.js +57 -0
  47. package/lib/bridge/buildTransaction.test.js.map +1 -0
  48. package/lib/bridge/cli-transaction.d.ts +18 -0
  49. package/lib/bridge/cli-transaction.d.ts.map +1 -0
  50. package/lib/bridge/cli-transaction.js +37 -0
  51. package/lib/bridge/cli-transaction.js.map +1 -0
  52. package/lib/bridge/createTransaction.d.ts +4 -0
  53. package/lib/bridge/createTransaction.d.ts.map +1 -0
  54. package/lib/bridge/createTransaction.js +21 -0
  55. package/lib/bridge/createTransaction.js.map +1 -0
  56. package/lib/bridge/createTransaction.test.d.ts +2 -0
  57. package/lib/bridge/createTransaction.test.d.ts.map +1 -0
  58. package/lib/bridge/createTransaction.test.js +24 -0
  59. package/lib/bridge/createTransaction.test.js.map +1 -0
  60. package/lib/bridge/deviceTransactionConfig.d.ts +11 -0
  61. package/lib/bridge/deviceTransactionConfig.d.ts.map +1 -0
  62. package/lib/bridge/deviceTransactionConfig.js +8 -0
  63. package/lib/bridge/deviceTransactionConfig.js.map +1 -0
  64. package/lib/bridge/errors.d.ts +10 -0
  65. package/lib/bridge/errors.d.ts.map +1 -0
  66. package/lib/bridge/errors.js +17 -0
  67. package/lib/bridge/errors.js.map +1 -0
  68. package/lib/bridge/estimateMaxSpendable.d.ts +5 -0
  69. package/lib/bridge/estimateMaxSpendable.d.ts.map +1 -0
  70. package/lib/bridge/estimateMaxSpendable.js +26 -0
  71. package/lib/bridge/estimateMaxSpendable.js.map +1 -0
  72. package/lib/bridge/getEstimatedFees.d.ts +8 -0
  73. package/lib/bridge/getEstimatedFees.d.ts.map +1 -0
  74. package/lib/bridge/getEstimatedFees.js +9 -0
  75. package/lib/bridge/getEstimatedFees.js.map +1 -0
  76. package/lib/bridge/getTransactionStatus.d.ts +5 -0
  77. package/lib/bridge/getTransactionStatus.d.ts.map +1 -0
  78. package/lib/bridge/getTransactionStatus.js +62 -0
  79. package/lib/bridge/getTransactionStatus.js.map +1 -0
  80. package/lib/bridge/getTransactionStatus.test.d.ts +2 -0
  81. package/lib/bridge/getTransactionStatus.test.d.ts.map +1 -0
  82. package/lib/bridge/getTransactionStatus.test.js +138 -0
  83. package/lib/bridge/getTransactionStatus.test.js.map +1 -0
  84. package/lib/bridge/index.d.ts +14 -0
  85. package/lib/bridge/index.d.ts.map +1 -0
  86. package/lib/bridge/index.js +59 -0
  87. package/lib/bridge/index.js.map +1 -0
  88. package/lib/bridge/index.test.d.ts +2 -0
  89. package/lib/bridge/index.test.d.ts.map +1 -0
  90. package/lib/bridge/index.test.js +32 -0
  91. package/lib/bridge/index.test.js.map +1 -0
  92. package/lib/bridge/prepareTransaction.d.ts +4 -0
  93. package/lib/bridge/prepareTransaction.d.ts.map +1 -0
  94. package/lib/bridge/prepareTransaction.js +23 -0
  95. package/lib/bridge/prepareTransaction.js.map +1 -0
  96. package/lib/bridge/prepareTransaction.test.d.ts +2 -0
  97. package/lib/bridge/prepareTransaction.test.d.ts.map +1 -0
  98. package/lib/bridge/prepareTransaction.test.js +43 -0
  99. package/lib/bridge/prepareTransaction.test.js.map +1 -0
  100. package/lib/bridge/signOperation.d.ts +12 -0
  101. package/lib/bridge/signOperation.d.ts.map +1 -0
  102. package/lib/bridge/signOperation.js +72 -0
  103. package/lib/bridge/signOperation.js.map +1 -0
  104. package/lib/bridge/signOperation.test.d.ts +2 -0
  105. package/lib/bridge/signOperation.test.d.ts.map +1 -0
  106. package/lib/bridge/signOperation.test.js +129 -0
  107. package/lib/bridge/signOperation.test.js.map +1 -0
  108. package/lib/bridge/synchronisation.d.ts +7 -0
  109. package/lib/bridge/synchronisation.d.ts.map +1 -0
  110. package/lib/bridge/synchronisation.js +155 -0
  111. package/lib/bridge/synchronisation.js.map +1 -0
  112. package/lib/bridge/synchronisation.test.d.ts +2 -0
  113. package/lib/bridge/synchronisation.test.d.ts.map +1 -0
  114. package/lib/bridge/synchronisation.test.js +164 -0
  115. package/lib/bridge/synchronisation.test.js.map +1 -0
  116. package/lib/bridge/transaction.d.ts +14 -0
  117. package/lib/bridge/transaction.d.ts.map +1 -0
  118. package/lib/bridge/transaction.js +61 -0
  119. package/lib/bridge/transaction.js.map +1 -0
  120. package/lib/common-logic/index.d.ts +9 -0
  121. package/lib/common-logic/index.d.ts.map +1 -0
  122. package/lib/common-logic/index.js +96 -0
  123. package/lib/common-logic/index.js.map +1 -0
  124. package/lib/common-logic/index.test.d.ts +2 -0
  125. package/lib/common-logic/index.test.d.ts.map +1 -0
  126. package/lib/common-logic/index.test.js +181 -0
  127. package/lib/common-logic/index.test.js.map +1 -0
  128. package/lib/config.d.ts +9 -0
  129. package/lib/config.d.ts.map +1 -0
  130. package/lib/config.js +16 -0
  131. package/lib/config.js.map +1 -0
  132. package/lib/consts.d.ts +16 -0
  133. package/lib/consts.d.ts.map +1 -0
  134. package/lib/consts.js +19 -0
  135. package/lib/consts.js.map +1 -0
  136. package/lib/signer/getAddress.d.ts +6 -0
  137. package/lib/signer/getAddress.d.ts.map +1 -0
  138. package/lib/signer/getAddress.js +22 -0
  139. package/lib/signer/getAddress.js.map +1 -0
  140. package/lib/signer/getAddress.test.d.ts +2 -0
  141. package/lib/signer/getAddress.test.d.ts.map +1 -0
  142. package/lib/signer/getAddress.test.js +106 -0
  143. package/lib/signer/getAddress.test.js.map +1 -0
  144. package/lib/signer/index.d.ts +3 -0
  145. package/lib/signer/index.d.ts.map +1 -0
  146. package/lib/signer/index.js +8 -0
  147. package/lib/signer/index.js.map +1 -0
  148. package/lib/test/bot-deviceActions.d.ts +4 -0
  149. package/lib/test/bot-deviceActions.d.ts.map +1 -0
  150. package/lib/test/bot-deviceActions.js +67 -0
  151. package/lib/test/bot-deviceActions.js.map +1 -0
  152. package/lib/test/bot-specs.d.ts +7 -0
  153. package/lib/test/bot-specs.d.ts.map +1 -0
  154. package/lib/test/bot-specs.js +107 -0
  155. package/lib/test/bot-specs.js.map +1 -0
  156. package/lib/test/bridgeDatasetTest.d.ts +4 -0
  157. package/lib/test/bridgeDatasetTest.d.ts.map +1 -0
  158. package/lib/test/bridgeDatasetTest.js +174 -0
  159. package/lib/test/bridgeDatasetTest.js.map +1 -0
  160. package/lib/test/fixtures.d.ts +55 -0
  161. package/lib/test/fixtures.d.ts.map +1 -0
  162. package/lib/test/fixtures.js +194 -0
  163. package/lib/test/fixtures.js.map +1 -0
  164. package/lib/test/index.d.ts +4 -0
  165. package/lib/test/index.d.ts.map +1 -0
  166. package/lib/test/index.js +20 -0
  167. package/lib/test/index.js.map +1 -0
  168. package/lib/test/testUtils.d.ts +2 -0
  169. package/lib/test/testUtils.d.ts.map +1 -0
  170. package/lib/test/testUtils.js +8 -0
  171. package/lib/test/testUtils.js.map +1 -0
  172. package/lib/test/testUtils.test.d.ts +2 -0
  173. package/lib/test/testUtils.test.d.ts.map +1 -0
  174. package/lib/test/testUtils.test.js +11 -0
  175. package/lib/test/testUtils.test.js.map +1 -0
  176. package/lib/types/common.d.ts +55 -0
  177. package/lib/types/common.d.ts.map +1 -0
  178. package/lib/types/common.js +3 -0
  179. package/lib/types/common.js.map +1 -0
  180. package/lib/types/index.d.ts +3 -0
  181. package/lib/types/index.d.ts.map +1 -0
  182. package/lib/types/index.js +19 -0
  183. package/lib/types/index.js.map +1 -0
  184. package/lib/types/signer.d.ts +32 -0
  185. package/lib/types/signer.d.ts.map +1 -0
  186. package/lib/types/signer.js +3 -0
  187. package/lib/types/signer.js.map +1 -0
  188. package/lib-es/api/index.d.ts +13 -0
  189. package/lib-es/api/index.d.ts.map +1 -0
  190. package/lib-es/api/index.integ.test.d.ts +2 -0
  191. package/lib-es/api/index.integ.test.d.ts.map +1 -0
  192. package/lib-es/api/index.integ.test.js +55 -0
  193. package/lib-es/api/index.integ.test.js.map +1 -0
  194. package/lib-es/api/index.js +79 -0
  195. package/lib-es/api/index.js.map +1 -0
  196. package/lib-es/api/rosetta/index.d.ts +8 -0
  197. package/lib-es/api/rosetta/index.d.ts.map +1 -0
  198. package/lib-es/api/rosetta/index.js +78 -0
  199. package/lib-es/api/rosetta/index.js.map +1 -0
  200. package/lib-es/api/rosetta/types.d.ts +143 -0
  201. package/lib-es/api/rosetta/types.d.ts.map +1 -0
  202. package/lib-es/api/rosetta/types.js +2 -0
  203. package/lib-es/api/rosetta/types.js.map +1 -0
  204. package/lib-es/api/rosetta/utils.d.ts +43 -0
  205. package/lib-es/api/rosetta/utils.d.ts.map +1 -0
  206. package/lib-es/api/rosetta/utils.js +54 -0
  207. package/lib-es/api/rosetta/utils.js.map +1 -0
  208. package/lib-es/api/rosetta/utils.test.d.ts +2 -0
  209. package/lib-es/api/rosetta/utils.test.d.ts.map +1 -0
  210. package/lib-es/api/rosetta/utils.test.js +80 -0
  211. package/lib-es/api/rosetta/utils.test.js.map +1 -0
  212. package/lib-es/bridge/broadcast.d.ts +6 -0
  213. package/lib-es/bridge/broadcast.d.ts.map +1 -0
  214. package/lib-es/bridge/broadcast.js +9 -0
  215. package/lib-es/bridge/broadcast.js.map +1 -0
  216. package/lib-es/bridge/broadcast.test.d.ts +2 -0
  217. package/lib-es/bridge/broadcast.test.d.ts.map +1 -0
  218. package/lib-es/bridge/broadcast.test.js +31 -0
  219. package/lib-es/bridge/broadcast.test.js.map +1 -0
  220. package/lib-es/bridge/buildTransaction.d.ts +4 -0
  221. package/lib-es/bridge/buildTransaction.d.ts.map +1 -0
  222. package/lib-es/bridge/buildTransaction.js +30 -0
  223. package/lib-es/bridge/buildTransaction.js.map +1 -0
  224. package/lib-es/bridge/buildTransaction.test.d.ts +2 -0
  225. package/lib-es/bridge/buildTransaction.test.d.ts.map +1 -0
  226. package/lib-es/bridge/buildTransaction.test.js +55 -0
  227. package/lib-es/bridge/buildTransaction.test.js.map +1 -0
  228. package/lib-es/bridge/cli-transaction.d.ts +18 -0
  229. package/lib-es/bridge/cli-transaction.d.ts.map +1 -0
  230. package/lib-es/bridge/cli-transaction.js +31 -0
  231. package/lib-es/bridge/cli-transaction.js.map +1 -0
  232. package/lib-es/bridge/createTransaction.d.ts +4 -0
  233. package/lib-es/bridge/createTransaction.d.ts.map +1 -0
  234. package/lib-es/bridge/createTransaction.js +14 -0
  235. package/lib-es/bridge/createTransaction.js.map +1 -0
  236. package/lib-es/bridge/createTransaction.test.d.ts +2 -0
  237. package/lib-es/bridge/createTransaction.test.d.ts.map +1 -0
  238. package/lib-es/bridge/createTransaction.test.js +19 -0
  239. package/lib-es/bridge/createTransaction.test.js.map +1 -0
  240. package/lib-es/bridge/deviceTransactionConfig.d.ts +11 -0
  241. package/lib-es/bridge/deviceTransactionConfig.d.ts.map +1 -0
  242. package/lib-es/bridge/deviceTransactionConfig.js +6 -0
  243. package/lib-es/bridge/deviceTransactionConfig.js.map +1 -0
  244. package/lib-es/bridge/errors.d.ts +10 -0
  245. package/lib-es/bridge/errors.d.ts.map +1 -0
  246. package/lib-es/bridge/errors.js +14 -0
  247. package/lib-es/bridge/errors.js.map +1 -0
  248. package/lib-es/bridge/estimateMaxSpendable.d.ts +5 -0
  249. package/lib-es/bridge/estimateMaxSpendable.d.ts.map +1 -0
  250. package/lib-es/bridge/estimateMaxSpendable.js +21 -0
  251. package/lib-es/bridge/estimateMaxSpendable.js.map +1 -0
  252. package/lib-es/bridge/getEstimatedFees.d.ts +8 -0
  253. package/lib-es/bridge/getEstimatedFees.d.ts.map +1 -0
  254. package/lib-es/bridge/getEstimatedFees.js +7 -0
  255. package/lib-es/bridge/getEstimatedFees.js.map +1 -0
  256. package/lib-es/bridge/getTransactionStatus.d.ts +5 -0
  257. package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -0
  258. package/lib-es/bridge/getTransactionStatus.js +60 -0
  259. package/lib-es/bridge/getTransactionStatus.js.map +1 -0
  260. package/lib-es/bridge/getTransactionStatus.test.d.ts +2 -0
  261. package/lib-es/bridge/getTransactionStatus.test.d.ts.map +1 -0
  262. package/lib-es/bridge/getTransactionStatus.test.js +133 -0
  263. package/lib-es/bridge/getTransactionStatus.test.js.map +1 -0
  264. package/lib-es/bridge/index.d.ts +14 -0
  265. package/lib-es/bridge/index.d.ts.map +1 -0
  266. package/lib-es/bridge/index.js +50 -0
  267. package/lib-es/bridge/index.js.map +1 -0
  268. package/lib-es/bridge/index.test.d.ts +2 -0
  269. package/lib-es/bridge/index.test.d.ts.map +1 -0
  270. package/lib-es/bridge/index.test.js +30 -0
  271. package/lib-es/bridge/index.test.js.map +1 -0
  272. package/lib-es/bridge/prepareTransaction.d.ts +4 -0
  273. package/lib-es/bridge/prepareTransaction.d.ts.map +1 -0
  274. package/lib-es/bridge/prepareTransaction.js +16 -0
  275. package/lib-es/bridge/prepareTransaction.js.map +1 -0
  276. package/lib-es/bridge/prepareTransaction.test.d.ts +2 -0
  277. package/lib-es/bridge/prepareTransaction.test.d.ts.map +1 -0
  278. package/lib-es/bridge/prepareTransaction.test.js +38 -0
  279. package/lib-es/bridge/prepareTransaction.test.js.map +1 -0
  280. package/lib-es/bridge/signOperation.d.ts +12 -0
  281. package/lib-es/bridge/signOperation.d.ts.map +1 -0
  282. package/lib-es/bridge/signOperation.js +64 -0
  283. package/lib-es/bridge/signOperation.js.map +1 -0
  284. package/lib-es/bridge/signOperation.test.d.ts +2 -0
  285. package/lib-es/bridge/signOperation.test.d.ts.map +1 -0
  286. package/lib-es/bridge/signOperation.test.js +127 -0
  287. package/lib-es/bridge/signOperation.test.js.map +1 -0
  288. package/lib-es/bridge/synchronisation.d.ts +7 -0
  289. package/lib-es/bridge/synchronisation.d.ts.map +1 -0
  290. package/lib-es/bridge/synchronisation.js +147 -0
  291. package/lib-es/bridge/synchronisation.js.map +1 -0
  292. package/lib-es/bridge/synchronisation.test.d.ts +2 -0
  293. package/lib-es/bridge/synchronisation.test.d.ts.map +1 -0
  294. package/lib-es/bridge/synchronisation.test.js +159 -0
  295. package/lib-es/bridge/synchronisation.test.js.map +1 -0
  296. package/lib-es/bridge/transaction.d.ts +14 -0
  297. package/lib-es/bridge/transaction.d.ts.map +1 -0
  298. package/lib-es/bridge/transaction.js +53 -0
  299. package/lib-es/bridge/transaction.js.map +1 -0
  300. package/lib-es/common-logic/index.d.ts +9 -0
  301. package/lib-es/common-logic/index.d.ts.map +1 -0
  302. package/lib-es/common-logic/index.js +84 -0
  303. package/lib-es/common-logic/index.js.map +1 -0
  304. package/lib-es/common-logic/index.test.d.ts +2 -0
  305. package/lib-es/common-logic/index.test.d.ts.map +1 -0
  306. package/lib-es/common-logic/index.test.js +179 -0
  307. package/lib-es/common-logic/index.test.js.map +1 -0
  308. package/lib-es/config.d.ts +9 -0
  309. package/lib-es/config.d.ts.map +1 -0
  310. package/lib-es/config.js +11 -0
  311. package/lib-es/config.js.map +1 -0
  312. package/lib-es/consts.d.ts +16 -0
  313. package/lib-es/consts.d.ts.map +1 -0
  314. package/lib-es/consts.js +16 -0
  315. package/lib-es/consts.js.map +1 -0
  316. package/lib-es/signer/getAddress.d.ts +6 -0
  317. package/lib-es/signer/getAddress.d.ts.map +1 -0
  318. package/lib-es/signer/getAddress.js +17 -0
  319. package/lib-es/signer/getAddress.js.map +1 -0
  320. package/lib-es/signer/getAddress.test.d.ts +2 -0
  321. package/lib-es/signer/getAddress.test.d.ts.map +1 -0
  322. package/lib-es/signer/getAddress.test.js +101 -0
  323. package/lib-es/signer/getAddress.test.js.map +1 -0
  324. package/lib-es/signer/index.d.ts +3 -0
  325. package/lib-es/signer/index.d.ts.map +1 -0
  326. package/lib-es/signer/index.js +3 -0
  327. package/lib-es/signer/index.js.map +1 -0
  328. package/lib-es/test/bot-deviceActions.d.ts +4 -0
  329. package/lib-es/test/bot-deviceActions.d.ts.map +1 -0
  330. package/lib-es/test/bot-deviceActions.js +64 -0
  331. package/lib-es/test/bot-deviceActions.js.map +1 -0
  332. package/lib-es/test/bot-specs.d.ts +7 -0
  333. package/lib-es/test/bot-specs.d.ts.map +1 -0
  334. package/lib-es/test/bot-specs.js +102 -0
  335. package/lib-es/test/bot-specs.js.map +1 -0
  336. package/lib-es/test/bridgeDatasetTest.d.ts +4 -0
  337. package/lib-es/test/bridgeDatasetTest.d.ts.map +1 -0
  338. package/lib-es/test/bridgeDatasetTest.js +171 -0
  339. package/lib-es/test/bridgeDatasetTest.js.map +1 -0
  340. package/lib-es/test/fixtures.d.ts +55 -0
  341. package/lib-es/test/fixtures.d.ts.map +1 -0
  342. package/lib-es/test/fixtures.js +182 -0
  343. package/lib-es/test/fixtures.js.map +1 -0
  344. package/lib-es/test/index.d.ts +4 -0
  345. package/lib-es/test/index.d.ts.map +1 -0
  346. package/lib-es/test/index.js +4 -0
  347. package/lib-es/test/index.js.map +1 -0
  348. package/lib-es/test/testUtils.d.ts +2 -0
  349. package/lib-es/test/testUtils.d.ts.map +1 -0
  350. package/lib-es/test/testUtils.js +4 -0
  351. package/lib-es/test/testUtils.js.map +1 -0
  352. package/lib-es/test/testUtils.test.d.ts +2 -0
  353. package/lib-es/test/testUtils.test.d.ts.map +1 -0
  354. package/lib-es/test/testUtils.test.js +9 -0
  355. package/lib-es/test/testUtils.test.js.map +1 -0
  356. package/lib-es/types/common.d.ts +55 -0
  357. package/lib-es/types/common.d.ts.map +1 -0
  358. package/lib-es/types/common.js +2 -0
  359. package/lib-es/types/common.js.map +1 -0
  360. package/lib-es/types/index.d.ts +3 -0
  361. package/lib-es/types/index.d.ts.map +1 -0
  362. package/lib-es/types/index.js +3 -0
  363. package/lib-es/types/index.js.map +1 -0
  364. package/lib-es/types/signer.d.ts +32 -0
  365. package/lib-es/types/signer.d.ts.map +1 -0
  366. package/lib-es/types/signer.js +2 -0
  367. package/lib-es/types/signer.js.map +1 -0
  368. package/package.json +143 -0
  369. package/src/api/index.integ.test.ts +62 -0
  370. package/src/api/index.ts +120 -0
  371. package/src/api/rosetta/index.ts +110 -0
  372. package/src/api/rosetta/types.ts +156 -0
  373. package/src/api/rosetta/utils.test.ts +100 -0
  374. package/src/api/rosetta/utils.ts +71 -0
  375. package/src/bridge/broadcast.test.ts +35 -0
  376. package/src/bridge/broadcast.ts +17 -0
  377. package/src/bridge/buildTransaction.test.ts +68 -0
  378. package/src/bridge/buildTransaction.ts +34 -0
  379. package/src/bridge/cli-transaction.ts +43 -0
  380. package/src/bridge/createTransaction.test.ts +21 -0
  381. package/src/bridge/createTransaction.ts +19 -0
  382. package/src/bridge/deviceTransactionConfig.ts +15 -0
  383. package/src/bridge/errors.ts +16 -0
  384. package/src/bridge/estimateMaxSpendable.ts +31 -0
  385. package/src/bridge/getEstimatedFees.ts +17 -0
  386. package/src/bridge/getTransactionStatus.test.ts +175 -0
  387. package/src/bridge/getTransactionStatus.ts +87 -0
  388. package/src/bridge/index.test.ts +39 -0
  389. package/src/bridge/index.ts +72 -0
  390. package/src/bridge/prepareTransaction.test.ts +43 -0
  391. package/src/bridge/prepareTransaction.ts +24 -0
  392. package/src/bridge/signOperation.test.ts +158 -0
  393. package/src/bridge/signOperation.ts +112 -0
  394. package/src/bridge/synchronisation.test.ts +184 -0
  395. package/src/bridge/synchronisation.ts +168 -0
  396. package/src/bridge/transaction.ts +69 -0
  397. package/src/common-logic/index.test.ts +225 -0
  398. package/src/common-logic/index.ts +97 -0
  399. package/src/config.ts +21 -0
  400. package/src/consts.ts +18 -0
  401. package/src/signer/getAddress.test.ts +131 -0
  402. package/src/signer/getAddress.ts +24 -0
  403. package/src/signer/index.ts +3 -0
  404. package/src/test/bot-deviceActions.ts +73 -0
  405. package/src/test/bot-specs.ts +130 -0
  406. package/src/test/bridgeDatasetTest.ts +180 -0
  407. package/src/test/fixtures.ts +226 -0
  408. package/src/test/index.ts +3 -0
  409. package/src/test/testUtils.test.ts +9 -0
  410. package/src/test/testUtils.ts +3 -0
  411. package/src/types/common.ts +70 -0
  412. package/src/types/index.ts +2 -0
  413. package/src/types/signer.ts +29 -0
  414. package/tsconfig.json +13 -0
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.acceptTransaction = void 0;
4
+ const specs_1 = require("@ledgerhq/coin-framework/bot/specs");
5
+ const formatCurrencyUnit_1 = require("@ledgerhq/coin-framework/lib/currencies/formatCurrencyUnit");
6
+ exports.acceptTransaction = (0, specs_1.deviceActionFlow)({
7
+ steps: [
8
+ {
9
+ title: "Sign",
10
+ button: specs_1.SpeculosButton.RIGHT,
11
+ },
12
+ {
13
+ title: "Type",
14
+ button: specs_1.SpeculosButton.RIGHT,
15
+ expectedValue: () => "Payment",
16
+ },
17
+ {
18
+ title: "Sender",
19
+ button: specs_1.SpeculosButton.RIGHT,
20
+ expectedValue: ({ account }) => account.freshAddress,
21
+ },
22
+ {
23
+ title: "Receiver",
24
+ button: specs_1.SpeculosButton.RIGHT,
25
+ expectedValue: ({ transaction }) => transaction.recipient,
26
+ },
27
+ {
28
+ title: "Amount",
29
+ button: specs_1.SpeculosButton.RIGHT,
30
+ expectedValue: ({ transaction, account }) => `MINA ${(0, formatCurrencyUnit_1.formatCurrencyUnit)(account.currency.units[0], transaction.amount, {
31
+ dynamicSignificantDigits: 11,
32
+ staticSignificantDigits: 11,
33
+ })}`,
34
+ },
35
+ {
36
+ title: "Fee",
37
+ button: specs_1.SpeculosButton.RIGHT,
38
+ expectedValue: ({ transaction, account }) => `MINA ${(0, formatCurrencyUnit_1.formatCurrencyUnit)(account.currency.units[0], transaction.fees.fee, {
39
+ dynamicSignificantDigits: 11,
40
+ staticSignificantDigits: 11,
41
+ })}`,
42
+ },
43
+ {
44
+ title: "Total",
45
+ button: specs_1.SpeculosButton.RIGHT,
46
+ expectedValue: ({ transaction, account }) => `MINA ${(0, formatCurrencyUnit_1.formatCurrencyUnit)(account.currency.units[0], transaction.fees.fee.plus(transaction.amount), {
47
+ dynamicSignificantDigits: 11,
48
+ staticSignificantDigits: 11,
49
+ })}`,
50
+ },
51
+ {
52
+ title: "Memo",
53
+ button: specs_1.SpeculosButton.RIGHT,
54
+ expectedValue: ({ transaction }) => transaction.memo ?? "",
55
+ },
56
+ {
57
+ title: "Nonce",
58
+ button: specs_1.SpeculosButton.RIGHT,
59
+ expectedValue: ({ transaction }) => transaction.nonce.toString(),
60
+ },
61
+ {
62
+ title: "Approve",
63
+ button: specs_1.SpeculosButton.BOTH,
64
+ },
65
+ ],
66
+ });
67
+ //# sourceMappingURL=bot-deviceActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-deviceActions.js","sourceRoot":"","sources":["../../src/test/bot-deviceActions.ts"],"names":[],"mappings":";;;AAEA,8DAAsF;AACtF,mGAAgG;AAEnF,QAAA,iBAAiB,GAAkD,IAAA,wBAAgB,EAAC;IAC/F,KAAK,EAAE;QACL;YACE,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,sBAAc,CAAC,KAAK;SAC7B;QACD;YACE,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,sBAAc,CAAC,KAAK;YAC5B,aAAa,EAAE,GAAG,EAAE,CAAC,SAAS;SAC/B;QACD;YACE,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,sBAAc,CAAC,KAAK;YAC5B,aAAa,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY;SACrD;QACD;YACE,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,sBAAc,CAAC,KAAK;YAC5B,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS;SAC1D;QACD;YACE,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,sBAAc,CAAC,KAAK;YAC5B,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAC1C,QAAQ,IAAA,uCAAkB,EAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE;gBACxE,wBAAwB,EAAE,EAAE;gBAC5B,uBAAuB,EAAE,EAAE;aAC5B,CAAC,EAAE;SACP;QACD;YACE,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,sBAAc,CAAC,KAAK;YAC5B,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAC1C,QAAQ,IAAA,uCAAkB,EAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC1E,wBAAwB,EAAE,EAAE;gBAC5B,uBAAuB,EAAE,EAAE;aAC5B,CAAC,EAAE;SACP;QACD;YACE,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,sBAAc,CAAC,KAAK;YAC5B,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAC1C,QAAQ,IAAA,uCAAkB,EACxB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EACzB,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC7C;gBACE,wBAAwB,EAAE,EAAE;gBAC5B,uBAAuB,EAAE,EAAE;aAC5B,CACF,EAAE;SACN;QACD;YACE,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,sBAAc,CAAC,KAAK;YAC5B,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE;SAC3D;QACD;YACE,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,sBAAc,CAAC,KAAK;YAC5B,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE;SACjE;QACD;YACE,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,sBAAc,CAAC,IAAI;SAC5B;KACF;CACF,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Transaction } from "../types/common";
2
+ import type { AppSpec } from "@ledgerhq/coin-framework/bot/types";
3
+ declare const _default: {
4
+ minaSpecs: AppSpec<Transaction>;
5
+ };
6
+ export default _default;
7
+ //# sourceMappingURL=bot-specs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-specs.d.ts","sourceRoot":"","sources":["../../src/test/bot-specs.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAiB,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAElE,OAAO,KAAK,EAAE,OAAO,EAAwB,MAAM,oCAAoC,CAAC;;;;AAwHxF,wBAEE"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const invariant_1 = __importDefault(require("invariant"));
7
+ const devices_1 = require("@ledgerhq/devices");
8
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
+ const expect_1 = __importDefault(require("expect"));
10
+ const specs_1 = require("@ledgerhq/coin-framework/bot/specs");
11
+ const bot_deviceActions_1 = require("./bot-deviceActions");
12
+ const index_1 = require("@ledgerhq/cryptoassets/index");
13
+ const testUtils_1 = require("./testUtils");
14
+ const maxAccount = 6;
15
+ // 0.1 MINA
16
+ const MIN_SAFE = new bignumber_js_1.default(1 * 10 ** 8);
17
+ const minaSpecs = {
18
+ name: "Mina",
19
+ currency: (0, index_1.getCryptoCurrencyById)("mina"),
20
+ appQuery: {
21
+ model: devices_1.DeviceModelId.nanoS,
22
+ appName: "Mina",
23
+ },
24
+ genericDeviceAction: bot_deviceActions_1.acceptTransaction,
25
+ testTimeout: 15 * 60 * 1000,
26
+ minViableAmount: MIN_SAFE,
27
+ transactionCheck: ({ maxSpendable }) => {
28
+ (0, invariant_1.default)(maxSpendable.gt(MIN_SAFE), "balance is too low");
29
+ },
30
+ mutations: [
31
+ {
32
+ name: "Send ~50% to another account",
33
+ maxRun: 1,
34
+ testDestination: specs_1.genericTestDestination,
35
+ feature: "send",
36
+ transaction: ({ account, siblings, bridge, maxSpendable }) => {
37
+ (0, invariant_1.default)(maxSpendable.gt(MIN_SAFE), "balance is too low");
38
+ const sibling = (0, specs_1.pickSiblings)(siblings, maxAccount);
39
+ const recipient = sibling.freshAddress;
40
+ const amount = maxSpendable.div(2).integerValue();
41
+ const transaction = bridge.createTransaction(account);
42
+ const updates = [
43
+ {
44
+ recipient,
45
+ },
46
+ { amount },
47
+ ];
48
+ if (Math.random() < 0.5) {
49
+ updates.push({
50
+ memo: (0, testUtils_1.getRandomTransferID)(),
51
+ });
52
+ }
53
+ return {
54
+ transaction,
55
+ updates,
56
+ };
57
+ },
58
+ test: ({ accountBeforeTransaction, operation, account, transaction, }) => {
59
+ (0, specs_1.botTest)("account spendable balance decreased with operation", () => (0, expect_1.default)(account.spendableBalance).toEqual(accountBeforeTransaction.spendableBalance
60
+ .minus(operation.value)
61
+ .minus(operation.extra.accountCreationFee)));
62
+ if (transaction.memo) {
63
+ (0, specs_1.botTest)("operation memo", () => (0, expect_1.default)(operation.extra).toMatchObject({
64
+ memo: transaction.memo,
65
+ }));
66
+ }
67
+ },
68
+ },
69
+ {
70
+ name: "Transfer Max",
71
+ feature: "sendMax",
72
+ maxRun: 1,
73
+ transaction: ({ account, siblings, bridge }) => {
74
+ const updates = [
75
+ {
76
+ recipient: (0, specs_1.pickSiblings)(siblings, maxAccount).freshAddress,
77
+ },
78
+ {
79
+ useAllAmount: true,
80
+ },
81
+ ];
82
+ if (Math.random() < 0.5) {
83
+ updates.push({
84
+ memo: (0, testUtils_1.getRandomTransferID)(),
85
+ });
86
+ }
87
+ return {
88
+ transaction: bridge.createTransaction(account),
89
+ updates,
90
+ };
91
+ },
92
+ testDestination: specs_1.genericTestDestination,
93
+ test: ({ account, transaction, operation }) => {
94
+ (0, specs_1.botTest)("account spendable balance is zero", () => (0, expect_1.default)(account.spendableBalance.toString()).toBe("0"));
95
+ if (transaction.memo) {
96
+ (0, specs_1.botTest)("operation memo", () => (0, expect_1.default)(operation.extra).toMatchObject({
97
+ memo: transaction.memo,
98
+ }));
99
+ }
100
+ },
101
+ },
102
+ ],
103
+ };
104
+ exports.default = {
105
+ minaSpecs,
106
+ };
107
+ //# sourceMappingURL=bot-specs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-specs.js","sourceRoot":"","sources":["../../src/test/bot-specs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { DatasetTest } from "@ledgerhq/types-live";
2
+ import type { Transaction } from "../types/common";
3
+ export declare const dataset: DatasetTest<Transaction>;
4
+ //# sourceMappingURL=bridgeDatasetTest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridgeDatasetTest.d.ts","sourceRoot":"","sources":["../../src/test/bridgeDatasetTest.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAsKnD,eAAO,MAAM,OAAO,EAAE,WAAW,CAAC,WAAW,CAK5C,CAAC"}
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dataset = void 0;
4
+ const bignumber_js_1 = require("bignumber.js");
5
+ const errors_1 = require("@ledgerhq/errors");
6
+ const transaction_1 = require("../bridge/transaction");
7
+ const errors_2 = require("../bridge/errors");
8
+ const ACCOUNT_ADDRESS = "B62qjWLs1W3J2fFGixeX49w1o7VvSGuMBNotnFhzs3PZ7PbtdFbhdeD";
9
+ const ACCOUNT_ADDRESS_1 = "B62qkWcHhoisWDCR7v3gvWzX6wXEVuGYLHXq3mSym4GEzfYXmSDv314";
10
+ const mina = {
11
+ FIXME_ignoreAccountFields: ["blockHash"],
12
+ scanAccounts: [
13
+ {
14
+ name: "mina seed 1",
15
+ apdus: `
16
+ => e00201000400000000
17
+ <= 423632716a574c733157334a3266464769786558343977316f3756765347754d424e6f746e46687a7333505a3750627464466268646544009000
18
+ => e00201000400000001
19
+ <= 423632716e4438387474693632364d694d6e7568504d624c69504c766664644657486a47667377795646754c5845614b644b366f344263009000
20
+ => e00201000400000002
21
+ <= 423632716a7048577878544457506e474372714b546b56414b596f4e5250374c6e454b356564766d717151394658736e61313166674741009000
22
+ `,
23
+ },
24
+ ],
25
+ accounts: [
26
+ {
27
+ // Skipping due to rewards being auto-compounded, no operation as evidence
28
+ FIXME_tests: ["balance is sum of ops"],
29
+ raw: {
30
+ id: `js:2:mina:${ACCOUNT_ADDRESS}:`,
31
+ seedIdentifier: `${ACCOUNT_ADDRESS}`,
32
+ name: "MINA 1",
33
+ derivationMode: "minabip44",
34
+ index: 0,
35
+ freshAddress: `${ACCOUNT_ADDRESS}`,
36
+ freshAddressPath: "44'/12586'/0'/0'/0'",
37
+ blockHeight: 0,
38
+ operations: [],
39
+ pendingOperations: [],
40
+ currencyId: "mina",
41
+ lastSyncDate: "",
42
+ balance: "1000000",
43
+ },
44
+ transactions: [
45
+ {
46
+ name: "not a valid address",
47
+ transaction: (0, transaction_1.fromTransactionRaw)({
48
+ family: "mina",
49
+ recipient: "novalidaddress",
50
+ fees: {
51
+ fee: new bignumber_js_1.BigNumber(0).toString(),
52
+ accountCreationFee: new bignumber_js_1.BigNumber(0).toString(),
53
+ },
54
+ amount: "1000",
55
+ memo: undefined,
56
+ nonce: 0,
57
+ }),
58
+ expectedStatus: {
59
+ errors: {
60
+ recipient: new errors_1.InvalidAddress(),
61
+ },
62
+ warnings: {},
63
+ },
64
+ },
65
+ {
66
+ name: "not enough balance",
67
+ transaction: (0, transaction_1.fromTransactionRaw)({
68
+ family: "mina",
69
+ recipient: ACCOUNT_ADDRESS_1,
70
+ fees: {
71
+ fee: new bignumber_js_1.BigNumber(0).toString(),
72
+ accountCreationFee: new bignumber_js_1.BigNumber(0).toString(),
73
+ },
74
+ amount: (300 * 1e9).toString(),
75
+ memo: undefined,
76
+ nonce: 0,
77
+ }),
78
+ expectedStatus: {
79
+ errors: {
80
+ amount: new errors_1.NotEnoughBalance(),
81
+ },
82
+ warnings: {},
83
+ },
84
+ },
85
+ {
86
+ name: "invalid Memo",
87
+ transaction: (0, transaction_1.fromTransactionRaw)({
88
+ family: "mina",
89
+ recipient: ACCOUNT_ADDRESS_1,
90
+ fees: {
91
+ fee: new bignumber_js_1.BigNumber(0).toString(),
92
+ accountCreationFee: new bignumber_js_1.BigNumber(0).toString(),
93
+ },
94
+ amount: "1000",
95
+ memo: "string greated than 32 chars is invalid",
96
+ nonce: 0,
97
+ }),
98
+ expectedStatus: {
99
+ errors: {
100
+ transaction: new errors_2.InvalidMemoMina(),
101
+ },
102
+ warnings: {},
103
+ },
104
+ },
105
+ {
106
+ name: "amount Required",
107
+ transaction: (0, transaction_1.fromTransactionRaw)({
108
+ family: "mina",
109
+ recipient: ACCOUNT_ADDRESS_1,
110
+ memo: undefined,
111
+ amount: "0",
112
+ fees: {
113
+ fee: new bignumber_js_1.BigNumber(0).toString(),
114
+ accountCreationFee: new bignumber_js_1.BigNumber(0).toString(),
115
+ },
116
+ nonce: 0,
117
+ }),
118
+ expectedStatus: {
119
+ errors: {
120
+ amount: new errors_1.AmountRequired(),
121
+ },
122
+ warnings: {},
123
+ },
124
+ },
125
+ {
126
+ name: "recipient same as source",
127
+ transaction: (0, transaction_1.fromTransactionRaw)({
128
+ family: "mina",
129
+ recipient: ACCOUNT_ADDRESS,
130
+ amount: "10",
131
+ fees: {
132
+ fee: new bignumber_js_1.BigNumber(0).toString(),
133
+ accountCreationFee: new bignumber_js_1.BigNumber(0).toString(),
134
+ },
135
+ memo: undefined,
136
+ nonce: 0,
137
+ }),
138
+ expectedStatus: {
139
+ errors: {
140
+ recipient: new errors_1.InvalidAddressBecauseDestinationIsAlsoSource(),
141
+ },
142
+ warnings: {},
143
+ },
144
+ },
145
+ {
146
+ name: "new account and sufficient amount",
147
+ transaction: (0, transaction_1.fromTransactionRaw)({
148
+ family: "mina",
149
+ recipient: ACCOUNT_ADDRESS_1,
150
+ amount: "1000",
151
+ fees: {
152
+ fee: new bignumber_js_1.BigNumber(0).toString(),
153
+ accountCreationFee: new bignumber_js_1.BigNumber(0).toString(),
154
+ },
155
+ memo: undefined,
156
+ nonce: 0,
157
+ }),
158
+ expectedStatus: {
159
+ amount: new bignumber_js_1.BigNumber("1000"),
160
+ errors: {},
161
+ warnings: {},
162
+ },
163
+ },
164
+ ],
165
+ },
166
+ ],
167
+ };
168
+ exports.dataset = {
169
+ implementations: ["js"],
170
+ currencies: {
171
+ mina,
172
+ },
173
+ };
174
+ //# sourceMappingURL=bridgeDatasetTest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridgeDatasetTest.js","sourceRoot":"","sources":["../../src/test/bridgeDatasetTest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import { Account } from "@ledgerhq/types-live";
2
+ import { AccountShapeInfo } from "@ledgerhq/coin-framework/bridge/jsHelpers";
3
+ import BigNumber from "bignumber.js";
4
+ import { RosettaBlockInfoResponse, RosettaTransaction } from "../api/rosetta/types";
5
+ import { MinaUnsignedTransaction } from "@ledgerhq/coin-mina/types";
6
+ import { DeviceId } from "@ledgerhq/types-live";
7
+ import { SignerContext } from "@ledgerhq/coin-framework/signer";
8
+ import { MinaSigner } from "@ledgerhq/coin-mina/types";
9
+ import { Transaction } from "../types";
10
+ export declare const mockAccountData: {
11
+ blockHeight: number;
12
+ balance: BigNumber;
13
+ spendableBalance: BigNumber;
14
+ };
15
+ export declare const mockBlockInfo: RosettaBlockInfoResponse;
16
+ /**
17
+ * Creates a mock Rosetta transaction for testing
18
+ */
19
+ export declare const createMockTxn: (options: {
20
+ type: string;
21
+ senderAddress: string;
22
+ receiverAddress: string;
23
+ status: "Success" | "Failed";
24
+ amount?: string;
25
+ fee?: string;
26
+ memo?: string;
27
+ }) => RosettaTransaction;
28
+ /**
29
+ * Creates a mock account info object for testing
30
+ */
31
+ export declare const createMockAccountInfo: () => AccountShapeInfo<Account>;
32
+ /**
33
+ * Creates a mock Mina account for testing
34
+ */
35
+ export declare const createMockAccount: (overrides?: Partial<Account>) => Account;
36
+ /**
37
+ * Creates a mock Mina transaction for testing
38
+ */
39
+ export declare const createMockTransaction: (overrides?: Partial<Transaction>) => Transaction;
40
+ /**
41
+ * Creates a mock unsigned transaction for testing
42
+ */
43
+ export declare const createMockUnsignedTransaction: (account?: Partial<Account>, transaction?: Partial<Transaction>) => MinaUnsignedTransaction;
44
+ /**
45
+ * Creates a mock device ID for testing
46
+ */
47
+ export declare const mockDeviceId: DeviceId;
48
+ /**
49
+ * Creates a mock signer context for testing
50
+ */
51
+ export declare const createMockSignerContext: (signatureResponse?: {
52
+ returnCode: string;
53
+ signature: string;
54
+ }) => SignerContext<MinaSigner>;
55
+ //# sourceMappingURL=fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/test/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAE7E,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAEpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,eAAO,MAAM,eAAe;;;;CAI3B,CAAC;AAGF,eAAO,MAAM,aAAa,EAAE,wBAM3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,YAAa;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,SAAS,GAAG,QAAQ,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,KAAG,kBAwDH,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,QAAO,iBAAiB,OAAO,CAkC/D,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB,eAAgB,QAAQ,OAAO,CAAC,KAAG,OA4B/D,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,qBAAqB,eAAgB,QAAQ,WAAW,CAAC,KAAG,WAWvE,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,6BAA6B,aAC/B,QAAQ,OAAO,CAAC,gBACZ,QAAQ,WAAW,CAAC,KAChC,uBAUD,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,QAA2B,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,uBAAuB,uBACf;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,KAI3D,cAAc,UAAU,CAOvB,CAAC"}
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createMockSignerContext = exports.mockDeviceId = exports.createMockUnsignedTransaction = exports.createMockTransaction = exports.createMockAccount = exports.createMockAccountInfo = exports.createMockTxn = exports.mockBlockInfo = exports.mockAccountData = void 0;
7
+ const currencies_1 = require("@ledgerhq/cryptoassets/lib/currencies");
8
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
+ // Mock account data
10
+ exports.mockAccountData = {
11
+ blockHeight: 123,
12
+ balance: new bignumber_js_1.default(1000),
13
+ spendableBalance: new bignumber_js_1.default(900),
14
+ };
15
+ // Mock block info
16
+ exports.mockBlockInfo = {
17
+ block: {
18
+ block_identifier: { index: 123, hash: "block_hash" },
19
+ parent_block_identifier: { index: 122, hash: "parent_block_hash" },
20
+ timestamp: 1672531200000,
21
+ },
22
+ };
23
+ /**
24
+ * Creates a mock Rosetta transaction for testing
25
+ */
26
+ const createMockTxn = (options) => {
27
+ const { type, senderAddress, receiverAddress, amount = "1000", fee = "100", memo = "test memo", status, } = options;
28
+ const operations = [];
29
+ if (type !== "REDELEGATE") {
30
+ // Add fee operation for payment transactions
31
+ operations.push({
32
+ type: "fee_payment",
33
+ amount: { value: fee, currency: { symbol: "MINA", decimals: 9 } },
34
+ status,
35
+ account: { address: senderAddress, metadata: { token_id: "MINA" } },
36
+ operation_identifier: { index: 0 },
37
+ });
38
+ operations.push({
39
+ type: "payment_source_dec",
40
+ status,
41
+ account: { address: senderAddress, metadata: { token_id: "MINA" } },
42
+ operation_identifier: { index: 1 },
43
+ });
44
+ operations.push({
45
+ type: "payment_receiver_inc",
46
+ amount: { value: amount, currency: { symbol: "MINA", decimals: 9 } },
47
+ status,
48
+ account: { address: receiverAddress, metadata: { token_id: "MINA" } },
49
+ operation_identifier: { index: 2 },
50
+ });
51
+ }
52
+ else {
53
+ // Delegate change operation
54
+ operations.push({
55
+ type: "delegate_change",
56
+ status,
57
+ account: { address: senderAddress, metadata: { token_id: "MINA" } },
58
+ operation_identifier: { index: 0 },
59
+ });
60
+ }
61
+ return {
62
+ transaction: {
63
+ transaction_identifier: { hash: "tx_hash" },
64
+ operations,
65
+ metadata: { memo },
66
+ },
67
+ block_identifier: { index: 123, hash: "block_hash" },
68
+ timestamp: 1672531200000,
69
+ };
70
+ };
71
+ exports.createMockTxn = createMockTxn;
72
+ /**
73
+ * Creates a mock account info object for testing
74
+ */
75
+ const createMockAccountInfo = () => ({
76
+ address: "test_address",
77
+ index: 0,
78
+ derivationPath: "m/44'/12586'/0'/0/0",
79
+ initialAccount: {
80
+ operations: [],
81
+ type: "Account",
82
+ id: "account_id",
83
+ seedIdentifier: "seed_identifier",
84
+ derivationMode: "minabip44",
85
+ index: 0,
86
+ freshAddress: "fresh_address",
87
+ freshAddressPath: "fresh_address_path",
88
+ used: true,
89
+ balance: new bignumber_js_1.default(1000),
90
+ spendableBalance: new bignumber_js_1.default(900),
91
+ creationDate: new Date(),
92
+ blockHeight: 123,
93
+ currency: (0, currencies_1.getCryptoCurrencyById)("mina"),
94
+ operationsCount: 0,
95
+ pendingOperations: [],
96
+ lastSyncDate: new Date(),
97
+ subAccounts: [],
98
+ balanceHistoryCache: {
99
+ HOUR: { latestDate: null, balances: [] },
100
+ DAY: { latestDate: null, balances: [] },
101
+ WEEK: { latestDate: null, balances: [] },
102
+ },
103
+ swapHistory: [],
104
+ syncHash: undefined,
105
+ nfts: [],
106
+ },
107
+ currency: (0, currencies_1.getCryptoCurrencyById)("mina"),
108
+ derivationMode: "minabip44",
109
+ });
110
+ exports.createMockAccountInfo = createMockAccountInfo;
111
+ /**
112
+ * Creates a mock Mina account for testing
113
+ */
114
+ const createMockAccount = (overrides) => ({
115
+ id: "mock_account_id",
116
+ freshAddress: "B62qiVhtBtqakq8sNTHdCTXn6tETSK6gtsmNHRn1WdLqjGLpsHbw1xc",
117
+ freshAddressPath: "44'/12586'/0'/0/0",
118
+ type: "Account",
119
+ seedIdentifier: "seed_identifier",
120
+ derivationMode: "minabip44",
121
+ index: 0,
122
+ used: true,
123
+ balance: new bignumber_js_1.default(1000),
124
+ spendableBalance: new bignumber_js_1.default(900),
125
+ creationDate: new Date(),
126
+ blockHeight: 123,
127
+ currency: (0, currencies_1.getCryptoCurrencyById)("mina"),
128
+ operationsCount: 0,
129
+ pendingOperations: [],
130
+ lastSyncDate: new Date(),
131
+ subAccounts: [],
132
+ balanceHistoryCache: {
133
+ HOUR: { latestDate: null, balances: [] },
134
+ DAY: { latestDate: null, balances: [] },
135
+ WEEK: { latestDate: null, balances: [] },
136
+ },
137
+ swapHistory: [],
138
+ syncHash: undefined,
139
+ nfts: [],
140
+ operations: [],
141
+ ...overrides,
142
+ });
143
+ exports.createMockAccount = createMockAccount;
144
+ /**
145
+ * Creates a mock Mina transaction for testing
146
+ */
147
+ const createMockTransaction = (overrides) => ({
148
+ family: "mina",
149
+ amount: new bignumber_js_1.default(1000),
150
+ recipient: "B62qr5cXFjdnZXYxP5dEwRY7wENxcod4Q2oLxUDiq1QrBXZZyxMH8q4",
151
+ fees: {
152
+ fee: new bignumber_js_1.default(10),
153
+ accountCreationFee: new bignumber_js_1.default(0),
154
+ },
155
+ memo: "test memo",
156
+ nonce: 1,
157
+ ...overrides,
158
+ });
159
+ exports.createMockTransaction = createMockTransaction;
160
+ /**
161
+ * Creates a mock unsigned transaction for testing
162
+ */
163
+ const createMockUnsignedTransaction = (account = (0, exports.createMockAccount)(), transaction = (0, exports.createMockTransaction)()) => ({
164
+ txType: 0,
165
+ senderAccount: 0,
166
+ senderAddress: account.freshAddress,
167
+ receiverAddress: transaction.recipient,
168
+ amount: transaction.amount.toNumber(),
169
+ fee: transaction.fees.fee.toNumber(),
170
+ nonce: transaction.nonce,
171
+ memo: transaction.memo,
172
+ networkId: 1,
173
+ });
174
+ exports.createMockUnsignedTransaction = createMockUnsignedTransaction;
175
+ /**
176
+ * Creates a mock device ID for testing
177
+ */
178
+ exports.mockDeviceId = "mock_device_id";
179
+ /**
180
+ * Creates a mock signer context for testing
181
+ */
182
+ const createMockSignerContext = (signatureResponse = {
183
+ returnCode: "0x9000",
184
+ signature: "mock_raw_signature",
185
+ }) => jest.fn().mockImplementation((deviceId, cb) => {
186
+ const mockSigner = {
187
+ getAddress: jest.fn(),
188
+ signTransaction: jest.fn().mockResolvedValue(signatureResponse),
189
+ };
190
+ return cb(mockSigner);
191
+ });
192
+ exports.createMockSignerContext = createMockSignerContext;
193
+ // ... existing code ...
194
+ //# sourceMappingURL=fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../src/test/fixtures.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from "./bridgeDatasetTest";
2
+ export * from "./bot-specs";
3
+ export * from "./bot-deviceActions";
4
+ //# sourceMappingURL=index.d.ts.map