@ledgerhq/coin-xrp 7.5.1 → 7.6.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 (78) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +25 -0
  3. package/lib/api/index.d.ts.map +1 -1
  4. package/lib/api/index.integ.test.js +8 -0
  5. package/lib/api/index.integ.test.js.map +1 -1
  6. package/lib/api/index.js +5 -0
  7. package/lib/api/index.js.map +1 -1
  8. package/lib/api/index.test.js +10 -2
  9. package/lib/api/index.test.js.map +1 -1
  10. package/lib/logic/combine.d.ts.map +1 -1
  11. package/lib/logic/combine.js +16 -4
  12. package/lib/logic/combine.js.map +1 -1
  13. package/lib/logic/craftRawTransaction.d.ts +3 -0
  14. package/lib/logic/craftRawTransaction.d.ts.map +1 -0
  15. package/lib/logic/craftRawTransaction.js +70 -0
  16. package/lib/logic/craftRawTransaction.js.map +1 -0
  17. package/lib/logic/craftRawTransaction.test.d.ts +2 -0
  18. package/lib/logic/craftRawTransaction.test.d.ts.map +1 -0
  19. package/lib/logic/craftRawTransaction.test.js +304 -0
  20. package/lib/logic/craftRawTransaction.test.js.map +1 -0
  21. package/lib/logic/index.d.ts +1 -0
  22. package/lib/logic/index.d.ts.map +1 -1
  23. package/lib/logic/index.js +3 -1
  24. package/lib/logic/index.js.map +1 -1
  25. package/lib/logic/utils.d.ts +6 -0
  26. package/lib/logic/utils.d.ts.map +1 -1
  27. package/lib/logic/utils.js +18 -0
  28. package/lib/logic/utils.js.map +1 -1
  29. package/lib/logic/utils.test.js +62 -0
  30. package/lib/logic/utils.test.js.map +1 -1
  31. package/lib/logic/validateIntent.test.js +8 -0
  32. package/lib/logic/validateIntent.test.js.map +1 -1
  33. package/lib/types/model.d.ts +7 -0
  34. package/lib/types/model.d.ts.map +1 -1
  35. package/lib-es/api/index.d.ts.map +1 -1
  36. package/lib-es/api/index.integ.test.js +8 -0
  37. package/lib-es/api/index.integ.test.js.map +1 -1
  38. package/lib-es/api/index.js +6 -1
  39. package/lib-es/api/index.js.map +1 -1
  40. package/lib-es/api/index.test.js +10 -2
  41. package/lib-es/api/index.test.js.map +1 -1
  42. package/lib-es/logic/combine.d.ts.map +1 -1
  43. package/lib-es/logic/combine.js +16 -4
  44. package/lib-es/logic/combine.js.map +1 -1
  45. package/lib-es/logic/craftRawTransaction.d.ts +3 -0
  46. package/lib-es/logic/craftRawTransaction.d.ts.map +1 -0
  47. package/lib-es/logic/craftRawTransaction.js +67 -0
  48. package/lib-es/logic/craftRawTransaction.js.map +1 -0
  49. package/lib-es/logic/craftRawTransaction.test.d.ts +2 -0
  50. package/lib-es/logic/craftRawTransaction.test.d.ts.map +1 -0
  51. package/lib-es/logic/craftRawTransaction.test.js +302 -0
  52. package/lib-es/logic/craftRawTransaction.test.js.map +1 -0
  53. package/lib-es/logic/index.d.ts +1 -0
  54. package/lib-es/logic/index.d.ts.map +1 -1
  55. package/lib-es/logic/index.js +1 -0
  56. package/lib-es/logic/index.js.map +1 -1
  57. package/lib-es/logic/utils.d.ts +6 -0
  58. package/lib-es/logic/utils.d.ts.map +1 -1
  59. package/lib-es/logic/utils.js +18 -1
  60. package/lib-es/logic/utils.js.map +1 -1
  61. package/lib-es/logic/utils.test.js +63 -1
  62. package/lib-es/logic/utils.test.js.map +1 -1
  63. package/lib-es/logic/validateIntent.test.js +8 -0
  64. package/lib-es/logic/validateIntent.test.js.map +1 -1
  65. package/lib-es/types/model.d.ts +7 -0
  66. package/lib-es/types/model.d.ts.map +1 -1
  67. package/package.json +7 -7
  68. package/src/api/index.integ.test.ts +8 -0
  69. package/src/api/index.test.ts +21 -10
  70. package/src/api/index.ts +6 -0
  71. package/src/logic/combine.ts +26 -6
  72. package/src/logic/craftRawTransaction.test.ts +362 -0
  73. package/src/logic/craftRawTransaction.ts +91 -0
  74. package/src/logic/index.ts +1 -0
  75. package/src/logic/utils.test.ts +71 -1
  76. package/src/logic/utils.ts +20 -1
  77. package/src/logic/validateIntent.test.ts +8 -0
  78. package/src/types/model.ts +8 -0
