@ledgerhq/coin-tezos 10.0.0 → 10.2.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAA;AAE7F,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AACD,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG;IAC/C,UAAU,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC1D,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5D;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAA;AAEnE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,QAAQ,GAAG,aAAa,CAAC,eAAe,CAAC,GAAG;IACtD,cAAc,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;CACtF,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAA;AAE9E,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AACD,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG;IAC/C,UAAU,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC1D,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5D;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"validateIntent.d.ts","sourceRoot":"","sources":["../../src/logic/validateIntent.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAmB,YAAY,EAAE,MAAM,WAAW,CAAA;AAG9D,OAAO,KAAK,EACV,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,2CAA2C,CAAA;AA4UlD,wBAAsB,cAAc,CAClC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAwEhC"}
1
+ {"version":3,"file":"validateIntent.d.ts","sourceRoot":"","sources":["../../src/logic/validateIntent.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAmB,YAAY,EAAE,MAAM,WAAW,CAAA;AAG9D,OAAO,KAAK,EACV,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,2CAA2C,CAAA;AAkVlD,wBAAsB,cAAc,CAClC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAuGhC"}
@@ -170,6 +170,11 @@ function calculateAmounts(intent, senderInfo, estimatedFees, estimatedAmount, to
170
170
  const { spendable } = partitionNativeBalance(BigInt(senderInfo.balance), BigInt(senderInfo.stakedBalance ?? 0), BigInt(senderInfo.unstakedBalance ?? 0));
171
171
  return calculateNativeSendMaxAmountForUser(spendable, estimatedFees, estimatedAmount);
172
172
  }
173
+ // FA1.2/FA2 fixed-amount send: `intent.amount` is in token base units; fees are in XTZ mutez.
174
+ // Never add the token amount to the native coverage check — the units are incompatible.
175
+ if (intent.type === 'send' && parseTezosTokenAsset(intent.asset) !== null) {
176
+ return { amount: intent.amount, totalSpent: estimatedFees };
177
+ }
173
178
  const amount = intent.amount;
174
179
  return { amount, totalSpent: amount + estimatedFees };
175
180
  }
@@ -222,8 +227,8 @@ async function estimateFeesForIntent(context, intent, senderInfo) {
222
227
  errors,
223
228
  };
224
229
  }
