@ledgerhq/coin-xrp 7.7.0-nightly.5 → 7.7.0-nightly.6
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.
- package/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +12 -0
- package/lib/logic/craftTransaction.js +1 -1
- package/lib/logic/craftTransaction.js.map +1 -1
- package/lib-es/logic/craftTransaction.js +1 -1
- package/lib-es/logic/craftTransaction.js.map +1 -1
- package/package.json +5 -5
- package/src/logic/craftTransaction.test.ts +33 -1
- package/src/logic/craftTransaction.ts +1 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
> @ledgerhq/coin-xrp@7.7.0-nightly.
|
|
2
|
+
> @ledgerhq/coin-xrp@7.7.0-nightly.5 build /home/runner/work/ledger-live/ledger-live/libs/coin-modules/coin-xrp
|
|
3
3
|
> tsc && tsc -m esnext --moduleResolution bundler --outDir lib-es
|
|
4
4
|
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @ledgerhq/coin-xrp
|
|
2
2
|
|
|
3
|
+
## 7.7.0-nightly.6
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#12502](https://github.com/LedgerHQ/ledger-live/pull/12502) [`ca46e69`](https://github.com/LedgerHQ/ledger-live/commit/ca46e69b57011db61deeb9a862896afe62038829) Thanks [@jnicoulaud-ledger](https://github.com/jnicoulaud-ledger)! - fix(coin-module,xrp): fix destinationTag=0 ignored
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [[`607e4be`](https://github.com/LedgerHQ/ledger-live/commit/607e4be33145c102debce1606224b08579888aa8)]:
|
|
12
|
+
- @ledgerhq/cryptoassets@13.32.0-nightly.4
|
|
13
|
+
- @ledgerhq/coin-framework@6.8.0-nightly.6
|
|
14
|
+
|
|
3
15
|
## 7.7.0-nightly.5
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -39,7 +39,7 @@ async function craftTransaction(account, transaction, publicKey) {
|
|
|
39
39
|
if (transaction.memos) {
|
|
40
40
|
xrplTransaction.Memos = transaction.memos.map(memoMapper);
|
|
41
41
|
}
|
|
42
|
-
if (transaction.destinationTag) {
|
|
42
|
+
if (transaction.destinationTag !== null && transaction.destinationTag !== undefined) {
|
|
43
43
|
(0, invariant_1.default)((0, utils_1.validateTag)(new bignumber_js_1.default(transaction.destinationTag)), `tag is set but is not in a valid format, should be between [0 - ${utils_1.UINT32_MAX.toString()}]`);
|
|
44
44
|
xrplTransaction.DestinationTag = transaction.destinationTag;
|
|
45
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":";;;;;AAsCA,4CAmEC;AAzGD,gEAAqC;AACrC,0DAAkC;AAClC,6DAA6C;AAC7C,uGAA8E;AAC9E,wCAA4C;AAC5C,mCAAkD;AAElD,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,EAAE,iBAAiB,EAAE,GAAG,0BAAe,CAAC;AA6BvC,KAAK,UAAU,gBAAgB,CACpC,OAGC,EACD,WAMC,EACD,SAAkB;IAKlB,MAAM,eAAe,GAAoB;QACvC,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE;QACrC,WAAW,EAAE,WAAW,CAAC,SAAS;QAClC,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE;QAChC,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,OAAO,CAAC,kBAAkB;QACpC,kBAAkB,EAAE,CAAC,MAAM,IAAA,wBAAc,GAAE,CAAC,GAAG,aAAa;KAC7D,CAAC;IAEF,SAAS,UAAU,CAAC,SAAoB;QACtC,MAAM,IAAI,GAAS,EAAE,CAAC;QACtB,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;QACrC,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QACtB,eAAe,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":";;;;;AAsCA,4CAmEC;AAzGD,gEAAqC;AACrC,0DAAkC;AAClC,6DAA6C;AAC7C,uGAA8E;AAC9E,wCAA4C;AAC5C,mCAAkD;AAElD,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,EAAE,iBAAiB,EAAE,GAAG,0BAAe,CAAC;AA6BvC,KAAK,UAAU,gBAAgB,CACpC,OAGC,EACD,WAMC,EACD,SAAkB;IAKlB,MAAM,eAAe,GAAoB;QACvC,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE;QACrC,WAAW,EAAE,WAAW,CAAC,SAAS;QAClC,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE;QAChC,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,OAAO,CAAC,kBAAkB;QACpC,kBAAkB,EAAE,CAAC,MAAM,IAAA,wBAAc,GAAE,CAAC,GAAG,aAAa;KAC7D,CAAC;IAEF,SAAS,UAAU,CAAC,SAAoB;QACtC,MAAM,IAAI,GAAS,EAAE,CAAC;QACtB,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;QACrC,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QACtB,eAAe,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,WAAW,CAAC,cAAc,KAAK,IAAI,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACpF,IAAA,mBAAS,EACP,IAAA,mBAAW,EAAC,IAAI,sBAAS,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,EACtD,mEAAmE,kBAAU,CAAC,QAAQ,EAAE,GAAG,CAC5F,CAAC;QACF,eAAe,CAAC,cAAc,GAAG,WAAW,CAAC,cAAc,CAAC;IAC9D,CAAC;IAED,MAAM,qBAAqB,GAAG,SAAS;QACrC,CAAC,CAAC,IAAA,4BAAM,EAAC;YACL,GAAG,eAAe;YAClB,aAAa,EAAE,SAAS;SACzB,CAAC;QACJ,CAAC,CAAC,IAAA,4BAAM,EAAC;YACL,GAAG,eAAe;SACnB,CAAC,CAAC;IAEP,OAAO;QACL,eAAe;QACf,qBAAqB;KACtB,CAAC;AACJ,CAAC"}
|
|
@@ -33,7 +33,7 @@ export async function craftTransaction(account, transaction, publicKey) {
|
|
|
33
33
|
if (transaction.memos) {
|
|
34
34
|
xrplTransaction.Memos = transaction.memos.map(memoMapper);
|
|
35
35
|
}
|
|
36
|
-
if (transaction.destinationTag) {
|
|
36
|
+
if (transaction.destinationTag !== null && transaction.destinationTag !== undefined) {
|
|
37
37
|
invariant(validateTag(new BigNumber(transaction.destinationTag)), `tag is set but is not in a valid format, should be between [0 - ${UINT32_MAX.toString()}]`);
|
|
38
38
|
xrplTransaction.DestinationTag = transaction.destinationTag;
|
|
39
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,eAAe,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,EAAE,iBAAiB,EAAE,GAAG,eAAe,CAAC;AA6B9C,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAGC,EACD,WAMC,EACD,SAAkB;IAKlB,MAAM,eAAe,GAAoB;QACvC,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE;QACrC,WAAW,EAAE,WAAW,CAAC,SAAS;QAClC,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE;QAChC,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,OAAO,CAAC,kBAAkB;QACpC,kBAAkB,EAAE,CAAC,MAAM,cAAc,EAAE,CAAC,GAAG,aAAa;KAC7D,CAAC;IAEF,SAAS,UAAU,CAAC,SAAoB;QACtC,MAAM,IAAI,GAAS,EAAE,CAAC;QACtB,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;QACrC,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QACtB,eAAe,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,eAAe,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,EAAE,iBAAiB,EAAE,GAAG,eAAe,CAAC;AA6B9C,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAGC,EACD,WAMC,EACD,SAAkB;IAKlB,MAAM,eAAe,GAAoB;QACvC,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE;QACrC,WAAW,EAAE,WAAW,CAAC,SAAS;QAClC,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE;QAChC,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,OAAO,CAAC,kBAAkB;QACpC,kBAAkB,EAAE,CAAC,MAAM,cAAc,EAAE,CAAC,GAAG,aAAa;KAC7D,CAAC;IAEF,SAAS,UAAU,CAAC,SAAoB;QACtC,MAAM,IAAI,GAAS,EAAE,CAAC;QACtB,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;QACrC,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QACtB,eAAe,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,WAAW,CAAC,cAAc,KAAK,IAAI,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACpF,SAAS,CACP,WAAW,CAAC,IAAI,SAAS,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,EACtD,mEAAmE,UAAU,CAAC,QAAQ,EAAE,GAAG,CAC5F,CAAC;QACF,eAAe,CAAC,cAAc,GAAG,WAAW,CAAC,cAAc,CAAC;IAC9D,CAAC;IAED,MAAM,qBAAqB,GAAG,SAAS;QACrC,CAAC,CAAC,MAAM,CAAC;YACL,GAAG,eAAe;YAClB,aAAa,EAAE,SAAS;SACzB,CAAC;QACJ,CAAC,CAAC,MAAM,CAAC;YACL,GAAG,eAAe;SACnB,CAAC,CAAC;IAEP,OAAO;QACL,eAAe;QACf,qBAAqB;KACtB,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/coin-xrp",
|
|
3
|
-
"version": "7.7.0-nightly.
|
|
3
|
+
"version": "7.7.0-nightly.6",
|
|
4
4
|
"description": "Ledger XRP Coin integration",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Ledger",
|
|
@@ -103,13 +103,13 @@
|
|
|
103
103
|
"invariant": "^2.2.4",
|
|
104
104
|
"ripple-address-codec": "^5.0.0",
|
|
105
105
|
"ripple-binary-codec": "^1.3.0",
|
|
106
|
-
"@ledgerhq/coin-framework": "^6.8.0-nightly.
|
|
107
|
-
"@ledgerhq/cryptoassets": "^13.32.0-nightly.
|
|
106
|
+
"@ledgerhq/coin-framework": "^6.8.0-nightly.6",
|
|
107
|
+
"@ledgerhq/cryptoassets": "^13.32.0-nightly.4",
|
|
108
108
|
"@ledgerhq/devices": "8.7.0-nightly.1",
|
|
109
109
|
"@ledgerhq/errors": "^6.27.0-nightly.0",
|
|
110
110
|
"@ledgerhq/live-network": "^2.1.0-nightly.1",
|
|
111
|
-
"@ledgerhq/
|
|
112
|
-
"@ledgerhq/
|
|
111
|
+
"@ledgerhq/logs": "^6.13.0",
|
|
112
|
+
"@ledgerhq/types-live": "^6.88.0-nightly.3"
|
|
113
113
|
},
|
|
114
114
|
"devDependencies": {
|
|
115
115
|
"@faker-js/faker": "^8.4.1",
|
|
@@ -36,7 +36,7 @@ describe("craftTransaction", () => {
|
|
|
36
36
|
expect(result.serializedTransaction).toBeDefined();
|
|
37
37
|
});
|
|
38
38
|
|
|
39
|
-
it("returns a valid transaction object when
|
|
39
|
+
it("returns a valid transaction object when pubkey is provided", async () => {
|
|
40
40
|
// Given
|
|
41
41
|
const account = {
|
|
42
42
|
address: "rPDf6SQStnNmw1knCu1ei7h6BcDAEUUqn5",
|
|
@@ -75,4 +75,36 @@ describe("craftTransaction", () => {
|
|
|
75
75
|
]);
|
|
76
76
|
expect(binDecodedTx.DestinationTag).toEqual(123);
|
|
77
77
|
});
|
|
78
|
+
|
|
79
|
+
it("returns expected transaction when destinationTag is set to zero", async () => {
|
|
80
|
+
// Given
|
|
81
|
+
const account = {
|
|
82
|
+
address: "rPDf6SQStnNmw1knCu1ei7h6BcDAEUUqn5",
|
|
83
|
+
nextSequenceNumber: 2,
|
|
84
|
+
};
|
|
85
|
+
const transaction = {
|
|
86
|
+
recipient: "rJe1St1G6BWMFmdrrcT7NdD3XT1NxTMEWN",
|
|
87
|
+
amount: BigInt(100_000_000),
|
|
88
|
+
fees: BigInt(100),
|
|
89
|
+
destinationTag: 0,
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
// When
|
|
93
|
+
const result = await craftTransaction(account, transaction);
|
|
94
|
+
|
|
95
|
+
// Then
|
|
96
|
+
expect(result).toBeDefined();
|
|
97
|
+
expect(result.xrplTransaction).toEqual({
|
|
98
|
+
TransactionType: "Payment",
|
|
99
|
+
Account: "rPDf6SQStnNmw1knCu1ei7h6BcDAEUUqn5",
|
|
100
|
+
Amount: "100000000",
|
|
101
|
+
Destination: "rJe1St1G6BWMFmdrrcT7NdD3XT1NxTMEWN",
|
|
102
|
+
DestinationTag: 0,
|
|
103
|
+
Fee: "100",
|
|
104
|
+
Flags: 2147483648,
|
|
105
|
+
Sequence: 2,
|
|
106
|
+
LastLedgerSequence: 21,
|
|
107
|
+
});
|
|
108
|
+
expect(result.serializedTransaction).toBeDefined();
|
|
109
|
+
});
|
|
78
110
|
});
|
|
@@ -82,7 +82,7 @@ export async function craftTransaction(
|
|
|
82
82
|
xrplTransaction.Memos = transaction.memos.map(memoMapper);
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
-
if (transaction.destinationTag) {
|
|
85
|
+
if (transaction.destinationTag !== null && transaction.destinationTag !== undefined) {
|
|
86
86
|
invariant(
|
|
87
87
|
validateTag(new BigNumber(transaction.destinationTag)),
|
|
88
88
|
`tag is set but is not in a valid format, should be between [0 - ${UINT32_MAX.toString()}]`,
|