@ledgerhq/coin-framework 0.0.2

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 (471) hide show
  1. package/lib/account/accountId.d.ts +16 -0
  2. package/lib/account/accountId.d.ts.map +1 -0
  3. package/lib/account/accountId.js +85 -0
  4. package/lib/account/accountId.js.map +1 -0
  5. package/lib/account/accountName.d.ts +14 -0
  6. package/lib/account/accountName.d.ts.map +1 -0
  7. package/lib/account/accountName.js +17 -0
  8. package/lib/account/accountName.js.map +1 -0
  9. package/lib/account/addAccounts.d.ts +35 -0
  10. package/lib/account/addAccounts.d.ts.map +1 -0
  11. package/lib/account/addAccounts.js +209 -0
  12. package/lib/account/addAccounts.js.map +1 -0
  13. package/lib/account/balanceHistoryCache.d.ts +25 -0
  14. package/lib/account/balanceHistoryCache.d.ts.map +1 -0
  15. package/lib/account/balanceHistoryCache.js +115 -0
  16. package/lib/account/balanceHistoryCache.js.map +1 -0
  17. package/lib/account/groupOperations.d.ts +17 -0
  18. package/lib/account/groupOperations.d.ts.map +1 -0
  19. package/lib/account/groupOperations.js +127 -0
  20. package/lib/account/groupOperations.js.map +1 -0
  21. package/lib/account/helpers.d.ts +44 -0
  22. package/lib/account/helpers.d.ts.map +1 -0
  23. package/lib/account/helpers.js +333 -0
  24. package/lib/account/helpers.js.map +1 -0
  25. package/lib/account/helpers.test.d.ts +2 -0
  26. package/lib/account/helpers.test.d.ts.map +1 -0
  27. package/lib/account/helpers.test.js +366 -0
  28. package/lib/account/helpers.test.js.map +1 -0
  29. package/lib/account/index.d.ts +11 -0
  30. package/lib/account/index.d.ts.map +1 -0
  31. package/lib/account/index.js +27 -0
  32. package/lib/account/index.js.map +1 -0
  33. package/lib/account/ordering.d.ts +10 -0
  34. package/lib/account/ordering.d.ts.map +1 -0
  35. package/lib/account/ordering.js +110 -0
  36. package/lib/account/ordering.js.map +1 -0
  37. package/lib/account/pending.d.ts +33 -0
  38. package/lib/account/pending.d.ts.map +1 -0
  39. package/lib/account/pending.js +64 -0
  40. package/lib/account/pending.js.map +1 -0
  41. package/lib/account/serialization.d.ts +6 -0
  42. package/lib/account/serialization.d.ts.map +1 -0
  43. package/lib/account/serialization.js +118 -0
  44. package/lib/account/serialization.js.map +1 -0
  45. package/lib/account/support.d.ts +9 -0
  46. package/lib/account/support.d.ts.map +1 -0
  47. package/lib/account/support.js +72 -0
  48. package/lib/account/support.js.map +1 -0
  49. package/lib/account.test.d.ts +2 -0
  50. package/lib/account.test.d.ts.map +1 -0
  51. package/lib/account.test.js +257 -0
  52. package/lib/account.test.js.map +1 -0
  53. package/lib/bot/bot-test-context.d.ts +3 -0
  54. package/lib/bot/bot-test-context.d.ts.map +1 -0
  55. package/lib/bot/bot-test-context.js +26 -0
  56. package/lib/bot/bot-test-context.js.map +1 -0
  57. package/lib/bot/bot-test-context.test.d.ts +2 -0
  58. package/lib/bot/bot-test-context.test.d.ts.map +1 -0
  59. package/lib/bot/bot-test-context.test.js +41 -0
  60. package/lib/bot/bot-test-context.test.js.map +1 -0
  61. package/lib/bot/formatters.d.ts +2 -0
  62. package/lib/bot/formatters.d.ts.map +1 -0
  63. package/lib/bot/formatters.js +31 -0
  64. package/lib/bot/formatters.js.map +1 -0
  65. package/lib/bot/specs.d.ts +50 -0
  66. package/lib/bot/specs.d.ts.map +1 -0
  67. package/lib/bot/specs.js +204 -0
  68. package/lib/bot/specs.js.map +1 -0
  69. package/lib/bot/types.d.ts +178 -0
  70. package/lib/bot/types.d.ts.map +1 -0
  71. package/lib/bot/types.js +3 -0
  72. package/lib/bot/types.js.map +1 -0
  73. package/lib/bridge/getAddressWrapper.d.ts +6 -0
  74. package/lib/bridge/getAddressWrapper.d.ts.map +1 -0
  75. package/lib/bridge/getAddressWrapper.js +27 -0
  76. package/lib/bridge/getAddressWrapper.js.map +1 -0
  77. package/lib/bridge/jsHelpers.d.ts +63 -0
  78. package/lib/bridge/jsHelpers.d.ts.map +1 -0
  79. package/lib/bridge/jsHelpers.js +574 -0
  80. package/lib/bridge/jsHelpers.js.map +1 -0
  81. package/lib/cache.d.ts +10 -0
  82. package/lib/cache.d.ts.map +1 -0
  83. package/lib/cache.js +100 -0
  84. package/lib/cache.js.map +1 -0
  85. package/lib/cross.d.ts +42 -0
  86. package/lib/cross.d.ts.map +1 -0
  87. package/lib/cross.js +254 -0
  88. package/lib/cross.js.map +1 -0
  89. package/lib/cross.test.d.ts +2 -0
  90. package/lib/cross.test.d.ts.map +1 -0
  91. package/lib/cross.test.js +99 -0
  92. package/lib/cross.test.js.map +1 -0
  93. package/lib/currencies/BigNumberToLocaleString.d.ts +8 -0
  94. package/lib/currencies/BigNumberToLocaleString.d.ts.map +1 -0
  95. package/lib/currencies/BigNumberToLocaleString.js +65 -0
  96. package/lib/currencies/BigNumberToLocaleString.js.map +1 -0
  97. package/lib/currencies/BigNumberToLocaleString.test.d.ts +2 -0
  98. package/lib/currencies/BigNumberToLocaleString.test.d.ts.map +1 -0
  99. package/lib/currencies/BigNumberToLocaleString.test.js +108 -0
  100. package/lib/currencies/BigNumberToLocaleString.test.js.map +1 -0
  101. package/lib/currencies/CurrencyURIScheme.d.ts +13 -0
  102. package/lib/currencies/CurrencyURIScheme.d.ts.map +1 -0
  103. package/lib/currencies/CurrencyURIScheme.js +124 -0
  104. package/lib/currencies/CurrencyURIScheme.js.map +1 -0
  105. package/lib/currencies/chopCurrencyUnitDecimals.d.ts +3 -0
  106. package/lib/currencies/chopCurrencyUnitDecimals.d.ts.map +1 -0
  107. package/lib/currencies/chopCurrencyUnitDecimals.js +29 -0
  108. package/lib/currencies/chopCurrencyUnitDecimals.js.map +1 -0
  109. package/lib/currencies/formatCurrencyUnit.d.ts +33 -0
  110. package/lib/currencies/formatCurrencyUnit.d.ts.map +1 -0
  111. package/lib/currencies/formatCurrencyUnit.js +126 -0
  112. package/lib/currencies/formatCurrencyUnit.js.map +1 -0
  113. package/lib/currencies/formatShort.d.ts +8 -0
  114. package/lib/currencies/formatShort.d.ts.map +1 -0
  115. package/lib/currencies/formatShort.js +27 -0
  116. package/lib/currencies/formatShort.js.map +1 -0
  117. package/lib/currencies/index.d.ts +13 -0
  118. package/lib/currencies/index.d.ts.map +1 -0
  119. package/lib/currencies/index.js +65 -0
  120. package/lib/currencies/index.js.map +1 -0
  121. package/lib/currencies/localeUtility.d.ts +8 -0
  122. package/lib/currencies/localeUtility.d.ts.map +1 -0
  123. package/lib/currencies/localeUtility.js +49 -0
  124. package/lib/currencies/localeUtility.js.map +1 -0
  125. package/lib/currencies/parseCurrencyUnit.d.ts +4 -0
  126. package/lib/currencies/parseCurrencyUnit.d.ts.map +1 -0
  127. package/lib/currencies/parseCurrencyUnit.js +18 -0
  128. package/lib/currencies/parseCurrencyUnit.js.map +1 -0
  129. package/lib/currencies/sanitizeValueString.d.ts +6 -0
  130. package/lib/currencies/sanitizeValueString.d.ts.map +1 -0
  131. package/lib/currencies/sanitizeValueString.js +56 -0
  132. package/lib/currencies/sanitizeValueString.js.map +1 -0
  133. package/lib/currencies/support.d.ts +8 -0
  134. package/lib/currencies/support.d.ts.map +1 -0
  135. package/lib/currencies/support.js +101 -0
  136. package/lib/currencies/support.js.map +1 -0
  137. package/lib/currencies/valueFromUnit.d.ts +9 -0
  138. package/lib/currencies/valueFromUnit.d.ts.map +1 -0
  139. package/lib/currencies/valueFromUnit.js +14 -0
  140. package/lib/currencies/valueFromUnit.js.map +1 -0
  141. package/lib/derivation.d.ts +232 -0
  142. package/lib/derivation.d.ts.map +1 -0
  143. package/lib/derivation.js +501 -0
  144. package/lib/derivation.js.map +1 -0
  145. package/lib/env.d.ts +30 -0
  146. package/lib/env.d.ts.map +1 -0
  147. package/lib/env.js +773 -0
  148. package/lib/env.js.map +1 -0
  149. package/lib/errors.d.ts +7 -0
  150. package/lib/errors.d.ts.map +1 -0
  151. package/lib/errors.js +7 -0
  152. package/lib/errors.js.map +1 -0
  153. package/lib/errors.test.d.ts +2 -0
  154. package/lib/errors.test.d.ts.map +1 -0
  155. package/lib/errors.test.js +20 -0
  156. package/lib/errors.test.js.map +1 -0
  157. package/lib/mocks/account.d.ts +25 -0
  158. package/lib/mocks/account.d.ts.map +1 -0
  159. package/lib/mocks/account.js +368 -0
  160. package/lib/mocks/account.js.map +1 -0
  161. package/lib/mocks/fixtures/nfts.d.ts +27 -0
  162. package/lib/mocks/fixtures/nfts.d.ts.map +1 -0
  163. package/lib/mocks/fixtures/nfts.js +398 -0
  164. package/lib/mocks/fixtures/nfts.js.map +1 -0
  165. package/lib/mocks/fixtures/nfts.test.d.ts +2 -0
  166. package/lib/mocks/fixtures/nfts.test.d.ts.map +1 -0
  167. package/lib/mocks/fixtures/nfts.test.js +20 -0
  168. package/lib/mocks/fixtures/nfts.test.js.map +1 -0
  169. package/lib/mocks/helpers.d.ts +15 -0
  170. package/lib/mocks/helpers.d.ts.map +1 -0
  171. package/lib/mocks/helpers.js +32 -0
  172. package/lib/mocks/helpers.js.map +1 -0
  173. package/lib/network.d.ts +5 -0
  174. package/lib/network.d.ts.map +1 -0
  175. package/lib/network.js +125 -0
  176. package/lib/network.js.map +1 -0
  177. package/lib/nft/nftId.d.ts +8 -0
  178. package/lib/nft/nftId.d.ts.map +1 -0
  179. package/lib/nft/nftId.js +34 -0
  180. package/lib/nft/nftId.js.map +1 -0
  181. package/lib/operation.d.ts +24 -0
  182. package/lib/operation.d.ts.map +1 -0
  183. package/lib/operation.js +183 -0
  184. package/lib/operation.js.map +1 -0
  185. package/lib/promise.d.ts +21 -0
  186. package/lib/promise.d.ts.map +1 -0
  187. package/lib/promise.js +187 -0
  188. package/lib/promise.js.map +1 -0
  189. package/lib/promise.test.d.ts +2 -0
  190. package/lib/promise.test.d.ts.map +1 -0
  191. package/lib/promise.test.js +72 -0
  192. package/lib/promise.test.js.map +1 -0
  193. package/lib/rangeDates.d.ts +29 -0
  194. package/lib/rangeDates.d.ts.map +1 -0
  195. package/lib/rangeDates.js +94 -0
  196. package/lib/rangeDates.js.map +1 -0
  197. package/lib/rangeDates.test.d.ts +2 -0
  198. package/lib/rangeDates.test.d.ts.map +1 -0
  199. package/lib/rangeDates.test.js +51 -0
  200. package/lib/rangeDates.test.js.map +1 -0
  201. package/lib/test-helpers/staticTime.d.ts +2 -0
  202. package/lib/test-helpers/staticTime.d.ts.map +1 -0
  203. package/lib/test-helpers/staticTime.js +10 -0
  204. package/lib/test-helpers/staticTime.js.map +1 -0
  205. package/lib/transaction/common.d.ts +26 -0
  206. package/lib/transaction/common.d.ts.map +1 -0
  207. package/lib/transaction/common.js +123 -0
  208. package/lib/transaction/common.js.map +1 -0
  209. package/lib-es/account/accountId.d.ts +16 -0
  210. package/lib-es/account/accountId.d.ts.map +1 -0
  211. package/lib-es/account/accountId.js +74 -0
  212. package/lib-es/account/accountId.js.map +1 -0
  213. package/lib-es/account/accountName.d.ts +14 -0
  214. package/lib-es/account/accountName.d.ts.map +1 -0
  215. package/lib-es/account/accountName.js +12 -0
  216. package/lib-es/account/accountName.js.map +1 -0
  217. package/lib-es/account/addAccounts.d.ts +35 -0
  218. package/lib-es/account/addAccounts.d.ts.map +1 -0
  219. package/lib-es/account/addAccounts.js +200 -0
  220. package/lib-es/account/addAccounts.js.map +1 -0
  221. package/lib-es/account/balanceHistoryCache.d.ts +25 -0
  222. package/lib-es/account/balanceHistoryCache.d.ts.map +1 -0
  223. package/lib-es/account/balanceHistoryCache.js +109 -0
  224. package/lib-es/account/balanceHistoryCache.js.map +1 -0
  225. package/lib-es/account/groupOperations.d.ts +17 -0
  226. package/lib-es/account/groupOperations.d.ts.map +1 -0
  227. package/lib-es/account/groupOperations.js +122 -0
  228. package/lib-es/account/groupOperations.js.map +1 -0
  229. package/lib-es/account/helpers.d.ts +44 -0
  230. package/lib-es/account/helpers.d.ts.map +1 -0
  231. package/lib-es/account/helpers.js +303 -0
  232. package/lib-es/account/helpers.js.map +1 -0
  233. package/lib-es/account/helpers.test.d.ts +2 -0
  234. package/lib-es/account/helpers.test.d.ts.map +1 -0
  235. package/lib-es/account/helpers.test.js +361 -0
  236. package/lib-es/account/helpers.test.js.map +1 -0
  237. package/lib-es/account/index.d.ts +11 -0
  238. package/lib-es/account/index.d.ts.map +1 -0
  239. package/lib-es/account/index.js +11 -0
  240. package/lib-es/account/index.js.map +1 -0
  241. package/lib-es/account/ordering.d.ts +10 -0
  242. package/lib-es/account/ordering.d.ts.map +1 -0
  243. package/lib-es/account/ordering.js +103 -0
  244. package/lib-es/account/ordering.js.map +1 -0
  245. package/lib-es/account/pending.d.ts +33 -0
  246. package/lib-es/account/pending.d.ts.map +1 -0
  247. package/lib-es/account/pending.js +59 -0
  248. package/lib-es/account/pending.js.map +1 -0
  249. package/lib-es/account/serialization.d.ts +6 -0
  250. package/lib-es/account/serialization.d.ts.map +1 -0
  251. package/lib-es/account/serialization.js +112 -0
  252. package/lib-es/account/serialization.js.map +1 -0
  253. package/lib-es/account/support.d.ts +9 -0
  254. package/lib-es/account/support.d.ts.map +1 -0
  255. package/lib-es/account/support.js +64 -0
  256. package/lib-es/account/support.js.map +1 -0
  257. package/lib-es/account.test.d.ts +2 -0
  258. package/lib-es/account.test.d.ts.map +1 -0
  259. package/lib-es/account.test.js +252 -0
  260. package/lib-es/account.test.js.map +1 -0
  261. package/lib-es/bot/bot-test-context.d.ts +3 -0
  262. package/lib-es/bot/bot-test-context.d.ts.map +1 -0
  263. package/lib-es/bot/bot-test-context.js +21 -0
  264. package/lib-es/bot/bot-test-context.js.map +1 -0
  265. package/lib-es/bot/bot-test-context.test.d.ts +2 -0
  266. package/lib-es/bot/bot-test-context.test.d.ts.map +1 -0
  267. package/lib-es/bot/bot-test-context.test.js +39 -0
  268. package/lib-es/bot/bot-test-context.test.js.map +1 -0
  269. package/lib-es/bot/formatters.d.ts +2 -0
  270. package/lib-es/bot/formatters.d.ts.map +1 -0
  271. package/lib-es/bot/formatters.js +27 -0
  272. package/lib-es/bot/formatters.js.map +1 -0
  273. package/lib-es/bot/specs.d.ts +50 -0
  274. package/lib-es/bot/specs.d.ts.map +1 -0
  275. package/lib-es/bot/specs.js +193 -0
  276. package/lib-es/bot/specs.js.map +1 -0
  277. package/lib-es/bot/types.d.ts +178 -0
  278. package/lib-es/bot/types.d.ts.map +1 -0
  279. package/lib-es/bot/types.js +2 -0
  280. package/lib-es/bot/types.js.map +1 -0
  281. package/lib-es/bridge/getAddressWrapper.d.ts +6 -0
  282. package/lib-es/bridge/getAddressWrapper.d.ts.map +1 -0
  283. package/lib-es/bridge/getAddressWrapper.js +25 -0
  284. package/lib-es/bridge/getAddressWrapper.js.map +1 -0
  285. package/lib-es/bridge/jsHelpers.d.ts +63 -0
  286. package/lib-es/bridge/jsHelpers.d.ts.map +1 -0
  287. package/lib-es/bridge/jsHelpers.js +562 -0
  288. package/lib-es/bridge/jsHelpers.js.map +1 -0
  289. package/lib-es/cache.d.ts +10 -0
  290. package/lib-es/cache.d.ts.map +1 -0
  291. package/lib-es/cache.js +93 -0
  292. package/lib-es/cache.js.map +1 -0
  293. package/lib-es/cross.d.ts +42 -0
  294. package/lib-es/cross.d.ts.map +1 -0
  295. package/lib-es/cross.js +244 -0
  296. package/lib-es/cross.js.map +1 -0
  297. package/lib-es/cross.test.d.ts +2 -0
  298. package/lib-es/cross.test.d.ts.map +1 -0
  299. package/lib-es/cross.test.js +97 -0
  300. package/lib-es/cross.test.js.map +1 -0
  301. package/lib-es/currencies/BigNumberToLocaleString.d.ts +8 -0
  302. package/lib-es/currencies/BigNumberToLocaleString.d.ts.map +1 -0
  303. package/lib-es/currencies/BigNumberToLocaleString.js +61 -0
  304. package/lib-es/currencies/BigNumberToLocaleString.js.map +1 -0
  305. package/lib-es/currencies/BigNumberToLocaleString.test.d.ts +2 -0
  306. package/lib-es/currencies/BigNumberToLocaleString.test.d.ts.map +1 -0
  307. package/lib-es/currencies/BigNumberToLocaleString.test.js +106 -0
  308. package/lib-es/currencies/BigNumberToLocaleString.test.js.map +1 -0
  309. package/lib-es/currencies/CurrencyURIScheme.d.ts +13 -0
  310. package/lib-es/currencies/CurrencyURIScheme.d.ts.map +1 -0
  311. package/lib-es/currencies/CurrencyURIScheme.js +116 -0
  312. package/lib-es/currencies/CurrencyURIScheme.js.map +1 -0
  313. package/lib-es/currencies/chopCurrencyUnitDecimals.d.ts +3 -0
  314. package/lib-es/currencies/chopCurrencyUnitDecimals.d.ts.map +1 -0
  315. package/lib-es/currencies/chopCurrencyUnitDecimals.js +25 -0
  316. package/lib-es/currencies/chopCurrencyUnitDecimals.js.map +1 -0
  317. package/lib-es/currencies/formatCurrencyUnit.d.ts +33 -0
  318. package/lib-es/currencies/formatCurrencyUnit.d.ts.map +1 -0
  319. package/lib-es/currencies/formatCurrencyUnit.js +121 -0
  320. package/lib-es/currencies/formatCurrencyUnit.js.map +1 -0
  321. package/lib-es/currencies/formatShort.d.ts +8 -0
  322. package/lib-es/currencies/formatShort.d.ts.map +1 -0
  323. package/lib-es/currencies/formatShort.js +20 -0
  324. package/lib-es/currencies/formatShort.js.map +1 -0
  325. package/lib-es/currencies/index.d.ts +13 -0
  326. package/lib-es/currencies/index.d.ts.map +1 -0
  327. package/lib-es/currencies/index.js +16 -0
  328. package/lib-es/currencies/index.js.map +1 -0
  329. package/lib-es/currencies/localeUtility.d.ts +8 -0
  330. package/lib-es/currencies/localeUtility.d.ts.map +1 -0
  331. package/lib-es/currencies/localeUtility.js +43 -0
  332. package/lib-es/currencies/localeUtility.js.map +1 -0
  333. package/lib-es/currencies/parseCurrencyUnit.d.ts +4 -0
  334. package/lib-es/currencies/parseCurrencyUnit.d.ts.map +1 -0
  335. package/lib-es/currencies/parseCurrencyUnit.js +14 -0
  336. package/lib-es/currencies/parseCurrencyUnit.js.map +1 -0
  337. package/lib-es/currencies/sanitizeValueString.d.ts +6 -0
  338. package/lib-es/currencies/sanitizeValueString.d.ts.map +1 -0
  339. package/lib-es/currencies/sanitizeValueString.js +52 -0
  340. package/lib-es/currencies/sanitizeValueString.js.map +1 -0
  341. package/lib-es/currencies/support.d.ts +8 -0
  342. package/lib-es/currencies/support.d.ts.map +1 -0
  343. package/lib-es/currencies/support.js +92 -0
  344. package/lib-es/currencies/support.js.map +1 -0
  345. package/lib-es/currencies/valueFromUnit.d.ts +9 -0
  346. package/lib-es/currencies/valueFromUnit.d.ts.map +1 -0
  347. package/lib-es/currencies/valueFromUnit.js +10 -0
  348. package/lib-es/currencies/valueFromUnit.js.map +1 -0
  349. package/lib-es/derivation.d.ts +232 -0
  350. package/lib-es/derivation.d.ts.map +1 -0
  351. package/lib-es/derivation.js +473 -0
  352. package/lib-es/derivation.js.map +1 -0
  353. package/lib-es/env.d.ts +30 -0
  354. package/lib-es/env.d.ts.map +1 -0
  355. package/lib-es/env.js +758 -0
  356. package/lib-es/env.js.map +1 -0
  357. package/lib-es/errors.d.ts +7 -0
  358. package/lib-es/errors.d.ts.map +1 -0
  359. package/lib-es/errors.js +4 -0
  360. package/lib-es/errors.js.map +1 -0
  361. package/lib-es/errors.test.d.ts +2 -0
  362. package/lib-es/errors.test.d.ts.map +1 -0
  363. package/lib-es/errors.test.js +18 -0
  364. package/lib-es/errors.test.js.map +1 -0
  365. package/lib-es/mocks/account.d.ts +25 -0
  366. package/lib-es/mocks/account.d.ts.map +1 -0
  367. package/lib-es/mocks/account.js +358 -0
  368. package/lib-es/mocks/account.js.map +1 -0
  369. package/lib-es/mocks/fixtures/nfts.d.ts +27 -0
  370. package/lib-es/mocks/fixtures/nfts.d.ts.map +1 -0
  371. package/lib-es/mocks/fixtures/nfts.js +390 -0
  372. package/lib-es/mocks/fixtures/nfts.js.map +1 -0
  373. package/lib-es/mocks/fixtures/nfts.test.d.ts +2 -0
  374. package/lib-es/mocks/fixtures/nfts.test.d.ts.map +1 -0
  375. package/lib-es/mocks/fixtures/nfts.test.js +18 -0
  376. package/lib-es/mocks/fixtures/nfts.test.js.map +1 -0
  377. package/lib-es/mocks/helpers.d.ts +15 -0
  378. package/lib-es/mocks/helpers.d.ts.map +1 -0
  379. package/lib-es/mocks/helpers.js +26 -0
  380. package/lib-es/mocks/helpers.js.map +1 -0
  381. package/lib-es/network.d.ts +5 -0
  382. package/lib-es/network.d.ts.map +1 -0
  383. package/lib-es/network.js +118 -0
  384. package/lib-es/network.js.map +1 -0
  385. package/lib-es/nft/nftId.d.ts +8 -0
  386. package/lib-es/nft/nftId.d.ts.map +1 -0
  387. package/lib-es/nft/nftId.js +29 -0
  388. package/lib-es/nft/nftId.js.map +1 -0
  389. package/lib-es/operation.d.ts +24 -0
  390. package/lib-es/operation.d.ts.map +1 -0
  391. package/lib-es/operation.js +168 -0
  392. package/lib-es/operation.js.map +1 -0
  393. package/lib-es/promise.d.ts +21 -0
  394. package/lib-es/promise.d.ts.map +1 -0
  395. package/lib-es/promise.js +179 -0
  396. package/lib-es/promise.js.map +1 -0
  397. package/lib-es/promise.test.d.ts +2 -0
  398. package/lib-es/promise.test.d.ts.map +1 -0
  399. package/lib-es/promise.test.js +70 -0
  400. package/lib-es/promise.test.js.map +1 -0
  401. package/lib-es/rangeDates.d.ts +29 -0
  402. package/lib-es/rangeDates.d.ts.map +1 -0
  403. package/lib-es/rangeDates.js +84 -0
  404. package/lib-es/rangeDates.js.map +1 -0
  405. package/lib-es/rangeDates.test.d.ts +2 -0
  406. package/lib-es/rangeDates.test.d.ts.map +1 -0
  407. package/lib-es/rangeDates.test.js +49 -0
  408. package/lib-es/rangeDates.test.js.map +1 -0
  409. package/lib-es/test-helpers/staticTime.d.ts +2 -0
  410. package/lib-es/test-helpers/staticTime.d.ts.map +1 -0
  411. package/lib-es/test-helpers/staticTime.js +5 -0
  412. package/lib-es/test-helpers/staticTime.js.map +1 -0
  413. package/lib-es/transaction/common.d.ts +26 -0
  414. package/lib-es/transaction/common.d.ts.map +1 -0
  415. package/lib-es/transaction/common.js +115 -0
  416. package/lib-es/transaction/common.js.map +1 -0
  417. package/package.json +113 -0
  418. package/src/__snapshots__/account.test.ts.snap +2065 -0
  419. package/src/__snapshots__/cross.test.ts.snap +57 -0
  420. package/src/account/accountId.ts +93 -0
  421. package/src/account/accountName.ts +25 -0
  422. package/src/account/addAccounts.ts +236 -0
  423. package/src/account/balanceHistoryCache.ts +146 -0
  424. package/src/account/groupOperations.ts +164 -0
  425. package/src/account/helpers.test.ts +441 -0
  426. package/src/account/helpers.ts +380 -0
  427. package/src/account/index.ts +10 -0
  428. package/src/account/ordering.ts +109 -0
  429. package/src/account/pending.ts +66 -0
  430. package/src/account/serialization.ts +189 -0
  431. package/src/account/support.ts +96 -0
  432. package/src/account.test.ts +237 -0
  433. package/src/bot/bot-test-context.test.ts +37 -0
  434. package/src/bot/bot-test-context.ts +24 -0
  435. package/src/bot/formatters.ts +22 -0
  436. package/src/bot/specs.ts +275 -0
  437. package/src/bot/types.ts +224 -0
  438. package/src/bridge/getAddressWrapper.ts +40 -0
  439. package/src/bridge/jsHelpers.ts +645 -0
  440. package/src/cache.ts +65 -0
  441. package/src/cross.test.ts +112 -0
  442. package/src/cross.ts +366 -0
  443. package/src/currencies/BigNumberToLocaleString.test.ts +155 -0
  444. package/src/currencies/BigNumberToLocaleString.ts +80 -0
  445. package/src/currencies/CurrencyURIScheme.ts +114 -0
  446. package/src/currencies/chopCurrencyUnitDecimals.ts +34 -0
  447. package/src/currencies/formatCurrencyUnit.ts +167 -0
  448. package/src/currencies/formatShort.ts +24 -0
  449. package/src/currencies/index.ts +78 -0
  450. package/src/currencies/localeUtility.ts +50 -0
  451. package/src/currencies/parseCurrencyUnit.ts +16 -0
  452. package/src/currencies/sanitizeValueString.ts +58 -0
  453. package/src/currencies/support.ts +107 -0
  454. package/src/currencies/valueFromUnit.ts +10 -0
  455. package/src/derivation.ts +595 -0
  456. package/src/env.ts +780 -0
  457. package/src/errors.test.ts +21 -0
  458. package/src/errors.ts +9 -0
  459. package/src/mocks/account.ts +476 -0
  460. package/src/mocks/fixtures/nfts.test.ts +25 -0
  461. package/src/mocks/fixtures/nfts.ts +432 -0
  462. package/src/mocks/helpers.ts +38 -0
  463. package/src/network.ts +135 -0
  464. package/src/nft/nftId.ts +26 -0
  465. package/src/operation.ts +212 -0
  466. package/src/promise.test.ts +20 -0
  467. package/src/promise.ts +101 -0
  468. package/src/rangeDates.test.ts +66 -0
  469. package/src/rangeDates.ts +96 -0
  470. package/src/test-helpers/staticTime.ts +4 -0
  471. package/src/transaction/common.ts +157 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../src/account/serialization.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEhF,MAAM,MAAM,cAAc,GAAG,CAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KACvB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEzB,eAAO,MAAM,cAAc,wPAwBtB,SAAS,yBACW,OAAO,KAC7B,YA+CF,CAAC;AACF,eAAO,MAAM,kBAAkB,WACrB,MAAM,eACD,UAAU,EAAE,KACxB,SAAS,EAwBX,CAAC;AACF,eAAO,MAAM,gBAAgB,6OAuBxB,YAAY,aACJ,MAAM,gBACH,UAAU,EAAE,GAAG,IAAI,GAAG,SAAS,KAC5C,SAqDF,CAAC"}