@@ -0,0 +1,302 @@
1
+ import { craftRawTransaction } from "./craftRawTransaction";
2
+ import { encode, decode } from "ripple-binary-codec";
3
+ // --- Mocks ---
4
+ const mockEstimateFees = jest.fn();
5
+ const mockGetLedgerIndex = jest.fn();
6
+ jest.mock("./estimateFees", () => ({
7
+ estimateFees: () => mockEstimateFees(),
8
+ }));
9
+ jest.mock("../network", () => ({
10
+ getLedgerIndex: () => mockGetLedgerIndex(),
11
+ }));
12
+ // Mock ripple-address-codec globally so ordering logic in sortSignersByNumericAddress uses deterministic data.
13
+ const decodeAccountIDMock = jest.fn((account) => {
14
+ const bytes = new Uint8Array(20).fill(0);
15
+ const ordering = { alpha: 1, beta: 2, gamma: 3, delta: 4 };
16
+ if (ordering[account])
17
+ bytes[19] = ordering[account];
18
+ return bytes;
19
+ });
20
+ jest.mock("ripple-address-codec", () => ({
21
+ decodeAccountID: (addr) => decodeAccountIDMock(addr),
22
+ isValidClassicAddress: () => true,
23
+ }));
24
+ describe("craftRawTransaction", () => {
25
+ const sender = "rPDf6SQStnNmw1knCu1ei7h6BcDAEUUqn5";
26
+ const destination = "rJe1St1G6BWMFmdrrcT7NdD3XT1NxTMEWN";
27
+ // XRPL Ed25519 public keys must be 33 bytes: 0xED prefix + 32 bytes payload (66 hex chars total)
28
+ // Using a deterministic dummy key so ripple-binary-codec encode/decode roundtrips without alteration.
29
+ const publicKey = "ED0123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA9876543211"; // 66 hex chars
30
+ // Pre-set key used in the test that ensures existing SigningPubKey is preserved.
31
+ const alreadySetPublicKey = "EDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"; // 66 hex chars
32
+ beforeEach(() => {
33
+ mockEstimateFees.mockReset();
34
+ mockGetLedgerIndex.mockReset();
35
+ });
36
+ // Helper to safely extract Signers array without relying on type assertions elsewhere
37
+ function getSigners(obj) {
38
+ if (!obj || typeof obj !== "object")
39
+ return undefined;
40
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
41
+ const potential = obj.Signers;
42
+ if (Array.isArray(potential)) {
43
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
44
+ return potential;
45
+ }
46
+ return undefined;
47
+ }
48
+ it("fills missing Fee, Sequence, LastLedgerSequence & SigningPubKey for a standard payment", async () => {
49
+ // Given: base transaction missing common autofill fields
50
+ const baseTx = {
51
+ TransactionType: "Payment",
52
+ Account: sender,
53
+ Amount: "1000",
54
+ Destination: destination,
55
+ };
56
+ const serialized = encode(baseTx);
57
+ mockEstimateFees.mockResolvedValue({ fees: BigInt(123) });
58
+ mockGetLedgerIndex.mockResolvedValue(1000);
59
+ // When
60
+ const result = await craftRawTransaction(serialized, sender, publicKey, 10);
61
+ // Then
62
+ const decoded = decode(result.transaction);
63
+ expect(decoded).toMatchObject({
64
+ TransactionType: "Payment",
65
+ Account: sender,
66
+ Amount: "1000",
67
+ Destination: destination,
68
+ Fee: "123",
69
+ Sequence: 10,
70
+ LastLedgerSequence: 1020, // 1000 + 20 offset
71
+ SigningPubKey: publicKey,
72
+ });
73
+ expect(mockEstimateFees).toHaveBeenCalledTimes(1);
74
+ expect(mockGetLedgerIndex).toHaveBeenCalledTimes(1);
75
+ });
76
+ it("autofills only missing Fee & LastLedgerSequence when Sequence provided", async () => {
77
+ // Given: Sequence present; Fee, LastLedgerSequence & SigningPubKey missing
78
+ const baseTx = {
79
+ TransactionType: "Payment",
80
+ Account: sender,
81
+ Amount: "1234",
82
+ Destination: destination,
83
+ Sequence: 77,
84
+ };
85
+ const serialized = encode(baseTx);
86
+ mockEstimateFees.mockResolvedValue({ fees: BigInt(456) });
87
+ mockGetLedgerIndex.mockResolvedValue(2000);
88
+ // When: pass a different sequence param to ensure existing Sequence is not overwritten
89
+ const result = await craftRawTransaction(serialized, sender, publicKey, 999);
90
+ // Then
91
+ const decoded = decode(result.transaction);
92
+ expect(decoded.Sequence).toBe(77); // preserved
93
+ expect(decoded.Fee).toBe("456"); // autofilled
94
+ expect(decoded.LastLedgerSequence).toBe(2020); // 2000 + 20
95
+ expect(decoded.SigningPubKey).toBe(publicKey); // autofilled
96
+ expect(mockEstimateFees).toHaveBeenCalledTimes(1);
97
+ expect(mockGetLedgerIndex).toHaveBeenCalledTimes(1);
98
+ });
99
+ it("does not overwrite provided Fee / Sequence / LastLedgerSequence / SigningPubKey", async () => {
100
+ // Given
101
+ const baseTx = {
102
+ TransactionType: "Payment",
103
+ Account: sender,
104
+ Amount: "2500",
105
+ Destination: destination,
106
+ Fee: "999",
107
+ Sequence: 42,
108
+ LastLedgerSequence: 5000,
109
+ SigningPubKey: alreadySetPublicKey,
110
+ };
111
+ const serialized = encode(baseTx);
112
+ // Mocks would be used if fields missing; ensure they are ignored
113
+ mockEstimateFees.mockResolvedValue({ fees: BigInt(1) });
114
+ mockGetLedgerIndex.mockResolvedValue(1);
115
+ // When
116
+ const result = await craftRawTransaction(serialized, sender, publicKey, 999);
117
+ // Then
118
+ const decoded = decode(result.transaction);
119
+ expect(decoded.Fee).toBe("999");
120
+ expect(decoded.Sequence).toBe(42);
121
+ expect(decoded.LastLedgerSequence).toBe(5000);
122
+ expect(decoded.SigningPubKey).toBe(alreadySetPublicKey);
123
+ expect(mockEstimateFees).not.toHaveBeenCalled();
124
+ expect(mockGetLedgerIndex).not.toHaveBeenCalled();
125
+ });
126
+ it("sets Sequence to 0 when TicketSequence is provided and Sequence missing", async () => {
127
+ // Given
128
+ const baseTx = {
129
+ TransactionType: "Payment",
130
+ Account: sender,
131
+ Amount: "1",
132
+ Destination: destination,
133
+ TicketSequence: 555,
134
+ Fee: "10",
135
+ // Sequence intentionally omitted
136
+ };
137
+ const serialized = encode(baseTx);
138
+ mockGetLedgerIndex.mockResolvedValue(10);
139
+ // When
140
+ const result = await craftRawTransaction(serialized, sender, publicKey, 77);
141
+ // Then
142
+ const decoded = decode(result.transaction);
143
+ expect(decoded.TicketSequence).toBe(555);
144
+ expect(decoded.Sequence).toBe(0);
145
+ expect(decoded.LastLedgerSequence).toBe(30); // 10 + 20
146
+ });
147
+ it("forces Sequence to 0 when TicketSequence present even if non-zero Sequence provided", async () => {
148
+ // Given: TicketSequence provided AND a non-zero Sequence already set (we enforce spec by overriding)
149
+ const baseTx = {
150
+ TransactionType: "Payment",
151
+ Account: sender,
152
+ Amount: "123",
153
+ Destination: destination,
154
+ TicketSequence: 777,
155
+ Sequence: 55, // non-zero pre-set
156
+ Fee: "10",
157
+ };
158
+ const serialized = encode(baseTx);
159
+ mockGetLedgerIndex.mockResolvedValue(111);
160
+ // When
161
+ const result = await craftRawTransaction(serialized, sender, publicKey, 9999);
162
+ // Then
163
+ const decoded = decode(result.transaction);
164
+ expect(decoded.Sequence).toBe(0); // overridden to comply with spec
165
+ expect(decoded.TicketSequence).toBe(777);
166
+ expect(decoded.LastLedgerSequence).toBe(131); // 111 + 20
167
+ });
168
+ it("throws when sender does not match Account for standard transaction", async () => {
169
+ // Given
170
+ const baseTx = {
171
+ TransactionType: "Payment",
172
+ Account: sender,
173
+ Amount: "10",
174
+ Destination: destination,
175
+ };
176
+ const serialized = encode(baseTx);
177
+ // When & Then
178
+ await expect(craftRawTransaction(serialized, "rOTHERADDRESS", publicKey, 1)).rejects.toThrow("Sender address does not match the transaction account");
179
+ });
180
+ describe("multi-sign", () => {
181
+ it("adds a Signers array when absent (single existing signer)", async () => {
182
+ // Given: multi-sign transaction (SigningPubKey empty) with required Fee & Sequence
183
+ const multi = {
184
+ TransactionType: "Payment",
185
+ Account: sender, // Account can differ from signer in multi-sign, we keep same for simplicity
186
+ Amount: "100",
187
+ Destination: destination,
188
+ SigningPubKey: "", // signals multi-sign
189
+ Fee: "500",
190
+ Sequence: 9,
191
+ };
192
+ const serialized = encode(multi);
193
+ // When
194
+ const result = await craftRawTransaction(serialized, sender, publicKey, 9);
195
+ // Then
196
+ const decoded = decode(result.transaction);
197
+ const signers = getSigners(decoded);
198
+ expect(signers?.length).toBe(1);
199
+ if (signers && signers[0]) {
200
+ expect(signers[0]).toMatchObject({
201
+ Signer: { Account: sender, SigningPubKey: publicKey, TxnSignature: "" },
202
+ });
203
+ }
204
+ // No autofill of LastLedgerSequence in multi-sign path (not required for this assertion)
205
+ });
206
+ it("does not add LastLedgerSequence for multi-sign when absent", async () => {
207
+ // Given: multi-sign tx w/o LastLedgerSequence
208
+ const multi = {
209
+ TransactionType: "Payment",
210
+ Account: sender,
211
+ Amount: "50",
212
+ Destination: destination,
213
+ SigningPubKey: "", // multi-sign
214
+ Fee: "12",
215
+ Sequence: 2,
216
+ };
217
+ const serialized = encode(multi);
218
+ mockGetLedgerIndex.mockResolvedValue(500); // should NOT be used
219
+ // When
220
+ const result = await craftRawTransaction(serialized, sender, publicKey, 2);
221
+ // Then
222
+ const decoded = decode(result.transaction);
223
+ expect(decoded.LastLedgerSequence).toBeUndefined();
224
+ });
225
+ it("appends signer and sorts existing Signers numerically", async () => {
226
+ // Given existing unsorted signers
227
+ const existing = [
228
+ {
229
+ Signer: {
230
+ Account: "rPDf6SQStnNmw1knCu1ei7h6BcDAEUUqn5",
231
+ SigningPubKey: "K3",
232
+ TxnSignature: "",
233
+ },
234
+ },
235
+ {
236
+ Signer: {
237
+ Account: "rJe1St1G6BWMFmdrrcT7NdD3XT1NxTMEWN",
238
+ SigningPubKey: "K1",
239
+ TxnSignature: "",
240
+ },
241
+ },
242
+ {
243
+ Signer: {
244
+ Account: "rDKsbvy9uaNpPtvVFraJyNGfjvTw8xivgK",
245
+ SigningPubKey: "K4",
246
+ TxnSignature: "",
247
+ },
248
+ },
249
+ ];
250
+ const multi = {
251
+ TransactionType: "Payment",
252
+ Account: sender,
253
+ Amount: "200",
254
+ Destination: destination,
255
+ SigningPubKey: "",
256
+ Fee: "700",
257
+ Sequence: 3,
258
+ Signers: existing,
259
+ };
260
+ const serialized = encode(multi);
261
+ // When
262
+ const result = await craftRawTransaction(serialized, "r94uo44ukDHWVjYDJLZJYwDdZjo1F2QYgq", publicKey, 3);
263
+ // Then
264
+ const decoded = decode(result.transaction);
265
+ const signers = getSigners(decoded) ?? [];
266
+ const accounts = signers.map(s => s.Signer.Account);
267
+ expect(accounts).toEqual([
268
+ "rPDf6SQStnNmw1knCu1ei7h6BcDAEUUqn5",
269
+ "rJe1St1G6BWMFmdrrcT7NdD3XT1NxTMEWN",
270
+ "rDKsbvy9uaNpPtvVFraJyNGfjvTw8xivgK",
271
+ "r94uo44ukDHWVjYDJLZJYwDdZjo1F2QYgq",
272
+ ]);
273
+ const betaEntry = signers.find(s => s.Signer.Account === "r94uo44ukDHWVjYDJLZJYwDdZjo1F2QYgq");
274
+ expect(betaEntry?.Signer.SigningPubKey).toBe(publicKey);
275
+ });
276
+ it("throws when Fee missing for multi-sign", async () => {
277
+ const multi = {
278
+ TransactionType: "Payment",
279
+ Account: sender,
280
+ Amount: "10",
281
+ Destination: destination,
282
+ SigningPubKey: "",
283
+ Sequence: 1,
284
+ };
285
+ const serialized = encode(multi);
286
+ await expect(craftRawTransaction(serialized, sender, publicKey, 1)).rejects.toThrow("Fee is required for multi sign transactions");
287
+ });
288
+ it("throws when Sequence missing for multi-sign", async () => {
289
+ const multi = {
290
+ TransactionType: "Payment",
291
+ Account: sender,
292
+ Amount: "10",
293
+ Destination: destination,
294
+ SigningPubKey: "",
295
+ Fee: "1",
296
+ };
297
+ const serialized = encode(multi);
298
+ await expect(craftRawTransaction(serialized, sender, publicKey, 1)).rejects.toThrow("Sequence is required for multi sign transactions");
299
+ });
300
+ });
301
+ });
302
+ //# sourceMappingURL=craftRawTransaction.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"craftRawTransaction.test.js","sourceRoot":"","sources":["../../src/logic/craftRawTransaction.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export { broadcast } from "./broadcast";
2
2
  export { combine } from "./combine";
