@ledgerhq/coin-tezos 6.9.0-nightly.20251125023817 → 6.9.0-nightly.20251125074637
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/CHANGELOG.md +7 -5
- package/lib/logic/craftTransaction.d.ts.map +1 -1
- package/lib/logic/craftTransaction.js +15 -1
- package/lib/logic/craftTransaction.js.map +1 -1
- package/lib-es/logic/craftTransaction.d.ts.map +1 -1
- package/lib-es/logic/craftTransaction.js +16 -2
- package/lib-es/logic/craftTransaction.js.map +1 -1
- package/package.json +5 -5
- package/src/api/index-mainnet.integ.test.ts +20 -0
- package/src/logic/craftTransaction.ts +15 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
# @ledgerhq/coin-tezos
|
|
2
2
|
|
|
3
|
-
## 6.9.0-nightly.
|
|
3
|
+
## 6.9.0-nightly.20251125074637
|
|
4
4
|
|
|
5
5
|
### Minor Changes
|
|
6
6
|
|
|
7
7
|
- [#12402](https://github.com/LedgerHQ/ledger-live/pull/12402) [`544721d`](https://github.com/LedgerHQ/ledger-live/commit/544721d198454526ef83516619d59c881ba34eb9) Thanks [@qperrot](https://github.com/qperrot)! - Fix transactionSequenceNumber type
|
|
8
8
|
|
|
9
|
+
- [#12907](https://github.com/LedgerHQ/ledger-live/pull/12907) [`bf75159`](https://github.com/LedgerHQ/ledger-live/commit/bf75159516d5dcd56711d3ba87176b1267622e9a) Thanks [@jnicoulaud-ledger](https://github.com/jnicoulaud-ledger)! - fix(TSD-7534): coin-modules/tezos: workaround reveal fees estimation failure
|
|
10
|
+
|
|
9
11
|
- [#12889](https://github.com/LedgerHQ/ledger-live/pull/12889) [`bf6f5d3`](https://github.com/LedgerHQ/ledger-live/commit/bf6f5d39cf752138741d16b246d1bc322426f9e5) Thanks [@francois-guerin-ledger](https://github.com/francois-guerin-ledger)! - refactor(llc): use core operation `tx.failed` property
|
|
10
12
|
|
|
11
13
|
- [#12604](https://github.com/LedgerHQ/ledger-live/pull/12604) [`eb5a17e`](https://github.com/LedgerHQ/ledger-live/commit/eb5a17e4db336eaa871eaeb52ffa5248e0f78bec) Thanks [@jnicoulaud-ledger](https://github.com/jnicoulaud-ledger)! - coin-modules/alpaca: add transaction status to operations
|
|
@@ -15,10 +17,10 @@
|
|
|
15
17
|
- [#12697](https://github.com/LedgerHQ/ledger-live/pull/12697) [`5c6e847`](https://github.com/LedgerHQ/ledger-live/commit/5c6e8475857bd01037255ce2cc642941fd7b7e6e) Thanks [@jprudent](https://github.com/jprudent)! - fix: some estimation fails with "proto.023-PtSeouLo.contract.manager.inconsistent_hash"
|
|
16
18
|
|
|
17
19
|
- Updated dependencies [[`74a340b`](https://github.com/LedgerHQ/ledger-live/commit/74a340b258589c9c37476103029eb036b930616c), [`a6bc24e`](https://github.com/LedgerHQ/ledger-live/commit/a6bc24ee988b98bf82f807ac5ce731ba79813901), [`b69c97d`](https://github.com/LedgerHQ/ledger-live/commit/b69c97d979ba97154c9abfda6abfc2a36becee4f), [`544721d`](https://github.com/LedgerHQ/ledger-live/commit/544721d198454526ef83516619d59c881ba34eb9), [`fe81926`](https://github.com/LedgerHQ/ledger-live/commit/fe81926afeb2df8e917e6bd1e4cbab13f09647fd), [`1c6f5f5`](https://github.com/LedgerHQ/ledger-live/commit/1c6f5f5843349b1955f7ca466f98cbe4ffcdaddf), [`b4a4e16`](https://github.com/LedgerHQ/ledger-live/commit/b4a4e160aae6fd64f944ab25633f6931dc4358d3), [`927ae64`](https://github.com/LedgerHQ/ledger-live/commit/927ae64db0bb04af54e25623655a001a68e0f2d3), [`d5d838a`](https://github.com/LedgerHQ/ledger-live/commit/d5d838a23e00edd53293843781c559c41db4e854), [`9f61dcf`](https://github.com/LedgerHQ/ledger-live/commit/9f61dcf6163fd66657e5be732c28bea623a40515), [`903ea9c`](https://github.com/LedgerHQ/ledger-live/commit/903ea9cdacf704a0119de2803a4f409b775391a5), [`9251b77`](https://github.com/LedgerHQ/ledger-live/commit/9251b77fcb01709723842f19220a2a41a6fc8f3b), [`938b970`](https://github.com/LedgerHQ/ledger-live/commit/938b970e15118dc706c759a3bec27dc01c3dd268), [`c40e9da`](https://github.com/LedgerHQ/ledger-live/commit/c40e9da68452fe9827b9435ff2d162291186be73), [`02ef98f`](https://github.com/LedgerHQ/ledger-live/commit/02ef98faeb13c182ef255e06a43c39abeb55ecc7), [`c0b5b9f`](https://github.com/LedgerHQ/ledger-live/commit/c0b5b9f4cdcb2ea3e15419cbf3d1a14f725c3e6a), [`6d0c6b2`](https://github.com/LedgerHQ/ledger-live/commit/6d0c6b2eda60049d8eebda5de2c54e8f0be7d009), [`70049be`](https://github.com/LedgerHQ/ledger-live/commit/70049bed0cd0a8c7a9e4947a63af82061dad46c0), [`0d33751`](https://github.com/LedgerHQ/ledger-live/commit/0d33751bb2ae599d0d26ce6a8efdbe01757f12fb), [`5b41dd5`](https://github.com/LedgerHQ/ledger-live/commit/5b41dd56e024a5d03ba0e49084113c04887395db), [`aadcec6`](https://github.com/LedgerHQ/ledger-live/commit/aadcec66847b800f79452ba1df09149e0a1cb9e8), [`b113920`](https://github.com/LedgerHQ/ledger-live/commit/b11392056bc334fc1813c473569ad3ae7be08045), [`eb5a17e`](https://github.com/LedgerHQ/ledger-live/commit/eb5a17e4db336eaa871eaeb52ffa5248e0f78bec), [`ed8532b`](https://github.com/LedgerHQ/ledger-live/commit/ed8532bad754ca2b5f1788c6e92f4646b775ec79), [`9659a34`](https://github.com/LedgerHQ/ledger-live/commit/9659a34d9998d5c4dff8618bf6cef7d16403680d), [`c70f6a8`](https://github.com/LedgerHQ/ledger-live/commit/c70f6a8370056b6fd8f236205471359d6f9b846f)]:
|
|
18
|
-
- @ledgerhq/types-live@6.89.0-nightly.
|
|
19
|
-
- @ledgerhq/cryptoassets@13.33.0-nightly.
|
|
20
|
-
- @ledgerhq/coin-framework@6.9.0-nightly.
|
|
21
|
-
- @ledgerhq/live-network@2.1.1-nightly.
|
|
20
|
+
- @ledgerhq/types-live@6.89.0-nightly.20251125074637
|
|
21
|
+
- @ledgerhq/cryptoassets@13.33.0-nightly.20251125074637
|
|
22
|
+
- @ledgerhq/coin-framework@6.9.0-nightly.20251125074637
|
|
23
|
+
- @ledgerhq/live-network@2.1.1-nightly.20251125074637
|
|
22
24
|
|
|
23
25
|
## 6.8.0
|
|
24
26
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"craftTransaction.d.ts","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAU,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"craftTransaction.d.ts","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAU,MAAM,cAAc,CAAC;AAQ9D,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,UAAU,GAAG,YAAY,CAAC;AAEhE,wBAAsB,gBAAgB,CACpC,OAAO,EAAE;IACP,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EACD,WAAW,EAAE;IACX,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,YAAY,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,cAAc,CAAC;CACrB,EACD,SAAS,CAAC,EAAE;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB,GACA,OAAO,CAAC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAA;CAAE,CAAC,CA8FnE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAW9E"}
|
|
@@ -11,6 +11,7 @@ const config_1 = __importDefault(require("../config"));
|
|
|
11
11
|
const errors_1 = require("../types/errors");
|
|
12
12
|
const tezosToolkit_1 = require("./tezosToolkit");
|
|
13
13
|
const utils_1 = require("../utils");
|
|
14
|
+
const logs_1 = require("@ledgerhq/logs");
|
|
14
15
|
async function craftTransaction(account, transaction, publicKey) {
|
|
15
16
|
const { address } = account;
|
|
16
17
|
const transactionFees = {
|
|
@@ -29,7 +30,20 @@ async function craftTransaction(account, transaction, publicKey) {
|
|
|
29
30
|
const counter = account.counter ?? Number(sourceData.counter);
|
|
30
31
|
const contents = [];
|
|
31
32
|
if (publicKey !== undefined) {
|
|
32
|
-
|
|
33
|
+
let revealFees;
|
|
34
|
+
try {
|
|
35
|
+
revealFees = await tezosToolkit.estimate.reveal();
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
// for some unknown reason, on some addresses the estimation fails with "inconsistent_hash" error, we fall back to
|
|
39
|
+
// another method from the SDK
|
|
40
|
+
(0, logs_1.log)("estimate-error", "error estimating reveal fees, trying using getRevealGasLimit", {
|
|
41
|
+
error,
|
|
42
|
+
});
|
|
43
|
+
revealFees = {
|
|
44
|
+
gasLimit: (0, taquito_1.getRevealGasLimit)(address),
|
|
45
|
+
};
|
|
46
|
+
}
|
|
33
47
|
const minRevealGasLimit = config_1.default.getCoinConfig().fees.minRevealGasLimit;
|
|
34
48
|
const revealGasLimit = Math.max(revealFees?.gasLimit || 0, minRevealGasLimit);
|
|
35
49
|
contents.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"craftTransaction.d.ts","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAU,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"craftTransaction.d.ts","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAU,MAAM,cAAc,CAAC;AAQ9D,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,UAAU,GAAG,YAAY,CAAC;AAEhE,wBAAsB,gBAAgB,CACpC,OAAO,EAAE;IACP,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EACD,WAAW,EAAE;IACX,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,YAAY,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,cAAc,CAAC;CACrB,EACD,SAAS,CAAC,EAAE;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB,GACA,OAAO,CAAC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAA;CAAE,CAAC,CA8FnE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAW9E"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { OpKind } from "@taquito/rpc";
|
|
2
|
-
import { getRevealFee } from "@taquito/taquito";
|
|
2
|
+
import { getRevealFee, getRevealGasLimit } from "@taquito/taquito";
|
|
3
3
|
import coinConfig from "../config";
|
|
4
4
|
import { UnsupportedTransactionMode } from "../types/errors";
|
|
5
5
|
import { getTezosToolkit } from "./tezosToolkit";
|
|
6
6
|
import { createMockSigner } from "../utils";
|
|
7
|
+
import { log } from "@ledgerhq/logs";
|
|
7
8
|
export async function craftTransaction(account, transaction, publicKey) {
|
|
8
9
|
const { address } = account;
|
|
9
10
|
const transactionFees = {
|
|
@@ -22,7 +23,20 @@ export async function craftTransaction(account, transaction, publicKey) {
|
|
|
22
23
|
const counter = account.counter ?? Number(sourceData.counter);
|
|
23
24
|
const contents = [];
|
|
24
25
|
if (publicKey !== undefined) {
|
|
25
|
-
|
|
26
|
+
let revealFees;
|
|
27
|
+
try {
|
|
28
|
+
revealFees = await tezosToolkit.estimate.reveal();
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
// for some unknown reason, on some addresses the estimation fails with "inconsistent_hash" error, we fall back to
|
|
32
|
+
// another method from the SDK
|
|
33
|
+
log("estimate-error", "error estimating reveal fees, trying using getRevealGasLimit", {
|
|
34
|
+
error,
|
|
35
|
+
});
|
|
36
|
+
revealFees = {
|
|
37
|
+
gasLimit: getRevealGasLimit(address),
|
|
38
|
+
};
|
|
39
|
+
}
|
|
26
40
|
const minRevealGasLimit = coinConfig.getCoinConfig().fees.minRevealGasLimit;
|
|
27
41
|
const revealGasLimit = Math.max(revealFees?.gasLimit || 0, minRevealGasLimit);
|
|
28
42
|
contents.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,MAAM,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/coin-tezos",
|
|
3
|
-
"version": "6.9.0-nightly.
|
|
3
|
+
"version": "6.9.0-nightly.20251125074637",
|
|
4
4
|
"description": "Tezos Coin integration",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Ledger",
|
|
@@ -75,13 +75,13 @@
|
|
|
75
75
|
"invariant": "^2.2.4",
|
|
76
76
|
"lodash": "^4.17.21",
|
|
77
77
|
"rxjs": "^7.8.1",
|
|
78
|
-
"@ledgerhq/coin-framework": "^6.9.0-nightly.
|
|
79
|
-
"@ledgerhq/cryptoassets": "^13.33.0-nightly.
|
|
78
|
+
"@ledgerhq/coin-framework": "^6.9.0-nightly.20251125074637",
|
|
79
|
+
"@ledgerhq/cryptoassets": "^13.33.0-nightly.20251125074637",
|
|
80
80
|
"@ledgerhq/devices": "8.7.0",
|
|
81
81
|
"@ledgerhq/errors": "^6.27.0",
|
|
82
|
-
"@ledgerhq/live-network": "^2.1.1-nightly.
|
|
82
|
+
"@ledgerhq/live-network": "^2.1.1-nightly.20251125074637",
|
|
83
83
|
"@ledgerhq/logs": "^6.13.0",
|
|
84
|
-
"@ledgerhq/types-live": "^6.89.0-nightly.
|
|
84
|
+
"@ledgerhq/types-live": "^6.89.0-nightly.20251125074637"
|
|
85
85
|
},
|
|
86
86
|
"devDependencies": {
|
|
87
87
|
"@faker-js/faker": "^8.4.1",
|
|
@@ -50,4 +50,24 @@ describe("Tezos Api - Mainnet", () => {
|
|
|
50
50
|
expect(result.parameters?.storageLimit).toBeGreaterThanOrEqual(BigInt(0));
|
|
51
51
|
});
|
|
52
52
|
});
|
|
53
|
+
|
|
54
|
+
describe("encode", () => {
|
|
55
|
+
it("encode a reveal operation without failing", async () => {
|
|
56
|
+
// When
|
|
57
|
+
const result = await module.craftTransaction(
|
|
58
|
+
{
|
|
59
|
+
intentType: "transaction",
|
|
60
|
+
asset: { type: "native" },
|
|
61
|
+
type: "send",
|
|
62
|
+
sender: "tz2F4XnSd1wjwWsthemvZQjoPER7NVSt35k3",
|
|
63
|
+
senderPublicKey: "03576c19462a7d0cc3d121b1b00e92258b5f71d643c99a599fc1683f03abb7a1c2",
|
|
64
|
+
recipient: "tz2TLTEWhG87pPKK7MxYLavitGGwje1znRwQ",
|
|
65
|
+
amount: BigInt(500000),
|
|
66
|
+
},
|
|
67
|
+
{ value: BigInt(832) },
|
|
68
|
+
);
|
|
69
|
+
|
|
70
|
+
expect(result.transaction).toBeDefined();
|
|
71
|
+
});
|
|
72
|
+
});
|
|
53
73
|
});
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { type OperationContents, OpKind } from "@taquito/rpc";
|
|
2
|
-
import { getRevealFee } from "@taquito/taquito";
|
|
2
|
+
import { getRevealFee, getRevealGasLimit } from "@taquito/taquito";
|
|
3
3
|
import coinConfig from "../config";
|
|
4
4
|
import { UnsupportedTransactionMode } from "../types/errors";
|
|
5
5
|
import { getTezosToolkit } from "./tezosToolkit";
|
|
6
6
|
import { createMockSigner } from "../utils";
|
|
7
|
+
import { log } from "@ledgerhq/logs";
|
|
7
8
|
|
|
8
9
|
export type TransactionFee = {
|
|
9
10
|
fees?: string;
|
|
@@ -51,7 +52,19 @@ export async function craftTransaction(
|
|
|
51
52
|
const contents: OperationContents[] = [];
|
|
52
53
|
|
|
53
54
|
if (publicKey !== undefined) {
|
|
54
|
-
|
|
55
|
+
let revealFees;
|
|
56
|
+
try {
|
|
57
|
+
revealFees = await tezosToolkit.estimate.reveal();
|
|
58
|
+
} catch (error) {
|
|
59
|
+
// for some unknown reason, on some addresses the estimation fails with "inconsistent_hash" error, we fall back to
|
|
60
|
+
// another method from the SDK
|
|
61
|
+
log("estimate-error", "error estimating reveal fees, trying using getRevealGasLimit", {
|
|
62
|
+
error,
|
|
63
|
+
});
|
|
64
|
+
revealFees = {
|
|
65
|
+
gasLimit: getRevealGasLimit(address),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
55
68
|
const minRevealGasLimit = coinConfig.getCoinConfig().fees.minRevealGasLimit;
|
|
56
69
|
const revealGasLimit = Math.max(revealFees?.gasLimit || 0, minRevealGasLimit);
|
|
57
70
|
contents.push({
|