@ledgerhq/live-network 1.2.2 → 1.3.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/.unimportedrc.json +7 -1
  2. package/CHANGELOG.md +15 -0
  3. package/lib/batcher/index.d.ts +13 -0
  4. package/lib/batcher/index.d.ts.map +1 -0
  5. package/lib/batcher/index.js +56 -0
  6. package/lib/batcher/index.js.map +1 -0
  7. package/lib/batcher/types.d.ts +12 -0
  8. package/lib/batcher/types.d.ts.map +1 -0
  9. package/lib/batcher/types.js +3 -0
  10. package/lib/batcher/types.js.map +1 -0
  11. package/lib/cache.d.ts.map +1 -1
  12. package/lib/index.d.ts +3 -0
  13. package/lib/index.d.ts.map +1 -0
  14. package/lib/index.js +5 -0
  15. package/lib/index.js.map +1 -0
  16. package/lib/network.d.ts +26 -2
  17. package/lib/network.d.ts.map +1 -1
  18. package/lib/network.js +50 -4
  19. package/lib/network.js.map +1 -1
  20. package/lib/network.test.js.map +1 -1
  21. package/lib-es/batcher/index.d.ts +13 -0
  22. package/lib-es/batcher/index.d.ts.map +1 -0
  23. package/lib-es/batcher/index.js +52 -0
  24. package/lib-es/batcher/index.js.map +1 -0
  25. package/lib-es/batcher/types.d.ts +12 -0
  26. package/lib-es/batcher/types.d.ts.map +1 -0
  27. package/lib-es/batcher/types.js +2 -0
  28. package/lib-es/batcher/types.js.map +1 -0
  29. package/lib-es/cache.d.ts.map +1 -1
  30. package/lib-es/index.d.ts +3 -0
  31. package/lib-es/index.d.ts.map +1 -0
  32. package/lib-es/index.js +3 -0
  33. package/lib-es/index.js.map +1 -0
  34. package/lib-es/network.d.ts +26 -2
  35. package/lib-es/network.d.ts.map +1 -1
  36. package/lib-es/network.js +48 -3
  37. package/lib-es/network.js.map +1 -1
  38. package/lib-es/network.test.js.map +1 -1
  39. package/package.json +23 -11
  40. package/src/batcher/index.ts +65 -0
  41. package/src/batcher/types.ts +13 -0
  42. package/src/index.ts +2 -0
  43. package/src/network.ts +64 -4