225
- async function fetchTokenBalanceForSendMax(config, intent) {
226
- if (intent.type !== 'send' || !intent.useAllAmount) {
230
+ async function fetchTokenBalance(config, intent) {
231
+ if (intent.type !== 'send') {
227
232
  return undefined;
228
233
  }
229
234
  const tezosMode = resolveTezosOperationMode(intent.type, intent.asset);
@@ -277,7 +282,27 @@ export async function validateIntent(context, intent) {
277
282
  estimatedFees = feeResult.estimatedFees;
278
283
  estimatedAmount = feeResult.estimatedAmount;
279
284
  Object.assign(errors, feeResult.errors);
280
- const tokenBalanceForSendMax = await fetchTokenBalanceForSendMax(config, intent);
285
+ // Skip the TzKT call only for fixed-amount sends where errors.amount is already set — the token
286
+ // balance would only be used for coverage, which is also gated on !errors.amount.
287
+ // For send-max we always fetch: calculateAmounts uses tokenBalanceForSendMax as the sent amount,
288
+ // so skipping would cause it to fall back to the native XTZ path and return a wrong unit.
289
+ // The TzKT call is isolated in its own try-catch so that a network failure here does not reach
290
+ // the outer handler (which would wipe the already-computed estimatedFees and add a spurious
291
+ // errors.estimation on top of the real fee-estimation error).
292
+ let tokenBalance;
293
+ if (errors.amount && !intent.useAllAmount) {
294
+ tokenBalance = undefined;
295
+ }
296
+ else {
297
+ try {
298
+ tokenBalance = await fetchTokenBalance(config, intent);
299
+ }
300
+ catch {
301
+ tokenBalance = undefined; // TzKT unreachable: fall back gracefully, no token coverage check
302
+ }
303
+ }
304
+ // send-max uses the full token balance as the sent amount; fixed-amount only needs it for coverage
305
+ const tokenBalanceForSendMax = intent.useAllAmount ? tokenBalance : undefined;
281
306
  const amounts = calculateAmounts(intent, senderInfo, estimatedFees, estimatedAmount, tokenBalanceForSendMax);
282
307
  amount = amounts.amount;
283
308
  totalSpent = amounts.totalSpent;
@@ -287,6 +312,16 @@ export async function validateIntent(context, intent) {
287
312
  const { spendable } = partitionNativeBalance(BigInt(senderInfo.balance), BigInt(senderInfo.stakedBalance ?? 0), BigInt(senderInfo.unstakedBalance ?? 0));
288
313
  const balanceErrors = validateBalanceCoverage(spendable, totalSpent);
289
314
  Object.assign(errors, balanceErrors);
315
+ // Token balance coverage for fixed-amount token sends.
316
+ // (send-max is always valid by construction: amount is set to tokenBalance above.)
317
+ if (!errors.amount &&
318
+ intent.type === 'send' &&
319
+ !intent.useAllAmount &&
320
+ tokenBalance !== undefined) {
321
+ if (amount > tokenBalance) {
322
+ errors.amount = new NotEnoughBalance();
323
+ }
324
+ }
290
325
  }
291
326
  catch (e) {
292
327
  errors.estimation = e;
@@ -1 +1 @@
1
- {"version":3,"file":"validateIntent.js","sourceRoot":"","sources":["../../src/logic/validateIntent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateIntent.js","sourceRoot":"","sources":["../../src/logic/validateIntent.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": "10.0.0",
3
+ "version": "10.2.0",
4
4
  "description": "Tezos Coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -61,7 +61,7 @@
61
61
  "@taquito/rpc": "^23.0.0-RC.0",
62
62
  "@taquito/taquito": "^23.0.0-RC.0",
63
63
  "@taquito/utils": "^23.0.0-RC.0",
64
- "@ledgerhq/coin-module-framework": "^8.0.0"
64
+ "@ledgerhq/coin-module-framework": "^8.2.0"
65
65
  },
66
66
  "peerDependencies": {
67
67
  "@ledgerhq/live-network": "^3.0.0",
@@ -76,7 +76,6 @@
76
76
  "@types/node": "^24.0.0",
77
77
  "bn.js": "^5.1.0",
78
78
  "jest": "30.2.0",
79
- "msw": "2.7.3",
80
79
  "oxfmt": "0.36.0",
81
80
  "oxlint": "1.51.0",
82
81
  "typescript": "6.0.2"
@@ -2,7 +2,6 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import type { TezosCoinConfig, TezosConfig, TezosContext } from '../config'
5
- import type { TezosApi } from './types'
6
5
  import { localForger } from '@taquito/local-forging'
7
6
  import { OpKind } from '@taquito/rpc'
8
7
  import { createTzktApi } from '../network/tzkt'
@@ -55,7 +54,7 @@ type DecodedOperation = {
55
54
  * Use this test suite in last resort
56
55
  */
57
56
  describe('Tezos Api - Mainnet', () => {
58
- const module: TezosApi = createApi()
57
+ const module = createApi()
59
58
  const context: TezosContext = {
60
59
  config: async () => defaultConfig as TezosCoinConfig,
61
60
  logger: () => undefined,
@@ -2,7 +2,6 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import type { TezosCoinConfig, TezosConfig, TezosContext } from '../config'
5
- import type { TezosApi } from './types'
6
5
  import type { SendTransactionIntent } from '@ledgerhq/coin-module-framework/api/types'
7
6
  import { localForger } from '@taquito/local-forging'
8
7
  import { createApi } from '.'
@@ -26,7 +25,7 @@ const defaultConfig: TezosConfig = {
26
25
  * https://api.shadownet.tzkt.io
27
26
  */
28
27
  describe('Tezos Api', () => {
29
- const module: TezosApi = createApi()
28
+ const module = createApi()
30
29
  const context: TezosContext = {
31
30
  config: async () => defaultConfig as TezosCoinConfig,
32
31
  logger: () => undefined,
@@ -995,6 +995,8 @@ describe('getBalance', () => {
995
995
  })
996
996
 
997
997
  describe('getAccountInfo', () => {
998
+ // `getAccountInfo` is optional on the generic CoinModuleApi (ADR-045 / LIVE-33431); coin-tezos
999
+ // always implements it, so the non-null assertions below are safe.
998
1000
  afterEach(() => {
999
1001
  mockGetAccountByAddress.mockClear()
1000
1002
  })
@@ -1013,7 +1015,7 @@ describe('getAccountInfo', () => {
1013
1015
  firstActivityTime: '2021-01-01T00:00:00Z',
1014
1016
  } as APIAccount)
1015
1017
 
1016
- await expect(api.getAccountInfo(context, 'tz1test')).resolves.toEqual({
1018
+ await expect(api.getAccountInfo!(context, 'tz1test')).resolves.toEqual({
1017
1019
  type: 'tezos',
1018
1020
  revealed: true,
1019
1021
  })
@@ -1034,7 +1036,7 @@ describe('getAccountInfo', () => {
1034
1036
  firstActivityTime: '2021-01-01T00:00:00Z',
1035
1037
  } as APIAccount)
1036
1038
 
1037
- await expect(api.getAccountInfo(context, 'tz2unrevealed')).resolves.toEqual({
1039
+ await expect(api.getAccountInfo!(context, 'tz2unrevealed')).resolves.toEqual({
1038
1040
  type: 'tezos',
1039
1041
  revealed: false,
1040
1042
  })
@@ -1054,7 +1056,7 @@ describe('getAccountInfo', () => {
1054
1056
  } as APIAccount)
1055
1057
 
1056
1058
  await expect(
1057
- api.getAccountInfo(context, 'tz3RDC3Jdn4j15J7bBHZd29EUee9gVB1CxD9')
1059
+ api.getAccountInfo!(context, 'tz3RDC3Jdn4j15J7bBHZd29EUee9gVB1CxD9')
1058
1060
  ).resolves.toEqual({
1059
1061
  type: 'tezos',
1060
1062
  revealed: true,
@@ -1069,7 +1071,7 @@ describe('getAccountInfo', () => {
1069
1071
  counter: 0,
1070
1072
  } as APIAccount)
1071
1073
 
1072
- await expect(api.getAccountInfo(context, 'tz1empty')).resolves.toEqual({
1074
+ await expect(api.getAccountInfo!(context, 'tz1empty')).resolves.toEqual({
1073
1075
  type: 'tezos',
1074
1076
  revealed: false,
1075
1077
  })
@@ -1079,6 +1081,6 @@ describe('getAccountInfo', () => {
1079
1081
  it('propagates errors from getAccountByAddress', async () => {
1080
1082
  mockGetAccountByAddress.mockRejectedValueOnce(new Error('boom'))
1081
1083
 
1082
- await expect(api.getAccountInfo(context, 'tz1boom')).rejects.toThrow('boom')
1084
+ await expect(api.getAccountInfo!(context, 'tz1boom')).rejects.toThrow('boom')
1083
1085
  })
1084
1086
  })
package/src/api/index.ts CHANGED
@@ -1,17 +1,15 @@
1
1
  // SPDX-FileCopyrightText: © 2026 LEDGER SAS
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import type { TezosContext } from '../config'
4
+ import type { TezosCoinConfig, TezosContext } from '../config'
5
5
  import type { CoreAccountInfo, CoreTransactionInfo, EstimatedFees } from '../logic/estimateFees'
6
6
  import type { TezosOperationMode } from '../types/model'
7
- import type { TezosAccountInfo, TezosApi, TezosFeeEstimation } from './types'
7
+ import type { TezosAccountInfo, TezosFeeEstimation } from './types'
8
8
  import type {
9
+ CoinModuleImpl,
9
10
  CraftedTransaction,
10
- Cursor,
11
11
  ListOperationsOptions,
12
12
  Page,
13
- Reward,
14
- Validator,
15
13
  } from '@ledgerhq/coin-module-framework/api/index'
16
14
  import type {
17
15
  BalanceOptions,
@@ -19,11 +17,7 @@ import type {
19
17
  TransactionIntent,
20
18
  } from '@ledgerhq/coin-module-framework/api/types'
21
19
  import { rejectBalanceOptions } from '@ledgerhq/coin-module-framework/api/getBalance/rejectBalanceOptions'
22
- import {
23
- IncorrectTypeError,
24
- notSupported,
25
- type Operation,
26
- } from '@ledgerhq/coin-module-framework/api/index'
20
+ import { IncorrectTypeError, type Operation } from '@ledgerhq/coin-module-framework/api/index'
27
21
  import { craftTransactionData } from '@ledgerhq/coin-module-framework/logic/craftTransactionData'
28
22
  import { log } from '@ledgerhq/logs'
29
23
  import { getRevealFee } from '@taquito/taquito'
@@ -56,14 +50,18 @@ import {
56
50
  } from '../utils'
57
51
 
58
52
  // The caller builds the {@link TezosContext} (config + logger) and passes it to each method (ADR-019).
59
- export function createApi(): TezosApi {
53
+ // Checked against CoinModuleImpl with `satisfies` rather than annotated as it, so the precise shape
54
+ // survives and a caller sees exactly which methods exist.
55
+ //
56
+ // Omitted rather than stubbed: `call`, `register`, `getRewards` and `getValidators`. Staking is
57
+ // partial rather than absent — `getStakes` is implemented, while Tezos exposes no reward-event
58
+ // series and no enumerable validator set here. The consumer resolver applies `withDefaults`, which
59
+ // answers "not supported" for each.
60
+ export function createApi() {
60
61
  return {
61
- broadcast: (context, tx) => broadcast(context, tx),
62
- async call() {
63
- throw new Error('call is not supported')
64
- },
65
- combine: (_context, tx, signature) => combine(tx, signature),
66
- craftTransaction: (context, transactionIntent, options) =>
62
+ broadcast: (context, tx, _options?) => broadcast(context, tx),
63
+ combine: (_context, tx, signature, _options?) => combine(tx, signature),
64
+ craftTransaction: (context, transactionIntent, options?) =>
67
65
  craft(context, transactionIntent, options?.customFees),
68
66
  craftRawTransaction: async (
69
67
  context,
@@ -75,13 +73,14 @@ export function createApi(): TezosApi {
75
73
  const tx = await craftRawOperations(context, transaction, sender, publicKey, sequence)
76
74
  return { transaction: tx }
77
75
  },
78
- estimateFees: (context, transactionIntent) => estimate(context, transactionIntent),
76
+ estimateFees: (context, transactionIntent, _options?) => estimate(context, transactionIntent),
79
77
  getBalance: (context, address: string, options?: BalanceOptions) =>
80
78
  rejectBalanceOptions(() => getBalance(context, address), options),
81
79
  lastBlock: (context) => lastBlock(context),
82
80
  listOperations: (context, address, options) => operations(context, address, options),
83
- getStakes: (context, address, options) => getStakes(context, address, options?.cursor),
84
- validateIntent: (context, transactionIntent) => validateIntent(context, transactionIntent),
81
+ getStakes: (context, address, options?) => getStakes(context, address, options?.cursor),
82
+ validateIntent: (context, transactionIntent, _balances, _options?) =>
83
+ validateIntent(context, transactionIntent),
85
84
  getNextSequence: async (context, address: string) => {
86
85
  const config = await context.config()
87
86
  const accountInfo = await createTzktApi(config).getAccountByAddress(address)
@@ -97,16 +96,9 @@ export function createApi(): TezosApi {
97
96
  },
98
97
  getBlock: (context, height) => getBlock(context, height),
99
98
  getBlockInfo: (context, height) => getBlockInfo(context, height),
100
- getRewards(_context, _address: string, _options?: { cursor?: Cursor }): Promise<Page<Reward>> {
101
- throw new Error('getRewards is not supported')
102
- },
103
- register: notSupported('register'),
104
- getValidators(_context, _options?: { cursor?: Cursor }): Promise<Page<Validator>> {
105
- throw new Error('getValidators is not supported')
106
- },
107
99
  validateAddress: (_context, address, parameters) => validateAddress(address, parameters),
108
100
  craftTransactionData: (_context, intent) => craftTransactionData(intent),
109
- }
101
+ } satisfies CoinModuleImpl<TezosCoinConfig>
110
102
  }
111
103
 
112
104
  function isTezosTransactionType(
package/src/api/types.ts CHANGED
@@ -1,8 +1,7 @@
1
1
  // SPDX-FileCopyrightText: © 2026 LEDGER SAS
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import type { TezosCoinConfig, TezosContext } from '../config'
5
- import type { CoinModuleApi, FeeEstimation } from '@ledgerhq/coin-module-framework/api/types'
4
+ import type { FeeEstimation } from '@ledgerhq/coin-module-framework/api/types'
6
5
 
7
6
  export type TezosFeeParameters = {
8
7
  gasLimit: bigint
@@ -19,20 +18,9 @@ export type TezosSender = { address: string; xpub?: string }
19
18
  /**
20
19
  * Network-specific account metadata for Tezos (ADR-045 shape).
21
20
  * `revealed` is `true` once the account has published its public key on-chain.
22
- */
23
- export type TezosAccountInfo = { type: 'tezos'; revealed: boolean }
24
-
25
- /**
26
- * coin-tezos public API surface: the generic {@link CoinModuleApi} plus `getAccountInfo`,
27
- * which exposes the account's on-chain reveal state.
28
21
  *
29
- * Kept local (rather than relying on the future framework-side reveal-state type from ADR-045)
30
- * so coin-tezos does not depend on that framework change landing first. The `{ type: "tezos" }`
31
- * shape is intentionally identical to the ADR-045 variant. Once the framework's `CoinModuleApi`
32
- * ships its own `getAccountInfo`, migrating means dropping this local override entirely (the two
33
- * signatures would otherwise intersect into an incompatible-return-type collision) and letting the
34
- * implementation satisfy the generic method directly.
22
+ * Concrete return type of the module's `getAccountInfo`. The framework's generic
23
+ * `CoinModuleApi.getAccountInfo` (added by ADR-045 / LIVE-33431) widens to the open
24
+ * `AccountInfo` shape; this alias keeps the reveal state strongly typed at the implementation.
35
25
  */
36
- export type TezosApi = CoinModuleApi<TezosCoinConfig> & {
37
- getAccountInfo: (context: TezosContext, address: string) => Promise<TezosAccountInfo>
38
- }
26
+ export type TezosAccountInfo = { type: 'tezos'; revealed: boolean }