3
3
  export { craftTransaction } from "./craftTransaction";
4
+ export { craftRawTransaction } from "./craftRawTransaction";
4
5
  export type { MemoInput } from "./craftTransaction";
5
6
  export { estimateFees } from "./estimateFees";
6
7
  export { getBalance } from "./getBalance";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/logic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/logic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export { broadcast } from "./broadcast";
2
2
  export { combine } from "./combine";
3
3
  export { craftTransaction } from "./craftTransaction";
4
+ export { craftRawTransaction } from "./craftRawTransaction";
4
5
  export { estimateFees } from "./estimateFees";
5
6
  export { getBalance } from "./getBalance";
6
7
  export { getAccountInfo } from "./getAccountInfo";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC"}
@@ -1,8 +1,14 @@
1
1
  import BigNumber from "bignumber.js";
2
+ import { SignerEntry } from "../types";
2
3
  export declare const UINT32_MAX: BigNumber;
3
4
  /** @see https://xrpl.org/basic-data-types.html#specifying-time */
4
5
  export declare const RIPPLE_EPOCH = 946684800;
5
6
  export declare const validateTag: (tag: BigNumber) => boolean;
6
7
  export declare const getNextValidSequence: (address: string) => Promise<number>;
7
8
  export declare const cachedRecipientIsNew: (recipient: string) => Promise<boolean>;
