@ledgerhq/live-common 21.25.2 → 21.28.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 (253) hide show
  1. package/lib/__tests__/currencies.js +1 -1
  2. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.synced.unit.test.js +27 -26
  3. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.synced.unit.test.js.map +1 -1
  4. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.js +9 -7
  5. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.js.map +1 -1
  6. package/lib/account/support.d.ts.map +1 -1
  7. package/lib/account/support.js +1 -25
  8. package/lib/account/support.js.map +1 -1
  9. package/lib/api/Ethereum.d.ts.map +1 -1
  10. package/lib/api/Ethereum.js +1 -4
  11. package/lib/api/Ethereum.js.map +1 -1
  12. package/lib/api/explorerConfig/index.d.ts.map +1 -1
  13. package/lib/api/explorerConfig/index.js +0 -4
  14. package/lib/api/explorerConfig/index.js.map +1 -1
  15. package/lib/apps/support.d.ts.map +1 -1
  16. package/lib/apps/support.js +2 -1
  17. package/lib/apps/support.js.map +1 -1
  18. package/lib/bridge/jsHelpers.js +1 -1
  19. package/lib/bridge/jsHelpers.js.map +1 -1
  20. package/lib/data/icons/react/index.d.ts +1 -0
  21. package/lib/data/icons/react/index.d.ts.map +1 -1
  22. package/lib/data/icons/react/index.js +4 -2
  23. package/lib/data/icons/react/index.js.map +1 -1
  24. package/lib/data/icons/react/sol.js +3 -3
  25. package/lib/data/icons/react/sol.js.map +1 -1
  26. package/lib/data/icons/react/tyc.d.ts +8 -0
  27. package/lib/data/icons/react/tyc.d.ts.map +1 -0
  28. package/lib/data/icons/react/tyc.js +33 -0
  29. package/lib/data/icons/react/tyc.js.map +1 -0
  30. package/lib/data/icons/reactNative/index.d.ts +1 -0
  31. package/lib/data/icons/reactNative/index.d.ts.map +1 -1
  32. package/lib/data/icons/reactNative/index.js +4 -2
  33. package/lib/data/icons/reactNative/index.js.map +1 -1
  34. package/lib/data/icons/reactNative/sol.js +3 -3
  35. package/lib/data/icons/reactNative/sol.js.map +1 -1
  36. package/lib/data/icons/reactNative/tyc.d.ts +8 -0
  37. package/lib/data/icons/reactNative/tyc.d.ts.map +1 -0
  38. package/lib/data/icons/reactNative/tyc.js +34 -0
  39. package/lib/data/icons/reactNative/tyc.js.map +1 -0
  40. package/lib/env.d.ts +15 -6
  41. package/lib/env.d.ts.map +1 -1
  42. package/lib/env.js +11 -2
  43. package/lib/env.js.map +1 -1
  44. package/lib/env.react.d.ts +1 -1
  45. package/lib/env.react.d.ts.map +1 -1
  46. package/lib/errors.d.ts +3 -0
  47. package/lib/errors.d.ts.map +1 -1
  48. package/lib/errors.js +3 -2
  49. package/lib/errors.js.map +1 -1
  50. package/lib/exchange/hw-app-exchange/Exchange.d.ts +12 -15
  51. package/lib/exchange/hw-app-exchange/Exchange.d.ts.map +1 -1
  52. package/lib/exchange/hw-app-exchange/Exchange.js +4 -13
  53. package/lib/exchange/hw-app-exchange/Exchange.js.map +1 -1
  54. package/lib/exchange/index.d.ts.map +1 -1
  55. package/lib/exchange/index.js +9 -2
  56. package/lib/exchange/index.js.map +1 -1
  57. package/lib/exchange/platform/completeExchange.d.ts +6 -0
  58. package/lib/exchange/platform/completeExchange.d.ts.map +1 -0
  59. package/lib/exchange/platform/completeExchange.js +24 -0
  60. package/lib/exchange/platform/completeExchange.js.map +1 -0
  61. package/lib/exchange/platform/serialization.d.ts +4 -0
  62. package/lib/exchange/platform/serialization.d.ts.map +1 -0
  63. package/lib/exchange/platform/serialization.js +57 -0
  64. package/lib/exchange/platform/serialization.js.map +1 -0
  65. package/lib/exchange/{swap → platform}/startExchange.d.ts +0 -0
  66. package/lib/exchange/platform/startExchange.d.ts.map +1 -0
  67. package/lib/exchange/{swap → platform}/startExchange.js +3 -3
  68. package/lib/exchange/platform/startExchange.js.map +1 -0
  69. package/lib/exchange/platform/transfer/completeExchange.d.ts +5 -0
  70. package/lib/exchange/platform/transfer/completeExchange.d.ts.map +1 -0
  71. package/lib/exchange/platform/transfer/completeExchange.js +198 -0
  72. package/lib/exchange/platform/transfer/completeExchange.js.map +1 -0
  73. package/lib/exchange/platform/transfer/index.d.ts +5 -0
  74. package/lib/exchange/platform/transfer/index.d.ts.map +1 -0
  75. package/lib/exchange/platform/transfer/index.js +49 -0
  76. package/lib/exchange/platform/transfer/index.js.map +1 -0
  77. package/lib/exchange/platform/types.d.ts +59 -0
  78. package/lib/exchange/platform/types.d.ts.map +1 -0
  79. package/lib/exchange/platform/types.js +3 -0
  80. package/lib/exchange/platform/types.js.map +1 -0
  81. package/lib/exchange/sell/checkSignatureAndPrepare.js +1 -2
  82. package/lib/exchange/sell/checkSignatureAndPrepare.js.map +1 -1
  83. package/lib/exchange/sell/getTransactionId.js +1 -2
  84. package/lib/exchange/sell/getTransactionId.js.map +1 -1
  85. package/lib/exchange/sell/index.d.ts +6 -0
  86. package/lib/exchange/sell/index.d.ts.map +1 -1
  87. package/lib/exchange/sell/index.js +3 -3
  88. package/lib/exchange/sell/index.js.map +1 -1
  89. package/lib/exchange/swap/completeExchange.d.ts +2 -13
  90. package/lib/exchange/swap/completeExchange.d.ts.map +1 -1
  91. package/lib/exchange/swap/completeExchange.js +2 -4
  92. package/lib/exchange/swap/completeExchange.js.map +1 -1
  93. package/lib/exchange/swap/initSwap.d.ts.map +1 -1
  94. package/lib/exchange/swap/initSwap.js +3 -4
  95. package/lib/exchange/swap/initSwap.js.map +1 -1
  96. package/lib/exchange/swap/types.d.ts +0 -12
  97. package/lib/exchange/swap/types.d.ts.map +1 -1
  98. package/lib/exchange/testCurrencyConfig/data/coins.d.ts +8 -0
  99. package/lib/exchange/testCurrencyConfig/data/coins.d.ts.map +1 -0
  100. package/lib/exchange/testCurrencyConfig/data/coins.js +21 -0
  101. package/lib/exchange/testCurrencyConfig/data/coins.js.map +1 -0
  102. package/lib/exchange/testCurrencyConfig/index.d.ts +8 -0
  103. package/lib/exchange/testCurrencyConfig/index.d.ts.map +1 -0
  104. package/lib/exchange/testCurrencyConfig/index.js +68 -0
  105. package/lib/exchange/testCurrencyConfig/index.js.map +1 -0
  106. package/lib/families/algorand/api/algodv2.d.ts +2 -1
  107. package/lib/families/algorand/api/algodv2.d.ts.map +1 -1
  108. package/lib/families/algorand/api/algodv2.js +2 -2
  109. package/lib/families/algorand/api/algodv2.js.map +1 -1
  110. package/lib/families/algorand/js-broadcast.js +1 -1
  111. package/lib/families/algorand/js-broadcast.js.map +1 -1
  112. package/lib/families/algorand/js-signOperation.d.ts.map +1 -1
  113. package/lib/families/algorand/js-signOperation.js +1 -1
  114. package/lib/families/algorand/js-signOperation.js.map +1 -1
  115. package/lib/families/bitcoin/test-dataset.js +1 -1
  116. package/lib/families/bitcoin/test-dataset.js.map +1 -1
  117. package/lib/families/bitcoin/wallet-btc/wallet.d.ts.map +1 -1
  118. package/lib/families/bitcoin/wallet-btc/wallet.js +8 -2
  119. package/lib/families/bitcoin/wallet-btc/wallet.js.map +1 -1
  120. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js +1 -1
  121. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js.map +1 -1
  122. package/lib/families/ethereum/modules/send.d.ts.map +1 -1
  123. package/lib/families/ethereum/modules/send.js +3 -1
  124. package/lib/families/ethereum/modules/send.js.map +1 -1
  125. package/lib/families/ethereum/nft.integration.test.js +1 -36
  126. package/lib/families/ethereum/nft.integration.test.js.map +1 -1
  127. package/lib/families/ethereum/specs.d.ts.map +1 -1
  128. package/lib/families/ethereum/specs.js +2 -0
  129. package/lib/families/ethereum/specs.js.map +1 -1
  130. package/lib/families/ethereum/synchronisation.d.ts.map +1 -1
  131. package/lib/families/ethereum/synchronisation.js +2 -7
  132. package/lib/families/ethereum/synchronisation.js.map +1 -1
  133. package/lib/families/tezos/bridge/js.d.ts.map +1 -1
  134. package/lib/families/tezos/bridge/js.js +19 -20
  135. package/lib/families/tezos/bridge/js.js.map +1 -1
  136. package/lib/families/tezos/hw-getAddress.d.ts.map +1 -1
  137. package/lib/families/tezos/hw-getAddress.js +1 -3
  138. package/lib/families/tezos/hw-getAddress.js.map +1 -1
  139. package/lib/families/tezos/synchronisation.d.ts.map +1 -1
  140. package/lib/families/tezos/synchronisation.js +1 -1
  141. package/lib/families/tezos/synchronisation.js.map +1 -1
  142. package/lib/hw/actions/app.d.ts +3 -0
  143. package/lib/hw/actions/app.d.ts.map +1 -1
  144. package/lib/hw/actions/app.js +7 -1
  145. package/lib/hw/actions/app.js.map +1 -1
  146. package/lib/hw/actions/completeExchange.d.ts +1 -0
  147. package/lib/hw/actions/completeExchange.d.ts.map +1 -1
  148. package/lib/hw/actions/completeExchange.js +4 -3
  149. package/lib/hw/actions/completeExchange.js.map +1 -1
  150. package/lib/hw/connectApp.d.ts +5 -0
  151. package/lib/hw/connectApp.d.ts.map +1 -1
  152. package/lib/hw/connectApp.js +37 -26
  153. package/lib/hw/connectApp.js.map +1 -1
  154. package/lib/market/MarketDataProvider.d.ts +26 -0
  155. package/lib/market/MarketDataProvider.d.ts.map +1 -0
  156. package/lib/market/MarketDataProvider.js +339 -0
  157. package/lib/market/MarketDataProvider.js.map +1 -0
  158. package/lib/market/api/api.d.ts +15 -0
  159. package/lib/market/api/api.d.ts.map +1 -0
  160. package/lib/market/api/api.js +261 -0
  161. package/lib/market/api/api.js.map +1 -0
  162. package/lib/market/api/api.mock.d.ts +15 -0
  163. package/lib/market/api/api.mock.d.ts.map +1 -0
  164. package/lib/market/api/api.mock.js +454 -0
  165. package/lib/market/api/api.mock.js.map +1 -0
  166. package/lib/market/types.d.ts +83 -0
  167. package/lib/market/types.d.ts.map +1 -0
  168. package/lib/market/types.js +3 -0
  169. package/lib/market/types.js.map +1 -0
  170. package/lib/market/utils/countervalueFormatter.d.ts +8 -0
  171. package/lib/market/utils/countervalueFormatter.d.ts.map +1 -0
  172. package/lib/market/utils/countervalueFormatter.js +18 -0
  173. package/lib/market/utils/countervalueFormatter.js.map +1 -0
  174. package/lib/market/utils/rangeDataTable.d.ts +10 -0
  175. package/lib/market/utils/rangeDataTable.d.ts.map +1 -0
  176. package/lib/market/utils/rangeDataTable.js +36 -0
  177. package/lib/market/utils/rangeDataTable.js.map +1 -0
  178. package/lib/nft/support.d.ts.map +1 -1
  179. package/lib/nft/support.js +1 -1
  180. package/lib/nft/support.js.map +1 -1
  181. package/lib/platform/PlatformAppProvider/api/api.mock.d.ts.map +1 -1
  182. package/lib/platform/PlatformAppProvider/api/api.mock.js +27 -0
  183. package/lib/platform/PlatformAppProvider/api/api.mock.js.map +1 -1
  184. package/package.json +10 -10
  185. package/src/__tests__/__snapshots__/all.libcore.ts.snap +221 -212
  186. package/src/__tests__/currencies.ts +1 -1
  187. package/src/__tests__/families/bitcoin/wallet-btc/xpub.synced.unit.test.ts +26 -25
  188. package/src/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.ts +2 -0
  189. package/src/account/support.ts +1 -25
  190. package/src/api/Ethereum.ts +1 -4
  191. package/src/api/explorerConfig/index.ts +0 -4
  192. package/src/apps/support.ts +1 -0
  193. package/src/bridge/jsHelpers.ts +1 -1
  194. package/src/data/icons/react/index.tsx +1 -0
  195. package/src/data/icons/react/sol.tsx +1 -1
  196. package/src/data/icons/react/tyc.tsx +12 -0
  197. package/src/data/icons/reactNative/index.tsx +1 -0
  198. package/src/data/icons/reactNative/sol.tsx +1 -1
  199. package/src/data/icons/reactNative/tyc.tsx +13 -0
  200. package/src/data/icons/svg/SOL.svg +8 -1
  201. package/src/data/icons/svg/TYC.svg +6 -0
  202. package/src/env.ts +11 -2
  203. package/src/errors.ts +3 -0
  204. package/src/exchange/hw-app-exchange/Exchange.ts +22 -18
  205. package/src/exchange/index.ts +19 -1
  206. package/src/exchange/platform/completeExchange.ts +42 -0
  207. package/src/exchange/platform/serialization.ts +78 -0
  208. package/src/exchange/{swap → platform}/startExchange.ts +6 -2
  209. package/src/exchange/platform/transfer/completeExchange.ts +187 -0
  210. package/src/exchange/platform/transfer/index.ts +66 -0
  211. package/src/exchange/platform/types.ts +76 -0
  212. package/src/exchange/sell/checkSignatureAndPrepare.ts +2 -2
  213. package/src/exchange/sell/getTransactionId.ts +2 -2
  214. package/src/exchange/sell/index.ts +1 -1
  215. package/src/exchange/swap/completeExchange.ts +41 -50
  216. package/src/exchange/swap/initSwap.ts +4 -7
  217. package/src/exchange/swap/types.ts +1 -14
  218. package/src/exchange/testCurrencyConfig/data/coins.ts +20 -0
  219. package/src/exchange/testCurrencyConfig/index.ts +24 -0
  220. package/src/families/algorand/api/algodv2.ts +2 -2
  221. package/src/families/algorand/js-broadcast.ts +1 -1
  222. package/src/families/algorand/js-signOperation.ts +8 -3
  223. package/src/families/bitcoin/test-dataset.ts +1 -1
  224. package/src/families/bitcoin/wallet-btc/wallet.ts +6 -2
  225. package/src/families/ethereum/datasets/ethereum.scanAccounts.1.ts +43 -43
  226. package/src/families/ethereum/modules/send.ts +3 -0
  227. package/src/families/ethereum/nft.integration.test.ts +1 -18
  228. package/src/families/ethereum/specs.ts +2 -0
  229. package/src/families/ethereum/synchronisation.ts +1 -6
  230. package/src/families/tezos/bridge/js.ts +41 -40
  231. package/src/families/tezos/hw-getAddress.ts +1 -3
  232. package/src/families/tezos/synchronisation.ts +4 -3
  233. package/src/hw/actions/app.ts +17 -1
  234. package/src/hw/actions/completeExchange.ts +9 -3
  235. package/src/hw/connectApp.ts +53 -31
  236. package/src/market/MarketDataProvider.tsx +440 -0
  237. package/src/market/api/api.mock.ts +374 -0
  238. package/src/market/api/api.ts +227 -0
  239. package/src/market/types.ts +92 -0
  240. package/src/market/utils/countervalueFormatter.ts +24 -0
  241. package/src/market/utils/rangeDataTable.ts +40 -0
  242. package/src/nft/support.ts +1 -3
  243. package/src/platform/PlatformAppProvider/api/api.mock.ts +27 -0
  244. package/lib/exchange/swap/startExchange.d.ts.map +0 -1
  245. package/lib/exchange/swap/startExchange.js.map +0 -1
  246. package/lib/families/ethereum/versions.d.ts +0 -2
  247. package/lib/families/ethereum/versions.d.ts.map +0 -1
  248. package/lib/families/ethereum/versions.js +0 -5
  249. package/lib/families/ethereum/versions.js.map +0 -1
  250. package/src/.DS_Store +0 -0
  251. package/src/__tests__/.DS_Store +0 -0
  252. package/src/currencies/__snapshots__/.DS_Store +0 -0
  253. package/src/families/ethereum/versions.ts +0 -1
