@ledgerhq/coin-filecoin 1.14.1-nightly.20251113102200 → 1.15.0-nightly.20251115023630

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 (56) hide show
  1. package/.unimportedrc.json +2 -0
  2. package/CHANGELOG.md +11 -7
  3. package/lib/api/api.d.ts +5 -3
  4. package/lib/api/api.d.ts.map +1 -1
  5. package/lib/api/api.js +66 -21
  6. package/lib/api/api.js.map +1 -1
  7. package/lib/common-logic/index.d.ts +1 -1
  8. package/lib/common-logic/index.d.ts.map +1 -1
  9. package/lib/common-logic/index.js +1 -3
  10. package/lib/common-logic/index.js.map +1 -1
  11. package/lib/common-logic/utils.d.ts +0 -2
  12. package/lib/common-logic/utils.d.ts.map +1 -1
  13. package/lib/common-logic/utils.js +16 -68
  14. package/lib/common-logic/utils.js.map +1 -1
  15. package/lib/erc20/tokenAccounts.d.ts +2 -3
  16. package/lib/erc20/tokenAccounts.d.ts.map +1 -1
  17. package/lib/erc20/tokenAccounts.js +46 -32
  18. package/lib/erc20/tokenAccounts.js.map +1 -1
  19. package/lib/test/fixtures.d.ts +87 -0
  20. package/lib/test/fixtures.d.ts.map +1 -0
  21. package/lib/test/fixtures.js +311 -0
  22. package/lib/test/fixtures.js.map +1 -0
  23. package/lib/types/common.d.ts +22 -2
  24. package/lib/types/common.d.ts.map +1 -1
  25. package/lib-es/api/api.d.ts +5 -3
  26. package/lib-es/api/api.d.ts.map +1 -1
  27. package/lib-es/api/api.js +61 -18
  28. package/lib-es/api/api.js.map +1 -1
  29. package/lib-es/common-logic/index.d.ts +1 -1
  30. package/lib-es/common-logic/index.d.ts.map +1 -1
  31. package/lib-es/common-logic/index.js +1 -1
  32. package/lib-es/common-logic/index.js.map +1 -1
  33. package/lib-es/common-logic/utils.d.ts +0 -2
  34. package/lib-es/common-logic/utils.d.ts.map +1 -1
  35. package/lib-es/common-logic/utils.js +16 -66
  36. package/lib-es/common-logic/utils.js.map +1 -1
  37. package/lib-es/erc20/tokenAccounts.d.ts +2 -3
  38. package/lib-es/erc20/tokenAccounts.d.ts.map +1 -1
  39. package/lib-es/erc20/tokenAccounts.js +47 -33
  40. package/lib-es/erc20/tokenAccounts.js.map +1 -1
  41. package/lib-es/test/fixtures.d.ts +87 -0
  42. package/lib-es/test/fixtures.d.ts.map +1 -0
  43. package/lib-es/test/fixtures.js +297 -0
  44. package/lib-es/test/fixtures.js.map +1 -0
  45. package/lib-es/types/common.d.ts +22 -2
  46. package/lib-es/types/common.d.ts.map +1 -1
  47. package/package.json +6 -6
  48. package/src/api/api.ts +107 -26
  49. package/src/api/api.unit.test.ts +217 -0
  50. package/src/common-logic/index.ts +0 -2
  51. package/src/common-logic/utils.ts +19 -90
  52. package/src/common-logic/utils.unit.test.ts +429 -0
  53. package/src/erc20/tokenAccounts.ts +59 -34
  54. package/src/erc20/tokenAccounts.unit.test.ts +73 -0
  55. package/src/test/fixtures.ts +342 -0
  56. package/src/types/common.ts +24 -2
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,OAAO,OAAO,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAe5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAGxD,MAAM,eAAe,GAAG,IAAI,CAAC;AAC7B,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAE3C,MAAM,cAAc,GAAG,CAAC,UAAkB,cAAc,EAAE,IAAa,EAAU,EAAE;IACjF,MAAM,OAAO,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAChD,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAE5D,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAClE,CAAC,CAAC;AAKF,MAAM,KAAK,GAAG,KAAK,EAAK,IAAY,EAAE,EAAE,OAAO,EAAc,EAAE,EAAE;IAC/D,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE1C,kJAAkJ;IAClJ,MAAM,IAAI,GAAkC;QAC1C,MAAM,EAAE,KAAK;QACb,GAAG;KACJ,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAI,IAAI,CAAC,CAAC;IAE3C,kJAAkJ;IAClJ,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;IAE7B,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjB,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAOF,MAAM,IAAI,GAAG,KAAK,EAAK,IAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAa,EAAc,EAAE;IAC/E,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE1C,MAAM,IAAI,GAA+B;QACvC,MAAM,EAAE,MAAM;QACd,GAAG;QACH,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;KAChD,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAI,IAAI,CAAC,CAAC;IAE3C,oIAAoI;IACpI,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,WAAW,CAAC;IAE3C,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjB,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,IAAY,EAA4B,EAAE;IAC5E,MAAM,IAAI,GAAG,MAAM,KAAK,CAAkB,cAAc,IAAI,UAAU,EAAE;QACtE,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,CAAC,oDAAoD;AACnE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAC5C,KAAK,EAAE,OAA6B,EAAkC,EAAE;IACtE,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAwB,gBAAgB,EAAE;YAC/D,OAAO,EAAE,cAAc;YACvB,IAAI,EAAE,OAAO;SACd,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,CAAC,oDAAoD;IACnE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC;QAC/C,MAAM,IAAI,2BAA2B,EAAE,CAAC;IAC1C,CAAC;AACH,CAAC,EACD,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,EAAE,EAC1C;IACE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,YAAY;CAC5B,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAAoC,EAAE;IACzE,MAAM,IAAI,GAAG,MAAM,KAAK,CAAwB,iBAAiB,EAAE;QACjE,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,CAAC,oDAAoD;AACnE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,IAAY,EACZ,UAAkB,EAClB,SAAiB,CAAC,EAClB,QAAgB,CAAC,EACc,EAAE;IACjC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,cAAc,IAAI,iBAAiB,oBAAoB,IAAI,UAAU,WAAW,MAAM,UAAU,KAAK,EAAE,EACvG;QACE,OAAO,EAAE,cAAc;KACxB,CACF,CAAC;IACF,OAAO,QAAQ,CAAC,CAAC,oDAAoD;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,IAAY,EACZ,UAAkB,EACc,EAAE;IAClC,IAAI,MAAM,GAA0B,EAAE,CAAC;IACvC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,MAAM,GAAG,eAAe,CAAC;IAE7B,OAAO,MAAM,KAAK,eAAe,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAC1E,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE5B,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QACpB,MAAM,IAAI,MAAM,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,OAAoC,EACG,EAAE;IACzC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAA+B,wBAAwB,EAAE;QAClF,OAAO,EAAE,cAAc;QACvB,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC,CAAC,oDAAoD;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EACzC,OAAe,EACf,YAAoB,EACH,EAAE;IACnB,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,aAAa,YAAY,YAAY,OAAO,gBAAgB,EAC5D;QACE,OAAO,EAAE,cAAc;KACxB,CACF,CAAC;IAEF,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EACzC,OAAe,EACf,UAAkB,EAClB,SAAiB,CAAC,EAClB,QAAgB,CAAC,EACwB,EAAE;IAC3C,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,cAAc,OAAO,uBAAuB,oBAAoB,IAAI,UAAU,WAAW,MAAM,UAAU,KAAK,EAAE,EAChH;QACE,OAAO,EAAE,cAAc;KACxB,CACF,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,KAAK,EAClD,IAAY,EACZ,UAAkB,EACQ,EAAE;IAC5B,IAAI,MAAM,GAAoB,EAAE,CAAC;IACjC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,MAAM,GAAG,eAAe,CAAC;IAE7B,OAAO,MAAM,KAAK,eAAe,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QACxF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE5B,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QACpB,MAAM,IAAI,MAAM,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;AAC1D,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- export { getUnit, processTxs, mapTxToOps, getAddress, getTxToBroadcast, getAccountShape, getSubAccount, valueFromUnit, } from "./utils";
1
+ export { mapTxToOps, getAddress, getTxToBroadcast, getAccountShape, getSubAccount, valueFromUnit, } from "./utils";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common-logic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common-logic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAC"}
@@ -1,2 +1,2 @@
1
- export { getUnit, processTxs, mapTxToOps, getAddress, getTxToBroadcast, getAccountShape, getSubAccount, valueFromUnit, } from "./utils";
1
+ export { mapTxToOps, getAddress, getTxToBroadcast, getAccountShape, getSubAccount, valueFromUnit, } from "./utils";
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common-logic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common-logic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAC"}
@@ -3,8 +3,6 @@ import type { Unit } from "@ledgerhq/types-cryptoassets";
3
3
  import { BigNumber } from "bignumber.js";
