@ledgerhq/coin-xrp 7.6.0-nightly.6 → 7.6.0-nightly.7

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 (91) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +10 -0
  3. package/package.json +5 -5
  4. package/lib/api/index.integ.test.d.ts +0 -2
  5. package/lib/api/index.integ.test.d.ts.map +0 -1
  6. package/lib/api/index.integ.test.js +0 -332
  7. package/lib/api/index.integ.test.js.map +0 -1
  8. package/lib/api/index.test.d.ts +0 -2
  9. package/lib/api/index.test.d.ts.map +0 -1
  10. package/lib/api/index.test.js +0 -347
  11. package/lib/api/index.test.js.map +0 -1
  12. package/lib/logic/broadcast.test.d.ts +0 -2
  13. package/lib/logic/broadcast.test.d.ts.map +0 -1
  14. package/lib/logic/broadcast.test.js +0 -46
  15. package/lib/logic/broadcast.test.js.map +0 -1
  16. package/lib/logic/craftRawTransaction.test.d.ts +0 -2
  17. package/lib/logic/craftRawTransaction.test.d.ts.map +0 -1
  18. package/lib/logic/craftRawTransaction.test.js +0 -304
  19. package/lib/logic/craftRawTransaction.test.js.map +0 -1
  20. package/lib/logic/craftTransaction.test.d.ts +0 -2
  21. package/lib/logic/craftTransaction.test.d.ts.map +0 -1
  22. package/lib/logic/craftTransaction.test.js +0 -75
  23. package/lib/logic/craftTransaction.test.js.map +0 -1
  24. package/lib/logic/estimateFees.test.d.ts +0 -2
  25. package/lib/logic/estimateFees.test.d.ts.map +0 -1
  26. package/lib/logic/estimateFees.test.js +0 -51
  27. package/lib/logic/estimateFees.test.js.map +0 -1
  28. package/lib/logic/getBalance.test.d.ts +0 -2
  29. package/lib/logic/getBalance.test.d.ts.map +0 -1
  30. package/lib/logic/getBalance.test.js +0 -63
  31. package/lib/logic/getBalance.test.js.map +0 -1
  32. package/lib/logic/listOperations.test.d.ts +0 -2
  33. package/lib/logic/listOperations.test.d.ts.map +0 -1
  34. package/lib/logic/listOperations.test.js +0 -275
  35. package/lib/logic/listOperations.test.js.map +0 -1
  36. package/lib/logic/utils.test.d.ts +0 -2
  37. package/lib/logic/utils.test.d.ts.map +0 -1
  38. package/lib/logic/utils.test.js +0 -115
  39. package/lib/logic/utils.test.js.map +0 -1
  40. package/lib/logic/validateIntent.test.d.ts +0 -2
  41. package/lib/logic/validateIntent.test.d.ts.map +0 -1
  42. package/lib/logic/validateIntent.test.js +0 -266
  43. package/lib/logic/validateIntent.test.js.map +0 -1
  44. package/lib/network/index.test.d.ts +0 -2
  45. package/lib/network/index.test.d.ts.map +0 -1
  46. package/lib/network/index.test.js +0 -105
  47. package/lib/network/index.test.js.map +0 -1
  48. package/lib-es/api/index.integ.test.d.ts +0 -2
  49. package/lib-es/api/index.integ.test.d.ts.map +0 -1
  50. package/lib-es/api/index.integ.test.js +0 -330
  51. package/lib-es/api/index.integ.test.js.map +0 -1
  52. package/lib-es/api/index.test.d.ts +0 -2
  53. package/lib-es/api/index.test.d.ts.map +0 -1
  54. package/lib-es/api/index.test.js +0 -322
  55. package/lib-es/api/index.test.js.map +0 -1
  56. package/lib-es/logic/broadcast.test.d.ts +0 -2
  57. package/lib-es/logic/broadcast.test.d.ts.map +0 -1
  58. package/lib-es/logic/broadcast.test.js +0 -44
  59. package/lib-es/logic/broadcast.test.js.map +0 -1
  60. package/lib-es/logic/craftRawTransaction.test.d.ts +0 -2
  61. package/lib-es/logic/craftRawTransaction.test.d.ts.map +0 -1
  62. package/lib-es/logic/craftRawTransaction.test.js +0 -302
  63. package/lib-es/logic/craftRawTransaction.test.js.map +0 -1
  64. package/lib-es/logic/craftTransaction.test.d.ts +0 -2
  65. package/lib-es/logic/craftTransaction.test.d.ts.map +0 -1
  66. package/lib-es/logic/craftTransaction.test.js +0 -73
  67. package/lib-es/logic/craftTransaction.test.js.map +0 -1
  68. package/lib-es/logic/estimateFees.test.d.ts +0 -2
  69. package/lib-es/logic/estimateFees.test.d.ts.map +0 -1
  70. package/lib-es/logic/estimateFees.test.js +0 -46
  71. package/lib-es/logic/estimateFees.test.js.map +0 -1
  72. package/lib-es/logic/getBalance.test.d.ts +0 -2
  73. package/lib-es/logic/getBalance.test.d.ts.map +0 -1
  74. package/lib-es/logic/getBalance.test.js +0 -61
  75. package/lib-es/logic/getBalance.test.js.map +0 -1
  76. package/lib-es/logic/listOperations.test.d.ts +0 -2
  77. package/lib-es/logic/listOperations.test.d.ts.map +0 -1
  78. package/lib-es/logic/listOperations.test.js +0 -273
  79. package/lib-es/logic/listOperations.test.js.map +0 -1
  80. package/lib-es/logic/utils.test.d.ts +0 -2
  81. package/lib-es/logic/utils.test.d.ts.map +0 -1
  82. package/lib-es/logic/utils.test.js +0 -113
  83. package/lib-es/logic/utils.test.js.map +0 -1
  84. package/lib-es/logic/validateIntent.test.d.ts +0 -2
  85. package/lib-es/logic/validateIntent.test.d.ts.map +0 -1
  86. package/lib-es/logic/validateIntent.test.js +0 -241
  87. package/lib-es/logic/validateIntent.test.js.map +0 -1
  88. package/lib-es/network/index.test.d.ts +0 -2
  89. package/lib-es/network/index.test.d.ts.map +0 -1
  90. package/lib-es/network/index.test.js +0 -100
  91. package/lib-es/network/index.test.js.map +0 -1
