@ledgerhq/coin-xrp 0.9.2 → 1.0.0-nightly.1

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 (144) hide show
  1. package/.turbo/turbo-build.log +2 -2
  2. package/CHANGELOG.md +11 -10
  3. package/lib/api/index.d.ts.map +1 -1
  4. package/lib/api/index.integ.test.js +35 -36
  5. package/lib/api/index.integ.test.js.map +1 -1
  6. package/lib/api/index.js +65 -50
  7. package/lib/api/index.js.map +1 -1
  8. package/lib/api/index.test.js +66 -44
  9. package/lib/api/index.test.js.map +1 -1
  10. package/lib/bridge/broadcast.js +3 -12
  11. package/lib/bridge/broadcast.js.map +1 -1
  12. package/lib/bridge/estimateMaxSpendable.js +9 -14
  13. package/lib/bridge/estimateMaxSpendable.js.map +1 -1
  14. package/lib/bridge/getTransactionStatus.js +4 -13
  15. package/lib/bridge/getTransactionStatus.js.map +1 -1
  16. package/lib/bridge/prepareTransaction.js +4 -13
  17. package/lib/bridge/prepareTransaction.js.map +1 -1
  18. package/lib/bridge/signOperation.js +60 -68
  19. package/lib/bridge/signOperation.js.map +1 -1
  20. package/lib/bridge/synchronization.js +32 -45
  21. package/lib/bridge/synchronization.js.map +1 -1
  22. package/lib/bridge/synchronization.test.js +21 -17
  23. package/lib/bridge/synchronization.test.js.map +1 -1
  24. package/lib/bridge/transaction.js +16 -4
  25. package/lib/bridge/transaction.js.map +1 -1
  26. package/lib/logic/broadcast.js +8 -19
  27. package/lib/logic/broadcast.js.map +1 -1
  28. package/lib/logic/broadcast.test.js +6 -15
  29. package/lib/logic/broadcast.test.js.map +1 -1
  30. package/lib/logic/combine.js +2 -2
  31. package/lib/logic/combine.js.map +1 -1
  32. package/lib/logic/craftTransaction.js +28 -34
  33. package/lib/logic/craftTransaction.js.map +1 -1
  34. package/lib/logic/craftTransaction.test.js +8 -17
  35. package/lib/logic/craftTransaction.test.js.map +1 -1
  36. package/lib/logic/estimateFees.js +17 -28
  37. package/lib/logic/estimateFees.js.map +1 -1
  38. package/lib/logic/estimateFees.test.js +10 -19
  39. package/lib/logic/estimateFees.test.js.map +1 -1
  40. package/lib/logic/getBalance.js +3 -14
  41. package/lib/logic/getBalance.js.map +1 -1
  42. package/lib/logic/getBalance.test.js +4 -13
  43. package/lib/logic/getBalance.test.js.map +1 -1
  44. package/lib/logic/lastBlock.js +7 -18
  45. package/lib/logic/lastBlock.js.map +1 -1
  46. package/lib/logic/listOperations.d.ts +15 -5
  47. package/lib/logic/listOperations.d.ts.map +1 -1
  48. package/lib/logic/listOperations.js +84 -71
  49. package/lib/logic/listOperations.js.map +1 -1
  50. package/lib/logic/listOperations.test.js +66 -62
  51. package/lib/logic/listOperations.test.js.map +1 -1
  52. package/lib/logic/utils.js +9 -18
  53. package/lib/logic/utils.js.map +1 -1
  54. package/lib/logic/utils.test.js +9 -18
  55. package/lib/logic/utils.test.js.map +1 -1
  56. package/lib/network/index.d.ts +6 -3
  57. package/lib/network/index.d.ts.map +1 -1
  58. package/lib/network/index.js +40 -48
  59. package/lib/network/index.js.map +1 -1
  60. package/lib/network/index.test.js +9 -18
  61. package/lib/network/index.test.js.map +1 -1
  62. package/lib/network/types.d.ts +5 -0
  63. package/lib/network/types.d.ts.map +1 -1
  64. package/lib/network/types.js.map +1 -1
  65. package/lib/signer/getAddress.js +3 -12
  66. package/lib/signer/getAddress.js.map +1 -1
  67. package/lib/test/cli.js +5 -1
  68. package/lib/test/cli.js.map +1 -1
  69. package/lib-es/api/index.d.ts.map +1 -1
  70. package/lib-es/api/index.integ.test.js +35 -36
  71. package/lib-es/api/index.integ.test.js.map +1 -1
  72. package/lib-es/api/index.js +65 -50
  73. package/lib-es/api/index.js.map +1 -1
  74. package/lib-es/api/index.test.js +66 -44
  75. package/lib-es/api/index.test.js.map +1 -1
  76. package/lib-es/bridge/broadcast.js +3 -12
  77. package/lib-es/bridge/broadcast.js.map +1 -1
  78. package/lib-es/bridge/estimateMaxSpendable.js +9 -14
  79. package/lib-es/bridge/estimateMaxSpendable.js.map +1 -1
  80. package/lib-es/bridge/getTransactionStatus.js +4 -13
  81. package/lib-es/bridge/getTransactionStatus.js.map +1 -1
  82. package/lib-es/bridge/prepareTransaction.js +4 -13
  83. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  84. package/lib-es/bridge/signOperation.js +60 -68
  85. package/lib-es/bridge/signOperation.js.map +1 -1
  86. package/lib-es/bridge/synchronization.js +32 -45
  87. package/lib-es/bridge/synchronization.js.map +1 -1
  88. package/lib-es/bridge/synchronization.test.js +21 -17
  89. package/lib-es/bridge/synchronization.test.js.map +1 -1
  90. package/lib-es/bridge/transaction.js +16 -4
  91. package/lib-es/bridge/transaction.js.map +1 -1
  92. package/lib-es/logic/broadcast.js +8 -19
  93. package/lib-es/logic/broadcast.js.map +1 -1
  94. package/lib-es/logic/broadcast.test.js +6 -15
  95. package/lib-es/logic/broadcast.test.js.map +1 -1
  96. package/lib-es/logic/combine.js +2 -2
  97. package/lib-es/logic/combine.js.map +1 -1
  98. package/lib-es/logic/craftTransaction.js +28 -34
  99. package/lib-es/logic/craftTransaction.js.map +1 -1
  100. package/lib-es/logic/craftTransaction.test.js +8 -17
  101. package/lib-es/logic/craftTransaction.test.js.map +1 -1
  102. package/lib-es/logic/estimateFees.js +17 -28
  103. package/lib-es/logic/estimateFees.js.map +1 -1
  104. package/lib-es/logic/estimateFees.test.js +10 -19
  105. package/lib-es/logic/estimateFees.test.js.map +1 -1
  106. package/lib-es/logic/getBalance.js +3 -14
  107. package/lib-es/logic/getBalance.js.map +1 -1
  108. package/lib-es/logic/getBalance.test.js +4 -13
  109. package/lib-es/logic/getBalance.test.js.map +1 -1
  110. package/lib-es/logic/lastBlock.js +7 -18
  111. package/lib-es/logic/lastBlock.js.map +1 -1
  112. package/lib-es/logic/listOperations.d.ts +15 -5
  113. package/lib-es/logic/listOperations.d.ts.map +1 -1
  114. package/lib-es/logic/listOperations.js +84 -71
  115. package/lib-es/logic/listOperations.js.map +1 -1
  116. package/lib-es/logic/listOperations.test.js +66 -62
  117. package/lib-es/logic/listOperations.test.js.map +1 -1
  118. package/lib-es/logic/utils.js +9 -18
  119. package/lib-es/logic/utils.js.map +1 -1
  120. package/lib-es/logic/utils.test.js +9 -18
  121. package/lib-es/logic/utils.test.js.map +1 -1
  122. package/lib-es/network/index.d.ts +6 -3
  123. package/lib-es/network/index.d.ts.map +1 -1
  124. package/lib-es/network/index.js +39 -47
  125. package/lib-es/network/index.js.map +1 -1
  126. package/lib-es/network/index.test.js +9 -18
  127. package/lib-es/network/index.test.js.map +1 -1
  128. package/lib-es/network/types.d.ts +5 -0
  129. package/lib-es/network/types.d.ts.map +1 -1
  130. package/lib-es/network/types.js.map +1 -1
  131. package/lib-es/signer/getAddress.js +3 -12
  132. package/lib-es/signer/getAddress.js.map +1 -1
  133. package/lib-es/test/cli.js +5 -1
  134. package/lib-es/test/cli.js.map +1 -1
  135. package/package.json +7 -6
  136. package/src/api/index.integ.test.ts +12 -6
  137. package/src/api/index.test.ts +119 -75
  138. package/src/api/index.ts +62 -10
  139. package/src/bridge/synchronization.test.ts +31 -15
  140. package/src/logic/listOperations.test.ts +104 -85
  141. package/src/logic/listOperations.ts +47 -34
  142. package/src/network/index.ts +21 -8
  143. package/src/network/types.ts +6 -0
  144. package/tsconfig.json +0 -1