4
4
  import { BroadcastTransactionRequest, TransactionResponse, Transaction } from "../types";
5
5
  import { GetAccountShape, AccountShapeInfo } from "@ledgerhq/coin-framework/bridge/jsHelpers";
6
- export declare const getUnit: () => Unit;
7
- export declare const processTxs: (txs: TransactionResponse[]) => TransactionResponse[];
8
6
  export declare const mapTxToOps: (accountId: string, { address }: AccountShapeInfo) => (tx: TransactionResponse) => Operation[];
9
7
  export declare const getAddress: (a: Account) => {
10
8
  address: string;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/common-logic/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAIzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAAY,WAAW,EAAE,MAAM,UAAU,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAmB9F,eAAO,MAAM,OAAO,YAAmD,CAAC;AAExE,eAAO,MAAM,UAAU,QAAS,mBAAmB,EAAE,KAAG,mBAAmB,EAyD1E,CAAC;AAEF,eAAO,MAAM,UAAU,cACT,MAAM,eAAe,gBAAgB,UAC5C,mBAAmB,KAAG,SAAS,EAkDnC,CAAC;AAEJ,eAAO,MAAM,UAAU,MAClB,OAAO,KACT;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;CAC6C,CAAC;AAEvE,eAAO,MAAM,gBAAgB,cAChB,SAAS,aACT,MAAM,WACR,OAAO,MAAM,EAAE,GAAG,CAAC,KAC3B,2BAiCF,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,eA6B7B,CAAC;AAEF,eAAO,MAAM,aAAa,YAAa,OAAO,MAAM,WAAW,mEAO9D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,gBAAiB,SAAS,QAAQ,IAAI,cACN,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/common-logic/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAAY,WAAW,EAAE,MAAM,UAAU,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAO9F,eAAO,MAAM,UAAU,cACT,MAAM,eAAe,gBAAgB,UAC5C,mBAAmB,KAAG,SAAS,EAmDnC,CAAC;AAEJ,eAAO,MAAM,UAAU,MAClB,OAAO,KACT;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;CAC6C,CAAC;AAEvE,eAAO,MAAM,gBAAgB,cAChB,SAAS,aACT,MAAM,WACR,OAAO,MAAM,EAAE,GAAG,CAAC,KAC3B,2BAiCF,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,eAiC7B,CAAC;AAEF,eAAO,MAAM,aAAa,YAAa,OAAO,MAAM,WAAW,mEAO9D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,gBAAiB,SAAS,QAAQ,IAAI,cACN,CAAC"}
@@ -1,70 +1,16 @@
1
- import { log } from "@ledgerhq/logs";
2
- import { parseCurrencyUnit } from "@ledgerhq/coin-framework/currencies";
3
- import { getCryptoCurrencyById } from "@ledgerhq/cryptoassets";
4
1
  import { BigNumber } from "bignumber.js";
5
2
  import { TxStatus } from "../types";
6
- import { fetchBalances, fetchBlockHeight, fetchTxs } from "../api/api";
3
+ import { fetchBalances, fetchBlockHeight, fetchTxsWithPages } from "../api/api";
7
4
  import { encodeAccountId } from "@ledgerhq/coin-framework/account";
8
5
  import { encodeOperationId } from "@ledgerhq/coin-framework/operation";
9
6
  import flatMap from "lodash/flatMap";
10
7
  import { buildTokenAccounts } from "../erc20/tokenAccounts";
11
- export const getUnit = () => getCryptoCurrencyById("filecoin").units[0];
12
- export const processTxs = (txs) => {
13
- // Group all tx types related to same tx cid into the same object
14
- const txsByTxCid = txs.reduce((txsByTxCidResult, currentTx) => {
15
- const { hash: txCid, type: txType } = currentTx;
16
- const txByType = txsByTxCidResult[txCid] || {};
17
- switch (txType) {
18
- case "Send":
19
- txByType.Send = currentTx;
20
- break;
21
- case "InvokeContract":
22
- txByType.InvokeContract = currentTx;
23
- break;
24
- case "Fee":
25
- txByType.Fee = currentTx;
26
- break;
27
- default:
28
- log("warn", `tx type [${txType}] on tx cid [${txCid}] was not recognized.`);
29
- break;
30
- }
31
- txsByTxCidResult[txCid] = txByType;
32
- return txsByTxCidResult;
33
- }, {});
34
- // Once all tx types have been grouped, we want to find
35
- const processedTxs = [];
36
- for (const txCid in txsByTxCid) {
37
- const item = txsByTxCid[txCid];
38
- const feeTx = item.Fee;
39
- let mainTx;
40
- if ("Send" in item) {
41
- mainTx = item.Send;
42
- }
43
- else if ("InvokeContract" in item) {
44
- mainTx = item.InvokeContract;
45
- }
46
- else {
47
- log("warn", `unexpected tx type, tx with cid [${txCid}] and payload [${JSON.stringify(item)}]`);
48
- }
49
- if (!mainTx) {
50
- if (feeTx) {
51
- log("warn", `feeTx [${feeTx.hash}] found without a mainTx linked to it.`);
52
- }
53
- continue;
54
- }
55
- if (feeTx) {
56
- mainTx.fee = feeTx.amount;
57
- }
58
- processedTxs.push(mainTx);
59
- }
60
- return processedTxs;
61
- };
62
8
  export const mapTxToOps = (accountId, { address }) => (tx) => {
63
- const { to, from, hash, timestamp, amount, fee, status } = tx;
9
+ const { to, from, hash, timestamp, amount, fee_data, status } = tx;
64
10
  const ops = [];
65
11
  const date = new Date(timestamp * 1000);
66
- const value = parseCurrencyUnit(getUnit(), amount.toString());
67
- const feeToUse = parseCurrencyUnit(getUnit(), (fee || 0).toString());
12
+ const value = new BigNumber(amount);
13
+ const feeToUse = new BigNumber(fee_data?.TotalCost || 0);
68
14
  const isSending = address === from;
69
15
  const isReceiving = address === to;
70
16
  const hasFailed = status !== TxStatus.Ok;
@@ -129,7 +75,11 @@ export const getTxToBroadcast = (operation, signature, rawData) => {
129
75
  };
130
76
  };
131
77
  export const getAccountShape = async (info) => {
132
- const { address, currency, derivationMode } = info;
78
+ const { address, currency, derivationMode, initialAccount } = info;
79
+ const blockSafeDelta = 1200;
80
+ let lastHeight = (initialAccount?.blockHeight ?? 0) - blockSafeDelta;
81
+ if (lastHeight < 0)
82
+ lastHeight = 0;
133
83
  const accountId = encodeAccountId({
134
84
  type: "js",
135
85
  version: "2",
@@ -137,18 +87,18 @@ export const getAccountShape = async (info) => {
137
87
  xpubOrAddress: address,
138
88
  derivationMode,
139
89
  });
140
- const blockHeight = await fetchBlockHeight();
141
- const balance = await fetchBalances(address);
142
- const rawTxs = await fetchTxs(address);
143
- const tokenAccounts = await buildTokenAccounts(address, accountId, info.initialAccount);
144
- const operations = flatMap(processTxs(rawTxs), mapTxToOps(accountId, info)).sort((a, b) => b.date.getTime() - a.date.getTime());
90
+ const [blockHeight, balance, rawTxs, tokenAccounts] = await Promise.all([
91
+ fetchBlockHeight(),
92
+ fetchBalances(address),
93
+ fetchTxsWithPages(address, lastHeight),
94
+ buildTokenAccounts(address, lastHeight, accountId, info.initialAccount),
95
+ ]);
145
96
  const result = {
146
97
  id: accountId,
147
98
  subAccounts: tokenAccounts,
148
99
  balance: new BigNumber(balance.total_balance),
149
100
  spendableBalance: new BigNumber(balance.spendable_balance),
150
- operations,
151
- operationsCount: operations.length,
101
+ operations: flatMap(rawTxs, mapTxToOps(accountId, info)).sort((a, b) => b.date.getTime() - a.date.getTime()),
152
102
  blockHeight: blockHeight.current_block_identifier.index,
153
103
  };
154
104
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/common-logic/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/common-logic/utils.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import { Account, Operation, TokenAccount } from "@ledgerhq/types-live";
2
2
  import { ERC20Transfer } from "../types";
3
3
  import BigNumber from "bignumber.js";
4
- import { Unit } from "@ledgerhq/types-cryptoassets";
5
- export declare const erc20TxnToOperation: (tx: ERC20Transfer, address: string, accountId: string, unit: Unit) => Operation[];
6
- export declare function buildTokenAccounts(filAddr: string, parentAccountId: string, initialAccount?: Account): Promise<TokenAccount[]>;
4
+ export declare const erc20TxnToOperation: (tx: ERC20Transfer, address: string, accountId: string) => Operation[];
5
+ export declare function buildTokenAccounts(filAddr: string, lastHeight: number, parentAccountId: string, initialAccount?: Account): Promise<TokenAccount[]>;
7
6
  export declare const encodeTxnParams: (abiEncodedParams: string) => string;
8
7
  export declare const abiEncodeTransferParams: (recipient: string, amount: string) => string;
9
8
  export declare const generateTokenTxnParams: (recipient: string, amount: BigNumber) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"tokenAccounts.d.ts","sourceRoot":"","sources":["../../src/erc20/tokenAccounts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGxE,OAAO,EAAE,aAAa,EAAY,MAAM,UAAU,CAAC;AAInD,OAAO,SAAS,MAAM,cAAc,CAAC;AAMrC,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAIpD,eAAO,MAAM,mBAAmB,OAC1B,aAAa,WACR,MAAM,aACJ,MAAM,QACX,IAAI,KACT,SAAS,EA0DX,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,YAAY,EAAE,CAAC,CAiEzB;AAED,eAAO,MAAM,eAAe,qBAAsB,MAAM,WAUvD,CAAC;AAEF,eAAO,MAAM,uBAAuB,cAAe,MAAM,UAAU,MAAM,WAIxE,CAAC;AAEF,eAAO,MAAM,sBAAsB,cAAe,MAAM,UAAU,SAAS,WAU1E,CAAC"}
1
+ {"version":3,"file":"tokenAccounts.d.ts","sourceRoot":"","sources":["../../src/erc20/tokenAccounts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGxE,OAAO,EAAE,aAAa,EAAY,MAAM,UAAU,CAAC;AAInD,OAAO,SAAS,MAAM,cAAc,CAAC;AASrC,eAAO,MAAM,mBAAmB,OAC1B,aAAa,WACR,MAAM,aACJ,MAAM,KAChB,SAAS,EA0DX,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,YAAY,EAAE,CAAC,CA2FzB;AAED,eAAO,MAAM,eAAe,qBAAsB,MAAM,WAUvD,CAAC;AAEF,eAAO,MAAM,uBAAuB,cAAe,MAAM,UAAU,MAAM,WAIxE,CAAC;AAEF,eAAO,MAAM,sBAAsB,cAAe,MAAM,UAAU,SAAS,WAU1E,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import cbor from "@zondax/cbor";
2
- import { fetchERC20TokenBalance, fetchERC20Transactions } from "../api";
2
+ import { fetchERC20TokenBalance, fetchERC20TransactionsWithPages } from "../api";
3
3
  import invariant from "invariant";
4
4
  import { TxStatus } from "../types";
5
5
  import { emptyHistoryCache, encodeTokenAccountId } from "@ledgerhq/coin-framework/account/index";
@@ -12,11 +12,11 @@ import { ethers } from "ethers";
12
12
  import contractABI from "./ERC20.json";
13
13
  import { RecipientRequired } from "@ledgerhq/errors";
14
14
  import { AccountType } from "../bridge/utils";
15
- import { valueFromUnit } from "../common-logic/utils";
16
- export const erc20TxnToOperation = (tx, address, accountId, unit) => {
15
+ import { mergeOps } from "@ledgerhq/coin-framework/bridge/jsHelpers";
16
+ export const erc20TxnToOperation = (tx, address, accountId) => {
17
17
  try {
18
18
  const { to, from, timestamp, tx_hash, tx_cid, amount, height, status } = tx;
19
- const value = valueFromUnit(new BigNumber(amount), unit);
19
+ const txAmount = new BigNumber(amount);
20
20
  const isSending = address.toLowerCase() === from.toLowerCase();
21
21
  const isReceiving = address.toLowerCase() === to.toLowerCase();
22
22
  const fee = new BigNumber(0);
@@ -29,7 +29,7 @@ export const erc20TxnToOperation = (tx, address, accountId, unit) => {
29
29
  id: encodeOperationId(accountId, hash, "OUT"),
30
30
  hash,
31
31
  type: "OUT",
32
- value: value,
32
+ value: txAmount,
33
33
  fee,
34
34
  blockHeight: height,
35
35
  blockHash: "",
@@ -46,7 +46,7 @@ export const erc20TxnToOperation = (tx, address, accountId, unit) => {
46
46
  id: encodeOperationId(accountId, hash, "IN"),
47
47
  hash,
48
48
  type: "IN",
49
- value,
49
+ value: txAmount,
50
50
  fee,
51
51
  blockHeight: height,
52
52
  blockHash: "",
@@ -66,40 +66,48 @@ export const erc20TxnToOperation = (tx, address, accountId, unit) => {
66
66
  return [];
67
67
  }
68
68
  };
69
- export async function buildTokenAccounts(filAddr, parentAccountId, initialAccount) {
69
+ export async function buildTokenAccounts(filAddr, lastHeight, parentAccountId, initialAccount) {
70
70
  try {
71
- const transfers = await fetchERC20Transactions(filAddr);
72
- const transfersUntangled = transfers.reduce((prev, curr) => {
73
- curr.contract_address = curr.contract_address.toLowerCase();
74
- if (prev[curr.contract_address]) {
75
- prev[curr.contract_address] = [...prev[curr.contract_address], curr];
76
- }
77
- else {
78
- prev[curr.contract_address] = [curr];
71
+ const transfers = await fetchERC20TransactionsWithPages(filAddr, lastHeight);
72
+ if (!transfers.length) {
73
+ return initialAccount?.subAccounts ?? [];
74
+ }
75
+ // Group transfers by contract address (normalized to lowercase)
76
+ const transfersByContract = transfers.reduce((acc, transfer) => {
77
+ const contractAddr = transfer.contract_address.toLowerCase();
78
+ transfer.contract_address = contractAddr;
79
+ if (!acc[contractAddr]) {
80
+ acc[contractAddr] = [];
79
81
  }
80
- return prev;
82
+ acc[contractAddr].push(transfer);
83
+ return acc;
81
84
  }, {});
82
- const subs = [];
83
- for (const [cAddr, txns] of Object.entries(transfersUntangled)) {
84
- const token = await getCryptoAssetsStore().findTokenByAddressInCurrency(cAddr, "filecoin");
85
+ // Create lookup map for existing sub-accounts
86
+ const existingSubAccounts = new Map(initialAccount?.subAccounts?.map(sa => [sa.token.contractAddress.toLowerCase(), sa]) ?? []);
87
+ // Track which existing accounts we've processed
88
+ const processedContracts = new Set();
89
+ const tokenAccounts = [];
90
+ // Process accounts with new transfers
91
+ for (const [contractAddr, txns] of Object.entries(transfersByContract)) {
92
+ processedContracts.add(contractAddr);
93
+ const token = await getCryptoAssetsStore().findTokenByAddressInCurrency(contractAddr, "filecoin");
85
94
  if (!token) {
86
- log("error", `filecoin token not found, addr: ${cAddr}`);
95
+ log("error", `filecoin token not found, addr: ${contractAddr}`);
87
96
  continue;
88
97
  }
89
- const balance = await fetchERC20TokenBalance(filAddr, cAddr);
90
- const bnBalance = new BigNumber(balance.toString());
98
+ const balance = await fetchERC20TokenBalance(filAddr, contractAddr);
99
+ const bnBalance = new BigNumber(balance);
91
100
  const tokenAccountId = encodeTokenAccountId(parentAccountId, token);
92
101
  const operations = txns
93
- .flatMap(txn => erc20TxnToOperation(txn, filAddr, tokenAccountId, token.units[0]))
102
+ .flatMap(txn => erc20TxnToOperation(txn, filAddr, tokenAccountId))
94
103
  .flat()
95
104
  .sort((a, b) => b.date.getTime() - a.date.getTime());
105
+ // Skip if no operations and zero balance
96
106
  if (operations.length === 0 && bnBalance.isZero()) {
97
107
  continue;
98
108
  }
99
- const maybeExistingSubAccount = initialAccount &&
100
- initialAccount.subAccounts &&
101
- initialAccount.subAccounts.find(a => a.id === tokenAccountId);
102
- const sub = {
109
+ const existingAccount = existingSubAccounts.get(contractAddr);
110
+ const tokenAccount = {
103
111
  type: AccountType.TokenAccount,
104
112
  id: tokenAccountId,
105
113
  parentId: parentAccountId,
@@ -107,15 +115,21 @@ export async function buildTokenAccounts(filAddr, parentAccountId, initialAccoun
107
115
  balance: bnBalance,
108
116
  spendableBalance: bnBalance,
109
117
  operationsCount: txns.length,
110
- operations,
111
- pendingOperations: maybeExistingSubAccount ? maybeExistingSubAccount.pendingOperations : [],
112
- creationDate: operations.length > 0 ? operations[0].date : new Date(),
113
- swapHistory: maybeExistingSubAccount ? maybeExistingSubAccount.swapHistory : [],
118
+ operations: mergeOps(existingAccount?.operations ?? [], operations),
119
+ pendingOperations: existingAccount?.pendingOperations ?? [],
120
+ creationDate: operations[operations.length - 1]?.date ?? new Date(),
121
+ swapHistory: existingAccount?.swapHistory ?? [],
114
122
  balanceHistoryCache: emptyHistoryCache, // calculated in the jsHelpers
115
123
  };
116
- subs.push(sub);
124
+ tokenAccounts.push(tokenAccount);
125
+ }
126
+ // Add existing accounts that didn't have new transfers
127
+ for (const [contractAddr, existingAccount] of existingSubAccounts) {
128
+ if (!processedContracts.has(contractAddr)) {
129
+ tokenAccounts.push(existingAccount);
130
+ }
117
131
  }
118
- return subs;
132
+ return tokenAccounts;
119
133
  }
120
134
  catch (e) {
121
135
  log("error", "filecoin error building token accounts", e);
@@ -1 +1 @@
1
- {"version":3,"file":"tokenAccounts.js","sourceRoot":"","sources":["../../src/erc20/tokenAccounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenAccounts.js","sourceRoot":"","sources":["../../src/erc20/tokenAccounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import { Account, Operation, TokenAccount } from "@ledgerhq/types-live";
2
+ import type { Transaction } from "../types/bridge";
3
+ import type { TransactionResponse, BalanceResponse, EstimatedFeesResponse, ERC20Transfer } from "../types/common";
4
+ /**
5
+ * Sample Filecoin addresses for testing
6
+ */
7
+ export declare const TEST_ADDRESSES: {
8
+ F1_ADDRESS: string;
9
+ F4_ADDRESS: string;
10
+ RECIPIENT_F1: string;
11
+ RECIPIENT_F4: string;
12
+ ERC20_CONTRACT: string;
13
+ };
14
+ /**
15
+ * Sample transaction hashes for testing
16
+ */
17
+ export declare const TEST_TRANSACTION_HASHES: {
18
+ VALID: string;
19
+ };
20
+ /**
21
+ * Sample block heights for testing
22
+ */
23
+ export declare const TEST_BLOCK_HEIGHTS: {
24
+ CURRENT: number;
25
+ RECENT: number;
26
+ OLD: number;
27
+ };
28
+ /**
29
+ * Create a mock Filecoin account for testing
30
+ *
31
+ * @param options Optional parameters to override default values
32
+ * @returns A mock Filecoin account
33
+ */
34
+ export declare const createMockAccount: (options?: Partial<Account>) => Account;
35
+ /**
36
+ * Create a mock Filecoin transaction for testing
37
+ *
38
+ * @param options Optional parameters to override default values
39
+ * @returns A mock Filecoin transaction
40
+ */
41
+ export declare const createMockTransaction: (options?: Partial<Transaction>) => Transaction;
42
+ /**
43
+ * Create a mock Filecoin operation for testing
44
+ *
45
+ * @param account The account associated with the operation
46
+ * @param transaction The transaction details
47
+ * @param options Optional parameters to override default values
48
+ * @returns A mock Filecoin operation
49
+ */
50
+ export declare const createMockOperation: (account: Account, transaction: Transaction, options?: Partial<Operation>) => Operation;
51
+ /**
52
+ * Create a mock TokenAccount for testing ERC20 functionality
53
+ *
54
+ * @param parentAccount The parent Filecoin account
55
+ * @param options Optional parameters to override default values
56
+ * @returns A mock TokenAccount
57
+ */
58
+ export declare const createMockTokenAccount: (parentAccount: Account, options?: Partial<TokenAccount>) => TokenAccount;
59
+ /**
60
+ * Create mock API response for balance
61
+ *
62
+ * @param options Optional parameters to override default values
63
+ * @returns A mock BalanceResponse
64
+ */
65
+ export declare const createMockBalanceResponse: (options?: Partial<BalanceResponse>) => BalanceResponse;
66
+ /**
67
+ * Create mock API response for transaction
68
+ *
69
+ * @param options Optional parameters to override default values
70
+ * @returns A mock TransactionResponse
71
+ */
72
+ export declare const createMockTransactionResponse: (options?: Partial<TransactionResponse>) => TransactionResponse;
73
+ /**
74
+ * Create mock API response for estimated fees
75
+ *
76
+ * @param options Optional parameters to override default values
77
+ * @returns A mock EstimatedFeesResponse
78
+ */
79
+ export declare const createMockEstimatedFeesResponse: (options?: Partial<EstimatedFeesResponse>) => EstimatedFeesResponse;
80
+ /**
81
+ * Create mock ERC20 transfer for testing token functionality
82
+ *
83
+ * @param options Optional parameters to override default values
84
+ * @returns A mock ERC20Transfer
85
+ */
86
+ export declare const createMockERC20Transfer: (options?: Partial<ERC20Transfer>) => ERC20Transfer;
87
+ //# sourceMappingURL=fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/test/fixtures.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAiB,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACd,MAAM,iBAAiB,CAAC;AAIzB;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;CAW1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB;;CAEnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;CAI9B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,aAAc,QAAQ,OAAO,CAAC,KAAG,OA8E9D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,aAAc,QAAQ,WAAW,CAAC,KAAG,WAmBtE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,YACrB,OAAO,eACH,WAAW,YACd,QAAQ,SAAS,CAAC,KAC3B,SAuBF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,kBAClB,OAAO,YACZ,QAAQ,YAAY,CAAC,KAC9B,YA2CF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,aAAc,QAAQ,eAAe,CAAC,KAAG,eAM9E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,aAC9B,QAAQ,mBAAmB,CAAC,KACrC,mBA0BF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,aAChC,QAAQ,qBAAqB,CAAC,KACvC,qBAOF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,aAAc,QAAQ,aAAa,CAAC,KAAG,aAmB1E,CAAC"}