9
+ /**
10
+ * Sorts the Signers array by the numeric value of each Signer.Account address.
11
+ * The numeric value is the big-endian integer of the 20-byte account ID.
12
+ */
13
+ export declare function sortSignersByNumericAddress(signers: SignerEntry[]): SignerEntry[];
8
14
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/logic/utils.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAIrC,eAAO,MAAM,UAAU,WAAoC,CAAC;AAE5D,kEAAkE;AAClE,eAAO,MAAM,YAAY,YAAY,CAAC;AAEtC,eAAO,MAAM,WAAW,QAAS,SAAS,YAIzC,CAAC;AAEF,eAAO,MAAM,oBAAoB,YAAmB,MAAM,oBAGzD,CAAC;AAsBF,eAAO,MAAM,oBAAoB,cAAqB,MAAM,KAAG,OAAO,CAAC,OAAO,CAe7E,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/logic/utils.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAGrC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,UAAU,WAAoC,CAAC;AAE5D,kEAAkE;AAClE,eAAO,MAAM,YAAY,YAAY,CAAC;AAEtC,eAAO,MAAM,WAAW,QAAS,SAAS,YAIzC,CAAC;AAEF,eAAO,MAAM,oBAAoB,YAAmB,MAAM,oBAGzD,CAAC;AAsBF,eAAO,MAAM,oBAAoB,cAAqB,MAAM,KAAG,OAAO,CAAC,OAAO,CAe7E,CAAC;AAEF;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CAYjF"}
@@ -1,5 +1,5 @@
1
1
  import BigNumber from "bignumber.js";
