@vultisig/core-mpc 2.0.1 → 2.1.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 (37) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/dist/keysign/chainSpecific/resolver.d.ts +6 -0
  3. package/dist/keysign/chainSpecific/resolver.d.ts.map +1 -1
  4. package/dist/keysign/chainSpecific/resolvers/cardano.js +2 -2
  5. package/dist/keysign/chainSpecific/resolvers/cardano.js.map +1 -1
  6. package/dist/keysign/chainSpecific/resolvers/ton/index.d.ts +7 -0
  7. package/dist/keysign/chainSpecific/resolvers/ton/index.d.ts.map +1 -1
  8. package/dist/keysign/chainSpecific/resolvers/ton/index.js +20 -18
  9. package/dist/keysign/chainSpecific/resolvers/ton/index.js.map +1 -1
  10. package/dist/keysign/send/build.d.ts +7 -1
  11. package/dist/keysign/send/build.d.ts.map +1 -1
  12. package/dist/keysign/send/build.js +3 -1
  13. package/dist/keysign/send/build.js.map +1 -1
  14. package/dist/keysign/signingInputs/resolvers/cosmos/index.d.ts +11 -0
  15. package/dist/keysign/signingInputs/resolvers/cosmos/index.d.ts.map +1 -1
  16. package/dist/keysign/signingInputs/resolvers/cosmos/index.js +4 -1
  17. package/dist/keysign/signingInputs/resolvers/cosmos/index.js.map +1 -1
  18. package/dist/keysign/signingInputs/resolvers/ton/index.d.ts.map +1 -1
  19. package/dist/keysign/signingInputs/resolvers/ton/index.js +5 -4
  20. package/dist/keysign/signingInputs/resolvers/ton/index.js.map +1 -1
  21. package/dist/keysign/signingInputs/resolvers/ton/jetton.d.ts +6 -0
  22. package/dist/keysign/signingInputs/resolvers/ton/jetton.d.ts.map +1 -1
  23. package/dist/keysign/signingInputs/resolvers/ton/jetton.js +15 -3
  24. package/dist/keysign/signingInputs/resolvers/ton/jetton.js.map +1 -1
  25. package/dist/keysign/signingInputs/resolvers/ton/native.d.ts +31 -2
  26. package/dist/keysign/signingInputs/resolvers/ton/native.d.ts.map +1 -1
  27. package/dist/keysign/signingInputs/resolvers/ton/native.js +34 -10
  28. package/dist/keysign/signingInputs/resolvers/ton/native.js.map +1 -1
  29. package/dist/keysign/swap/build.d.ts +3 -1
  30. package/dist/keysign/swap/build.d.ts.map +1 -1
  31. package/dist/keysign/swap/build.js +111 -3
  32. package/dist/keysign/swap/build.js.map +1 -1
  33. package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.d.ts +4 -384
  34. package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.d.ts.map +1 -1
  35. package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.js +5 -76
  36. package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.js.map +1 -1
  37. package/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,54 @@
1
1
  # @vultisig/core-mpc
2
2
 