@@ -1,266 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const validateIntent_1 = require("./validateIntent");
27
- const utils = __importStar(require("./utils"));
28
- const mockGetBalance = jest.fn();
29
- const mockGetServerInfos = jest.fn();
30
- jest.mock("./getBalance", () => ({
31
- getBalance: () => mockGetBalance(),
32
- }));
33
- jest.mock("../network", () => ({
34
- getServerInfos: () => mockGetServerInfos(),
35
- }));
36
- jest.spyOn(utils, "cachedRecipientIsNew").mockImplementation(addr => {
37
- if (addr === RECIPIENT_NEW) {
38
- return Promise.resolve(true);
39
- }
40
- return Promise.resolve(false);
41
- });
42
- const reserveBase = 10000000n; // 10 XRP (drops)
43
- const SENDER = "rPSCfmnX3t9jQJG5RNcZtSaP5UhExZDue4";
44
- const RECIPIENT = "rPT1Sjq2YGrBMTttX4GZHjKu9dyfzbpAYe";
45
- const RECIPIENT_NEW = "rDKsbvy9uaNpPtvVFraJyNGfjvTw8xivgK";
46
- describe("validateIntent", () => {
47
- afterEach(() => {
48
- jest.clearAllMocks();
49
- });
50
- it("returns no errors on valid transaction", async () => {
51
- mockGetServerInfos.mockResolvedValue({
52
- info: {
53
- validated_ledger: {
54
- reserve_base_xrp: reserveBase / 1000000n, // XRP value, not drops
55
- },
56
- },
57
- });
58
- mockGetBalance.mockResolvedValue([
59
- {
60
- value: 50000000n,
61
- asset: { type: "native" },
62
- locked: 0n,
63
- },
64
- ]);
65
- const result = await (0, validateIntent_1.validateIntent)(
66
- // account as any,
67
- {
68
- intentType: "transaction",
69
- sender: SENDER,
70
- amount: 20000000n,
71
- recipient: RECIPIENT,
72
- asset: { unit: { code: "XRP", magnitude: 6 } },
73
- }, {
74
- value: 10000n, // fees
75
- });
76
- expect(result.errors).toEqual({});
77
- expect(result.warnings).toEqual({});
78
- expect(result.totalSpent).toBe(20010000n);
79
- });
80
- it("throws FeeTooHigh warning when fee is >10% of amount", async () => {
81
- mockGetServerInfos.mockResolvedValue({
82
- info: {
83
- validated_ledger: {
84
- reserve_base_xrp: reserveBase / 1000000n,
85
- },
86
- },
87
- });
88
- mockGetBalance.mockResolvedValue([
89
- {
90
- value: 50000000n,
91
- asset: { type: "native" },
92
- locked: 0n,
93
- },
94
- ]);
95
- const result = await (0, validateIntent_1.validateIntent)(
96
- // account as any,
97
- {
98
- intentType: "transaction",
99
- sender: SENDER,
100
- amount: 1000000n,
101
- recipient: RECIPIENT,
102
- asset: { unit: { code: "XRP", magnitude: 6 } },
103
- }, {
104
- value: 200000n, // fees
105
- });
106
- expect(result.warnings.feeTooHigh).toBeInstanceOf(Error);
107
- expect(result.errors).toEqual({});
108
- });
109
- it("errors when fee is missing", async () => {
110
- mockGetServerInfos.mockResolvedValue({
111
- info: {
112
- validated_ledger: {
113
- reserve_base_xrp: reserveBase / 1000000n,
114
- },
115
- },
116
- });
117
- mockGetBalance.mockResolvedValue([
118
- {
119
- value: 30000000n,
120
- asset: { type: "native" },
121
- locked: 0n,
122
- },
123
- ]);
124
- const result = await (0, validateIntent_1.validateIntent)(
125
- // account as any,
126
- {
127
- intentType: "transaction",
128
- sender: SENDER,
129
- amount: 10000000n,
130
- recipient: RECIPIENT,
131
- asset: { unit: { code: "XRP", magnitude: 6 } },
132
- });
133
- expect(result.errors.fee?.name).toBe("FeeNotLoaded");
134
- });
135
- it("errors if recipient is same as sender", async () => {
136
- mockGetServerInfos.mockResolvedValue({
137
- info: {
138
- validated_ledger: {
139
- reserve_base_xrp: reserveBase / 1000000n,
140
- },
141
- },
142
- });
143
- mockGetBalance.mockResolvedValue([
144
- {
145
- value: 50000000n,
146
- asset: { type: "native" },
147
- locked: 0n,
148
- },
149
- ]);
150
- const result = await (0, validateIntent_1.validateIntent)(
151
- // account as any,
152
- {
153
- intentType: "transaction",
154
- sender: SENDER,
155
- amount: 10000000n,
156
- recipient: SENDER,
157
- asset: { unit: { code: "XRP", magnitude: 6 } },
158
- }, { value: 10000n });
159
- expect(result.errors.recipient?.name).toBe("InvalidAddressBecauseDestinationIsAlsoSource");
160
- });
161
- it("errors if recipient is new and amount is too low", async () => {
162
- mockGetServerInfos.mockResolvedValue({
163
- info: {
164
- validated_ledger: {
165
- reserve_base_xrp: reserveBase / 1000000n,
166
- },
167
- },
168
- });
169
- mockGetBalance.mockResolvedValue([
170
- {
171
- value: 50000000n,
172
- asset: { type: "native" },
173
- locked: 0n,
174
- },
175
- ]);
176
- const result = await (0, validateIntent_1.validateIntent)(
177
- // account as any,
178
- {
179
- intentType: "transaction",
180
- sender: SENDER,
181
- amount: 5000000n,
182
- recipient: RECIPIENT_NEW,
183
- asset: { unit: { code: "XRP", magnitude: 6 } },
184
- }, { value: 10000n });
185
- expect(result.errors.amount?.name).toBe("NotEnoughBalanceBecauseDestinationNotCreated");
186
- });
187
- it("errors if amount is zero", async () => {
188
- mockGetServerInfos.mockResolvedValue({
189
- info: {
190
- validated_ledger: {
191
- reserve_base_xrp: reserveBase / 1000000n,
192
- },
193
- },
194
- });
195
- mockGetBalance.mockResolvedValue([
196
- {
197
- value: 50000000n,
198
- asset: { type: "native" },
199
- locked: 0n,
200
- },
201
- ]);
202
- const result = await (0, validateIntent_1.validateIntent)(
203
- // account as any,
204
- {
205
- intentType: "transaction",
206
- sender: SENDER,
207
- amount: 0n,
208
- recipient: RECIPIENT,
209
- asset: { unit: { code: "XRP", magnitude: 6 } },
210
- }, { value: 10000n });
211
- expect(result.errors.amount?.name).toBe("AmountRequired");
212
- });
213
- it("errors if recipient is invalid", async () => {
214
- mockGetServerInfos.mockResolvedValue({
215
- info: {
216
- validated_ledger: {
217
- reserve_base_xrp: reserveBase / 1000000n,
218
- },
219
- },
220
- });
221
- mockGetBalance.mockResolvedValue([
222
- {
223
- value: 50000000n,
224
- asset: { type: "native" },
225
- locked: 0n,
226
- },
227
- ]);
228
- const result = await (0, validateIntent_1.validateIntent)(
229
- // account as any,
230
- {
231
- intentType: "transaction",
232
- sender: SENDER,
233
- asset: { unit: { code: "XRP", magnitude: 6 } },
234
- amount: 1000000n,
235
- recipient: "not-an-address",
236
- }, { value: 10000n });
237
- expect(result.errors.recipient?.name).toBe("InvalidAddress");
238
- });
239
- it("errors if recipient is missing", async () => {
240
- mockGetServerInfos.mockResolvedValue({
241
- info: {
242
- validated_ledger: {
243
- reserve_base_xrp: reserveBase / 1000000n,
244
- },
245
- },
246
- });
247
- mockGetBalance.mockResolvedValue([
248
- {
249
- value: 50000000n,
250
- asset: { type: "native" },
251
- locked: 0n,
252
- },
253
- ]);
254
- const result = await (0, validateIntent_1.validateIntent)(
255
- // account as any,
256
- {
257
- intentType: "transaction",
258
- sender: SENDER,
259
- asset: { unit: { code: "XRP", magnitude: 6 } },
260
- amount: 1000000n,
261
- recipient: "",
262
- }, { value: 10000n });
263
- expect(result.errors.recipient?.name).toBe("RecipientRequired");
264
- });
265
- });
266
- //# sourceMappingURL=validateIntent.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validateIntent.test.js","sourceRoot":"","sources":["../../src/logic/validateIntent.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../src/network/index.test.ts"],"names":[],"mappings":""}
@@ -1,105 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const live_network_1 = __importDefault(require("@ledgerhq/live-network"));
7
- const _1 = require(".");
8
- const config_1 = __importDefault(require("../config"));
9
- jest.mock("@ledgerhq/live-network");
10
- describe("getAccountInfo", () => {
11
- beforeAll(() => {
12
- config_1.default.setCoinConfig(() => ({
13
- node: "",
14
- }));
15
- });
16
- it("returns an empty AccountInfo when returns an error 'actNotFound'", async () => {
17
- // Given
18
- const emptyAddress = "rNCgVpHinUDjXP2vHDFDMjm7ssBwpveHya";
19
- live_network_1.default.mockResolvedValue({
20
- data: {
21
- result: {
22
- account: emptyAddress,
23
- error: "actNotFound",
24
- error_code: 19,
25
- error_message: "Account not found.",
26
- ledger_hash: "F2E6EFD279C3663B62D9DC9977106EC25BA8F89DA551C2D7AB3AE5D75B146258",
27
- ledger_index: 91772714,
28
- request: {
29
- account: emptyAddress,
30
- command: "account_info",
31
- ledger_index: "validated",
32
- },
33
- status: "error",
34
- validated: true,
35
- },
36
- },
37
- });
38
- // When
39
- const result = await (0, _1.getAccountInfo)(emptyAddress);
40
- // Then
41
- expect(result).toEqual({
42
- isNewAccount: true,
43
- balance: "0",
44
- ownerCount: 0,
45
- sequence: 0,
46
- });
47
- });
48
- it("returns a valid AccountInfo when return a correct AccountInfo", async () => {
49
- // Given
50
- const address = "rh1HPuRVsYYvThxG2Bs1MfjmrVC73S16Fb";
51
- live_network_1.default.mockResolvedValue({
52
- data: {
53
- result: {
54
- account_data: {
55
- Account: address,
56
- Balance: "999441667919804",
57
- Flags: 0,
58
- LedgerEntryType: "AccountRoot",
59
- OwnerCount: 0,
60
- PreviousTxnID: "947F03794C982FE4C7C9FECC4C33C543BB25B82938895EBA8F9B6021CC27A571",
61
- PreviousTxnLgrSeq: 725208,
62
- Sequence: 153743,
63
- index: "BC0DAE09C0BFBC4A49AA94B849266588BFD6E1F554B184B5788AC55D6E07EB95",
64
- },
65
- ledger_hash: "93E952B2770233B0ABFBFBBFBC3E2E2159DCABD07FEB5F4C49174027935D9FBB",
66
- ledger_index: 1908009,
67
- status: "success",
68
- validated: true,
69
- },
70
- },
71
- });
72
- // When
73
- const result = await (0, _1.getAccountInfo)(address);
74
- // Then
75
- expect(result).toEqual({
76
- isNewAccount: false,
77
- balance: "999441667919804",
78
- ownerCount: 0,
79
- sequence: 153743,
80
- });
81
- });
82
- it("throws an error when backend returns any other error", async () => {
83
- // Given
84
- const invalidAddress = "rNCgVpHinUDjXP2vHDFDMjm7ssBwpveHyaa";
85
- live_network_1.default.mockResolvedValue({
86
- result: {
87
- error: "actMalformed",
88
- error_code: 35,
89
- error_message: "Account malformed.",
90
- ledger_hash: "87DE2DD287BCAD6E81720BC6E6361EF01A66EE70A37B6BDF1EFF2E719D9410AE",
91
- ledger_index: 91772741,
92
- request: {
93
- account: invalidAddress,
94
- command: "account_info",
95
- ledger_index: "validated",
96
- },
97
- status: "error",
98
- validated: true,
99
- },
100
- });
101
- // When & Then
102
- await expect((0, _1.getAccountInfo)(invalidAddress)).rejects.toThrow("Cannot read properties of undefined (reading 'result')");
103
- });
104
- });
105
- //# sourceMappingURL=index.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/network/index.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.integ.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.integ.test.d.ts","sourceRoot":"","sources":["../../src/api/index.integ.test.ts"],"names":[],"mappings":""}