2
- import { isValidClassicAddress } from "ripple-address-codec";
2
+ import { decodeAccountID, isValidClassicAddress } from "ripple-address-codec";
3
3
  import { getAccountInfo } from "../network";
4
4
  export const UINT32_MAX = new BigNumber(2).pow(32).minus(1);
5
5
  /** @see https://xrpl.org/basic-data-types.html#specifying-time */
@@ -35,4 +35,21 @@ export const cachedRecipientIsNew = async (recipient) => {
35
35
  });
36
36
  return isNew;
37
37
  };
38
+ /**
39
+ * Sorts the Signers array by the numeric value of each Signer.Account address.
40
+ * The numeric value is the big-endian integer of the 20-byte account ID.
41
+ */
42
+ export function sortSignersByNumericAddress(signers) {
43
+ return signers.slice().sort((a, b) => {
44
+ const aBytes = decodeAccountID(a.Signer.Account);
45
+ const bBytes = decodeAccountID(b.Signer.Account);
46
+ const aInt = BigInt("0x" + Buffer.from(aBytes).toString("hex"));
47
+ const bInt = BigInt("0x" + Buffer.from(bBytes).toString("hex"));
48
+ if (aInt > bInt)
49
+ return 1;
50
+ if (aInt < bInt)
51
+ return -1;
52
+ return 0;
53
+ });
54
+ }
38
55
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/logic/utils.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAE5D,kEAAkE;AAClE,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC;AAEtC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAc,EAAE,EAAE;IAC5C,OAAO,CACL,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,UAAU,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAC7F,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IAC5D,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpD,OAAO,OAAO,CAAC,QAAQ,CAAC;AAC1B,CAAC,CAAC;AAEF,SAAS,gBAAgB,CAAC,SAAiB;IACzC,OAAO,qBAAqB,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAQD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAsB,CAAC;AACrD,MAAM,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AAEpC,MAAM,cAAc,GAAG,KAAK,EAAE,SAAiB,EAAoB,EAAE;IACnE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAE/C,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;IAC7C,OAAO,IAAI,CAAC,YAAY,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,SAAiB,EAAoB,EAAE;IAChF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE7C,IAAI,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;IAC9C,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE;QAC5B,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,GAAG,GAAG,GAAG;KACrB,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/logic/utils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,18 @@
1
- import { cachedRecipientIsNew } from "./utils";
1
+ import { cachedRecipientIsNew, sortSignersByNumericAddress } from "./utils";
2
+ // We'll mock ripple-address-codec so that we control numeric ordering via decodeAccountID
3
+ // without re-implementing the util's logic inside the tests.
4
+ const decodeAccountIDMock = jest.fn((account) => {
5
+ // Provide deterministic 20-byte arrays whose last byte encodes the numeric ordering.
6
+ // (Big-endian comparison means earlier bytes are 0; ordering driven by final byte value.)
7
+ const bytes = new Uint8Array(20).fill(0);
8
+ const ordering = { alpha: 1, gamma: 2, beta: 3, epsilon: 4, delta: 5 };
9
+ if (ordering[account])
10
+ bytes[19] = ordering[account];
11
+ return bytes;
12
+ });
2
13
  jest.mock("ripple-address-codec", () => ({
3
14
  isValidClassicAddress: () => true,
15
+ decodeAccountID: (address) => decodeAccountIDMock(address),
4
16
  }));