@@ -1,5 +1,11 @@
1
1
  {
2
- "entry": ["src/network.ts", "src/cache.ts"],
2
+ "entry": [
3
+ "src/batcher/index.ts",
4
+ "src/batcher/types.ts",
5
+ "src/cache.ts",
6
+ "src/index.ts",
7
+ "src/network.ts"
8
+ ],
3
9
  "ignoreUnimported": [],
4
10
  "ignoreUnresolved": []
5
11
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @ledgerhq/live-network
2
2
 
3
+ ## 1.3.0-next.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#6596](https://github.com/LedgerHQ/ledger-live/pull/6596) [`77fa530`](https://github.com/LedgerHQ/ledger-live/commit/77fa530c8626df94fa7f9c0a8b3a99f2efa7cb11) Thanks [@KVNLS](https://github.com/KVNLS)! - Upgrade React Native to version 0.73.6
8
+
9
+ - [#6819](https://github.com/LedgerHQ/ledger-live/pull/6819) [`326cae0`](https://github.com/LedgerHQ/ledger-live/commit/326cae088cc33795536deb1d868c86e8dbeb6a13) Thanks [@sprohaszka-ledger](https://github.com/sprohaszka-ledger)! - Add Batcher to live-network and partition Axios types
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies [[`77fa530`](https://github.com/LedgerHQ/ledger-live/commit/77fa530c8626df94fa7f9c0a8b3a99f2efa7cb11), [`815ae3d`](https://github.com/LedgerHQ/ledger-live/commit/815ae3dae8027823854ada837df3dc983d09b10f), [`cec1599`](https://github.com/LedgerHQ/ledger-live/commit/cec1599a41aa1a18a249e34312164bc93b63972f), [`6d44f25`](https://github.com/LedgerHQ/ledger-live/commit/6d44f255c5b2f453c61d0b754807db1f76d7174e), [`6623cd1`](https://github.com/LedgerHQ/ledger-live/commit/6623cd13102bd8340bd7d4dfdd469934527985c3), [`6552679`](https://github.com/LedgerHQ/ledger-live/commit/65526794bb4d1fbc7e286c0e1c0b6d021413fc8c)]:
14
+ - @ledgerhq/errors@6.17.0-next.0
15
+ - @ledgerhq/live-promise@0.1.0-next.0
16
+ - @ledgerhq/live-env@2.1.0-next.0
17
+
3
18
  ## 1.2.2
4
19
 
5
20
  ### Patch Changes
@@ -0,0 +1,13 @@
1
+ import { Batcher } from "./types";
2
+ /**
3
+ * Factory to make an API call batcher.
4
+ *
5
+ * It will wait for a complete `tick` to accumulate all the requests
6
+ * before sending it as one call to a given API.
7
+ * Once the response is received, it will then spread the results to each request Promise,
8
+ * just like if each request had been made separately.
9
+ *
10
+ * Inspired by https://github.com/graphql/dataloader
11
+ */
12
+ export declare const makeBatcher: <I, P, R>(request: (input: I[], params: P) => Promise<R[]>, params: P) => Batcher<I, R>;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/batcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvD;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,6BACL,CAAC,EAAE,UAAU,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC,UACxC,CAAC,KACR,QAAQ,CAAC,EAAE,CAAC,CAiDT,CAAC"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeBatcher = void 0;
4
+ /**
5
+ * Factory to make an API call batcher.
6
+ *
7
+ * It will wait for a complete `tick` to accumulate all the requests
8
+ * before sending it as one call to a given API.
9
+ * Once the response is received, it will then spread the results to each request Promise,
10
+ * just like if each request had been made separately.
11
+ *
12
+ * Inspired by https://github.com/graphql/dataloader
13
+ */
14
+ const makeBatcher = (request, params) => (() => {
15
+ const queue = [];
16
+ let debounce;
17
+ const timeoutBatchCall = () => {
18
+ // Clear the previous scheduled call if it was existing
19
+ clearTimeout(debounce);
20
+ // Schedule a new call with the whole batch
21
+ debounce = setTimeout(() => {
22
+ // Seperate each batch element properties into arrays by type and index
23
+ const { elements, resolvers, rejecters } = queue.reduce((acc, { element, resolve, reject }) => {
24
+ acc.elements.push(element);
25
+ acc.resolvers.push(resolve);
26
+ acc.rejecters.push(reject);
27
+ return acc;
28
+ }, {
29
+ elements: [],
30
+ resolvers: [],
31
+ rejecters: [],
32
+ });
33
+ // Empty the queue
34
+ queue.length = 0;
35
+ // Make the call with all the couples of contract and tokenId at once
36
+ request(elements, params)
37
+ .then(results => {
38
+ // Resolve each batch element with its own resolver and only its response
39
+ results.forEach((response, index) => resolvers[index](response));
40
+ })
41
+ .catch(err => {
42
+ // Reject all batch element with the error
43
+ rejecters.forEach(reject => reject(err));
44
+ });
45
+ });
46
+ };
47
+ // Load the metadata for a given couple contract + tokenId
48
+ return element => {
49
+ return new Promise((resolve, reject) => {
50
+ queue.push({ element, resolve, reject });
51
+ timeoutBatchCall();
52
+ });
53
+ };
54
+ })();
55
+ exports.makeBatcher = makeBatcher;
56
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/batcher/index.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;GASG;AACI,MAAM,WAAW,GAAG,CACzB,OAAgD,EAChD,MAAS,EACM,EAAE,CACjB,CAAC,GAAG,EAAE;IACJ,MAAM,KAAK,GAAyB,EAAE,CAAC;IAEvC,IAAI,QAAwB,CAAC;IAC7B,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,uDAAuD;QACvD,YAAY,CAAC,QAAQ,CAAC,CAAC;QAEvB,2CAA2C;QAC3C,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE;YACzB,uEAAuE;YACvE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,MAAM,CACrD,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;gBACpC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3B,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC5B,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAE3B,OAAO,GAAG,CAAC;YACb,CAAC,EACD;gBACE,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,EAAE;aACC,CACjB,CAAC;YACF,kBAAkB;YAClB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAEjB,qEAAqE;YACrE,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC;iBACtB,IAAI,CAAC,OAAO,CAAC,EAAE;gBACd,yEAAyE;gBACzE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnE,CAAC,CAAC;iBACD,KAAK,CAAC,GAAG,CAAC,EAAE;gBACX,0CAA0C;gBAC1C,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,0DAA0D;IAE1D,OAAO,OAAO,CAAC,EAAE;QACf,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACzC,gBAAgB,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC,EAAE,CAAC;AApDM,QAAA,WAAW,eAoDjB"}
@@ -0,0 +1,12 @@
1
+ export type Batcher<I, R> = (element: I) => Promise<R>;
2
+ export type BatchElement<I, R> = {
3
+ element: I;
4
+ resolve: (value: R) => void;
5
+ reject: (reason?: Error) => void;
6
+ };
7
+ export type Batch<I, R> = {
8
+ elements: Array<BatchElement<I, R>["element"]>;
9
+ resolvers: Array<BatchElement<I, R>["resolve"]>;
10
+ rejecters: Array<BatchElement<I, R>["reject"]>;
11
+ };
12
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/batcher/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAEvD,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI;IAC/B,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC5B,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI;IACxB,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/C,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAChD,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;CAChD,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/batcher/types.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,WAAW,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACxD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAK5D;AACD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAE5D;AACD,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAE1D;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI;IAC9C,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IACzC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,qFAEO,MAAM,YAC3B,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,mBAqDlC,CAAC"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,WAAW,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACxD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAK5D;AACD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAE5D;AACD,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAE1D;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI;IAC9C,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IACzC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,oCACV,CAAC,KAAK,QAAQ,CAAC,CAAC,2BACL,CAAC,KAAK,MAAM,YAC3B,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,KAIhC,SAAS,CAAC,EAAE,CAAC,CAiDf,CAAC"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import { newImplementation } from "./network";
2
+ export default newImplementation;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,eAAe,iBAAiB,CAAC"}
package/lib/index.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const network_1 = require("./network");
4
+ exports.default = network_1.newImplementation;
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,uCAA8C;AAC9C,kBAAe,2BAAiB,CAAC"}
package/lib/network.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- import type { AxiosError, AxiosRequestConfig } from "axios";
2
- import { AxiosPromise, AxiosResponse } from "axios";
1
+ import { AxiosPromise, AxiosResponse, type AxiosError, type AxiosRequestConfig } from "axios";
3
2
  type Metadata = {
4
3
  startTime: number;
5
4
  };
@@ -15,6 +14,31 @@ type InterceptedError = {
15
14
  response?: InterceptedResponse;
16
15
  } & AxiosError<any>;
17
16
  export declare const errorInterceptor: (error: InterceptedError) => InterceptedError;
17
+ export type LiveNetworkRequest<T> = {
18
+ url?: string;
19
+ method?: "GET" | "POST" | "PUT" | "DELETE";
20
+ headers?: Record<string, string | number | boolean>;
21
+ baseURL?: string;
22
+ params?: unknown;
23
+ data?: T;
24
+ timeout?: number;
25
+ };
26
+ export type LiveNetworkResponse<T> = {
27
+ data: T;
28
+ status: number;
29
+ };
30
+ /**
31
+ * Network call
32
+ * @param request
33
+ * @returns
34
+ */
35
+ export declare const newImplementation: <T = unknown, U = unknown>(request: LiveNetworkRequest<U>) => Promise<LiveNetworkResponse<T>>;
36
+ /**
37
+ * Network call
38
+ * @deprecated Use new method by updating your import: `@ledgerhq/live-network`
39
+ * @param arg Axios request type
40
+ * @returns Axios response type
41
+ */
18
42
  declare const implementation: <T = any>(arg: AxiosRequestConfig) => AxiosPromise<T>;
19
43
  export default implementation;
20
44
  //# sourceMappingURL=network.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAU,MAAM,OAAO,CAAC;AACpE,OAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3D,KAAK,QAAQ,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AACtC,KAAK,iBAAiB,GAAG,kBAAkB,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEtE,eAAO,MAAM,kBAAkB,YAAa,kBAAkB,KAAG,iBAehE,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;AAEvB,eAAO,MAAM,mBAAmB,aAAc,mBAAmB,KAAG,mBAiBnE,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAEpB,eAAO,MAAM,gBAAgB,UAAW,gBAAgB,KAAG,gBAyC1D,CAAC;AAgEF,QAAA,MAAM,cAAc,iBAAkB,kBAAkB,oBAyBvD,CAAC;AAiBF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"AAAA,OAAc,EACZ,YAAY,EACZ,aAAa,EACb,KAAK,UAAU,EACf,KAAK,kBAAkB,EAExB,MAAM,OAAO,CAAC;AAMf,KAAK,QAAQ,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AACtC,KAAK,iBAAiB,GAAG,kBAAkB,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEtE,eAAO,MAAM,kBAAkB,YAAa,kBAAkB,KAAG,iBAehE,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;AAEvB,eAAO,MAAM,mBAAmB,aAAc,mBAAmB,KAAG,mBAiBnE,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAEpB,eAAO,MAAM,gBAAgB,UAAW,gBAAgB,KAAG,gBAyC1D,CAAC;AAgEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;IACnC,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,sCACnB,mBAAmB,CAAC,CAAC,KAC7B,QAAQ,oBAAoB,CAAC,CAAC,CA6BhC,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,cAAc,iBAAkB,kBAAkB,KAAG,aAAa,CAAC,CAwBxE,CAAC;AAiBF,eAAe,cAAc,CAAC"}
package/lib/network.js CHANGED
@@ -1,16 +1,24 @@
1
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
+ };
2
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
13
  };
5
14
  var _a;
6
15
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.errorInterceptor = exports.responseInterceptor = exports.requestInterceptor = void 0;
16
+ exports.newImplementation = exports.errorInterceptor = exports.responseInterceptor = exports.requestInterceptor = void 0;
17
+ const axios_1 = __importDefault(require("axios"));
8
18
  const errors_1 = require("@ledgerhq/errors");
9
19
  const live_env_1 = require("@ledgerhq/live-env");
10
20
  const live_promise_1 = require("@ledgerhq/live-promise");
11
21
  const logs_1 = require("@ledgerhq/logs");
12
- const axios_1 = __importDefault(require("axios"));
13
- const invariant_1 = __importDefault(require("invariant"));
14
22
  const requestInterceptor = (request) => {
15
23
  if (!(0, live_env_1.getEnv)("ENABLE_NETWORK_LOGS")) {
16
24
  return request;
@@ -131,8 +139,46 @@ const extractErrorMessage = (raw) => {
131
139
  }
132
140
  return;
133
141
  };
142
+ /**
143
+ * Network call
144
+ * @param request
145
+ * @returns
146
+ */
147
+ const newImplementation = (request) => __awaiter(void 0, void 0, void 0, function* () {
148
+ let response;
149
+ if (!("method" in request)) {
150
+ request.method = "GET";
151
+ }
152
+ if (request.method === "GET") {
153
+ if (!("timeout" in request)) {
154
+ request.timeout = (0, live_env_1.getEnv)("GET_CALLS_TIMEOUT");
155
+ }
156
+ response = yield (0, live_promise_1.retry)(() => (0, axios_1.default)(request), {
157
+ maxRetry: (0, live_env_1.getEnv)("GET_CALLS_RETRY"),
158
+ retryCondition: error => {
159
+ if (error && error.status) {
160
+ // A 422 shouldn't be retried without change as explained in this documentation
161
+ // https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/422
162
+ return error.status !== 422;
163
+ }
164
+ return true;
165
+ },
166
+ });
167
+ }
168
+ else {
169
+ response = yield (0, axios_1.default)(request);
170
+ }
171
+ const { data, status } = response;
172
+ return { data, status };
173
+ });
174
+ exports.newImplementation = newImplementation;
175
+ /**
176
+ * Network call
177
+ * @deprecated Use new method by updating your import: `@ledgerhq/live-network`
178
+ * @param arg Axios request type
179
+ * @returns Axios response type
180
+ */
134
181
  const implementation = (arg) => {
135
- (0, invariant_1.default)(typeof arg === "object", "network takes an object as parameter");
136
182
  let promise;
137
183
  if (arg.method === "GET") {
138
184
  if (!("timeout" in arg)) {
@@ -1 +1 @@
1
- {"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"network.test.js","sourceRoot":"","sources":["../src/network.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network.test.js","sourceRoot":"","sources":["../src/network.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { Batcher } from "./types";
2
+ /**
3
+ * Factory to make an API call batcher.
4
+ *
5
+ * It will wait for a complete `tick` to accumulate all the requests
6
+ * before sending it as one call to a given API.
7
+ * Once the response is received, it will then spread the results to each request Promise,
8
+ * just like if each request had been made separately.
9
+ *
10
+ * Inspired by https://github.com/graphql/dataloader
11
+ */
12
+ export declare const makeBatcher: <I, P, R>(request: (input: I[], params: P) => Promise<R[]>, params: P) => Batcher<I, R>;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/batcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvD;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,6BACL,CAAC,EAAE,UAAU,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC,UACxC,CAAC,KACR,QAAQ,CAAC,EAAE,CAAC,CAiDT,CAAC"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Factory to make an API call batcher.
3
+ *
4
+ * It will wait for a complete `tick` to accumulate all the requests
5
+ * before sending it as one call to a given API.
6
+ * Once the response is received, it will then spread the results to each request Promise,
7
+ * just like if each request had been made separately.
8
+ *
9
+ * Inspired by https://github.com/graphql/dataloader
10
+ */
11
+ export const makeBatcher = (request, params) => (() => {
12
+ const queue = [];
13
+ let debounce;
14
+ const timeoutBatchCall = () => {
15
+ // Clear the previous scheduled call if it was existing
16
+ clearTimeout(debounce);
17
+ // Schedule a new call with the whole batch
18
+ debounce = setTimeout(() => {
19
+ // Seperate each batch element properties into arrays by type and index
20
+ const { elements, resolvers, rejecters } = queue.reduce((acc, { element, resolve, reject }) => {
21
+ acc.elements.push(element);
22
+ acc.resolvers.push(resolve);
23
+ acc.rejecters.push(reject);
24
+ return acc;
25
+ }, {
26
+ elements: [],
27
+ resolvers: [],
28
+ rejecters: [],
29
+ });
30
+ // Empty the queue
31
+ queue.length = 0;
32
+ // Make the call with all the couples of contract and tokenId at once
33
+ request(elements, params)
34
+ .then(results => {
35
+ // Resolve each batch element with its own resolver and only its response
36
+ results.forEach((response, index) => resolvers[index](response));
37
+ })
38
+ .catch(err => {
39
+ // Reject all batch element with the error
40
+ rejecters.forEach(reject => reject(err));
41
+ });
42
+ });
43
+ };
44
+ // Load the metadata for a given couple contract + tokenId
45
+ return element => {
46
+ return new Promise((resolve, reject) => {
47
+ queue.push({ element, resolve, reject });
48
+ timeoutBatchCall();
49
+ });
50
+ };
51
+ })();
52
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/batcher/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAgD,EAChD,MAAS,EACM,EAAE,CACjB,CAAC,GAAG,EAAE;IACJ,MAAM,KAAK,GAAyB,EAAE,CAAC;IAEvC,IAAI,QAAwB,CAAC;IAC7B,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,uDAAuD;QACvD,YAAY,CAAC,QAAQ,CAAC,CAAC;QAEvB,2CAA2C;QAC3C,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE;YACzB,uEAAuE;YACvE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,MAAM,CACrD,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;gBACpC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3B,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC5B,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAE3B,OAAO,GAAG,CAAC;YACb,CAAC,EACD;gBACE,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,EAAE;aACC,CACjB,CAAC;YACF,kBAAkB;YAClB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAEjB,qEAAqE;YACrE,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC;iBACtB,IAAI,CAAC,OAAO,CAAC,EAAE;gBACd,yEAAyE;gBACzE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnE,CAAC,CAAC;iBACD,KAAK,CAAC,GAAG,CAAC,EAAE;gBACX,0CAA0C;gBAC1C,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,0DAA0D;IAE1D,OAAO,OAAO,CAAC,EAAE;QACf,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACzC,gBAAgB,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC,EAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ export type Batcher<I, R> = (element: I) => Promise<R>;
2
+ export type BatchElement<I, R> = {
3
+ element: I;
4
+ resolve: (value: R) => void;
5
+ reject: (reason?: Error) => void;
6
+ };
7
+ export type Batch<I, R> = {
8
+ elements: Array<BatchElement<I, R>["element"]>;
9
+ resolvers: Array<BatchElement<I, R>["resolve"]>;
10
+ rejecters: Array<BatchElement<I, R>["reject"]>;
11
+ };
12
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/batcher/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAEvD,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI;IAC/B,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC5B,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI;IACxB,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/C,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAChD,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;CAChD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/batcher/types.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,WAAW,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACxD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAK5D;AACD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAE5D;AACD,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAE1D;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI;IAC9C,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IACzC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,qFAEO,MAAM,YAC3B,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,mBAqDlC,CAAC"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,WAAW,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACxD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAK5D;AACD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAE5D;AACD,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,YAAY,CAE1D;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI;IAC9C,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IACzC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,oCACV,CAAC,KAAK,QAAQ,CAAC,CAAC,2BACL,CAAC,KAAK,MAAM,YAC3B,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,KAIhC,SAAS,CAAC,EAAE,CAAC,CAiDf,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { newImplementation } from "./network";
2
+ export default newImplementation;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { newImplementation } from "./network";
2
+ export default newImplementation;
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,eAAe,iBAAiB,CAAC"}
@@ -1,5 +1,4 @@
1
- import type { AxiosError, AxiosRequestConfig } from "axios";
2
- import { AxiosPromise, AxiosResponse } from "axios";
1
+ import { AxiosPromise, AxiosResponse, type AxiosError, type AxiosRequestConfig } from "axios";
3
2
  type Metadata = {
4
3
  startTime: number;
5
4
  };
@@ -15,6 +14,31 @@ type InterceptedError = {
15
14
  response?: InterceptedResponse;
16
15
  } & AxiosError<any>;
17
16
  export declare const errorInterceptor: (error: InterceptedError) => InterceptedError;
17
+ export type LiveNetworkRequest<T> = {
18
+ url?: string;
19
+ method?: "GET" | "POST" | "PUT" | "DELETE";
20
+ headers?: Record<string, string | number | boolean>;
21
+ baseURL?: string;
22
+ params?: unknown;
23
+ data?: T;
24
+ timeout?: number;
25
+ };
26
+ export type LiveNetworkResponse<T> = {
27
+ data: T;
28
+ status: number;
29
+ };
30
+ /**
31
+ * Network call
32
+ * @param request
33
+ * @returns
34
+ */
35
+ export declare const newImplementation: <T = unknown, U = unknown>(request: LiveNetworkRequest<U>) => Promise<LiveNetworkResponse<T>>;
36
+ /**
37
+ * Network call
38
+ * @deprecated Use new method by updating your import: `@ledgerhq/live-network`
39
+ * @param arg Axios request type
40
+ * @returns Axios response type
41
+ */
18
42
  declare const implementation: <T = any>(arg: AxiosRequestConfig) => AxiosPromise<T>;
19
43
  export default implementation;
20
44
  //# sourceMappingURL=network.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAU,MAAM,OAAO,CAAC;AACpE,OAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3D,KAAK,QAAQ,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AACtC,KAAK,iBAAiB,GAAG,kBAAkB,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEtE,eAAO,MAAM,kBAAkB,YAAa,kBAAkB,KAAG,iBAehE,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;AAEvB,eAAO,MAAM,mBAAmB,aAAc,mBAAmB,KAAG,mBAiBnE,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAEpB,eAAO,MAAM,gBAAgB,UAAW,gBAAgB,KAAG,gBAyC1D,CAAC;AAgEF,QAAA,MAAM,cAAc,iBAAkB,kBAAkB,oBAyBvD,CAAC;AAiBF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"AAAA,OAAc,EACZ,YAAY,EACZ,aAAa,EACb,KAAK,UAAU,EACf,KAAK,kBAAkB,EAExB,MAAM,OAAO,CAAC;AAMf,KAAK,QAAQ,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AACtC,KAAK,iBAAiB,GAAG,kBAAkB,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEtE,eAAO,MAAM,kBAAkB,YAAa,kBAAkB,KAAG,iBAehE,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;AAEvB,eAAO,MAAM,mBAAmB,aAAc,mBAAmB,KAAG,mBAiBnE,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAEpB,eAAO,MAAM,gBAAgB,UAAW,gBAAgB,KAAG,gBAyC1D,CAAC;AAgEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;IACnC,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,sCACnB,mBAAmB,CAAC,CAAC,KAC7B,QAAQ,oBAAoB,CAAC,CAAC,CA6BhC,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,cAAc,iBAAkB,kBAAkB,KAAG,aAAa,CAAC,CAwBxE,CAAC;AAiBF,eAAe,cAAc,CAAC"}
package/lib-es/network.js CHANGED
@@ -1,10 +1,18 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
1
10
  var _a;
11
+ import axios from "axios";
2
12
  import { LedgerAPI4xx, LedgerAPI5xx, NetworkDown } from "@ledgerhq/errors";
3
13
  import { changes, getEnv } from "@ledgerhq/live-env";
4
14
  import { retry } from "@ledgerhq/live-promise";
5
15
  import { log } from "@ledgerhq/logs";
6
- import axios from "axios";
7
- import invariant from "invariant";
8
16
  export const requestInterceptor = (request) => {
9
17
  if (!getEnv("ENABLE_NETWORK_LOGS")) {
10
18
  return request;
@@ -122,8 +130,45 @@ const extractErrorMessage = (raw) => {
122
130
  }
123
131
  return;
124
132
  };
133
+ /**
134
+ * Network call
135
+ * @param request
136
+ * @returns
137
+ */
138
+ export const newImplementation = (request) => __awaiter(void 0, void 0, void 0, function* () {
139
+ let response;
140
+ if (!("method" in request)) {
141
+ request.method = "GET";
142
+ }
143
+ if (request.method === "GET") {
144
+ if (!("timeout" in request)) {
145
+ request.timeout = getEnv("GET_CALLS_TIMEOUT");
146
+ }
147
+ response = yield retry(() => axios(request), {
148
+ maxRetry: getEnv("GET_CALLS_RETRY"),
149
+ retryCondition: error => {
150
+ if (error && error.status) {
151
+ // A 422 shouldn't be retried without change as explained in this documentation
152
+ // https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/422
153
+ return error.status !== 422;
154
+ }
155
+ return true;
156
+ },
157
+ });
158
+ }
159
+ else {
160
+ response = yield axios(request);
161
+ }
162
+ const { data, status } = response;
163
+ return { data, status };
164
+ });
165
+ /**
166
+ * Network call
167
+ * @deprecated Use new method by updating your import: `@ledgerhq/live-network`
168
+ * @param arg Axios request type
169
+ * @returns Axios response type
170
+ */
125
171
  const implementation = (arg) => {
126
- invariant(typeof arg === "object", "network takes an object as parameter");
127
172
  let promise;
128
173
  if (arg.method === "GET") {
129
174
  if (!("timeout" in arg)) {
@@ -1 +1 @@
1
- {"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"network.test.js","sourceRoot":"","sources":["../src/network.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network.test.js","sourceRoot":"","sources":["../src/network.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/live-network",
3
- "version": "1.2.2",
3
+ "version": "1.3.0-next.0",
4
4
  "description": "Ledger Live network and cache utilities",
5
5
  "keywords": [
6
6
  "Ledger"
@@ -18,17 +18,18 @@
18
18
  },
19
19
  "typesVersions": {
20
20
  "*": {
21
- "*.json": [
22
- "*.json"
23
- ],
24
- "*": [
25
- "lib/*"
26
- ],
27
21
  "lib/*": [
28
22
  "lib/*"
29
23
  ],
30
24
  "lib-es/*": [
31
25
  "lib-es/*"
26
+ ],
27
+ "batcher": [
28
+ "lib/batcher/index"
29
+ ],
30
+ "*": [
31
+ "lib/*",
32
+ "lib/batcher/*"
32
33
  ]
33
34
  }
34
35
  },
@@ -37,6 +38,14 @@
37
38
  "./lib/*.js": "./lib/*.js",
38
39
  "./lib-es/*": "./lib-es/*.js",
39
40
  "./lib-es/*.js": "./lib-es/*.js",
41
+ "./batcher": {
42
+ "require": "./lib/batcher/index.js",
43
+ "default": "./lib-es/batcher/index.js"
44
+ },
45
+ "./batcher/*": {
46
+ "require": "./lib/batcher/*.js",
47
+ "default": "./lib-es/batcher/*.js"
48
+ },
40
49
  "./*": {
41
50
  "require": "./lib/*.js",
42
51
  "default": "./lib-es/*.js"
@@ -45,16 +54,19 @@
45
54
  "require": "./lib/*.js",
46
55
  "default": "./lib-es/*.js"
47
56
  },
57
+ ".": {
58
+ "require": "./lib/index.js",
59
+ "default": "./lib-es/index.js"
60
+ },
48
61
  "./package.json": "./package.json"
49
62
  },
50
63
  "license": "Apache-2.0",
51
64
  "dependencies": {
52
65
  "axios": "0.26.1",
53
- "invariant": "^2.2.2",
54
66
  "lru-cache": "^7.14.1",
55
- "@ledgerhq/errors": "^6.16.4",
56
- "@ledgerhq/live-env": "^2.0.2",
57
- "@ledgerhq/live-promise": "^0.0.4",
67
+ "@ledgerhq/errors": "^6.17.0-next.0",
68
+ "@ledgerhq/live-env": "^2.1.0-next.0",
69
+ "@ledgerhq/live-promise": "^0.1.0-next.0",
58
70
  "@ledgerhq/logs": "^6.12.0"
59
71
  },
60
72
  "devDependencies": {
@@ -0,0 +1,65 @@
1
+ import { Batch, BatchElement, Batcher } from "./types";
2
+
3
+ /**
4
+ * Factory to make an API call batcher.
5
+ *
6
+ * It will wait for a complete `tick` to accumulate all the requests
7
+ * before sending it as one call to a given API.
8
+ * Once the response is received, it will then spread the results to each request Promise,
9
+ * just like if each request had been made separately.
10
+ *
11
+ * Inspired by https://github.com/graphql/dataloader
12
+ */
13
+ export const makeBatcher = <I, P, R>(
14
+ request: (input: I[], params: P) => Promise<R[]>,
15
+ params: P,
16
+ ): Batcher<I, R> =>
17
+ (() => {
18
+ const queue: BatchElement<I, R>[] = [];
19
+
20
+ let debounce: NodeJS.Timeout;
21
+ const timeoutBatchCall = () => {
22
+ // Clear the previous scheduled call if it was existing
23
+ clearTimeout(debounce);
24
+
25
+ // Schedule a new call with the whole batch
26
+ debounce = setTimeout(() => {
27
+ // Seperate each batch element properties into arrays by type and index
28
+ const { elements, resolvers, rejecters } = queue.reduce(
29
+ (acc, { element, resolve, reject }) => {
30
+ acc.elements.push(element);
31
+ acc.resolvers.push(resolve);
32
+ acc.rejecters.push(reject);
33
+
34
+ return acc;
35
+ },
36
+ {
37
+ elements: [],
38
+ resolvers: [],
39
+ rejecters: [],
40
+ } as Batch<I, R>,
41
+ );
42
+ // Empty the queue
43
+ queue.length = 0;
44
+
45
+ // Make the call with all the couples of contract and tokenId at once
46
+ request(elements, params)
47
+ .then(results => {
48
+ // Resolve each batch element with its own resolver and only its response
49
+ results.forEach((response, index) => resolvers[index](response));
50
+ })
51
+ .catch(err => {
52
+ // Reject all batch element with the error
53
+ rejecters.forEach(reject => reject(err));
54
+ });
55
+ });
56
+ };
57
+ // Load the metadata for a given couple contract + tokenId
58
+
59
+ return element => {
60
+ return new Promise((resolve, reject) => {
61
+ queue.push({ element, resolve, reject });
62
+ timeoutBatchCall();
63
+ });
64
+ };
65
+ })();
@@ -0,0 +1,13 @@
1
+ export type Batcher<I, R> = (element: I) => Promise<R>;
2
+
3
+ export type BatchElement<I, R> = {
4
+ element: I;
5
+ resolve: (value: R) => void;
6
+ reject: (reason?: Error) => void;
7
+ };
8
+
9
+ export type Batch<I, R> = {
10
+ elements: Array<BatchElement<I, R>["element"]>;
11
+ resolvers: Array<BatchElement<I, R>["resolve"]>;
12
+ rejecters: Array<BatchElement<I, R>["reject"]>;
13
+ };
package/src/index.ts ADDED
@@ -0,0 +1,2 @@
1
+ import { newImplementation } from "./network";
2
+ export default newImplementation;
package/src/network.ts CHANGED
@@ -1,10 +1,14 @@
1
+ import axios, {
2
+ AxiosPromise,
3
+ AxiosResponse,
4
+ type AxiosError,
5
+ type AxiosRequestConfig,
6
+ type Method,
7
+ } from "axios";
1
8
  import { LedgerAPI4xx, LedgerAPI5xx, NetworkDown } from "@ledgerhq/errors";
2
9
  import { changes, getEnv } from "@ledgerhq/live-env";
3
10
  import { retry } from "@ledgerhq/live-promise";
4
11
  import { log } from "@ledgerhq/logs";
5
- import type { AxiosError, AxiosRequestConfig, Method } from "axios";
6
- import axios, { AxiosPromise, AxiosResponse } from "axios";
7
- import invariant from "invariant";
8
12
 
9
13
  type Metadata = { startTime: number };
10
14
  type ExtendedXHRConfig = AxiosRequestConfig & { metadata?: Metadata };
@@ -158,8 +162,64 @@ const extractErrorMessage = (raw: string): string | undefined => {
158
162
  return;
159
163
  };
160
164
 
165
+ export type LiveNetworkRequest<T> = {
166
+ url?: string;
167
+ method?: "GET" | "POST" | "PUT" | "DELETE";
168
+ headers?: Record<string, string | number | boolean>;
169
+ baseURL?: string;
170
+ params?: unknown;
171
+ data?: T;
172
+ timeout?: number;
173
+ };
174
+ export type LiveNetworkResponse<T> = {
175
+ data: T;
176
+ status: number;
177
+ };
178
+ /**
179
+ * Network call
180
+ * @param request
181
+ * @returns
182
+ */
183
+ export const newImplementation = async <T = unknown, U = unknown>(
184
+ request: LiveNetworkRequest<U>,
185
+ ): Promise<LiveNetworkResponse<T>> => {
186
+ let response: AxiosResponse<T>;
187
+
188
+ if (!("method" in request)) {
189
+ request.method = "GET";
190
+ }
191
+
192
+ if (request.method === "GET") {
193
+ if (!("timeout" in request)) {
194
+ request.timeout = getEnv("GET_CALLS_TIMEOUT");
195
+ }
196
+
197
+ response = await retry(() => axios(request), {
198
+ maxRetry: getEnv("GET_CALLS_RETRY"),
199
+ retryCondition: error => {
200
+ if (error && error.status) {
201
+ // A 422 shouldn't be retried without change as explained in this documentation
202
+ // https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/422
203
+ return error.status !== 422;
204
+ }
205
+ return true;
206
+ },
207
+ });
208
+ } else {
209
+ response = await axios(request);
210
+ }
211
+
212
+ const { data, status } = response;
213
+ return { data, status };
214
+ };
215
+
216
+ /**
217
+ * Network call
218
+ * @deprecated Use new method by updating your import: `@ledgerhq/live-network`
219
+ * @param arg Axios request type
220
+ * @returns Axios response type
221
+ */
161
222
  const implementation = <T = any>(arg: AxiosRequestConfig): AxiosPromise<T> => {
162
- invariant(typeof arg === "object", "network takes an object as parameter");
163
223
  let promise: AxiosPromise;
164
224
 
165
225
  if (arg.method === "GET") {