@@ -1,27 +1,8 @@
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
- };
10
- var __rest = (this && this.__rest) || function (s, e) {
11
- var t = {};
12
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
13
- t[p] = s[p];
14
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
15
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
16
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
17
- t[p[i]] = s[p[i]];
18
- }
19
- return t;
20
- };
1
+ import { log } from "@ledgerhq/logs";
21
2
  import coinConfig from "../config";
22
3
  import { broadcast, combine, craftTransaction, estimateFees, getBalance, getNextValidSequence, lastBlock, listOperations, } from "../logic";
23
4
  export function createApi(config) {
24
- coinConfig.setCoinConfig(() => (Object.assign(Object.assign({}, config), { status: { type: "active" } })));
5
+ coinConfig.setCoinConfig(() => ({ ...config, status: { type: "active" } }));
25
6
  return {
26
7
  broadcast,
27
8
  combine,
@@ -32,36 +13,70 @@ export function createApi(config) {
32
13
  listOperations: operations,
33
14
  };
34
15
  }
35
- function craft(address, transaction) {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- const nextSequenceNumber = yield getNextValidSequence(address);
38
- const tx = yield craftTransaction({ address, nextSequenceNumber }, transaction);
39
- return tx.serializedTransaction;
40
- });
16
+ async function craft(address, transaction) {
17
+ const nextSequenceNumber = await getNextValidSequence(address);
18
+ const tx = await craftTransaction({ address, nextSequenceNumber }, transaction);
19
+ return tx.serializedTransaction;
20
+ }
21
+ async function estimate(_addr, _amount) {
22
+ const fees = await estimateFees();
23
+ return fees.fee;
41
24
  }
