coinrayjs 1.8.3 → 1.8.4

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.
@@ -1,6 +1,6 @@
1
1
  import Coinray from "./coinray";
2
2
  import Exchange from "./exchange";
3
- import { Candle, CandleParam, CandlesParam, MarketMap, MarketParam, MarketQuery } from "./types";
3
+ import { CacheParams, Candle, CandleParam, CandlesParam, MarketMap, MarketParam, MarketQuery } from "./types";
4
4
  import EventEmitter from "./event-emitter";
5
5
  interface ExchangeMap {
6
6
  [key: string]: Exchange;
@@ -15,7 +15,9 @@ export default class CoinrayCache extends EventEmitter {
15
15
  private _refreshingToken;
16
16
  private tokenRefreshed;
17
17
  private _onTokenExpired;
18
- constructor(token: string, config: any, refreshRate?: number);
18
+ private readonly onStoreCache;
19
+ private readonly apiCache;
20
+ constructor(token: string, config: any, refreshRate?: number, cachePrams?: CacheParams);
19
21
  initialize(): Promise<void>;
20
22
  getRootApi(): Coinray;
21
23
  authenticateDevice(credential: string, sessionKey: string): void;
@@ -23,7 +25,7 @@ export default class CoinrayCache extends EventEmitter {
23
25
  onTokenExpired(callback: () => Promise<string>): void;
24
26
  start(): Promise<void>;
25
27
  destroy(): void;
26
- refreshExchanges: () => Promise<void>;
28
+ refreshExchanges: (apiCache?: any) => Promise<void>;
27
29
  getProxyList: (params?: {}) => Promise<any>;
28
30
  getExchanges(): ExchangeMap;
29
31
  getExchange(exchangeCode: any): Exchange | undefined;
@@ -12,7 +12,8 @@ import Exchange from "./exchange";
12
12
  import { filterMarkets } from "./util";
13
13
  import EventEmitter from "./event-emitter";
14
14
  export default class CoinrayCache extends EventEmitter {
15
- constructor(token, config, refreshRate = 30 * 1000) {
15
+ constructor(token, config, refreshRate = 30 * 1000, cachePrams = undefined) {
16
+ var _a, _b;
16
17
  super();
17
18
  this.refreshToken = () => __awaiter(this, void 0, void 0, function* () {
18
19
  if (!this._onTokenExpired) {
@@ -31,8 +32,11 @@ export default class CoinrayCache extends EventEmitter {
31
32
  return token;
32
33
  }
33
34
  });
34
- this.refreshExchanges = () => __awaiter(this, void 0, void 0, function* () {
35
+ this.refreshExchanges = (apiCache = undefined) => __awaiter(this, void 0, void 0, function* () {
36
+ var _c;
37
+ const newCache = { exchanges: [], markets: {} };
35
38
  const exchanges = yield this.rootApi.fetchExchanges((exchange) => {
39
+ newCache.exchanges.push(exchange);
36
40
  if (!this.apis.has(exchange.code)) {
37
41
  if (this.rootApi.config.apiEndpoint === exchange.apiEndpoint) {
38
42
  this.apis.set(exchange.code, this.rootApi);
@@ -43,13 +47,21 @@ export default class CoinrayCache extends EventEmitter {
43
47
  }
44
48
  }
45
49
  return Exchange.Create(exchange, this.apis.get(exchange.code));
46
- });
47
- yield Promise.all(exchanges.map((exchange) => exchange.loadMarkets()));
50
+ }, (_c = apiCache) === null || _c === void 0 ? void 0 : _c.exchanges);
51
+ const allMarkets = yield Promise.all(exchanges.map((exchange) => __awaiter(this, void 0, void 0, function* () {
52
+ var _d, _e;
53
+ return ({
54
+ [exchange.code]: yield exchange.loadMarkets((_e = (_d = apiCache) === null || _d === void 0 ? void 0 : _d.markets) === null || _e === void 0 ? void 0 : _e[exchange.code])
55
+ });
56
+ })));
57
+ newCache.markets = allMarkets.reduce((mem, val) => (Object.assign(Object.assign({}, mem), { [Object.keys(val)[0]]: Object.values(val)[0] })), []);
48
58
  this.exchanges = exchanges.reduce((mem, exchange) => {
49
59
  mem[exchange.code] = exchange;
50
60
  return mem;
51
61
  }, {});
52
62
  this.dispatchEvent("marketsUpdated");
63
+ if (!apiCache && this.onStoreCache)
64
+ this.onStoreCache(newCache);
53
65
  });
54
66
  this.getProxyList = (params = {}) => __awaiter(this, void 0, void 0, function* () {
55
67
  return yield this.rootApi.getProxyList(params);
@@ -73,6 +85,8 @@ export default class CoinrayCache extends EventEmitter {
73
85
  this.initialized = false;
74
86
  this.refreshRate = refreshRate;
75
87
  this.rootApi.onTokenExpired(this.refreshToken);
88
+ this.onStoreCache = (_a = cachePrams) === null || _a === void 0 ? void 0 : _a.onStoreCache;
89
+ this.apiCache = (_b = cachePrams) === null || _b === void 0 ? void 0 : _b.apiCache;
76
90
  }
77
91
  initialize() {
78
92
  return __awaiter(this, void 0, void 0, function* () {
@@ -97,7 +111,13 @@ export default class CoinrayCache extends EventEmitter {
97
111
  if (this.refreshInterval) {
98
112
  clearInterval(this.refreshInterval);
99
113
  }
100
- yield this.refreshExchanges();
114
+ if (this.apiCache) {
115
+ yield this.refreshExchanges(this.apiCache);
116
+ this.refreshExchanges();
117
+ }
118
+ else {
119
+ yield this.refreshExchanges();
120
+ }
101
121
  this.refreshInterval = setInterval(this.refreshExchanges, this.refreshRate);
102
122
  });
103
123
  }
@@ -1 +1 @@
1
- {"version":3,"file":"coinray-cache.js","sourceRoot":"","sources":["../lib/coinray-cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coinray-cache.js","sourceRoot":"","sources":["../lib/coinray-cache.ts"],"names":[],"mappings":"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"}
package/dist/coinray.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { AccountTestParams, CancelOrderParams, Candle, CandleParam, CandlesParam, CreateOrderParams, MarketParam, SmartOrderParams, UpdateOrderParams } from "./types";
2
- import Market from "./market";
3
2
  import Exchange from "./exchange";
4
3
  import I18n from "./i18n";
5
4
  export declare class CoinrayError extends Error {
@@ -80,8 +79,8 @@ export default class Coinray {
80
79
  subscribeCandles: ({ coinraySymbol, resolution, lastCandle }: CandleParam, callback: (payload: any) => void) => Promise<(payload: any) => void>;
81
80
  unsubscribeCandles: ({ coinraySymbol, resolution }: CandleParam, callback?: (payload: any) => void) => void;
82
81
  fetchCandles: ({ coinraySymbol, resolution, start, end, useWebSocket }: CandlesParam) => Promise<Candle[]>;
83
- fetchExchanges: (callback: (payload: any) => Exchange) => Promise<Exchange[]>;
84
- fetchMarkets: (exchange: Exchange) => Promise<Market[]>;
82
+ fetchExchanges: (callback: (payload: any) => Exchange, cachedExchanges: any) => Promise<Exchange[]>;
83
+ fetchMarkets: (exchange: Exchange, cachedMarkets: any) => Promise<object[]>;
85
84
  createCredential: (deviceId: string, password: string) => Promise<any>;
86
85
  wrapApiKey: (apiKeySettings: {}) => Promise<any>;
87
86
  testAccount: (accountTest: AccountTestParams) => Promise<any>;
package/dist/coinray.js CHANGED
@@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  import axios from "axios";
11
11
  import { Socket } from "phoenix";
12
12
  import { camelize, candleTime, createJWT, encryptPayload, jwkToPublicKey, jwtExpired, parseJWT, safeBigNumber, safeTime, signHMAC, toBucketEnd, toBucketStart } from "./util";
13
- import Market from "./market";
14
13
  import BigNumber from "bignumber.js";
15
14
  import _ from "lodash";
16
15
  import I18n from "./i18n";
@@ -470,27 +469,26 @@ export default class Coinray {
470
469
  }));
471
470
  }, []).sort((left, right) => left.time - right.time);
472
471
  });
473
- this.fetchExchanges = (callback) => __awaiter(this, void 0, void 0, function* () {
474
- const { result: { exchanges } } = yield this.get("exchanges", {
475
- version: "v1",
476
- });
472
+ this.fetchExchanges = (callback, cachedExchanges) => __awaiter(this, void 0, void 0, function* () {
473
+ let exchanges = cachedExchanges;
474
+ if (!exchanges) {
475
+ ({ result: { exchanges } } = yield this.get("exchanges", {
476
+ version: "v1",
477
+ }));
478
+ }
477
479
  return exchanges.map(callback);
478
480
  });
479
- this.fetchMarkets = (exchange) => __awaiter(this, void 0, void 0, function* () {
480
- const { result: { markets } } = yield this.get("markets", {
481
- version: "v1",
482
- params: {
483
- exchange: exchange.code
484
- }
485
- });
486
- return markets.map((market) => {
487
- try {
488
- return Market.Create(market, this, exchange);
489
- }
490
- catch (error) {
491
- return new Market(market, this, exchange);
492
- }
493
- });
481
+ this.fetchMarkets = (exchange, cachedMarkets) => __awaiter(this, void 0, void 0, function* () {
482
+ let markets = cachedMarkets;
483
+ if (!markets) {
484
+ ({ result: { markets } } = yield this.get("markets", {
485
+ version: "v1",
486
+ params: {
487
+ exchange: exchange.code
488
+ }
489
+ }));
490
+ }
491
+ return markets;
494
492
  });
495
493
  this.createCredential = (deviceId, password) => __awaiter(this, void 0, void 0, function* () {
496
494
  const publicKey = yield this.publicKey();
@@ -1 +1 @@
1
- {"version":3,"file":"coinray.js","sourceRoot":"","sources":["../lib/coinray.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coinray.js","sourceRoot":"","sources":["../lib/coinray.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import BigNumber from "bignumber.js";
2
2
  import Coinray from "./coinray";
3
3
  import { ExchangeFeatures, IpWhiteList, MarketMap, OrderType } from "./types";
4
+ import Market from "./market";
4
5
  export declare class ExtraSetting {
5
6
  readonly key: string;
6
7
  readonly label: string;
@@ -44,10 +45,10 @@ export default class Exchange {
44
45
  static Create(d: any, api: Coinray): Exchange;
45
46
  private constructor();
46
47
  clone(): Exchange;
47
- loadMarkets(): Promise<void>;
48
+ loadMarkets(apiCache?: any): Promise<Array<object>>;
48
49
  getBaseCurrencyDominance(baseCurrency: any): any;
49
50
  getMarketByExchangeSymbol(exchangeSymbol: any): any;
50
51
  getCurrencyPrice(usdValue: any, currency: any): BigNumber;
51
52
  getUsdPrice(value: any, currency: any): BigNumber;
52
- getMarket(coinraySymbol: any): import("./market").default;
53
+ getMarket(coinraySymbol: any): Market;
53
54
  }
package/dist/exchange.js CHANGED
@@ -11,6 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  import { checkArray, checkBoolean, checkNumber, checkString, safeBigNumber, safeInteger, throwIsArray, throwNotObject, throwNull2NonNull } from "./util";
12
12
  import BigNumber from "bignumber.js";
13
13
  import _ from "lodash";
14
+ import Market from "./market";
14
15
  export class ExtraSetting {
15
16
  }
16
17
  export class ApiVersion {
@@ -110,13 +111,22 @@ export default class Exchange {
110
111
  apiKeySettings: this.apiKeySettings,
111
112
  }, this.api);
112
113
  }
113
- loadMarkets() {
114
+ loadMarkets(apiCache = undefined) {
114
115
  return __awaiter(this, void 0, void 0, function* () {
115
- const markets = yield this.api.fetchMarkets(this);
116
+ const marketsData = yield this.api.fetchMarkets(this, apiCache);
117
+ const markets = marketsData.map((market) => {
118
+ try {
119
+ return Market.Create(market, this.api, this);
120
+ }
121
+ catch (error) {
122
+ return new Market(market, this.api, this);
123
+ }
124
+ });
116
125
  if (markets.length > 0) {
117
126
  this.markets = _.keyBy(markets, "coinraySymbol");
118
127
  this.exchangeSymbols = _.keyBy(markets, "symbol");
119
128
  }
129
+ return marketsData;
120
130
  });
121
131
  }
122
132
  getBaseCurrencyDominance(baseCurrency) {
@@ -1 +1 @@
1
- {"version":3,"file":"exchange.js","sourceRoot":"","sources":["../lib/exchange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exchange.js","sourceRoot":"","sources":["../lib/exchange.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -196,3 +196,15 @@ export interface MarketBalance {
196
196
  base: Balance;
197
197
  quote: Balance;
198
198
  }
199
+ export interface ApiCache {
200
+ exchanges?: Array<object>;
201
+ markets: {
202
+ [key: string]: Array<object>;
203
+ };
204
+ }
205
+ export interface CacheParams {
206
+ apiCache: ApiCache;
207
+ onStoreCache: {
208
+ (apiCache: object): void;
209
+ };
210
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "coinrayjs",
3
- "version": "1.8.3",
3
+ "version": "1.8.4",
4
4
  "description": "Javascript Library for Coinray.io",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",