5
17
  const mockGetAccountInfo = jest.fn();
6
18
  jest.mock("../network", () => ({
@@ -48,4 +60,54 @@ describe("cachedRecipientIsNew", () => {
48
60
  expect(mockGetAccountInfo).toHaveBeenCalledTimes(1);
49
61
  });
50
62
  });
63
+ // Helper to build a SignerEntry from an Account address
64
+ function signer(account) {
65
+ return {
66
+ Signer: {
67
+ Account: account,
68
+ SigningPubKey: "PUBKEY",
69
+ TxnSignature: "SIGNATURE",
70
+ },
71
+ };
72
+ }
73
+ // We intentionally use simple string identifiers (not real XRP addresses) since we fully mock decodeAccountID.
74
+ // Numeric order (smallest->largest) encoded in mock via last byte value: alpha(1), gamma(2), beta(3), epsilon(4), delta(5)
75
+ const orderedByNumeric = ["alpha", "gamma", "beta", "epsilon", "delta"];
76
+ describe("sortSignersByNumericAddress", () => {
77
+ it("returns an empty array when given an empty array", () => {
78
+ expect(sortSignersByNumericAddress([])).toEqual([]);
79
+ });
80
+ it("does not mutate the original array", () => {
81
+ const original = [signer("beta"), signer("alpha"), signer("delta")];
82
+ const originalSnapshot = original.map(s => s.Signer.Account);
83
+ const result = sortSignersByNumericAddress(original);
84
+ expect(result).not.toBe(original);
85
+ expect(original.map(s => s.Signer.Account)).toEqual(originalSnapshot);
86
+ });
87
+ it("returns new array for single element", () => {
88
+ const single = [signer("alpha")];
89
+ const result = sortSignersByNumericAddress(single);
90
+ expect(result).toHaveLength(1);
91
+ expect(result[0].Signer.Account).toBe("alpha");
92
+ expect(result).not.toBe(single);
93
+ });
94
+ it("sorts by numeric account ID as provided by decodeAccountID mock", () => {
95
+ const shuffled = ["delta", "gamma", "alpha", "epsilon", "beta"]; // random order
96
+ const signers = shuffled.map(a => signer(a));
97
+ const result = sortSignersByNumericAddress(signers).map(s => s.Signer.Account);
98
+ expect(result).toEqual(orderedByNumeric);
99
+ // Ensure decodeAccountID was called for each element at least once
100
+ orderedByNumeric.forEach(addr => {
101
+ expect(decodeAccountIDMock).toHaveBeenCalledWith(addr);
102
+ });
103
+ });
104
+ it("ordering differs from naive lexicographic string sort", () => {
105
+ const signers = ["alpha", "beta", "delta", "epsilon", "gamma"].map(a => signer(a));
106
+ const numericSorted = sortSignersByNumericAddress(signers).map(s => s.Signer.Account);
107
+ const lexSorted = signers.map(s => s.Signer.Account).sort();
108
+ // Our predetermined numeric order should not equal simple lexical sort (which puts beta before gamma)
109
+ expect(numericSorted).toEqual(orderedByNumeric);
110
+ expect(numericSorted).not.toEqual(lexSorted);
111
+ });
112
+ });
51
113
  //# sourceMappingURL=utils.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../src/logic/utils.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAE/C,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;IACvC,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI;CAClC,CAAC,CAAC,CAAC;AACJ,MAAM,kBAAkB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AACrC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7B,cAAc,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC;CACjE,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,kBAAkB,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,QAAQ;QACR,kBAAkB,CAAC,qBAAqB,CAAC;YACvC,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,GAAG;YACZ,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;QAEH,OAAO;QACP,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAEtD,OAAO;QACP,MAAM,CAAC,kBAAkB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAC9D,QAAQ;QACR,kBAAkB,CAAC,qBAAqB,CAAC;YACvC,YAAY,EAAE,KAAK;YACnB,OAAO,EAAE,iBAAiB;YAC1B,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,eAAe;SAC1B,CAAC,CAAC;QAEH,OAAO;QACP,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAEtD,OAAO;QACP,MAAM,CAAC,kBAAkB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,QAAQ;QACR,kBAAkB,CAAC,sBAAsB,CAAC,GAAG,EAAE;YAC7C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,cAAc;QACd,MAAM,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACpF,MAAM,CAAC,kBAAkB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../src/logic/utils.test.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,7 @@ describe("validateIntent", () => {
40
40
  const result = await validateIntent(
41
41
  // account as any,
42
42
  {
43
+ intentType: "transaction",
43
44
  sender: SENDER,
44
45
  amount: 20000000n,
45
46
  recipient: RECIPIENT,
@@ -69,6 +70,7 @@ describe("validateIntent", () => {
69
70
  const result = await validateIntent(
70
71
  // account as any,
71
72
  {
73
+ intentType: "transaction",
72
74
  sender: SENDER,
73
75
  amount: 1000000n,
74
76
  recipient: RECIPIENT,
@@ -97,6 +99,7 @@ describe("validateIntent", () => {
97
99
  const result = await validateIntent(
98
100
  // account as any,
99
101
  {
102
+ intentType: "transaction",
100
103
  sender: SENDER,
101
104
  amount: 10000000n,
102
105
  recipient: RECIPIENT,
@@ -122,6 +125,7 @@ describe("validateIntent", () => {
122
125
  const result = await validateIntent(
123
126
  // account as any,
124
127
  {
128
+ intentType: "transaction",
125
129
  sender: SENDER,
126
130
  amount: 10000000n,
127
131
  recipient: SENDER,
@@ -147,6 +151,7 @@ describe("validateIntent", () => {
147
151
  const result = await validateIntent(
148
152
  // account as any,
149
153
  {
154
+ intentType: "transaction",
150
155
  sender: SENDER,
151
156
  amount: 5000000n,
152
157
  recipient: RECIPIENT_NEW,
@@ -172,6 +177,7 @@ describe("validateIntent", () => {
172
177
  const result = await validateIntent(
173
178
  // account as any,
174
179
  {
180
+ intentType: "transaction",
175
181
  sender: SENDER,
176
182
  amount: 0n,
177
183
  recipient: RECIPIENT,
@@ -197,6 +203,7 @@ describe("validateIntent", () => {
197
203
  const result = await validateIntent(
198
204
  // account as any,
199
205
  {
206
+ intentType: "transaction",
200
207
  sender: SENDER,
201
208
  asset: { unit: { code: "XRP", magnitude: 6 } },
202
209
  amount: 1000000n,
@@ -222,6 +229,7 @@ describe("validateIntent", () => {
222
229
  const result = await validateIntent(
223
230
  // account as any,
224
231
  {
232
+ intentType: "transaction",
225
233
  sender: SENDER,
226
234
  asset: { unit: { code: "XRP", magnitude: 6 } },
227
235
  amount: 1000000n,
@@ -1 +1 @@
1
- {"version":3,"file":"validateIntent.test.js","sourceRoot":"","sources":["../../src/logic/validateIntent.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateIntent.test.js","sourceRoot":"","sources":["../../src/logic/validateIntent.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AAEjC,MAAM,kBAAkB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AAErC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/B,UAAU,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE;CACnC,CAAC,CAAC,CAAC;AAEJ,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7B,cAAc,EAAE,GAAG,EAAE,CAAC,kBAAkB,EAAE;CAC3C,CAAC,CAAC,CAAC;AAEJ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;IAClE,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,SAAW,CAAC,CAAC,iBAAiB;AAElD,MAAM,MAAM,GAAG,oCAAoC,CAAC;AACpD,MAAM,SAAS,GAAG,oCAAoC,CAAC;AACvD,MAAM,aAAa,GAAG,oCAAoC,CAAC;AAE3D,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,kBAAkB,CAAC,iBAAiB,CAAC;YACnC,IAAI,EAAE;gBACJ,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,WAAW,GAAG,QAAU,EAAE,uBAAuB;iBACpE;aACF;SACF,CAAC,CAAC;QACH,cAAc,CAAC,iBAAiB,CAAC;YAC/B;gBACE,KAAK,EAAE,SAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,cAAc;QACjC,kBAAkB;QAClB;YACE,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,SAAW;YACnB,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;SACxC,EACR;YACE,KAAK,EAAE,MAAO,EAAE,OAAO;SACxB,CACF,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAW,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACpE,kBAAkB,CAAC,iBAAiB,CAAC;YACnC,IAAI,EAAE;gBACJ,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,WAAW,GAAG,QAAU;iBAC3C;aACF;SACF,CAAC,CAAC;QACH,cAAc,CAAC,iBAAiB,CAAC;YAC/B;gBACE,KAAK,EAAE,SAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,cAAc;QACjC,kBAAkB;QAClB;YACE,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,QAAU;YAClB,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;SACxC,EACR;YACE,KAAK,EAAE,OAAQ,EAAE,OAAO;SACzB,CACF,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC1C,kBAAkB,CAAC,iBAAiB,CAAC;YACnC,IAAI,EAAE;gBACJ,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,WAAW,GAAG,QAAU;iBAC3C;aACF;SACF,CAAC,CAAC;QACH,cAAc,CAAC,iBAAiB,CAAC;YAC/B;gBACE,KAAK,EAAE,SAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,cAAc;QACjC,kBAAkB;QAClB;YACE,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,SAAW;YACnB,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;SACxC,CACT,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;QACrD,kBAAkB,CAAC,iBAAiB,CAAC;YACnC,IAAI,EAAE;gBACJ,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,WAAW,GAAG,QAAU;iBAC3C;aACF;SACF,CAAC,CAAC;QACH,cAAc,CAAC,iBAAiB,CAAC;YAC/B;gBACE,KAAK,EAAE,SAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,cAAc;QACjC,kBAAkB;QAClB;YACE,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,SAAW;YACnB,SAAS,EAAE,MAAM;YACjB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;SACxC,EACR,EAAE,KAAK,EAAE,MAAO,EAAE,CACnB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;IAC7F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,kBAAkB,CAAC,iBAAiB,CAAC;YACnC,IAAI,EAAE;gBACJ,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,WAAW,GAAG,QAAU;iBAC3C;aACF;SACF,CAAC,CAAC;QACH,cAAc,CAAC,iBAAiB,CAAC;YAC/B;gBACE,KAAK,EAAE,SAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,cAAc;QACjC,kBAAkB;QAClB;YACE,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,QAAU;YAClB,SAAS,EAAE,aAAa;YACxB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;SACxC,EACR,EAAE,KAAK,EAAE,MAAO,EAAE,CACnB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,kBAAkB,CAAC,iBAAiB,CAAC;YACnC,IAAI,EAAE;gBACJ,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,WAAW,GAAG,QAAU;iBAC3C;aACF;SACF,CAAC,CAAC;QACH,cAAc,CAAC,iBAAiB,CAAC;YAC/B;gBACE,KAAK,EAAE,SAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,cAAc;QACjC,kBAAkB;QAClB;YACE,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,EAAE;YACV,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;SACxC,EACR,EAAE,KAAK,EAAE,MAAO,EAAE,CACnB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,kBAAkB,CAAC,iBAAiB,CAAC;YACnC,IAAI,EAAE;gBACJ,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,WAAW,GAAG,QAAU;iBAC3C;aACF;SACF,CAAC,CAAC;QACH,cAAc,CAAC,iBAAiB,CAAC;YAC/B;gBACE,KAAK,EAAE,SAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,cAAc;QACjC,kBAAkB;QAClB;YACE,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;YAC9C,MAAM,EAAE,QAAU;YAClB,SAAS,EAAE,gBAAgB;SACrB,EACR,EAAE,KAAK,EAAE,MAAO,EAAE,CACnB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,kBAAkB,CAAC,iBAAiB,CAAC;YACnC,IAAI,EAAE;gBACJ,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,WAAW,GAAG,QAAU;iBAC3C;aACF;SACF,CAAC,CAAC;QACH,cAAc,CAAC,iBAAiB,CAAC;YAC/B;gBACE,KAAK,EAAE,SAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,cAAc;QACjC,kBAAkB;QAClB;YACE,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;YAC9C,MAAM,EAAE,QAAU;YAClB,SAAS,EAAE,EAAE;SACP,EACR,EAAE,KAAK,EAAE,MAAO,EAAE,CACnB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -23,4 +23,11 @@ export type ListOperationsOptions = {
23
23
  order?: Order;
24
24
  minHeight?: number;
25
25
  };
26
+ export type SignerEntry = {
27
+ Signer: {
28
+ Account: string;
29
+ SigningPubKey: string;
30
+ TxnSignature: string;
31
+ };
32
+ };
26
33
  //# sourceMappingURL=model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/types/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE,MAAM,MAAM,WAAW,GAAG;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,MAAM,CAAC;AAEpD,MAAM,MAAM,eAAe,GAAG;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAEvD,MAAM,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;AAEnC,MAAM,MAAM,qBAAqB,GAAG;IAElC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/types/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE,MAAM,MAAM,WAAW,GAAG;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,MAAM,CAAC;AAEpD,MAAM,MAAM,eAAe,GAAG;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAEvD,MAAM,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;AAEnC,MAAM,MAAM,qBAAqB,GAAG;IAElC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC"}