42
- function estimate(_addr, _amount) {
43
- return __awaiter(this, void 0, void 0, function* () {
44
- const fees = yield estimateFees();
45
- return fees.fee;
46
- });
25
+ async function operationsFromHeight(address, minHeight) {
26
+ async function fetchNextPage(state) {
27
+ const [operations, apiNextCursor] = await listOperations(address, {
28
+ limit: state.pageSize,
29
+ minHeight: state.minHeight,
30
+ order: "asc",
31
+ });
32
+ const newCurrentIteration = state.currentIteration + 1;
33
+ let continueIteration = true;
34
+ if (apiNextCursor === "") {
35
+ continueIteration = false;
36
+ }
37
+ else if (newCurrentIteration >= state.maxIterations) {
38
+ log("coin:xrp", "(api/operations): max iterations reached", state.maxIterations);
39
+ continueIteration = false;
40
+ }
41
+ const accumulated = state.accumulator.concat(operations);
42
+ return {
43
+ ...state,
44
+ currentIteration: newCurrentIteration,
45
+ continueIterations: continueIteration,
46
+ apiNextCursor: apiNextCursor,
47
+ accumulator: accumulated,
48
+ };
49
+ }
50
+ const firstState = {
51
+ pageSize: 200,
52
+ maxIterations: 10,
53
+ currentIteration: 0,
54
+ minHeight: minHeight,
55
+ continueIterations: true,
56
+ accumulator: [],
57
+ };
58
+ let state = await fetchNextPage(firstState);
59
+ while (state.continueIterations) {
60
+ state = await fetchNextPage(state);
61
+ }
62
+ return [state.accumulator, state.apiNextCursor ?? ""];
47
63
  }
48
- function operations(address_1, _a) {
49
- return __awaiter(this, arguments, void 0, function* (address, { limit, start }) {
50
- const options = { limit: limit };
51
- if (start)
52
- options.minHeight = start;
53
- const [ops, index] = yield listOperations(address, options);
54
- return [
55
- ops.map(op => {
56
- const { simpleType, blockHash, blockTime, blockHeight } = op, rest = __rest(op, ["simpleType", "blockHash", "blockTime", "blockHeight"]);
57
- return Object.assign(Object.assign({}, rest), { block: {
58
- height: blockHeight,
59
- hash: blockHash,
60
- time: blockTime,
61
- } });
62
- }),
63
- index,
64
- ];
65
- });
64
+ async function operations(address, { minHeight }) {
65
+ const [ops, token] = await operationsFromHeight(address, minHeight);
66
+ // TODO token must be implemented properly (waiting ack from the design document)
67
+ return [
68
+ ops.map(op => {
69
+ const { simpleType, blockHash, blockTime, blockHeight, ...rest } = op;
70
+ return {
71
+ ...rest,
72
+ block: {
73
+ height: blockHeight,
74
+ hash: blockHash,
75
+ time: blockTime,
76
+ },
77
+ };
78
+ }),
79
+ token,
80
+ ];
66
81
  }
67
82
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAMA,OAAO,UAA8B,MAAM,WAAW,CAAC;AACvD,OAAO,EACL,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,SAAS,EACT,cAAc,GACf,MAAM,UAAU,CAAC;AAElB,MAAM,UAAU,SAAS,CAAC,MAAiB;IACzC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,iCAAM,MAAM,KAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAG,CAAC,CAAC;IAE5E,OAAO;QACL,SAAS;QACT,OAAO;QACP,gBAAgB,EAAE,KAAK;QACvB,YAAY,EAAE,QAAQ;QACtB,UAAU;QACV,SAAS;QACT,cAAc,EAAE,UAAU;KAC3B,CAAC;AACJ,CAAC;AAED,SAAe,KAAK,CAAC,OAAe,EAAE,WAA2B;;QAC/D,MAAM,kBAAkB,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,WAAW,CAAC,CAAC;QAChF,OAAO,EAAE,CAAC,qBAAqB,CAAC;IAClC,CAAC;CAAA;AAED,SAAe,QAAQ,CAAC,KAAa,EAAE,OAAe;;QACpD,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;CAAA;AAED,SAAe,UAAU;yDACvB,OAAe,EACf,EAAE,KAAK,EAAE,KAAK,EAAc;QAE5B,MAAM,OAAO,GAGT,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACrB,IAAI,KAAK;YAAE,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;QACrC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5D,OAAO;YACL,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBACX,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,KAAc,EAAE,EAAX,IAAI,UAAK,EAAE,EAA/D,uDAA0D,CAAK,CAAC;gBACtE,OAAO,gCACF,IAAI,KACP,KAAK,EAAE;wBACL,MAAM,EAAE,WAAW;wBACnB,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;qBAChB,GACkB,CAAC;YACxB,CAAC,CAAC;YACF,KAAK;SACN,CAAC;IACJ,CAAC;CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,UAA8B,MAAM,WAAW,CAAC;AACvD,OAAO,EACL,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,SAAS,EACT,cAAc,GACf,MAAM,UAAU,CAAC;AAGlB,MAAM,UAAU,SAAS,CAAC,MAAiB;IACzC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IAE5E,OAAO;QACL,SAAS;QACT,OAAO;QACP,gBAAgB,EAAE,KAAK;QACvB,YAAY,EAAE,QAAQ;QACtB,UAAU;QACV,SAAS;QACT,cAAc,EAAE,UAAU;KAC3B,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,KAAK,CAAC,OAAe,EAAE,WAA2B;IAC/D,MAAM,kBAAkB,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC/D,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,WAAW,CAAC,CAAC;IAChF,OAAO,EAAE,CAAC,qBAAqB,CAAC;AAClC,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,KAAa,EAAE,OAAe;IACpD,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;IAClC,OAAO,IAAI,CAAC,GAAG,CAAC;AAClB,CAAC;AAYD,KAAK,UAAU,oBAAoB,CACjC,OAAe,EACf,SAAiB;IAEjB,KAAK,UAAU,aAAa,CAAC,KAAsB;QACjD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE;YAChE,KAAK,EAAE,KAAK,CAAC,QAAQ;YACrB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;QACH,MAAM,mBAAmB,GAAG,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACvD,IAAI,iBAAiB,GAAG,IAAI,CAAC;QAC7B,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;YACzB,iBAAiB,GAAG,KAAK,CAAC;QAC5B,CAAC;aAAM,IAAI,mBAAmB,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACtD,GAAG,CAAC,UAAU,EAAE,0CAA0C,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACjF,iBAAiB,GAAG,KAAK,CAAC;QAC5B,CAAC;QACD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzD,OAAO;YACL,GAAG,KAAK;YACR,gBAAgB,EAAE,mBAAmB;YACrC,kBAAkB,EAAE,iBAAiB;YACrC,aAAa,EAAE,aAAa;YAC5B,WAAW,EAAE,WAAW;SACzB,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAoB;QAClC,QAAQ,EAAE,GAAG;QACb,aAAa,EAAE,EAAE;QACjB,gBAAgB,EAAE,CAAC;QACnB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,IAAI;QACxB,WAAW,EAAE,EAAE;KAChB,CAAC;IAEF,IAAI,KAAK,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAChC,KAAK,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,OAAe,EACf,EAAE,SAAS,EAAc;IAEzB,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACpE,iFAAiF;IACjF,OAAO;QACL,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;YACX,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;YACtE,OAAO;gBACL,GAAG,IAAI;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,WAAW;oBACnB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,SAAS;iBAChB;aACF,CAAC;QACJ,CAAC,CAAC;QACF,KAAK;KACN,CAAC;AACJ,CAAC"}
@@ -1,12 +1,3 @@
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
- };
10
1
  import { RIPPLE_EPOCH } from "../logic";
11
2
  import { createApi } from "./index";
12
3
  const mockGetServerInfos = jest.fn().mockResolvedValue({
@@ -25,24 +16,21 @@ describe("listOperations", () => {
25
16
  mockGetServerInfos.mockClear();
26
17
  mockGetTransactions.mockClear();
27
18
  });
28
- it.each([
29
- {
30
- address: "WHATEVER_ADDRESS",
31
- opSender: "account_addr",
32
- opDestination: "WHATEVER_ADDRESS",
33
- expectedType: "IN",
34
- },
35
- {
36
- address: "WHATEVER_ADDRESS",
37
- opSender: "WHATEVER_ADDRESS",
38
- opDestination: "destination_addr",
39
- expectedType: "OUT",
40
- },
41
- ])("should return the list of operations associated to an account", (_a) => __awaiter(void 0, [_a], void 0, function* ({ address, opSender, opDestination, expectedType }) {
42
- // Givem
43
- const deliveredAmount = 100;
44
- const fee = 10;
45
- mockGetTransactions.mockResolvedValue([
19
+ const defaultMarker = { ledger: 1, seq: 1 };
20
+ function mockNetworkTxs(txs, marker) {
21
+ return {
22
+ account: "account",
23
+ ledger_index_max: 1,
24
+ ledger_index_min: 1,
25
+ limit: 1,
26
+ validated: false,
27
+ transactions: txs,
28
+ marker: marker,
29
+ error: "",
30
+ };
31
+ }
32
+ function givenTxs(fee, deliveredAmount, opSender, opDestination) {
33
+ return [
46
34
  {
47
35
  ledger_hash: "HASH_VALUE_BLOCK",
48
36
  hash: "HASH_VALUE",
@@ -97,21 +85,55 @@ describe("listOperations", () => {
97
85
  Sequence: 1,
98
86
  },
99
87
  },
100
- ]);
88
+ ];
89
+ }
90
+ it("should kill the loop after 10 iterations", async () => {
91
+ const txs = givenTxs(BigInt(10), BigInt(10), "src", "dest");
92
+ // each time it's called it returns a marker, so in theory it would loop forever
93
+ mockGetTransactions.mockResolvedValue(mockNetworkTxs(txs, defaultMarker));
94
+ const [results, _] = await api.listOperations("src", { minHeight: 0 });
95
+ // called 10 times because there is a hard limit of 10 iterations in case something goes wrong
96
+ // with interpretation of the token (bug / explorer api changed ...)
97
+ expect(mockGetServerInfos).toHaveBeenCalledTimes(10);
98
+ expect(mockGetTransactions).toHaveBeenCalledTimes(10);
99
+ expect(results.length).toBe(txs.length * 10);
100
+ });
101
+ it.each([
102
+ {
103
+ address: "WHATEVER_ADDRESS",
104
+ opSender: "account_addr",
105
+ opDestination: "WHATEVER_ADDRESS",
106
+ expectedType: "IN",
107
+ },
108
+ {
109
+ address: "WHATEVER_ADDRESS",
110
+ opSender: "WHATEVER_ADDRESS",
111
+ opDestination: "destination_addr",
112
+ expectedType: "OUT",
113
+ },
114
+ ])(`should return the list of operations associated to an account when expected type is %s`, async ({ address, opSender, opDestination, expectedType }) => {
115
+ // Givem
116
+ const deliveredAmount = BigInt(100);
117
+ const fee = BigInt(10);
118
+ mockGetTransactions.mockResolvedValueOnce(mockNetworkTxs(givenTxs(fee, deliveredAmount, opSender, opDestination), defaultMarker));
119
+ // second call to kill the loop
120
+ mockGetTransactions.mockResolvedValue(mockNetworkTxs([], undefined));
101
121
  // When
102
- const [results, _] = yield api.listOperations(address, { limit: 100 });
122
+ const [results, _] = await api.listOperations(address, { minHeight: 0 });
103
123
  // Then
104
- expect(mockGetServerInfos).toHaveBeenCalledTimes(1);
105
- expect(mockGetTransactions).toHaveBeenCalledTimes(1);
124
+ // called twice because the marker is set the first time
125
+ expect(mockGetServerInfos).toHaveBeenCalledTimes(2);
126
+ expect(mockGetTransactions).toHaveBeenCalledTimes(2);
106
127
  // if expectedType is "OUT", compute value with fees (i.e. delivered_amount + Fee)
107
- const expectedValue = expectedType === "IN" ? BigInt(deliveredAmount) : BigInt(deliveredAmount + fee);
128
+ const expectedValue = expectedType === "IN" ? deliveredAmount : deliveredAmount + fee;
129
+ // the order is reversed so that the result is always sorted by newest tx first element of the list
108
130
  expect(results).toEqual([
109
131
  {
110
132
  hash: "HASH_VALUE",
111
133
  address,
112
134
  type: "Payment",
113
135
  value: expectedValue,
114
- fee: BigInt(10),
136
+ fee: fee,
115
137
  block: {
116
138
  hash: "HASH_VALUE_BLOCK",
117
139
  height: 1,
@@ -121,13 +143,21 @@ describe("listOperations", () => {
121
143
  recipients: [opDestination],
122
144
  date: new Date(1000000 + RIPPLE_EPOCH * 1000),
123
145
  transactionSequenceNumber: 1,
146
+ details: {
147
+ memos: [
148
+ {
149
+ type: "687474703a2f2f6578616d706c652e636f6d2f6d656d6f2f67656e65726963",
150
+ data: "72656e74",
151
+ },
152
+ ],
153
+ },
124
154
  },
125
155
  {
126
156
  hash: "HASH_VALUE",
127
157
  address,
128
158
  type: "Payment",
129
159
  value: expectedValue,
130
- fee: BigInt(10),
160
+ fee: fee,
131
161
  block: {
132
162
  hash: "HASH_VALUE_BLOCK",
133
163
  height: 1,
@@ -146,7 +176,7 @@ describe("listOperations", () => {
146
176
  address,
147
177
  type: "Payment",
148
178
  value: expectedValue,
149
- fee: BigInt(10),
179
+ fee: fee,
150
180
  block: {
151
181
  hash: "HASH_VALUE_BLOCK",
152
182
  height: 1,
@@ -156,16 +186,8 @@ describe("listOperations", () => {
156
186
  recipients: [opDestination],
157
187
  date: new Date(1000000 + RIPPLE_EPOCH * 1000),
158
188
  transactionSequenceNumber: 1,
159
- details: {
160
- memos: [
161
- {
162
- type: "687474703a2f2f6578616d706c652e636f6d2f6d656d6f2f67656e65726963",
163
- data: "72656e74",
164
- },
165
- ],
166
- },
167
189
  },
168
190
  ]);
169
- }));
191
+ });
170
192
  });
171
193
  //# sourceMappingURL=index.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/api/index.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/api/index.test.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,7 @@
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
- };
10
1
  import { patchOperationWithHash } from "@ledgerhq/coin-framework/operation";
11
2
  import { broadcast as broadcastLogic } from "../logic";
12
- export const broadcast = (_a) => __awaiter(void 0, [_a], void 0, function* ({ signedOperation: { signature, operation }, }) {
13
- const hash = yield broadcastLogic(signature);
3
+ export const broadcast = async ({ signedOperation: { signature, operation }, }) => {
4
+ const hash = await broadcastLogic(signature);
14
5
  return patchOperationWithHash(operation, hash);
15
- });
6
+ };
16
7
  //# sourceMappingURL=broadcast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../../src/bridge/broadcast.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,UAAU,CAAC;AAGvD,MAAM,CAAC,MAAM,SAAS,GAA4C,KAE/D,EAAE,4CAFoE,EACvE,eAAe,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,GAC1C;IACC,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;IAC7C,OAAO,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC,CAAA,CAAC"}
1
+ {"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../../src/bridge/broadcast.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,UAAU,CAAC;AAGvD,MAAM,CAAC,MAAM,SAAS,GAA4C,KAAK,EAAE,EACvE,eAAe,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,GAC1C,EAAE,EAAE;IACH,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;IAC7C,OAAO,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC,CAAC"}
@@ -1,24 +1,19 @@
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
- };
10
1
  import BigNumber from "bignumber.js";
11
2
  import { getMainAccount } from "@ledgerhq/coin-framework/account/index";
12
3
  import { getAbandonSeedAddress } from "@ledgerhq/cryptoassets/abandonseed";
13
4
  import { getTransactionStatus } from "./getTransactionStatus";
14
5
  import { prepareTransaction } from "./prepareTransaction";
15
6
  import { createTransaction } from "./createTransaction";
16
- export const estimateMaxSpendable = (_a) => __awaiter(void 0, [_a], void 0, function* ({ account, parentAccount, transaction, }) {
7
+ export const estimateMaxSpendable = async ({ account, parentAccount, transaction, }) => {
17
8
  const mainAccount = getMainAccount(account, parentAccount);
18
- const newTransaction = yield prepareTransaction(mainAccount, Object.assign(Object.assign(Object.assign({}, createTransaction(account)), transaction), { recipient: (transaction === null || transaction === void 0 ? void 0 : transaction.recipient) || getAbandonSeedAddress("ripple"),
9
+ const newTransaction = await prepareTransaction(mainAccount, {
10
+ ...createTransaction(account),
11
+ ...transaction,
12
+ recipient: transaction?.recipient || getAbandonSeedAddress("ripple"),
19
13
  // public testing seed abandonx11,about
20
- amount: new BigNumber(0) }));
21
- const status = yield getTransactionStatus(mainAccount, newTransaction);
14
+ amount: new BigNumber(0),
15
+ });
16
+ const status = await getTransactionStatus(mainAccount, newTransaction);
22
17
  return BigNumber.max(0, account.spendableBalance.minus(status.estimatedFees));
23
- });
18
+ };
24
19
  //# sourceMappingURL=estimateMaxSpendable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"estimateMaxSpendable.js","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,MAAM,CAAC,MAAM,oBAAoB,GAAuD,KAIrF,EAAE,4CAJ0F,EAC7F,OAAO,EACP,aAAa,EACb,WAAW,GACZ;IACC,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,WAAW,gDACtD,iBAAiB,CAAC,OAAO,CAAC,GAC1B,WAAW,KACd,SAAS,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS,KAAI,qBAAqB,CAAC,QAAQ,CAAC;QACpE,uCAAuC;QACvC,MAAM,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC,IACxB,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACvE,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;AAChF,CAAC,CAAA,CAAC"}
1
+ {"version":3,"file":"estimateMaxSpendable.js","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,MAAM,CAAC,MAAM,oBAAoB,GAAuD,KAAK,EAAE,EAC7F,OAAO,EACP,aAAa,EACb,WAAW,GACZ,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,WAAW,EAAE;QAC3D,GAAG,iBAAiB,CAAC,OAAO,CAAC;QAC7B,GAAG,WAAW;QACd,SAAS,EAAE,WAAW,EAAE,SAAS,IAAI,qBAAqB,CAAC,QAAQ,CAAC;QACpE,uCAAuC;QACvC,MAAM,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;KACzB,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACvE,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;AAChF,CAAC,CAAC"}
@@ -1,22 +1,13 @@
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
- };
10
1
  import { AmountRequired, FeeNotLoaded, FeeRequired, FeeTooHigh, InvalidAddress, InvalidAddressBecauseDestinationIsAlsoSource, NotEnoughBalanceBecauseDestinationNotCreated, NotEnoughSpendableBalance, RecipientRequired, } from "@ledgerhq/errors";
11
2
  import BigNumber from "bignumber.js";
12
3
  import { isValidClassicAddress } from "ripple-address-codec";
13
4
  import { formatCurrencyUnit } from "@ledgerhq/coin-framework/currencies/index";
14
5
  import { getServerInfos } from "../network";
15
6
  import { cachedRecipientIsNew, parseAPIValue } from "../logic";
16
- export const getTransactionStatus = (account, transaction) => __awaiter(void 0, void 0, void 0, function* () {
7
+ export const getTransactionStatus = async (account, transaction) => {
17
8
  const errors = {};
18
9
  const warnings = {};
19
- const serverInfos = yield getServerInfos();
10
+ const serverInfos = await getServerInfos();
20
11
  const reserveBaseXRP = parseAPIValue(serverInfos.info.validated_ledger.reserve_base_xrp.toString());
21
12
  const estimatedFees = new BigNumber(transaction.fee || 0);
22
13
  const totalSpent = new BigNumber(transaction.amount).plus(estimatedFees);
@@ -40,7 +31,7 @@ export const getTransactionStatus = (account, transaction) => __awaiter(void 0,
40
31
  });
41
32
  }
42
33
  else if (transaction.recipient &&
43
- (yield cachedRecipientIsNew(transaction.recipient)) &&
34
+ (await cachedRecipientIsNew(transaction.recipient)) &&
44
35
  transaction.amount.lt(reserveBaseXRP)) {
45
36
  errors.amount = new NotEnoughBalanceBecauseDestinationNotCreated("", {
46
37
  minimalAmount: formatCurrencyUnit(account.currency.units[0], reserveBaseXRP, {
@@ -71,5 +62,5 @@ export const getTransactionStatus = (account, transaction) => __awaiter(void 0,
71
62
  amount,
72
63
  totalSpent,
73
64
  };
74
- });
65
+ };
75
66
  //# sourceMappingURL=getTransactionStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTransactionStatus.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getTransactionStatus.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,10 @@
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
- };
10
1
  import { estimateFees } from "../logic/estimateFees";
11
- export const prepareTransaction = (_account, transaction) => __awaiter(void 0, void 0, void 0, function* () {
12
- const { networkInfo } = yield estimateFees(transaction.networkInfo);
2
+ export const prepareTransaction = async (_account, transaction) => {
3
+ const { networkInfo } = await estimateFees(transaction.networkInfo);
13
4
  const fee = transaction.fee || networkInfo.serverFee;
14
5
  if (transaction.networkInfo !== networkInfo || transaction.fee !== fee) {
15
- return Object.assign(Object.assign({}, transaction), { networkInfo, fee });
6
+ return { ...transaction, networkInfo, fee };
16
7
  }
17
8
  return transaction;
18
- });
9
+ };
19
10
  //# sourceMappingURL=prepareTransaction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prepareTransaction.js","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,CAAC,MAAM,kBAAkB,GAAqD,CAClF,QAAQ,EACR,WAAW,EACX,EAAE;IACF,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAEpE,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC;IAErD,IAAI,WAAW,CAAC,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QACvE,uCAAY,WAAW,KAAE,WAAW,EAAE,GAAG,IAAG;IAC9C,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC,CAAA,CAAC"}
1
+ {"version":3,"file":"prepareTransaction.js","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,CAAC,MAAM,kBAAkB,GAAqD,KAAK,EACvF,QAAQ,EACR,WAAW,EACX,EAAE;IACF,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAEpE,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC;IAErD,IAAI,WAAW,CAAC,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QACvE,OAAO,EAAE,GAAG,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;IAC9C,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC"}