@@ -0,0 +1,112 @@
1
+ import { BigNumber } from "bignumber.js";
2
+ export var toOperationRaw = function (_a, preserveSubOperation) {
3
+ var date = _a.date, value = _a.value, fee = _a.fee, subOperations = _a.subOperations, internalOperations = _a.internalOperations, nftOperations = _a.nftOperations, extra = _a.extra, id = _a.id, hash = _a.hash, type = _a.type, senders = _a.senders, recipients = _a.recipients, blockHeight = _a.blockHeight, blockHash = _a.blockHash, transactionSequenceNumber = _a.transactionSequenceNumber, accountId = _a.accountId, hasFailed = _a.hasFailed, contract = _a.contract, operator = _a.operator, standard = _a.standard, tokenId = _a.tokenId, transactionRaw = _a.transactionRaw;
4
+ var copy = {
5
+ id: id,
6
+ hash: hash,
7
+ type: type,
8
+ senders: senders,
9
+ recipients: recipients,
10
+ accountId: accountId,
11
+ blockHash: blockHash,
12
+ blockHeight: blockHeight,
13
+ extra: extra,
14
+ date: date.toISOString(),
15
+ value: value.toFixed(),
16
+ fee: fee.toString(),
17
+ contract: contract,
18
+ operator: operator,
19
+ standard: standard,
20
+ tokenId: tokenId
21
+ };
22
+ if (transactionSequenceNumber !== undefined) {
23
+ copy.transactionSequenceNumber = transactionSequenceNumber;
24
+ }
25
+ if (hasFailed !== undefined) {
26
+ copy.hasFailed = hasFailed;
27
+ }
28
+ if (subOperations && preserveSubOperation) {
29
+ copy.subOperations = subOperations.map(function (o) { return toOperationRaw(o); });
30
+ }
31
+ if (internalOperations) {
32
+ copy.internalOperations = internalOperations.map(function (o) {
33
+ return toOperationRaw(o);
34
+ });
35
+ }
36
+ if (nftOperations) {
37
+ copy.nftOperations = nftOperations.map(function (o) { return toOperationRaw(o); });
38
+ }
39
+ if (transactionRaw !== undefined) {
40
+ copy.transactionRaw = transactionRaw;
41
+ }
42
+ return copy;
43
+ };
44
+ export var inferSubOperations = function (txHash, subAccounts) {
45
+ var all = [];
46
+ for (var i = 0; i < subAccounts.length; i++) {
47
+ var ta = subAccounts[i];
48
+ for (var j = 0; j < ta.operations.length; j++) {
49
+ var op = ta.operations[j];
50
+ if (op.hash === txHash) {
51
+ all.push(op);
52
+ }
53
+ }
54
+ for (var j = 0; j < ta.pendingOperations.length; j++) {
55
+ var op = ta.pendingOperations[j];
56
+ if (op.hash === txHash) {
57
+ all.push(op);
58
+ }
59
+ }
60
+ }
61
+ return all;
62
+ };
63
+ export var fromOperationRaw = function (_a, accountId, subAccounts) {
64
+ var date = _a.date, value = _a.value, fee = _a.fee, extra = _a.extra, subOperations = _a.subOperations, internalOperations = _a.internalOperations, nftOperations = _a.nftOperations, id = _a.id, hash = _a.hash, type = _a.type, senders = _a.senders, recipients = _a.recipients, blockHeight = _a.blockHeight, blockHash = _a.blockHash, transactionSequenceNumber = _a.transactionSequenceNumber, hasFailed = _a.hasFailed, contract = _a.contract, operator = _a.operator, standard = _a.standard, tokenId = _a.tokenId, transactionRaw = _a.transactionRaw;
65
+ var res = {
66
+ id: id,
67
+ hash: hash,
68
+ type: type,
69
+ senders: senders,
70
+ recipients: recipients,
71
+ accountId: accountId,
72
+ blockHash: blockHash,
73
+ blockHeight: blockHeight,
74
+ date: new Date(date),
75
+ value: new BigNumber(value),
76
+ fee: new BigNumber(fee),
77
+ extra: extra,
78
+ contract: contract,
79
+ operator: operator,
80
+ standard: standard,
81
+ tokenId: tokenId
82
+ };
83
+ if (transactionSequenceNumber !== undefined) {
84
+ res.transactionSequenceNumber = transactionSequenceNumber;
85
+ }
86
+ if (hasFailed !== undefined) {
87
+ res.hasFailed = hasFailed;
88
+ }
89
+ if (subAccounts) {
90
+ res.subOperations = inferSubOperations(hash, subAccounts);
91
+ }
92
+ else if (subOperations) {
93
+ res.subOperations = subOperations.map(function (o) {
94
+ return fromOperationRaw(o, o.accountId);
95
+ });
96
+ }
97
+ if (internalOperations) {
98
+ res.internalOperations = internalOperations.map(function (o) {
99
+ return fromOperationRaw(o, o.accountId);
100
+ });
101
+ }
102
+ if (nftOperations) {
103
+ res.nftOperations = nftOperations.map(function (o) {
104
+ return fromOperationRaw(o, o.accountId);
105
+ });
106
+ }
107
+ if (transactionRaw !== undefined) {
108
+ res.transactionRaw = transactionRaw;
109
+ }
110
+ return res;
111
+ };
112
+ //# sourceMappingURL=serialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialization.js","sourceRoot":"","sources":["../../src/account/serialization.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
2
+ import type { Account, AccountLike } from "@ledgerhq/types-live";
3
+ import type { DerivationMode } from "../derivation";
4
+ export declare const shouldShowNewAccount: (currency: CryptoCurrency, derivationMode: DerivationMode) => boolean;
5
+ export declare const getReceiveFlowError: (account: AccountLike, parentAccount: Account | null | undefined) => Error | null | undefined;
6
+ export declare function canBeMigrated(account: Account): boolean;
7
+ export declare function findAccountMigration(account: Account, scannedAccounts: Account[]): Account | null | undefined;
8
+ export declare function checkAccountSupported(account: Account): Error | null | undefined;
9
+ //# sourceMappingURL=support.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support.d.ts","sourceRoot":"","sources":["../../src/account/support.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,oBAAoB,aACrB,cAAc,kBACR,cAAc,KAC7B,OAkBF,CAAC;AACF,eAAO,MAAM,mBAAmB,YACrB,WAAW,iBACL,OAAO,GAAG,IAAI,GAAG,SAAS,KACxC,KAAK,GAAG,IAAI,GAAG,SAIjB,CAAC;AACF,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAYvD;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,OAAO,EAAE,GACzB,OAAO,GAAG,IAAI,GAAG,SAAS,CAW5B;AACD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,OAAO,GACf,KAAK,GAAG,IAAI,GAAG,SAAS,CAkB1B"}
@@ -0,0 +1,64 @@
1
+ import { AccountNotSupported, CurrencyNotSupported, UnavailableTezosOriginatedAccountReceive, } from "@ledgerhq/errors";
2
+ import { getEnv } from "../env";
3
+ import { decodeAccountId } from "./accountId";
4
+ import { getAllDerivationModes, getDerivationModesForCurrency, } from "../derivation";
5
+ import { isCurrencySupported } from "../currencies";
6
+ export var shouldShowNewAccount = function (currency, derivationMode) {
7
+ var modes = getDerivationModesForCurrency(currency);
8
+ // last mode is always creatable by convention
9
+ if (modes[modes.length - 1] === derivationMode)
10
+ return true;
11
+ // legacy is only available with flag SHOW_LEGACY_NEW_ACCOUNT
12
+ if (derivationMode === "" &&
13
+ (!!getEnv("SHOW_LEGACY_NEW_ACCOUNT") || currency.family === "bitcoin"))
14
+ return true;
15
+ // native segwit being not yet supported everywhere, segwit is always available for creation
16
+ if (derivationMode === "segwit" ||
17
+ (currency.family === "bitcoin" &&
18
+ (derivationMode === "native_segwit" || derivationMode === "taproot")))
19
+ return true;
20
+ return false;
21
+ };
22
+ export var getReceiveFlowError = function (account, parentAccount) {
23
+ if (parentAccount && parentAccount.currency.id === "tezos") {
24
+ return new UnavailableTezosOriginatedAccountReceive("");
25
+ }
26
+ };
27
+ export function canBeMigrated(account) {
28
+ try {
29
+ var version = decodeAccountId(account.id).version;
30
+ if (getEnv("MOCK")) {
31
+ return version === "0";
32
+ }
33
+ return false;
34
+ }
35
+ catch (e) {
36
+ return false;
37
+ }
38
+ }
39
+ // attempt to find an account in scanned accounts that satisfy a migration
40
+ export function findAccountMigration(account, scannedAccounts) {
41
+ if (!canBeMigrated(account))
42
+ return;
43
+ if (getEnv("MOCK")) {
44
+ return scannedAccounts.find(function (a) {
45
+ return a.id !== account.id && // a migration assume an id changes
46
+ a.currency === account.currency &&
47
+ a.freshAddress === account.freshAddress;
48
+ });
49
+ }
50
+ }
51
+ export function checkAccountSupported(account) {
52
+ if (!getAllDerivationModes().includes(account.derivationMode)) {
53
+ return new AccountNotSupported("derivation not supported " + account.derivationMode, {
54
+ reason: account.derivationMode
55
+ });
56
+ }
57
+ if (!isCurrencySupported(account.currency)) {
58
+ var currencyName = account.currency.name;
59
+ return new CurrencyNotSupported("currency not supported: " + currencyName, {
60
+ currencyName: currencyName
61
+ });
62
+ }
63
+ }
64
+ //# sourceMappingURL=support.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support.js","sourceRoot":"","sources":["../../src/account/support.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,wCAAwC,GACzC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EACL,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAKpD,MAAM,CAAC,IAAM,oBAAoB,GAAG,UAClC,QAAwB,EACxB,cAA8B;IAE9B,IAAM,KAAK,GAAG,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IACtD,8CAA8C;IAC9C,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,cAAc;QAAE,OAAO,IAAI,CAAC;IAC5D,6DAA6D;IAC7D,IACE,cAAc,KAAK,EAAE;QACrB,CAAC,CAAC,CAAC,MAAM,CAAC,yBAAyB,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC;QAEtE,OAAO,IAAI,CAAC;IACd,4FAA4F;IAC5F,IACE,cAAc,KAAK,QAAQ;QAC3B,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS;YAC5B,CAAC,cAAc,KAAK,eAAe,IAAI,cAAc,KAAK,SAAS,CAAC,CAAC;QAEvE,OAAO,IAAI,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AACF,MAAM,CAAC,IAAM,mBAAmB,GAAG,UACjC,OAAoB,EACpB,aAAyC;IAEzC,IAAI,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,KAAK,OAAO,EAAE;QAC1D,OAAO,IAAI,wCAAwC,CAAC,EAAE,CAAC,CAAC;KACzD;AACH,CAAC,CAAC;AACF,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,IAAI;QACM,IAAA,OAAO,GAAK,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,QAAhC,CAAiC;QAEhD,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE;YAClB,OAAO,OAAO,KAAK,GAAG,CAAC;SACxB;QAED,OAAO,KAAK,CAAC;KACd;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AACD,0EAA0E;AAC1E,MAAM,UAAU,oBAAoB,CAClC,OAAgB,EAChB,eAA0B;IAE1B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;QAAE,OAAO;IAEpC,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE;QAClB,OAAO,eAAe,CAAC,IAAI,CACzB,UAAC,CAAC;YACA,OAAA,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,IAAI,mCAAmC;gBAC1D,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ;gBAC/B,CAAC,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY;QAFvC,CAEuC,CAC1C,CAAC;KACH;AACH,CAAC;AACD,MAAM,UAAU,qBAAqB,CACnC,OAAgB;IAEhB,IACE,CAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAgC,CAAC,EAC3E;QACA,OAAO,IAAI,mBAAmB,CAC5B,2BAA2B,GAAG,OAAO,CAAC,cAAc,EACpD;YACE,MAAM,EAAE,OAAO,CAAC,cAAc;SAC/B,CACF,CAAC;KACH;IAED,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC1C,IAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC3C,OAAO,IAAI,oBAAoB,CAAC,0BAA0B,GAAG,YAAY,EAAE;YACzE,YAAY,cAAA;SACb,CAAC,CAAC;KACJ;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ import "./test-helpers/staticTime";
2
+ //# sourceMappingURL=account.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.test.d.ts","sourceRoot":"","sources":["../src/account.test.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC"}
@@ -0,0 +1,252 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __values = (this && this.__values) || function(o) {
13
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
14
+ if (m) return m.call(o);
15
+ if (o && typeof o.length === "number") return {
16
+ next: function () {
17
+ if (o && i >= o.length) o = void 0;
18
+ return { value: o && o[i++], done: !o };
19
+ }
20
+ };
21
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
22
+ };
23
+ import "./test-helpers/staticTime";
24
+ import { BigNumber } from "bignumber.js";
25
+ import flatMap from "lodash/flatMap";
26
+ import { getCryptoCurrencyById, getTokenById, setSupportedCurrencies, } from "./currencies";
27
+ import { groupAccountOperationsByDay, groupAccountsOperationsByDay, shortAddressPreview, accountWithMandatoryTokens, withoutToken, } from "./account";
28
+ import { genAccount } from "./mocks/account";
29
+ setSupportedCurrencies(["ethereum", "ethereum_classic", "tron"]);
30
+ describe("groupAccountOperationsByDay", function () {
31
+ test("basic", function () {
32
+ var account = genAccount("seed_7", {
33
+ operationsSize: 20
34
+ });
35
+ var res1 = groupAccountOperationsByDay(account, {
36
+ count: 10
37
+ });
38
+ expect(res1.completed).toBe(false);
39
+ expect(res1).toMatchSnapshot();
40
+ var res2 = groupAccountOperationsByDay(account, {
41
+ count: Infinity
42
+ });
43
+ expect(res2.completed).toBe(true);
44
+ expect(
45
+ // $FlowFixMe
46
+ flatMap(res2.sections, function (s) { return s.data; }).slice(0, 10)).toMatchObject(
47
+ // $FlowFixMe
48
+ flatMap(res1.sections, function (s) { return s.data; }));
49
+ });
50
+ test("basic 2", function () {
51
+ var accounts = Array(10)
52
+ .fill(null)
53
+ .map(function (_, i) { return genAccount("gaobd" + i); });
54
+ var res1 = groupAccountsOperationsByDay(accounts, {
55
+ count: 100
56
+ });
57
+ expect(res1.completed).toBe(false);
58
+ expect(res1).toMatchSnapshot();
59
+ var res2 = groupAccountsOperationsByDay(accounts, {
60
+ count: Infinity
61
+ });
62
+ expect(res2.completed).toBe(true);
63
+ expect(
64
+ // $FlowFixMe
65
+ flatMap(res2.sections, function (s) { return s.data; }).slice(0, 100)).toMatchObject(
66
+ // $FlowFixMe
67
+ flatMap(res1.sections, function (s) { return s.data; }));
68
+ });
69
+ test("filterOperation", function () {
70
+ var account = genAccount("seed_7");
71
+ account.pendingOperations = account.operations.splice(0, 2);
72
+ var res1 = groupAccountOperationsByDay(account, {
73
+ count: 10,
74
+ filterOperation: function () { return false; }
75
+ });
76
+ expect(res1.sections.length).toBe(0);
77
+ expect(res1.completed).toBe(true);
78
+ var res2 = groupAccountOperationsByDay(account, {
79
+ count: 10,
80
+ filterOperation: function () { return true; }
81
+ });
82
+ expect(res2).toEqual(groupAccountOperationsByDay(account, {
83
+ count: 10
84
+ }));
85
+ var res3 = groupAccountOperationsByDay(account, {
86
+ count: 10,
87
+ filterOperation: function (op, acc) {
88
+ expect(acc).toBe(account);
89
+ return op.type === "OUT";
90
+ }
91
+ });
92
+ expect(res3).toEqual(groupAccountOperationsByDay(__assign(__assign({}, account), { operations: account.operations.filter(function (op) { return op.type === "OUT"; }), pendingOperations: account.pendingOperations.filter(function (op) { return op.type === "OUT"; }) }), {
93
+ count: 10
94
+ }));
95
+ });
96
+ test("provide at least the requested count even if some op yield nothing", function () {
97
+ var ethAccount = genAccount("eth_1", {
98
+ currency: getCryptoCurrencyById("ethereum"),
99
+ operationsSize: 300
100
+ });
101
+ ethAccount.operations = Array(50)
102
+ .fill(__assign(__assign({}, ethAccount.operations[0]), { value: new BigNumber(0), type: "NONE" }))
103
+ .concat(ethAccount.operations);
104
+ var res1 = groupAccountOperationsByDay(ethAccount, {
105
+ count: 100
106
+ });
107
+ expect(res1.completed).toBe(false);
108
+ expect(res1.sections.reduce(function (acc, s) { return acc.concat(s.data); }, [])
109
+ .length).toBeGreaterThanOrEqual(100);
110
+ });
111
+ test("to dedup", function () {
112
+ var account = genAccount("seed_8");
113
+ account.pendingOperations = account.operations.slice(0, 3);
114
+ var accountClone = genAccount("seed_8");
115
+ var res1 = groupAccountOperationsByDay(account, {
116
+ count: 100
117
+ });
118
+ var res2 = groupAccountOperationsByDay(accountClone, {
119
+ count: 100
120
+ });
121
+ expect(res1).toMatchObject(res2);
122
+ });
123
+ });
124
+ test("shortAddressPreview", function () {
125
+ expect(shortAddressPreview("0x112233445566778899001234567890aAbBcCdDeEfF")).toBe("0x112233...cCdDeEfF");
126
+ expect(shortAddressPreview("0x112233445566778899001234567890aAbBcCdDeEfF", 30)).toBe("0x11223344556...0aAbBcCdDeEfF");
127
+ });
128
+ test("accountWithMandatoryTokens ethereum", function () {
129
+ var currency = getCryptoCurrencyById("ethereum");
130
+ var account = genAccount("", {
131
+ currency: currency,
132
+ subAccountsCount: 5
133
+ });
134
+ var enhance = accountWithMandatoryTokens(account, [
135
+ getTokenById("ethereum/erc20/0x_project"),
136
+ ]);
137
+ var doubleEnhance = accountWithMandatoryTokens(enhance, [
138
+ getTokenById("ethereum/erc20/0x_project"),
139
+ ]);
140
+ expect(doubleEnhance).toEqual(enhance);
141
+ expect(__assign(__assign({}, enhance), { subAccounts: [] })).toMatchObject(__assign(__assign({}, account), { subAccounts: [] }));
142
+ expect((enhance.subAccounts || []).map(function (a) { return a.id; })).toMatchSnapshot();
143
+ });
144
+ test("withoutToken ethereum", function () {
145
+ var e_1, _a, e_2, _b;
146
+ var isTokenAccount = function (account, tokenId) {
147
+ return account.type === "TokenAccount" && account.token.id === tokenId;
148
+ };
149
+ var tokenIds = [
150
+ "ethereum/erc20/0x_project",
151
+ "ethereum/erc20/leo_token",
152
+ "ethereum/erc20/cro",
153
+ "ethereum/erc20/huobitoken",
154
+ ];
155
+ var currency = getCryptoCurrencyById("ethereum");
156
+ var account = genAccount("", {
157
+ currency: currency,
158
+ subAccountsCount: 0
159
+ });
160
+ //Enhance the account with some tokens
161
+ var enhance = accountWithMandatoryTokens(account, tokenIds.map(getTokenById));
162
+ //Get a version of that account without all the tokens
163
+ var demote = enhance;
164
+ try {
165
+ for (var tokenIds_1 = __values(tokenIds), tokenIds_1_1 = tokenIds_1.next(); !tokenIds_1_1.done; tokenIds_1_1 = tokenIds_1.next()) {
166
+ var tokenId = tokenIds_1_1.value;
167
+ demote = withoutToken(demote, tokenId);
168
+ }
169
+ }
170
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
171
+ finally {
172
+ try {
173
+ if (tokenIds_1_1 && !tokenIds_1_1.done && (_a = tokenIds_1["return"])) _a.call(tokenIds_1);
174
+ }
175
+ finally { if (e_1) throw e_1.error; }
176
+ }
177
+ var saTokens = enhance.subAccounts || [];
178
+ var saNoTokens = demote.subAccounts || [];
179
+ var _loop_1 = function (tokenId) {
180
+ expect(saTokens.find(function (a) { return isTokenAccount(a, tokenId); })).toBeTruthy();
181
+ expect(saNoTokens.find(function (a) { return isTokenAccount(a, tokenId); })).toBeFalsy();
182
+ };
183
+ try {
184
+ //See if we have added/removed them correctly
185
+ for (var tokenIds_2 = __values(tokenIds), tokenIds_2_1 = tokenIds_2.next(); !tokenIds_2_1.done; tokenIds_2_1 = tokenIds_2.next()) {
186
+ var tokenId = tokenIds_2_1.value;
187
+ _loop_1(tokenId);
188
+ }
189
+ }
190
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
191
+ finally {
192
+ try {
193
+ if (tokenIds_2_1 && !tokenIds_2_1.done && (_b = tokenIds_2["return"])) _b.call(tokenIds_2);
194
+ }
195
+ finally { if (e_2) throw e_2.error; }
196
+ }
197
+ });
198
+ test("withoutToken tron", function () {
199
+ var e_3, _a, e_4, _b;
200
+ var isTokenAccount = function (account, tokenId) {
201
+ return account.type === "TokenAccount" && account.token.id === tokenId;
202
+ };
203
+ var tokenIds = [
204
+ "tron/trc10/1002000",
205
+ "tron/trc10/1002398",
206
+ "tron/trc10/1000226",
207
+ "tron/trc20/TLa2f6VPqDgRE67v1736s7bJ8Ray5wYjU7",
208
+ ];
209
+ var currency = getCryptoCurrencyById("tron");
210
+ var account = genAccount("", {
211
+ currency: currency,
212
+ subAccountsCount: 0
213
+ });
214
+ //Enhance the account with some tokens
215
+ var enhance = accountWithMandatoryTokens(account, tokenIds.map(getTokenById));
216
+ //Get a version of that account without all the tokens
217
+ var demote = enhance;
218
+ try {
219
+ for (var tokenIds_3 = __values(tokenIds), tokenIds_3_1 = tokenIds_3.next(); !tokenIds_3_1.done; tokenIds_3_1 = tokenIds_3.next()) {
220
+ var tokenId = tokenIds_3_1.value;
221
+ demote = withoutToken(demote, tokenId);
222
+ }
223
+ }
224
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
225
+ finally {
226
+ try {
227
+ if (tokenIds_3_1 && !tokenIds_3_1.done && (_a = tokenIds_3["return"])) _a.call(tokenIds_3);
228
+ }
229
+ finally { if (e_3) throw e_3.error; }
230
+ }
231
+ var saTokens = enhance.subAccounts || [];
232
+ var saNoTokens = demote.subAccounts || [];
233
+ var _loop_2 = function (tokenId) {
234
+ expect(saTokens.find(function (a) { return isTokenAccount(a, tokenId); })).toBeTruthy();
235
+ expect(saNoTokens.find(function (a) { return isTokenAccount(a, tokenId); })).toBeFalsy();
236
+ };
237
+ try {
238
+ //See if we have added/removed them correctly
239
+ for (var tokenIds_4 = __values(tokenIds), tokenIds_4_1 = tokenIds_4.next(); !tokenIds_4_1.done; tokenIds_4_1 = tokenIds_4.next()) {
240
+ var tokenId = tokenIds_4_1.value;
241
+ _loop_2(tokenId);
242
+ }
243
+ }
244
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
245
+ finally {
246
+ try {
247
+ if (tokenIds_4_1 && !tokenIds_4_1.done && (_b = tokenIds_4["return"])) _b.call(tokenIds_4);
248
+ }
249
+ finally { if (e_4) throw e_4.error; }
250
+ }
251
+ });
252
+ //# sourceMappingURL=account.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.test.js","sourceRoot":"","sources":["../src/account.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function botTest(description: string, f: () => void): void;
2
+ export declare function getContext(error: any): string | undefined;
3
+ //# sourceMappingURL=bot-test-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-test-context.d.ts","sourceRoot":"","sources":["../../src/bot/bot-test-context.ts"],"names":[],"mappings":"AAKA,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI,CAWhE;AAGD,wBAAgB,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAIzD"}
@@ -0,0 +1,21 @@
1
+ // This provides a botTest("description", () => {}) helper in order to give context in bot expect tests
2
+ export function botTest(description, f) {
3
+ try {
4
+ f();
5
+ }
6
+ catch (e) {
7
+ if (e instanceof Error) {
8
+ var err = e;
9
+ err._bot_context = [description].concat(err._bot_context || []);
10
+ throw err;
11
+ }
12
+ throw e;
13
+ }
14
+ }
15
+ // retrieve the text context of a given error that was thrown from inside a botTest(...)
16
+ export function getContext(error) {
17
+ if (error instanceof Error) {
18
+ return (error._bot_context || []).join(" > ");
19
+ }
20
+ }
21
+ //# sourceMappingURL=bot-test-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-test-context.js","sourceRoot":"","sources":["../../src/bot/bot-test-context.ts"],"names":[],"mappings":"AAIA,uGAAuG;AACvG,MAAM,UAAU,OAAO,CAAC,WAAmB,EAAE,CAAa;IACxD,IAAI;QACF,CAAC,EAAE,CAAC;KACL;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,YAAY,KAAK,EAAE;YACtB,IAAM,GAAG,GAAG,CAAkB,CAAC;YAC/B,GAAG,CAAC,YAAY,GAAG,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAChE,MAAM,GAAG,CAAC;SACX;QACD,MAAM,CAAC,CAAC;KACT;AACH,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,UAAU,CAAC,KAAU;IACnC,IAAI,KAAK,YAAY,KAAK,EAAE;QAC1B,OAAO,CAAE,KAAuB,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAClE;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=bot-test-context.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-test-context.test.d.ts","sourceRoot":"","sources":["../../src/bot/bot-test-context.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ import { botTest, getContext } from "./bot-test-context";
2
+ import { formatError } from "./formatters";
3
+ describe("test the botTest context itself", function () {
4
+ test("botTest", function () {
5
+ var f = function () {
6
+ try {
7
+ botTest("CTX", function () { return expect(true).toEqual(false); });
8
+ }
9
+ catch (e) {
10
+ return getContext(e);
11
+ }
12
+ };
13
+ expect(f()).toEqual("CTX");
14
+ });
15
+ test("double botTest", function () {
16
+ var f = function () {
17
+ try {
18
+ botTest("1", function () { return botTest("2", function () { return expect(true).toEqual(false); }); });
19
+ }
20
+ catch (e) {
21
+ return getContext(e);
22
+ }
23
+ };
24
+ expect(f()).toEqual("1 > 2");
25
+ });
26
+ test("formatError", function () {
27
+ var _a;
28
+ var f = function () {
29
+ try {
30
+ botTest("CTX", function () { return expect(true).toEqual(false); });
31
+ }
32
+ catch (e) {
33
+ return formatError(e);
34
+ }
35
+ };
36
+ expect((_a = f()) === null || _a === void 0 ? void 0 : _a.slice(0, 8)).toEqual("TEST CTX");
37
+ });
38
+ });
39
+ //# sourceMappingURL=bot-test-context.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-test-context.test.js","sourceRoot":"","sources":["../../src/bot/bot-test-context.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,QAAQ,CAAC,iCAAiC,EAAE;IAC1C,IAAI,CAAC,SAAS,EAAE;QACd,IAAM,CAAC,GAAG;YACR,IAAI;gBACF,OAAO,CAAC,KAAK,EAAE,cAAM,OAAA,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAA3B,CAA2B,CAAC,CAAC;aACnD;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;aACtB;QACH,CAAC,CAAC;QACF,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,EAAE;QACrB,IAAM,CAAC,GAAG;YACR,IAAI;gBACF,OAAO,CAAC,GAAG,EAAE,cAAM,OAAA,OAAO,CAAC,GAAG,EAAE,cAAM,OAAA,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAA3B,CAA2B,CAAC,EAA/C,CAA+C,CAAC,CAAC;aACrE;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;aACtB;QACH,CAAC,CAAC;QACF,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,aAAa,EAAE;;QAClB,IAAM,CAAC,GAAG;YACR,IAAI;gBACF,OAAO,CAAC,KAAK,EAAE,cAAM,OAAA,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAA3B,CAA2B,CAAC,CAAC;aACnD;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;aACvB;QACH,CAAC,CAAC;QACF,MAAM,CAAC,MAAA,CAAC,EAAE,0CAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function formatError(e: unknown, longform?: boolean): string;
2
+ //# sourceMappingURL=formatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../src/bot/formatters.ts"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,UAAQ,GAAG,MAAM,CAmBhE"}
@@ -0,0 +1,27 @@
1
+ import { getContext } from "./bot-test-context";
2
+ export function formatError(e, longform) {
3
+ if (longform === void 0) { longform = false; }
4
+ var out = "";
5
+ if (!e || typeof e !== "object") {
6
+ out = String(e);
7
+ }
8
+ else if (e instanceof Error) {
9
+ var ctx = getContext(e);
10
+ if (ctx)
11
+ out += "TEST ".concat(ctx, "\n");
12
+ out += String(e);
13
+ }
14
+ else {
15
+ try {
16
+ out = "raw object: " + JSON.stringify(e);
17
+ }
18
+ catch (_e) {
19
+ out = String(e);
20
+ }
21
+ }
22
+ if (longform) {
23
+ return out.slice(0, 500);
24
+ }
25
+ return out.replace(/[`]/g, "").replace(/\n/g, " ").slice(0, 200);
26
+ }
27
+ //# sourceMappingURL=formatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/bot/formatters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,MAAM,UAAU,WAAW,CAAC,CAAU,EAAE,QAAgB;IAAhB,yBAAA,EAAA,gBAAgB;IACtD,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;QAC/B,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;KACjB;SAAM,IAAI,CAAC,YAAY,KAAK,EAAE;QAC7B,IAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,GAAG;YAAE,GAAG,IAAI,eAAQ,GAAG,OAAI,CAAC;QAChC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;KAClB;SAAM;QACL,IAAI;YACF,GAAG,GAAG,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC1C;QAAC,OAAO,EAAE,EAAE;YACX,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;SACjB;KACF;IACD,IAAI,QAAQ,EAAE;QACZ,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;KAC1B;IACD,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACnE,CAAC"}