@@ -0,0 +1,261 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __read = (this && this.__read) || function (o, n) {
39
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
40
+ if (!m) return o;
41
+ var i = m.call(o), r, ar = [], e;
42
+ try {
43
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
44
+ }
45
+ catch (error) { e = { error: error }; }
46
+ finally {
47
+ try {
48
+ if (r && !r.done && (m = i["return"])) m.call(i);
49
+ }
50
+ finally { if (e) throw e.error; }
51
+ }
52
+ return ar;
53
+ };
54
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
55
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
56
+ if (ar || !(i in from)) {
57
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
58
+ ar[i] = from[i];
59
+ }
60
+ }
61
+ return to.concat(ar || Array.prototype.slice.call(from));
62
+ };
63
+ var __importDefault = (this && this.__importDefault) || function (mod) {
64
+ return (mod && mod.__esModule) ? mod : { "default": mod };
65
+ };
66
+ exports.__esModule = true;
67
+ var currencies_1 = require("../../currencies");
68
+ var rangeDataTable_1 = require("../utils/rangeDataTable");
69
+ var env_1 = require("../../env");
70
+ var network_1 = __importDefault(require("../../network"));
71
+ var cryptoCurrenciesList = __spreadArray(__spreadArray([], __read((0, currencies_1.listCryptoCurrencies)()), false), __read((0, currencies_1.listTokens)()), false);
72
+ var supportedCurrencies = (0, currencies_1.listSupportedCurrencies)();
73
+ var liveCompatibleIds = supportedCurrencies
74
+ .map(function (_a) {
75
+ var id = _a.id;
76
+ return id;
77
+ })
78
+ .filter(Boolean);
79
+ var LIVE_COINS_LIST = [];
80
+ var ROOT_PATH = (0, env_1.getEnv)("MARKET_API_URL");
81
+ var SUPPORTED_COINS_LIST = [];
82
+ function setSupportedCoinsList() {
83
+ return __awaiter(this, void 0, void 0, function () {
84
+ var url, data;
85
+ return __generator(this, function (_a) {
86
+ switch (_a.label) {
87
+ case 0:
88
+ url = "".concat(ROOT_PATH, "/coins/list");
89
+ return [4 /*yield*/, (0, network_1["default"])({ method: "GET", url: url })];
90
+ case 1:
91
+ data = (_a.sent()).data;
92
+ SUPPORTED_COINS_LIST = data;
93
+ LIVE_COINS_LIST = SUPPORTED_COINS_LIST.filter(function (_a) {
94
+ var id = _a.id;
95
+ return liveCompatibleIds.includes(id);
96
+ }).map(function (_a) {
97
+ var id = _a.id;
98
+ return id;
99
+ });
100
+ return [2 /*return*/, SUPPORTED_COINS_LIST];
101
+ }
102
+ });
103
+ });
104
+ }
105
+ var matchSearch = function (search) {
106
+ return function (currency) {
107
+ if (!search)
108
+ return false;
109
+ var match = "".concat(currency.symbol, "|").concat(currency.name);
110
+ return match.toLowerCase().includes(search.toLowerCase());
111
+ };
112
+ };
113
+ function distributedCopy(items, n) {
114
+ var elements = [items[0]];
115
+ var totalItems = items.length - 2;
116
+ var interval = Math.floor(totalItems / (n - 2));
117
+ for (var i = 1; i < n - 1; i++) {
118
+ elements.push(items[i * interval]);
119
+ }
120
+ elements.push(items[items.length - 1]);
121
+ return elements;
122
+ }
123
+ var sparklineXMagnitude = 5;
124
+ var sparklineYHeight = 50;
125
+ function sparklineAsSvgData(points) {
126
+ var totalXSteps = sparklineXMagnitude * points.length;
127
+ var min = Math.min.apply(Math, __spreadArray([], __read(points), false));
128
+ var max = Math.max.apply(Math, __spreadArray([], __read(points), false));
129
+ var yOffset = max - min;
130
+ return {
131
+ path: points
132
+ .map(function (d, i) {
133
+ var _a = __read([
134
+ i * sparklineXMagnitude,
135
+ sparklineYHeight + 3 - ((d - min) * sparklineYHeight) / yOffset,
136
+ ], 2), x = _a[0], y = _a[1];
137
+ return i === 0 ? "M ".concat(x, " ").concat(y) : "L ".concat(x, " ").concat(y);
138
+ })
139
+ .join(" "),
140
+ viewBox: "0 0 ".concat(totalXSteps, " ").concat(sparklineYHeight + 3)
141
+ };
142
+ }
143
+ // fetches currencies data for selected currencies ids
144
+ function listPaginated(_a) {
145
+ var counterCurrency = _a.counterCurrency, _b = _a.range, range = _b === void 0 ? "24h" : _b, _c = _a.limit, limit = _c === void 0 ? 50 : _c, _d = _a.page, page = _d === void 0 ? 1 : _d, _e = _a.ids, _ids = _e === void 0 ? [] : _e, _f = _a.starred, starred = _f === void 0 ? [] : _f, _g = _a.orderBy, orderBy = _g === void 0 ? "market_cap" : _g, _h = _a.order, order = _h === void 0 ? "desc" : _h, _j = _a.search, search = _j === void 0 ? "" : _j, _k = _a.sparkline, sparkline = _k === void 0 ? true : _k, _l = _a.liveCompatible, liveCompatible = _l === void 0 ? false : _l;
146
+ return __awaiter(this, void 0, void 0, function () {
147
+ var ids, url, data;
148
+ return __generator(this, function (_m) {
149
+ switch (_m.label) {
150
+ case 0:
151
+ ids = _ids;
152
+ if (liveCompatible) {
153
+ ids = ids.concat(LIVE_COINS_LIST);
154
+ }
155
+ if (starred.length > 0) {
156
+ ids = ids.concat(starred);
157
+ }
158
+ if (search) {
159
+ ids = SUPPORTED_COINS_LIST.filter(matchSearch(search)).map(function (_a) {
160
+ var id = _a.id;
161
+ return id;
162
+ });
163
+ if (!ids.length) {
164
+ return [2 /*return*/, []];
165
+ }
166
+ }
167
+ ids = ids.slice((page - 1) * limit, limit * page);
168
+ url = "".concat(ROOT_PATH, "/coins/markets?vs_currency=").concat(counterCurrency, "&order=").concat(orderBy, "_").concat(order, "&per_page=").concat(limit) +
169
+ "&sparkline=".concat(sparkline ? "true" : "false", "&price_change_percentage=").concat(range) +
170
+ "".concat(ids.length > 0 ? "&page=1&&ids=".concat(ids.toString()) : "&page=".concat(page));
171
+ return [4 /*yield*/, (0, network_1["default"])({
172
+ method: "GET",
173
+ url: url
174
+ })];
175
+ case 1:
176
+ data = (_m.sent()).data;
177
+ return [2 /*return*/, data.map(function (currency) {
178
+ var _a;
179
+ return ({
180
+ id: currency.id,
181
+ name: currency.name,
182
+ image: currency.image,
183
+ isLiveSupported: LIVE_COINS_LIST.includes(currency.id),
184
+ internalCurrency: cryptoCurrenciesList.find(function (_a) {
185
+ var ticker = _a.ticker;
186
+ return ticker.toLowerCase() === currency.symbol;
187
+ }),
188
+ marketcap: currency.market_cap,
189
+ marketcapRank: currency.market_cap_rank,
190
+ totalVolume: currency.total_volume,
191
+ high24h: currency.high_24h,
192
+ low24h: currency.low_24h,
193
+ ticker: currency.symbol,
194
+ price: currency.current_price,
195
+ priceChangePercentage: currency["price_change_percentage_".concat(range, "_in_currency")],
196
+ marketCapChangePercentage24h: currency.market_cap_change_percentage_24h,
197
+ circulatingSupply: currency.circulating_supply,
198
+ totalSupply: currency.total_supply,
199
+ maxSupply: currency.max_supply,
200
+ ath: currency.ath,
201
+ athDate: currency.ath_date,
202
+ atl: currency.atl,
203
+ atlDate: currency.atl_date,
204
+ sparklineIn7d: ((_a = currency === null || currency === void 0 ? void 0 : currency.sparkline_in_7d) === null || _a === void 0 ? void 0 : _a.price)
205
+ ? sparklineAsSvgData(distributedCopy(currency.sparkline_in_7d.price, 6 * 7)) // keep 6 points per day
206
+ : null,
207
+ chartData: []
208
+ });
209
+ })];
210
+ }
211
+ });
212
+ });
213
+ }
214
+ // Fetches list of supported counterCurrencies
215
+ function supportedCounterCurrencies() {
216
+ return __awaiter(this, void 0, void 0, function () {
217
+ var url, data;
218
+ return __generator(this, function (_a) {
219
+ switch (_a.label) {
220
+ case 0:
221
+ url = "".concat(ROOT_PATH, "/simple/supported_vs_currencies");
222
+ return [4 /*yield*/, (0, network_1["default"])({
223
+ method: "GET",
224
+ url: url
225
+ })];
226
+ case 1:
227
+ data = (_a.sent()).data;
228
+ return [2 /*return*/, data];
229
+ }
230
+ });
231
+ });
232
+ }
233
+ // Fetches list of supported currencies
234
+ function currencyChartData(_a) {
235
+ var id = _a.id, counterCurrency = _a.counterCurrency, _b = _a.range, range = _b === void 0 ? "24h" : _b;
236
+ return __awaiter(this, void 0, void 0, function () {
237
+ var _c, days, interval, url, data;
238
+ var _d;
239
+ return __generator(this, function (_e) {
240
+ switch (_e.label) {
241
+ case 0:
242
+ _c = rangeDataTable_1.rangeDataTable[range], days = _c.days, interval = _c.interval;
243
+ url = "".concat(ROOT_PATH, "/coins/").concat(id, "/market_chart?vs_currency=").concat(counterCurrency, "&days=").concat(days, "&interval=").concat(interval);
244
+ return [4 /*yield*/, (0, network_1["default"])({
245
+ method: "GET",
246
+ url: url
247
+ })];
248
+ case 1:
249
+ data = (_e.sent()).data;
250
+ return [2 /*return*/, (_d = {}, _d[range] = data.prices, _d)];
251
+ }
252
+ });
253
+ });
254
+ }
255
+ exports["default"] = {
256
+ setSupportedCoinsList: setSupportedCoinsList,
257
+ listPaginated: listPaginated,
258
+ supportedCounterCurrencies: supportedCounterCurrencies,
259
+ currencyChartData: currencyChartData
260
+ };
261
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/market/api/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { CurrencyData, SupportedCoins } from "../types";
2
+ declare function setSupportedCoinsList(): Promise<SupportedCoins>;
3
+ declare function listPaginated(): Promise<CurrencyData[]>;
4
+ declare function supportedCounterCurrencies(): Promise<string[]>;
5
+ declare function currencyChartData(): Promise<{
6
+ [range: string]: number[][];
7
+ }>;
8
+ declare const _default: {
9
+ setSupportedCoinsList: typeof setSupportedCoinsList;
10
+ listPaginated: typeof listPaginated;
11
+ supportedCounterCurrencies: typeof supportedCounterCurrencies;
12
+ currencyChartData: typeof currencyChartData;
13
+ };
14
+ export default _default;
15
+ //# sourceMappingURL=api.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.mock.d.ts","sourceRoot":"","sources":["../../../src/market/api/api.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAKxD,iBAAe,qBAAqB,IAAI,OAAO,CAAC,cAAc,CAAC,CAS9D;AAGD,iBAAe,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAqPtD;AAGD,iBAAe,0BAA0B,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAgE7D;AAGD,iBAAe,iBAAiB,IAAI,OAAO,CAAC;IAC1C,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;CAC7B,CAAC,CAgCD;;;;;;;AAED,wBAKE"}