3
+ ## 2.1.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#2297](https://github.com/vultisig/vultisig-sdk/pull/2297) [`c0eafeb`](https://github.com/vultisig/vultisig-sdk/commit/c0eafeb12df42cffa70ef6951c081a74383e5fa2) Thanks [@rcoderdev](https://github.com/rcoderdev)! - Make the SDK package graph explicit and acyclic. Shared Bitcoin signing protobuf schemas now live in `@vultisig/mpc-types`, `@vultisig/core-mpc` preserves its existing schema subpath as a compatibility export, and SDK builds resolve the declared core packages through their published export maps.
8
+
9
+ - [#2006](https://github.com/vultisig/vultisig-sdk/pull/2006) [`3d40017`](https://github.com/vultisig/vultisig-sdk/commit/3d400171facf1107472e827c4ef48d7dd99843f1) Thanks [@gomesalexandre](https://github.com/gomesalexandre)! - Throw a domain error naming both unresolved chains when `getThorchainDepositAsset` can't resolve a native-swap chain id, instead of failing with a bare `Cannot read properties of undefined (reading 'toUpperCase')` TypeError on the secured-asset path (and silently building an invalid `chain: undefined` proto on the unsecured path). Also adds test coverage for the previously-untested CIP-8/CIP-30 `buildCoseStructures` CBOR encoders.
10
+
11
+ - [#2252](https://github.com/vultisig/vultisig-sdk/pull/2252) [`ef252e4`](https://github.com/vultisig/vultisig-sdk/commit/ef252e40b590a6cad9f303f7aba743c617442f90) Thanks [@Ehsan-saradar](https://github.com/Ehsan-saradar)! - fix(ton): stop hiding action-phase failures on sends and in status
12
+
13
+ Every TON send OR'd `IGNORE_ACTION_PHASE_ERRORS` into the wallet contract's send mode, which tells the contract to skip an outgoing transfer it cannot carry out instead of failing. The transaction then landed un-aborted with the seqno consumed and nothing moved, and the status resolver — which read only `aborted` and `compute_ph.exit_code` — reported it as confirmed. The user was told a transfer succeeded while the funds never left.
14
+
15
+ The flag is now dropped from native, MAX, dApp `signTon`, and Jetton sends (both the WalletCore and the React Native builders), and `getTonTxStatus` reads the action phase (`success`, `no_funds`, `result_code`, `skipped_actions`) alongside the compute phase. A transaction the indexer knows but has not yet described stays pending instead of counting as success.
16
+
17
+ Dropping the flag changes the signed body, so TON signing hashes move. Clients must upgrade together: a co-signer on an older build derives a different hash and the keysign fails. The mobile and cross-encoder golden corpora are re-recorded to the new values.
18
+
19
+ - [#2280](https://github.com/vultisig/vultisig-sdk/pull/2280) [`4e23e92`](https://github.com/vultisig/vultisig-sdk/commit/4e23e9205310e46564bc1782b57499b2a39d7a5f) Thanks [@Ehsan-saradar](https://github.com/Ehsan-saradar)! - fix(ton): refuse to build a Jetton transfer when the sender jetton wallet cannot be resolved
20
+
21
+ A Jetton transfer is a message to the sender's _own_ jetton wallet, and that address was resolved with a swallowed failure: `TonSpecific.jettonAddress` starts as `''`, a failed lookup left it `''`, and `''` is not null or undefined, so every presence check downstream waved it through. The result was a signable transaction whose destination was the empty string — a failed network lookup producing a broadcastable transfer that moves nothing.
22
+
23
+ The chain-specific resolver now throws when the lookup fails or comes back blank, keeping the underlying failure as the error's `cause`. It stays a plain `Error` rather than a `BuildKeysignPayloadError` because an RPC timeout or indexer lag is retryable, not bad user input.
24
+
25
+ `buildJettonTransfer` rejects a blank jetton wallet address as well, so a payload built elsewhere — an older client, another device in a keysign — cannot get a destination-less transfer signed here either.
26
+
27
+ - [#2256](https://github.com/vultisig/vultisig-sdk/pull/2256) [`4561c65`](https://github.com/vultisig/vultisig-sdk/commit/4561c6584f62fa78d17546bcc119e31b6ea665cb) Thanks [@Ehsan-saradar](https://github.com/Ehsan-saradar)! - fix(ton): a MAX send signs the amount it displayed, and MAX is no longer guessed
28
+
29
+ A TON MAX send showed the user `balance - fee` and then signed something else: `amount = 0` under `ATTACH_ALL_CONTRACT_BALANCE`, which tells the wallet contract to sweep whatever the balance happens to be when the transaction executes. Worse, nothing marked a send as MAX — it was inferred from `amount + fee >= balance`, so an ordinary send that landed near the balance was silently upgraded to a full-balance sweep.
30
+
31
+ The signing path now always signs `keysignPayload.toAmount` under `PAY_FEES_SEPARATELY`, for MAX and ordinary sends alike; a MAX send is just `balance - fee` as an ordinary amount, and that fee is the reserve the send mode draws on. The signed bytes no longer depend on the flag at all.
32
+
33
+ `sendMaxAmount` becomes an explicit input threaded from the caller (`prepareSendTx` / `prepareSendTxFromKeys` / `buildSendKeysignPayload` → `getChainSpecific`), defaulting to `false`, and is recorded in `TonSpecific` as description rather than instruction. Removing the inference also drops a balance lookup from every TON send.
34
+
35
+ TON MAX sends that previously relied on the sweep to cover an amount larger than `balance - fee` will now fail on chain instead of moving more than was shown. Callers should pass the displayed `balance - fee` as `amount` and set `sendMaxAmount: true` alongside it.
36
+
37
+ - Updated dependencies [[`c0eafeb`](https://github.com/vultisig/vultisig-sdk/commit/c0eafeb12df42cffa70ef6951c081a74383e5fa2), [`ef252e4`](https://github.com/vultisig/vultisig-sdk/commit/ef252e40b590a6cad9f303f7aba743c617442f90), [`bfe0292`](https://github.com/vultisig/vultisig-sdk/commit/bfe0292e3876fb7acc7044bac1b544c27aba8919), [`acd0b2e`](https://github.com/vultisig/vultisig-sdk/commit/acd0b2eaa882669a399fb378e51244ed4199ee47)]:
38
+ - @vultisig/mpc-types@0.3.0
39
+ - @vultisig/core-chain@4.1.1
40
+
41
+ ## 2.1.0
42
+
43
+ ### Minor Changes
44
+
45
+ - [#2234](https://github.com/vultisig/vultisig-sdk/pull/2234) [`0697060`](https://github.com/vultisig/vultisig-sdk/commit/0697060107c7fe1c8ec818d3e0eae01557d9d96f) Thanks [@rcoderdev](https://github.com/rcoderdev)! - Add RUJI Trade quoting and CosmWasm execution for native RUNE and bRUNE swaps through the SDK's normal swap flow.
46
+
47
+ ### Patch Changes
48
+
49
+ - Updated dependencies [[`3fff7cf`](https://github.com/vultisig/vultisig-sdk/commit/3fff7cfdfe23d2d5622f7caa87a6f1525329f07e), [`0697060`](https://github.com/vultisig/vultisig-sdk/commit/0697060107c7fe1c8ec818d3e0eae01557d9d96f)]:
50
+ - @vultisig/core-chain@4.1.0
51
+
3
52
  ## 2.0.1
4
53
 
5
54
  ### Patch Changes
@@ -13,6 +13,12 @@ export type GetChainSpecificInput<C extends KeysignChainSpecificKey = KeysignCha
13
13
  walletCore: WalletCore;
14
14
  /** XRPL DestinationTag, carried in RippleSpecific for Ripple payments. */
15
15
  destinationTag?: number;
16
+ /**
17
+ * Whether the caller's UI offered this as a MAX send, carried in TonSpecific.
18
+ * Must come from the flow that drew the button — inferring it from the amount
19
+ * mislabels an ordinary send that happens to sit close to the balance.
20
+ */
21
+ sendMaxAmount?: boolean;
16
22
  } & (C extends 'ethereumSpecific' ? {
17
23
  feeSettings?: FeeSettings<'evm'>;
18
24
  thirdPartyGasLimitEstimation?: bigint;
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/chainSpecific/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qEAAqE,CAAA;AAC1G,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEpC,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAA;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAEtF,KAAK,YAAY,CAAC,CAAC,SAAS,uBAAuB,IAAI,OAAO,CAAC,oBAAoB,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAC,OAAO,CAAC,CAAA;AAE1G,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB,IAAI;IAC/F,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,UAAU,CAAA;IACtB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,GAAG,CAAC,CAAC,SAAS,kBAAkB,GAC7B;IACE,WAAW,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;IAChC,4BAA4B,CAAC,EAAE,MAAM,CAAA;CACtC,GACD,CAAC,SAAS,cAAc,GACtB;IAAE,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAA;CAAE,GAClD,CAAC,SAAS,gBAAgB,GACxB;IACE,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,GACD,CAAC,SAAS,mBAAmB,GAC3B;IACE,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,GACD,CAAC,SAAS,cAAc,GACtB;IACE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,GACD,CAAC,SAAS,cAAc,GACtB;IACE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,4BAA4B,CAAC,EAAE,MAAM,CAAA;CACtC,GACD,EAAE,CAAC,CAAA;AAEjB,MAAM,MAAM,wBAAwB,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB,IAAI,QAAQ,CAC1G,qBAAqB,CAAC,CAAC,CAAC,EACxB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CACzB,CAAA"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/chainSpecific/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qEAAqE,CAAA;AAC1G,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEpC,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAA;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAEtF,KAAK,YAAY,CAAC,CAAC,SAAS,uBAAuB,IAAI,OAAO,CAAC,oBAAoB,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAC,OAAO,CAAC,CAAA;AAE1G,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB,IAAI;IAC/F,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,UAAU,CAAA;IACtB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,GAAG,CAAC,CAAC,SAAS,kBAAkB,GAC7B;IACE,WAAW,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;IAChC,4BAA4B,CAAC,EAAE,MAAM,CAAA;CACtC,GACD,CAAC,SAAS,cAAc,GACtB;IAAE,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAA;CAAE,GAClD,CAAC,SAAS,gBAAgB,GACxB;IACE,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,GACD,CAAC,SAAS,mBAAmB,GAC3B;IACE,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,GACD,CAAC,SAAS,cAAc,GACtB;IACE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,GACD,CAAC,SAAS,cAAc,GACtB;IACE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,4BAA4B,CAAC,EAAE,MAAM,CAAA;CACtC,GACD,EAAE,CAAC,CAAA;AAEjB,MAAM,MAAM,wBAAwB,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB,IAAI,QAAQ,CAC1G,qBAAqB,CAAC,CAAC,CAAC,EACxB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CACzB,CAAA"}
@@ -2,7 +2,7 @@ import { create } from '@bufbuild/protobuf';
2
2
  import { Chain } from '@vultisig/core-chain/Chain';
3
3
  import { getCardanoCurrentSlot } from '@vultisig/core-chain/chains/cardano/client/currentSlot';
4
4
  import { cardanoDefaultFee } from '@vultisig/core-chain/chains/cardano/config';
5
- import { cardanoSlotOffset } from '@vultisig/core-chain/chains/cardano/config';
5
+ import { getCardanoSendTtl } from '@vultisig/core-chain/chains/cardano/config';
6
6
  import { getPreSigningOutput } from '@vultisig/core-mpc/keysign/preSigningOutput';
7
7
  import { CardanoChainSpecificSchema } from '@vultisig/core-mpc/types/vultisig/keysign/v1/blockchain_specific_pb';
8
8
  import { bigIntSum } from '@vultisig/lib-utils/bigint/bigIntSum';
@@ -54,7 +54,7 @@ const estimateCardanoByteFee = async ({ keysignPayload, walletCore, ttl, sendMax
54
54
  export const getCardanoChainSpecific = async ({ keysignPayload, walletCore }) => {
55
55
  const amount = getKeysignAmount(keysignPayload);
56
56
  const currentSlot = await getCardanoCurrentSlot();
57
- const ttl = currentSlot + BigInt(cardanoSlotOffset);
57
+ const ttl = getCardanoSendTtl(currentSlot);
58
58
  const utxoInfo = keysignPayload.utxoInfo;
59
59
  const balance = bigIntSum(utxoInfo.map(({ amount }) => amount));
60
60
  const sendMaxAmount = amount ? balance === amount : false;
@@ -1 +1 @@
1
- {"version":3,"file":"cardano.js","sourceRoot":"","sources":["../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/cardano.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cardano.js","sourceRoot":"","sources":["../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/cardano.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,10 @@
1
1
  import { GetChainSpecificResolver } from '../../resolver.js';
2
+ /**
3
+ * Resolves the TON-specific keysign fields: the sender's seqno, an expiry, whether the
4
+ * transfer bounces on rejection, and — for Jettons — the sender's Jetton wallet and
5
+ * whether the destination is deployed. `sendMaxAmount` is recorded from the caller
6
+ * rather than inferred, so an ordinary send that happens to sit close to the balance is
7
+ * not relabelled a MAX send.
8
+ */
2
9
  export declare const getTonChainSpecific: GetChainSpecificResolver<'tonSpecific'>;
3
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/ton/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAIzD,eAAO,MAAM,mBAAmB,EAAE,wBAAwB,CAAC,aAAa,CAoEvE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/ton/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAIzD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,wBAAwB,CAAC,aAAa,CAuEvE,CAAA"}
@@ -1,14 +1,18 @@
1
1
  import { create } from '@bufbuild/protobuf';
2
2
  import { getTonAccountInfo } from '@vultisig/core-chain/chains/ton/account/getTonAccountInfo';
3
3
  import { getJettonWalletAddress, getTonWalletState } from '@vultisig/core-chain/chains/ton/api';
4
- import { getCoinBalance } from '@vultisig/core-chain/coin/balance';
5
4
  import { TonSpecificSchema } from '@vultisig/core-mpc/types/vultisig/keysign/v1/blockchain_specific_pb';
6
5
  import { attempt } from '@vultisig/lib-utils/attempt';
7
- import { getTonFeeAmount } from '../../../fee/resolvers/ton.js';
8
- import { getKeysignAmount } from '../../../utils/getKeysignAmount.js';
9
6
  import { getKeysignCoin } from '../../../utils/getKeysignCoin.js';
10
7
  const tonWalletStateUninitialized = 'uninit';
11
- export const getTonChainSpecific = async ({ keysignPayload }) => {
8
+ /**
9
+ * Resolves the TON-specific keysign fields: the sender's seqno, an expiry, whether the
10
+ * transfer bounces on rejection, and — for Jettons — the sender's Jetton wallet and
11
+ * whether the destination is deployed. `sendMaxAmount` is recorded from the caller
12
+ * rather than inferred, so an ordinary send that happens to sit close to the balance is
13
+ * not relabelled a MAX send.
14
+ */
15
+ export const getTonChainSpecific = async ({ keysignPayload, sendMaxAmount = false, }) => {
12
16
  const coin = getKeysignCoin(keysignPayload);
13
17
  const { address } = coin;
14
18
  const receiver = keysignPayload.toAddress;
@@ -23,16 +27,6 @@ export const getTonChainSpecific = async ({ keysignPayload }) => {
23
27
  // than returning null and crashing this destructure.
24
28
  const { account_state } = await getTonAccountInfo(address);
25
29
  const sequenceNumber = BigInt(account_state?.seqno ?? 0);
26
- const getSendMaxAmount = async () => {
27
- if (coin.id)
28
- return false;
29
- const amount = getKeysignAmount(keysignPayload);
30
- if (!amount)
31
- return false;
32
- const balance = await getCoinBalance(coin);
33
- const fee = getTonFeeAmount(coin);
34
- return amount + fee >= balance;
35
- };
36
30
  const getIsBounceable = async () => {
37
31
  if (receiver) {
38
32
  const { data: walletState } = await attempt(getTonWalletState(receiver));
@@ -47,18 +41,26 @@ export const getTonChainSpecific = async ({ keysignPayload }) => {
47
41
  sequenceNumber,
48
42
  expireAt: BigInt(Math.floor(Date.now() / 1000) + 600),
49
43
  bounceable: await getIsBounceable(),
50
- sendMaxAmount: await getSendMaxAmount(),
44
+ sendMaxAmount,
51
45
  jettonAddress: '',
52
46
  isActiveDestination: false,
53
47
  });
54
48
  if (coin.id) {
55
- const { data: jettonWallet } = await attempt(getJettonWalletAddress({
49
+ // A Jetton transfer is a message to the SENDER's own jetton wallet, so without
50
+ // that address there is no transaction to build. Leaving the empty-string default
51
+ // in place does not stop anything downstream — the signing path's presence check
52
+ // only rejects null/undefined — so a failed lookup would otherwise be signed as a
53
+ // transfer to nowhere. This lookup fails transiently (RPC timeout, indexer lag),
54
+ // so it stays a plain retryable Error rather than a BuildKeysignPayloadError.
55
+ const jettonWallet = await attempt(getJettonWalletAddress({
56
56
  ownerAddress: address,
57
57
  jettonMasterAddress: coin.id,
58
58
  }));
59
- if (jettonWallet) {
60
- result.jettonAddress = jettonWallet;
59
+ if ('error' in jettonWallet || !jettonWallet.data.trim()) {
60
+ throw new Error(`Unable to resolve the ${coin.ticker} jetton wallet owned by ${address}. ` +
61
+ 'Refusing to build a Jetton transfer without it.', 'error' in jettonWallet ? { cause: jettonWallet.error } : undefined);
61
62
  }
63
+ result.jettonAddress = jettonWallet.data;
62
64
  if (receiver) {
63
65
  const { data: destWalletState } = await attempt(getTonWalletState(receiver));
64
66
  result.isActiveDestination = destWalletState !== tonWalletStateUninitialized;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/ton/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/ton/index.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,12 @@ export type BuildSendKeysignPayloadInput = {
18
18
  libType: KeysignLibType;
19
19
  walletCore: WalletCore;
20
20
  feeSettings?: FeeSettings;
21
+ /**
22
+ * Whether the caller's UI offered this as a MAX send. Recorded in TonSpecific;
23
+ * the amount signed is `amount` either way, so this describes the send rather
24
+ * than changing it.
25
+ */
26
+ sendMaxAmount?: boolean;
21
27
  };
22
- export declare const buildSendKeysignPayload: ({ coin, receiver, amount, memo, destinationTag, vaultId, localPartyId, publicKey, hexPublicKeyOverride, walletCore, libType, feeSettings, }: BuildSendKeysignPayloadInput) => Promise<import("@vultisig/core-mpc/types/vultisig/keysign/v1/keysign_message_pb").KeysignPayload>;
28
+ export declare const buildSendKeysignPayload: ({ coin, receiver, amount, memo, destinationTag, vaultId, localPartyId, publicKey, hexPublicKeyOverride, walletCore, libType, feeSettings, sendMaxAmount, }: BuildSendKeysignPayloadInput) => Promise<import("@vultisig/core-mpc/types/vultisig/keysign/v1/keysign_message_pb").KeysignPayload>;
23
29
  //# sourceMappingURL=build.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/build.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAA;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAA;AAIlF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAA;AAMzE,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,WAAW,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,qEAAqE;IACrE,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,gGAAgG;IAChG,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,OAAO,EAAE,cAAc,CAAA;IACvB,UAAU,EAAE,UAAU,CAAA;IACtB,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAU,6IAa3C,4BAA4B,sGAwF9B,CAAA"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/build.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAA;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAA;AAIlF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAA;AAMzE,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,WAAW,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,qEAAqE;IACrE,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,gGAAgG;IAChG,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,OAAO,EAAE,cAAc,CAAA;IACvB,UAAU,EAAE,UAAU,CAAA;IACtB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAU,4JAc3C,4BAA4B,sGA0F9B,CAAA"}
@@ -14,7 +14,7 @@ import { KeysignPayloadSchema } from '@vultisig/core-mpc/types/vultisig/keysign/
14
14
  import { BuildKeysignPayloadError } from '../error.js';
15
15
  import { validateDestinationTag } from '../utils/rippleDestinationTag.js';
16
16
  import { getCosmosWasmTokenTransferPayload } from './cosmosWasm.js';
17
- export const buildSendKeysignPayload = async ({ coin, receiver, amount, memo, destinationTag, vaultId, localPartyId, publicKey, hexPublicKeyOverride, walletCore, libType, feeSettings, }) => {
17
+ export const buildSendKeysignPayload = async ({ coin, receiver, amount, memo, destinationTag, vaultId, localPartyId, publicKey, hexPublicKeyOverride, walletCore, libType, feeSettings, sendMaxAmount, }) => {
18
18
  const hexPublicKey = hexPublicKeyOverride ?? (publicKey ? Buffer.from(publicKey.data()).toString('hex') : undefined);
19
19
  if (!hexPublicKey) {
20
20
  throw new Error('buildSendKeysignPayload requires publicKey or hexPublicKeyOverride');
@@ -65,12 +65,14 @@ export const buildSendKeysignPayload = async ({ coin, receiver, amount, memo, de
65
65
  walletCore,
66
66
  transactionType: TransactionType.GENERIC_CONTRACT,
67
67
  destinationTag: effectiveDestinationTag,
68
+ sendMaxAmount,
68
69
  })
69
70
  : await getChainSpecific({
70
71
  keysignPayload,
71
72
  feeSettings,
72
73
  walletCore,
73
74
  destinationTag: effectiveDestinationTag,
75
+ sendMaxAmount,
74
76
  });
75
77
  const balance = await getCoinBalance(coin);
76
78
  if (publicKey) {
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/build.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,14 @@
1
+ import { CosmosChain } from '@vultisig/core-chain/Chain';
2
+ import { TW } from '@trustwallet/wallet-core';
1
3
  import { SigningInputsResolver } from '../../resolver.js';
4
+ export declare const getThorchainDepositAsset: ({ assetCoin, chain, secured, }: {
5
+ assetCoin: {
6
+ chain: string;
7
+ contractAddress?: string;
8
+ ticker: string;
9
+ };
10
+ chain: CosmosChain;
11
+ secured: boolean;
12
+ }) => TW.Cosmos.Proto.THORChainAsset;
2
13
  export declare const getCosmosSigningInputs: SigningInputsResolver<'cosmos'>;
3
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/cosmos/index.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AA+FtD,eAAO,MAAM,sBAAsB,EAAE,qBAAqB,CAAC,QAAQ,CAmflE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/cosmos/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,WAAW,EAAyB,MAAM,4BAA4B,CAAA;AAgBtF,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAU7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAatD,eAAO,MAAM,wBAAwB,GAAI,gCAItC;IACD,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAA;QACb,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,MAAM,EAAE,MAAM,CAAA;KACf,CAAA;IACD,KAAK,EAAE,WAAW,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;CACjB,mCAmCA,CAAA;AAwCD,eAAO,MAAM,sBAAsB,EAAE,qBAAqB,CAAC,QAAQ,CAmflE,CAAA"}
@@ -29,9 +29,12 @@ const getNativeSwapPayload = (keysignPayload) => {
29
29
  }
30
30
  return getRecordUnionValue(swapPayload, 'native');
31
31
  };
32
- const getThorchainDepositAsset = ({ assetCoin, chain, secured, }) => {
32
+ export const getThorchainDepositAsset = ({ assetCoin, chain, secured, }) => {
33
33
  const chainId = nativeSwapChainIds[assetCoin.chain] ??
34
34
  nativeSwapChainIds[chain];
35
+ if (!chainId) {
36
+ throw new Error(`Unresolved THORChain deposit-asset chain id: neither asset chain "${assetCoin.chain}" nor cosmos chain "${chain}" has a nativeSwapChainIds entry`);
37
+ }
35
38
  const { contractAddress } = assetCoin;
36
39
  // The `TICKER-CONTRACT` symbol form belongs to secured-asset withdrawals only,
37
40
  // where `assetCoin` is the L1 coin being pulled off THORChain and
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/cosmos/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/cosmos/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAItD,eAAO,MAAM,mBAAmB,EAAE,qBAAqB,CAAC,KAAK,CA8C5D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAItD,eAAO,MAAM,mBAAmB,EAAE,qBAAqB,CAAC,KAAK,CAkD5D,CAAA"}
@@ -1,6 +1,5 @@
1
1
  import { isTonStakingComment } from '@vultisig/core-chain/chains/ton/staking';
2
2
  import { isFeeCoin } from '@vultisig/core-chain/coin/utils/isFeeCoin';
3
- import { shouldBePresent } from '@vultisig/lib-utils/assert/shouldBePresent';
4
3
  import { TW } from '@trustwallet/wallet-core';
5
4
  import { getBlockchainSpecificValue } from '../../../chainSpecific/KeysignChainSpecific.js';
6
5
  import { getKeysignTwPublicKey } from '../../../tw/getKeysignTwPublicKey.js';
@@ -9,7 +8,10 @@ import { buildJettonTransfer } from './jetton.js';
9
8
  import { buildNativeTonTransfer, buildNativeTonTransferFromMessage } from './native.js';
10
9
  export const getTonSigningInputs = ({ keysignPayload, walletCore }) => {
11
10
  const coin = getKeysignCoin(keysignPayload);
12
- const { expireAt, sequenceNumber, bounceable, sendMaxAmount, jettonAddress, isActiveDestination } = getBlockchainSpecificValue(keysignPayload.blockchainSpecific, 'tonSpecific');
11
+ // `sendMaxAmount` is deliberately not read here. A MAX send is the displayed
12
+ // `balance - fee` carried in `toAmount` like any other amount, so the signed bytes
13
+ // are identical either way and the flag stays descriptive metadata.
14
+ const { expireAt, sequenceNumber, bounceable, jettonAddress, isActiveDestination } = getBlockchainSpecificValue(keysignPayload.blockchainSpecific, 'tonSpecific');
13
15
  const isStakeOp = isTonStakingComment(keysignPayload.memo);
14
16
  const signTonMessages = keysignPayload.signData?.case === 'signTon' ? keysignPayload.signData.value.tonMessages : undefined;
15
17
  const messages = signTonMessages && signTonMessages.length > 0 && isFeeCoin(coin)
@@ -25,12 +27,11 @@ export const getTonSigningInputs = ({ keysignPayload, walletCore }) => {
25
27
  ? buildNativeTonTransfer({
26
28
  keysignPayload,
27
29
  bounceable: isStakeOp ? true : !!bounceable,
28
- sendMaxAmount,
29
30
  })
30
31
  : buildJettonTransfer({
31
32
  keysignPayload,
32
33
  walletCore,
33
- jettonAddress: shouldBePresent(jettonAddress, 'Jetton address'),
34
+ jettonAddress,
34
35
  isActiveDestination,
35
36
  }),
36
37
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAA;AAC5E,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAE7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAA;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,sBAAsB,EAAE,iCAAiC,EAAE,MAAM,UAAU,CAAA;AAEpF,MAAM,CAAC,MAAM,mBAAmB,GAAiC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,EAAE;IAClG,MAAM,IAAI,GAAG,cAAc,CAAC,cAAc,CAAC,CAAA;IAE3C,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAC/F,0BAA0B,CAAC,cAAc,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAA;IAE9E,MAAM,SAAS,GAAG,mBAAmB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IAE1D,MAAM,eAAe,GACnB,cAAc,CAAC,QAAQ,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;IAErG,MAAM,QAAQ,GACZ,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC;QAC9D,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CACxB,iCAAiC,CAAC;YAChC,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU;SAC5C,CAAC,CACH;QACH,CAAC,CAAC;YACE,SAAS,CAAC,IAAI,CAAC;gBACb,CAAC,CAAC,sBAAsB,CAAC;oBACrB,cAAc;oBACd,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU;oBAC3C,aAAa;iBACd,CAAC;gBACJ,CAAC,CAAC,mBAAmB,CAAC;oBAClB,cAAc;oBACd,UAAU;oBACV,aAAa,EAAE,eAAe,CAAC,aAAa,EAAE,gBAAgB,CAAC;oBAC/D,mBAAmB;iBACpB,CAAC;SACP,CAAA;IAEP,MAAM,KAAK,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC;QACxD,aAAa,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY;QACjE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACrC,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;QACjD,QAAQ;QACR,SAAS,EAAE,qBAAqB,CAAC,cAAc,CAAC;KACjD,CAAC,CAAA;IAEF,OAAO,CAAC,KAAK,CAAC,CAAA;AAChB,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAA;AACrE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAE7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAA;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,sBAAsB,EAAE,iCAAiC,EAAE,MAAM,UAAU,CAAA;AAEpF,MAAM,CAAC,MAAM,mBAAmB,GAAiC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,EAAE;IAClG,MAAM,IAAI,GAAG,cAAc,CAAC,cAAc,CAAC,CAAA;IAE3C,6EAA6E;IAC7E,mFAAmF;IACnF,oEAAoE;IACpE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAAG,0BAA0B,CAC7G,cAAc,CAAC,kBAAkB,EACjC,aAAa,CACd,CAAA;IAED,MAAM,SAAS,GAAG,mBAAmB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IAE1D,MAAM,eAAe,GACnB,cAAc,CAAC,QAAQ,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;IAErG,MAAM,QAAQ,GACZ,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC;QAC9D,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CACxB,iCAAiC,CAAC;YAChC,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU;SAC5C,CAAC,CACH;QACH,CAAC,CAAC;YACE,SAAS,CAAC,IAAI,CAAC;gBACb,CAAC,CAAC,sBAAsB,CAAC;oBACrB,cAAc;oBACd,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU;iBAC5C,CAAC;gBACJ,CAAC,CAAC,mBAAmB,CAAC;oBAClB,cAAc;oBACd,UAAU;oBACV,aAAa;oBACb,mBAAmB;iBACpB,CAAC;SACP,CAAA;IAEP,MAAM,KAAK,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC;QACxD,aAAa,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY;QACjE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACrC,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;QACjD,QAAQ;QACR,SAAS,EAAE,qBAAqB,CAAC,cAAc,CAAC;KACjD,CAAC,CAAA;IAEF,OAAO,CAAC,KAAK,CAAC,CAAA;AAChB,CAAC,CAAA"}
@@ -7,6 +7,12 @@ type BuildJettonTransferInput = {
7
7
  jettonAddress: string;
8
8
  isActiveDestination: boolean;
9
9
  };
10
+ /**
11
+ * Builds the transfer that carries a Jetton send: a fixed TON amount to the
12
+ * sender's own Jetton wallet, wrapping the Jetton payload. `forwardAmount` is 1
13
+ * nanoton only when the destination is already active, so an inactive recipient
14
+ * isn't charged for a notification it cannot receive.
15
+ */
10
16
  export declare const buildJettonTransfer: ({ keysignPayload, walletCore, jettonAddress, isActiveDestination, }: BuildJettonTransferInput) => TW.TheOpenNetwork.Proto.Transfer;
11
17
  export {};
12
18
  //# sourceMappingURL=jetton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jetton.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/jetton.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAA;AAEhG,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAMrD,KAAK,wBAAwB,GAAG;IAC9B,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,qEAKjC,wBAAwB,KAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAyBrD,CAAA"}
1
+ {"version":3,"file":"jetton.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/jetton.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAA;AAEhG,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAMrD,KAAK,wBAAwB,GAAG;IAC9B,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,qEAKjC,wBAAwB,KAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QA8BrD,CAAA"}
@@ -3,8 +3,21 @@ import { shouldBePresent } from '@vultisig/lib-utils/assert/shouldBePresent';
3
3
  import { TW } from '@trustwallet/wallet-core';
4
4
  import { getKeysignAmount } from '../../../utils/getKeysignAmount.js';
5
5
  import { getKeysignCoin } from '../../../utils/getKeysignCoin.js';
6
- import { toSafeComment, tonAmountToBytes } from './native.js';
6
+ import { toSafeComment, tonAmountToBytes, tonSendMode } from './native.js';
7
+ /**
8
+ * Builds the transfer that carries a Jetton send: a fixed TON amount to the
9
+ * sender's own Jetton wallet, wrapping the Jetton payload. `forwardAmount` is 1
10
+ * nanoton only when the destination is already active, so an inactive recipient
11
+ * isn't charged for a notification it cannot receive.
12
+ */
7
13
  export const buildJettonTransfer = ({ keysignPayload, walletCore, jettonAddress, isActiveDestination, }) => {
14
+ // `TonSpecific.jettonAddress` is a plain proto string that defaults to '' when the
15
+ // sender's jetton wallet could not be resolved, and '' survives every null/undefined
16
+ // check on the way here. Signing that would broadcast a transfer to no destination,
17
+ // so refuse it — including for a payload built by some other device.
18
+ if (!jettonAddress.trim()) {
19
+ throw new Error('Cannot build a TON Jetton transfer: the sender jetton wallet address is missing');
20
+ }
8
21
  const coin = getKeysignCoin(keysignPayload);
9
22
  const destinationAddress = walletCore.TONAddressConverter.toUserFriendly(keysignPayload.toAddress, true, false);
10
23
  const forwardAmount = isActiveDestination ? 1n : 0n;
@@ -14,13 +27,12 @@ export const buildJettonTransfer = ({ keysignPayload, walletCore, jettonAddress,
14
27
  responseAddress: coin.address,
15
28
  forwardAmount: tonAmountToBytes(forwardAmount),
16
29
  });
17
- const mode = TW.TheOpenNetwork.Proto.SendMode.PAY_FEES_SEPARATELY | TW.TheOpenNetwork.Proto.SendMode.IGNORE_ACTION_PHASE_ERRORS;
18
30
  return TW.TheOpenNetwork.Proto.Transfer.create({
19
31
  dest: jettonAddress,
20
32
  amount: tonAmountToBytes(tonConfig.jettonAmount),
21
33
  bounceable: true,
22
34
  comment: toSafeComment(keysignPayload.memo ?? ''),
23
- mode,
35
+ mode: tonSendMode,
24
36
  jettonTransfer,
25
37
  });
26
38
  };
@@ -1 +1 @@
1
- {"version":3,"file":"jetton.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/jetton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAA;AAC5E,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAG7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAS1D,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,cAAc,EACd,UAAU,EACV,aAAa,EACb,mBAAmB,GACM,EAAoC,EAAE;IAC/D,MAAM,IAAI,GAAG,cAAc,CAAC,cAAc,CAAC,CAAA;IAE3C,MAAM,kBAAkB,GAAG,UAAU,CAAC,mBAAmB,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IAE/G,MAAM,aAAa,GAAG,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAEnD,MAAM,cAAc,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC;QACnE,YAAY,EAAE,gBAAgB,CAAC,eAAe,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC;QACjF,OAAO,EAAE,kBAAkB;QAC3B,eAAe,EAAE,IAAI,CAAC,OAAO;QAC7B,aAAa,EAAE,gBAAgB,CAAC,aAAa,CAAC;KAC/C,CAAC,CAAA;IAEF,MAAM,IAAI,GACR,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAAmB,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,0BAA0B,CAAA;IAEpH,OAAO,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC7C,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAAC;QAChD,UAAU,EAAE,IAAI;QAChB,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,IAAI,IAAI,EAAE,CAAC;QACjD,IAAI;QACJ,cAAc;KACf,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"jetton.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/jetton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAA;AAC5E,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAG7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AASvE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,cAAc,EACd,UAAU,EACV,aAAa,EACb,mBAAmB,GACM,EAAoC,EAAE;IAC/D,mFAAmF;IACnF,qFAAqF;IACrF,oFAAoF;IACpF,qEAAqE;IACrE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAA;IACpG,CAAC;IAED,MAAM,IAAI,GAAG,cAAc,CAAC,cAAc,CAAC,CAAA;IAE3C,MAAM,kBAAkB,GAAG,UAAU,CAAC,mBAAmB,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IAE/G,MAAM,aAAa,GAAG,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAEnD,MAAM,cAAc,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC;QACnE,YAAY,EAAE,gBAAgB,CAAC,eAAe,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC;QACjF,OAAO,EAAE,kBAAkB;QAC3B,eAAe,EAAE,IAAI,CAAC,OAAO;QAC7B,aAAa,EAAE,gBAAgB,CAAC,aAAa,CAAC;KAC/C,CAAC,CAAA;IAEF,OAAO,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC7C,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAAC;QAChD,UAAU,EAAE,IAAI;QAChB,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,IAAI,IAAI,EAAE,CAAC;QACjD,IAAI,EAAE,WAAW;QACjB,cAAc;KACf,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -11,12 +11,41 @@ type BuildNativeTonTransferFromMessageInput = {
11
11
  type BuildNativeTonTransferInput = {
12
12
  keysignPayload: KeysignPayload;
13
13
  bounceable: boolean;
14
- sendMaxAmount: boolean;
15
14
  };
16
15
  export declare const toSafeComment: (payload: string) => string;
17
16
  export declare const validateTonComment: (memo: string) => void;
18
17
  export declare const tonAmountToBytes: (amount: string | bigint) => Buffer;
19
- export declare const buildNativeTonTransfer: ({ keysignPayload, bounceable, sendMaxAmount, }: BuildNativeTonTransferInput) => TW.TheOpenNetwork.Proto.Transfer;
18
+ /**
19
+ * Send mode for every app-initiated TON transfer.
20
+ *
21
+ * `PAY_FEES_SEPARATELY` (+1) charges forwarding fees to the wallet balance instead of
22
+ * deducting them from the transferred value, so the recipient gets the amount we showed.
23
+ *
24
+ * `IGNORE_ACTION_PHASE_ERRORS` (+2) is deliberately absent. With it set, a wallet contract
25
+ * that cannot carry out its outgoing transfer skips the action instead of failing: the
26
+ * transaction lands un-aborted with the seqno consumed and nothing moved, which on chain is
27
+ * indistinguishable from a successful send. Without it the transfer fails visibly and the
28
+ * user's funds stay put.
29
+ *
30
+ * The mode is part of the signing preimage: every co-signing device derives the hash from
31
+ * this payload, so changing it here breaks keysign with any client that has not changed too.
32
+ */
33
+ export declare const tonSendMode = TW.TheOpenNetwork.Proto.SendMode.PAY_FEES_SEPARATELY;
34
+ /**
35
+ * Builds the single WalletCore transfer for an app-initiated native TON send.
36
+ *
37
+ * Always signs `keysignPayload.toAmount` under `tonSendMode`, including for a MAX send.
38
+ * The alternative — `ATTACH_ALL_CONTRACT_BALANCE` with `amount = 0` — hands the wallet
39
+ * contract a sweep it resolves at execution time, so the transaction moves whatever the
40
+ * balance happens to be when it lands rather than the number the user approved. A MAX
41
+ * send is just `balance - fee` as an ordinary amount, and that fee is the reserve the
42
+ * send mode then draws on.
43
+ */
44
+ export declare const buildNativeTonTransfer: ({ keysignPayload, bounceable, }: BuildNativeTonTransferInput) => TW.TheOpenNetwork.Proto.Transfer;
45
+ /**
46
+ * Builds a transfer for one message of a dApp-supplied `signTon` request. The
47
+ * message carries its own payload/stateInit, so no comment is attached here.
48
+ */
20
49
  export declare const buildNativeTonTransferFromMessage: ({ to, amount, payload, stateInit, bounceable, }: BuildNativeTonTransferFromMessageInput) => TW.TheOpenNetwork.Proto.Transfer;
21
50
  export {};
22
51
  //# sourceMappingURL=native.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAA;AAEhG,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAE7C,KAAK,sCAAsC,GAAG;IAC5C,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,OAAO,CAAA;IACnB,aAAa,EAAE,OAAO,CAAA;CACvB,CAAA;AAOD,eAAO,MAAM,aAAa,GAAI,SAAS,MAAM,KAAG,MAM/C,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,IAKjD,CAAA;AAMD,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,GAAG,MAAM,KAAG,MAuB1D,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,gDAIpC,2BAA2B,KAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAgBxD,CAAA;AAED,eAAO,MAAM,iCAAiC,GAAI,iDAM/C,sCAAsC,KAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAanE,CAAA"}
1
+ {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAA;AAEhG,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AAE7C,KAAK,sCAAsC,GAAG;IAC5C,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,OAAO,CAAA;CACpB,CAAA;AAOD,eAAO,MAAM,aAAa,GAAI,SAAS,MAAM,KAAG,MAM/C,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,IAKjD,CAAA;AAMD,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,GAAG,MAAM,KAAG,MAuB1D,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,WAAW,uDAAuD,CAAA;AAE/E;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,GAAI,iCAGpC,2BAA2B,KAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAQxD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iCAAiC,GAAI,iDAM/C,sCAAsC,KAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAUnE,CAAA"}