@vultisig/core-mpc 2.1.0 → 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 (33) hide show
  1. package/CHANGELOG.md +38 -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/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.d.ts +4 -384
  30. package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.d.ts.map +1 -1
  31. package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.js +5 -76
  32. package/dist/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.js.map +1 -1
  33. package/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,43 @@
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
+
3
41
  ## 2.1.0
4
42
 
5
43
  ### Minor 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"}
@@ -39,22 +39,46 @@ export const tonAmountToBytes = (amount) => {
39
39
  }
40
40
  return Buffer.from(numberToEvenHex(value), 'hex');
41
41
  };
42
- export const buildNativeTonTransfer = ({ keysignPayload, bounceable, sendMaxAmount, }) => {
43
- const mode = (sendMaxAmount
44
- ? TW.TheOpenNetwork.Proto.SendMode.ATTACH_ALL_CONTRACT_BALANCE
45
- : TW.TheOpenNetwork.Proto.SendMode.PAY_FEES_SEPARATELY) |
46
- TW.TheOpenNetwork.Proto.SendMode.IGNORE_ACTION_PHASE_ERRORS;
47
- const amount = sendMaxAmount ? 0n : keysignPayload.toAmount;
42
+ /**
43
+ * Send mode for every app-initiated TON transfer.
44
+ *
45
+ * `PAY_FEES_SEPARATELY` (+1) charges forwarding fees to the wallet balance instead of
46
+ * deducting them from the transferred value, so the recipient gets the amount we showed.
47
+ *
48
+ * `IGNORE_ACTION_PHASE_ERRORS` (+2) is deliberately absent. With it set, a wallet contract
49
+ * that cannot carry out its outgoing transfer skips the action instead of failing: the
50
+ * transaction lands un-aborted with the seqno consumed and nothing moved, which on chain is
51
+ * indistinguishable from a successful send. Without it the transfer fails visibly and the
52
+ * user's funds stay put.
53
+ *
54
+ * The mode is part of the signing preimage: every co-signing device derives the hash from
55
+ * this payload, so changing it here breaks keysign with any client that has not changed too.
56
+ */
57
+ export const tonSendMode = TW.TheOpenNetwork.Proto.SendMode.PAY_FEES_SEPARATELY;
58
+ /**
59
+ * Builds the single WalletCore transfer for an app-initiated native TON send.
60
+ *
61
+ * Always signs `keysignPayload.toAmount` under `tonSendMode`, including for a MAX send.
62
+ * The alternative — `ATTACH_ALL_CONTRACT_BALANCE` with `amount = 0` — hands the wallet
63
+ * contract a sweep it resolves at execution time, so the transaction moves whatever the
64
+ * balance happens to be when it lands rather than the number the user approved. A MAX
65
+ * send is just `balance - fee` as an ordinary amount, and that fee is the reserve the
66
+ * send mode then draws on.
67
+ */
68
+ export const buildNativeTonTransfer = ({ keysignPayload, bounceable, }) => {
48
69
  return TW.TheOpenNetwork.Proto.Transfer.create({
49
70
  dest: keysignPayload.toAddress,
50
- amount: tonAmountToBytes(amount),
71
+ amount: tonAmountToBytes(keysignPayload.toAmount),
51
72
  bounceable,
52
73
  comment: toSafeComment(keysignPayload.memo || ''),
53
- mode,
74
+ mode: tonSendMode,
54
75
  });
55
76
  };
77
+ /**
78
+ * Builds a transfer for one message of a dApp-supplied `signTon` request. The
79
+ * message carries its own payload/stateInit, so no comment is attached here.
80
+ */
56
81
  export const buildNativeTonTransferFromMessage = ({ to, amount, payload = '', stateInit, bounceable, }) => {
57
- const mode = TW.TheOpenNetwork.Proto.SendMode.PAY_FEES_SEPARATELY | TW.TheOpenNetwork.Proto.SendMode.IGNORE_ACTION_PHASE_ERRORS;
58
82
  return TW.TheOpenNetwork.Proto.Transfer.create({
59
83
  dest: to,
60
84
  amount: tonAmountToBytes(amount),
@@ -62,7 +86,7 @@ export const buildNativeTonTransferFromMessage = ({ to, amount, payload = '', st
62
86
  comment: '',
63
87
  customPayload: payload || undefined,
64
88
  stateInit: stateInit || undefined,
65
- mode,
89
+ mode: tonSendMode,
66
90
  });
67
91
  };
68
92
  //# sourceMappingURL=native.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"native.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/native.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/signingInputs/resolvers/ton/native.ts"],"names":[],"mappings":"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"}
@@ -1,388 +1,8 @@
1
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
2
- import type { Message } from "@bufbuild/protobuf";
3
1
  /**
4
- * Describes the file vultisig/keysign/v1/wasm_execute_contract_payload.proto.
5
- */
6
- export declare const file_vultisig_keysign_v1_wasm_execute_contract_payload: GenFile;
7
- /**
8
- * @generated from message vultisig.keysign.v1.CosmosCoin
9
- */
10
- export type CosmosCoin = Message<"vultisig.keysign.v1.CosmosCoin"> & {
11
- /**
12
- * @generated from field: string denom = 1;
13
- */
14
- denom: string;
15
- /**
16
- * @generated from field: string amount = 2;
17
- */
18
- amount: string;
19
- };
20
- /**
21
- * Describes the message vultisig.keysign.v1.CosmosCoin.
22
- * Use `create(CosmosCoinSchema)` to create a new message.
23
- */
24
- export declare const CosmosCoinSchema: GenMessage<CosmosCoin>;
25
- /**
26
- * @generated from message vultisig.keysign.v1.CosmosFee
27
- */
28
- export type CosmosFee = Message<"vultisig.keysign.v1.CosmosFee"> & {
29
- /**
30
- * @generated from field: repeated vultisig.keysign.v1.CosmosCoin amount = 1;
31
- */
32
- amount: CosmosCoin[];
33
- /**
34
- * @generated from field: string gas = 2;
35
- */
36
- gas: string;
37
- /**
38
- * @generated from field: optional string payer = 3;
39
- */
40
- payer?: string;
41
- /**
42
- * @generated from field: optional string granter = 4;
43
- */
44
- granter?: string;
45
- /**
46
- * @generated from field: optional string fee_payer = 5;
47
- */
48
- feePayer?: string;
49
- };
50
- /**
51
- * Describes the message vultisig.keysign.v1.CosmosFee.
52
- * Use `create(CosmosFeeSchema)` to create a new message.
53
- */
54
- export declare const CosmosFeeSchema: GenMessage<CosmosFee>;
55
- /**
56
- * @generated from message vultisig.keysign.v1.CosmosMsg
57
- */
58
- export type CosmosMsg = Message<"vultisig.keysign.v1.CosmosMsg"> & {
59
- /**
60
- * @generated from field: string type = 1;
61
- */
62
- type: string;
63
- /**
64
- * @generated from field: string value = 2;
65
- */
66
- value: string;
67
- };
68
- /**
69
- * Describes the message vultisig.keysign.v1.CosmosMsg.
70
- * Use `create(CosmosMsgSchema)` to create a new message.
71
- */
72
- export declare const CosmosMsgSchema: GenMessage<CosmosMsg>;
73
- /**
74
- * @generated from message vultisig.keysign.v1.SignAmino
75
- */
76
- export type SignAmino = Message<"vultisig.keysign.v1.SignAmino"> & {
77
- /**
78
- * @generated from field: vultisig.keysign.v1.CosmosFee fee = 1;
79
- */
80
- fee?: CosmosFee;
81
- /**
82
- * @generated from field: repeated vultisig.keysign.v1.CosmosMsg msgs = 2;
83
- */
84
- msgs: CosmosMsg[];
85
- };
86
- /**
87
- * Describes the message vultisig.keysign.v1.SignAmino.
88
- * Use `create(SignAminoSchema)` to create a new message.
89
- */
90
- export declare const SignAminoSchema: GenMessage<SignAmino>;
91
- /**
92
- * @generated from message vultisig.keysign.v1.SignDirect
93
- */
94
- export type SignDirect = Message<"vultisig.keysign.v1.SignDirect"> & {
95
- /**
96
- * @generated from field: string body_bytes = 1;
97
- */
98
- bodyBytes: string;
99
- /**
100
- * @generated from field: string auth_info_bytes = 2;
101
- */
102
- authInfoBytes: string;
103
- /**
104
- * @generated from field: string chain_id = 3;
105
- */
106
- chainId: string;
107
- /**
108
- * @generated from field: string account_number = 4;
109
- */
110
- accountNumber: string;
111
- };
112
- /**
113
- * Describes the message vultisig.keysign.v1.SignDirect.
114
- * Use `create(SignDirectSchema)` to create a new message.
115
- */
116
- export declare const SignDirectSchema: GenMessage<SignDirect>;
117
- /**
118
- * @generated from message vultisig.keysign.v1.SignSolana
119
- */
120
- export type SignSolana = Message<"vultisig.keysign.v1.SignSolana"> & {
121
- /**
122
- * base64 encoded transactions
123
- *
124
- * @generated from field: repeated string raw_transactions = 1;
125
- */
126
- rawTransactions: string[];
127
- };
128
- /**
129
- * Describes the message vultisig.keysign.v1.SignSolana.
130
- * Use `create(SignSolanaSchema)` to create a new message.
131
- */
132
- export declare const SignSolanaSchema: GenMessage<SignSolana>;
133
- /**
134
- * @generated from message vultisig.keysign.v1.TonMessage
135
- */
136
- export type TonMessage = Message<"vultisig.keysign.v1.TonMessage"> & {
137
- /**
138
- * @generated from field: string to = 1;
139
- */
140
- to: string;
141
- /**
142
- * @generated from field: string amount = 2;
143
- */
144
- amount: string;
145
- /**
146
- * @generated from field: optional string payload = 3;
147
- */
148
- payload?: string;
149
- /**
150
- * @generated from field: optional string state_init = 4;
151
- */
152
- stateInit?: string;
153
- };
154
- /**
155
- * Describes the message vultisig.keysign.v1.TonMessage.
156
- * Use `create(TonMessageSchema)` to create a new message.
157
- */
158
- export declare const TonMessageSchema: GenMessage<TonMessage>;
159
- /**
160
- * @generated from message vultisig.keysign.v1.SignTon
161
- */
162
- export type SignTon = Message<"vultisig.keysign.v1.SignTon"> & {
163
- /**
164
- * @generated from field: repeated vultisig.keysign.v1.TonMessage ton_messages = 2;
165
- */
166
- tonMessages: TonMessage[];
167
- };
168
- /**
169
- * Describes the message vultisig.keysign.v1.SignTon.
170
- * Use `create(SignTonSchema)` to create a new message.
171
- */
172
- export declare const SignTonSchema: GenMessage<SignTon>;
173
- /**
174
- * Pre-built Sui Programmable Transaction Block supplied by a dApp via the
175
- * Sui Wallet Standard. The bytes are already serialized in BCS form, ready
176
- * for the signing pipeline to digest and sign
177
- *
178
- * @generated from message vultisig.keysign.v1.SignSui
179
- */
180
- export type SignSui = Message<"vultisig.keysign.v1.SignSui"> & {
181
- /**
182
- * base64-encoded TransactionData BCS bytes
183
- *
184
- * @generated from field: string unsigned_tx_msg = 1;
185
- */
186
- unsignedTxMsg: string;
187
- };
188
- /**
189
- * Describes the message vultisig.keysign.v1.SignSui.
190
- * Use `create(SignSuiSchema)` to create a new message.
191
- */
192
- export declare const SignSuiSchema: GenMessage<SignSui>;
193
- /**
194
- * Pre-built XRPL transaction supplied by a dApp. Carried verbatim so types the
195
- * KeysignPayload cannot otherwise express — offers, trust lines, escrows —
196
- * survive the round trip. Every signer rebuilds its signing input from this
197
- * same JSON, so each party signs identical bytes.
198
- *
199
- * @generated from message vultisig.keysign.v1.SignRipple
200
- */
201
- export type SignRipple = Message<"vultisig.keysign.v1.SignRipple"> & {
202
- /**
203
- * XRPL transaction JSON
204
- *
205
- * @generated from field: string raw_json = 1;
206
- */
207
- rawJson: string;
208
- };
209
- /**
210
- * Describes the message vultisig.keysign.v1.SignRipple.
211
- * Use `create(SignRippleSchema)` to create a new message.
212
- */
213
- export declare const SignRippleSchema: GenMessage<SignRipple>;
214
- /**
215
- * @generated from message vultisig.keysign.v1.WasmExecuteContractPayload
216
- */
217
- export type WasmExecuteContractPayload = Message<"vultisig.keysign.v1.WasmExecuteContractPayload"> & {
218
- /**
219
- * @generated from field: string sender_address = 1;
220
- */
221
- senderAddress: string;
222
- /**
223
- * @generated from field: string contract_address = 2;
224
- */
225
- contractAddress: string;
226
- /**
227
- * @generated from field: string execute_msg = 3;
228
- */
229
- executeMsg: string;
230
- /**
231
- * @generated from field: repeated vultisig.keysign.v1.CosmosCoin coins = 4;
232
- */
233
- coins: CosmosCoin[];
234
- };
235
- /**
236
- * Describes the message vultisig.keysign.v1.WasmExecuteContractPayload.
237
- * Use `create(WasmExecuteContractPayloadSchema)` to create a new message.
238
- */
239
- export declare const WasmExecuteContractPayloadSchema: GenMessage<WasmExecuteContractPayload>;
240
- /**
241
- * A single Bitcoin transaction input decomposed from a PSBT.
242
- * Contains all data needed for sighash computation and verification.
243
- *
244
- * @generated from message vultisig.keysign.v1.BitcoinInput
245
- */
246
- export type BitcoinInput = Message<"vultisig.keysign.v1.BitcoinInput"> & {
247
- /**
248
- * Previous txid (hex, big-endian)
249
- *
250
- * @generated from field: string hash = 1;
251
- */
252
- hash: string;
253
- /**
254
- * Previous output index (vout)
255
- *
256
- * @generated from field: uint32 index = 2;
257
- */
258
- index: number;
259
- /**
260
- * Satoshis (from witness UTXO)
261
- *
262
- * @generated from field: int64 amount = 3;
263
- */
264
- amount: bigint;
265
- /**
266
- * Hex scriptPubKey of the UTXO being spent
267
- *
268
- * @generated from field: string script_pub_key = 4;
269
- */
270
- scriptPubKey: string;
271
- /**
272
- * "p2wpkh", "p2pkh", "p2tr", "p2sh-p2wpkh"
273
- *
274
- * @generated from field: string script_type = 5;
275
- */
276
- scriptType: string;
277
- /**
278
- * BIP-143/341 sighash flag; when absent, treat as SIGHASH_ALL (1)
279
- *
280
- * @generated from field: optional uint32 sighash_type = 6;
281
- */
282
- sighashType?: number;
283
- /**
284
- * Whether this device signs this input
285
- *
286
- * @generated from field: bool is_ours = 7;
287
- */
288
- isOurs: boolean;
289
- /**
290
- * For P2SH-P2WPKH: hex redeem script
291
- *
292
- * @generated from field: optional string redeem_script = 8;
293
- */
294
- redeemScript?: string;
295
- /**
296
- * nSequence; when absent, treat as 0xFFFFFFFF
297
- *
298
- * @generated from field: optional uint32 sequence = 9;
299
- */
300
- sequence?: number;
301
- };
302
- /**
303
- * Describes the message vultisig.keysign.v1.BitcoinInput.
304
- * Use `create(BitcoinInputSchema)` to create a new message.
305
- */
306
- export declare const BitcoinInputSchema: GenMessage<BitcoinInput>;
307
- /**
308
- * A single Bitcoin transaction output decomposed from a PSBT.
2
+ * Compatibility export for the shared signing protobuf definitions.
309
3
  *
310
- * @generated from message vultisig.keysign.v1.BitcoinOutput
311
- */
312
- export type BitcoinOutput = Message<"vultisig.keysign.v1.BitcoinOutput"> & {
313
- /**
314
- * Satoshis
315
- *
316
- * @generated from field: int64 amount = 1;
317
- */
318
- amount: bigint;
319
- /**
320
- * Decoded address (empty for OP_RETURN)
321
- *
322
- * @generated from field: string address = 2;
323
- */
324
- address: string;
325
- /**
326
- * Hex data if OP_RETURN
327
- *
328
- * @generated from field: optional string op_return_data = 3;
329
- */
330
- opReturnData?: string;
331
- /**
332
- * Hex output scriptPubKey
333
- *
334
- * @generated from field: string script_pub_key = 4;
335
- */
336
- scriptPubKey: string;
337
- /**
338
- * Whether output is change back to sender
339
- *
340
- * @generated from field: bool is_change = 5;
341
- */
342
- isChange: boolean;
343
- };
344
- /**
345
- * Describes the message vultisig.keysign.v1.BitcoinOutput.
346
- * Use `create(BitcoinOutputSchema)` to create a new message.
347
- */
348
- export declare const BitcoinOutputSchema: GenMessage<BitcoinOutput>;
349
- /**
350
- * Structured PSBT representation for Bitcoin dApp signing.
351
- * Decomposes a BIP-174 PSBT into verifiable fields so co-signing
352
- * devices can display transaction details and compute exact sighashes
353
- * without receiving an opaque blob.
354
- *
355
- * @generated from message vultisig.keysign.v1.SignBitcoin
356
- */
357
- export type SignBitcoin = Message<"vultisig.keysign.v1.SignBitcoin"> & {
358
- /**
359
- * Transaction version (typically 1 or 2)
360
- *
361
- * @generated from field: uint32 version = 1;
362
- */
363
- version: number;
364
- /**
365
- * Transaction locktime
366
- *
367
- * @generated from field: uint32 locktime = 2;
368
- */
369
- locktime: number;
370
- /**
371
- * All inputs in exact PSBT order
372
- *
373
- * @generated from field: repeated vultisig.keysign.v1.BitcoinInput inputs = 3;
374
- */
375
- inputs: BitcoinInput[];
376
- /**
377
- * All outputs in exact PSBT order
378
- *
379
- * @generated from field: repeated vultisig.keysign.v1.BitcoinOutput outputs = 4;
380
- */
381
- outputs: BitcoinOutput[];
382
- };
383
- /**
384
- * Describes the message vultisig.keysign.v1.SignBitcoin.
385
- * Use `create(SignBitcoinSchema)` to create a new message.
4
+ * The canonical generated source lives in the leaf @vultisig/mpc-types
5
+ * package so core-chain and core-mpc can consume it without a package cycle.
386
6
  */
387
- export declare const SignBitcoinSchema: GenMessage<SignBitcoin>;
7
+ export * from "@vultisig/mpc-types/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb";
388
8
  //# sourceMappingURL=wasm_execute_contract_payload_pb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wasm_execute_contract_payload_pb.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wasm_execute_contract_payload_pb.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,cAAc,gFAAgF,CAAC"}
@@ -1,79 +1,8 @@
1
- // @generated by protoc-gen-es v2.11.0 with parameter "target=ts"
2
- // @generated from file vultisig/keysign/v1/wasm_execute_contract_payload.proto (package vultisig.keysign.v1, syntax proto3)
3
- /* eslint-disable */
4
- import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
5
1
  /**
6
- * Describes the file vultisig/keysign/v1/wasm_execute_contract_payload.proto.
2
+ * Compatibility export for the shared signing protobuf definitions.
3
+ *
4
+ * The canonical generated source lives in the leaf @vultisig/mpc-types
5
+ * package so core-chain and core-mpc can consume it without a package cycle.
7
6
  */
8
- export const file_vultisig_keysign_v1_wasm_execute_contract_payload = /*@__PURE__*/ fileDesc("Cjd2dWx0aXNpZy9rZXlzaWduL3YxL3dhc21fZXhlY3V0ZV9jb250cmFjdF9wYXlsb2FkLnByb3RvEhN2dWx0aXNpZy5rZXlzaWduLnYxIisKCkNvc21vc0NvaW4SDQoFZGVub20YASABKAkSDgoGYW1vdW50GAIgASgJIq8BCglDb3Ntb3NGZWUSLwoGYW1vdW50GAEgAygLMh8udnVsdGlzaWcua2V5c2lnbi52MS5Db3Ntb3NDb2luEgsKA2dhcxgCIAEoCRISCgVwYXllchgDIAEoCUgAiAEBEhQKB2dyYW50ZXIYBCABKAlIAYgBARIWCglmZWVfcGF5ZXIYBSABKAlIAogBAUIICgZfcGF5ZXJCCgoIX2dyYW50ZXJCDAoKX2ZlZV9wYXllciIoCglDb3Ntb3NNc2cSDAoEdHlwZRgBIAEoCRINCgV2YWx1ZRgCIAEoCSJmCglTaWduQW1pbm8SKwoDZmVlGAEgASgLMh4udnVsdGlzaWcua2V5c2lnbi52MS5Db3Ntb3NGZWUSLAoEbXNncxgCIAMoCzIeLnZ1bHRpc2lnLmtleXNpZ24udjEuQ29zbW9zTXNnImMKClNpZ25EaXJlY3QSEgoKYm9keV9ieXRlcxgBIAEoCRIXCg9hdXRoX2luZm9fYnl0ZXMYAiABKAkSEAoIY2hhaW5faWQYAyABKAkSFgoOYWNjb3VudF9udW1iZXIYBCABKAkiJgoKU2lnblNvbGFuYRIYChByYXdfdHJhbnNhY3Rpb25zGAEgAygJInIKClRvbk1lc3NhZ2USCgoCdG8YASABKAkSDgoGYW1vdW50GAIgASgJEhQKB3BheWxvYWQYAyABKAlIAIgBARIXCgpzdGF0ZV9pbml0GAQgASgJSAGIAQFCCgoIX3BheWxvYWRCDQoLX3N0YXRlX2luaXQiQAoHU2lnblRvbhI1Cgx0b25fbWVzc2FnZXMYAiADKAsyHy52dWx0aXNpZy5rZXlzaWduLnYxLlRvbk1lc3NhZ2UiIgoHU2lnblN1aRIXCg91bnNpZ25lZF90eF9tc2cYASABKAkiHgoKU2lnblJpcHBsZRIQCghyYXdfanNvbhgBIAEoCSKTAQoaV2FzbUV4ZWN1dGVDb250cmFjdFBheWxvYWQSFgoOc2VuZGVyX2FkZHJlc3MYASABKAkSGAoQY29udHJhY3RfYWRkcmVzcxgCIAEoCRITCgtleGVjdXRlX21zZxgDIAEoCRIuCgVjb2lucxgEIAMoCzIfLnZ1bHRpc2lnLmtleXNpZ24udjEuQ29zbW9zQ29pbiL3AQoMQml0Y29pbklucHV0EgwKBGhhc2gYASABKAkSDQoFaW5kZXgYAiABKA0SDgoGYW1vdW50GAMgASgDEhYKDnNjcmlwdF9wdWJfa2V5GAQgASgJEhMKC3NjcmlwdF90eXBlGAUgASgJEhkKDHNpZ2hhc2hfdHlwZRgGIAEoDUgAiAEBEg8KB2lzX291cnMYByABKAgSGgoNcmVkZWVtX3NjcmlwdBgIIAEoCUgBiAEBEhUKCHNlcXVlbmNlGAkgASgNSAKIAQFCDwoNX3NpZ2hhc2hfdHlwZUIQCg5fcmVkZWVtX3NjcmlwdEILCglfc2VxdWVuY2UiiwEKDUJpdGNvaW5PdXRwdXQSDgoGYW1vdW50GAEgASgDEg8KB2FkZHJlc3MYAiABKAkSGwoOb3BfcmV0dXJuX2RhdGEYAyABKAlIAIgBARIWCg5zY3JpcHRfcHViX2tleRgEIAEoCRIRCglpc19jaGFuZ2UYBSABKAhCEQoPX29wX3JldHVybl9kYXRhIpgBCgtTaWduQml0Y29pbhIPCgd2ZXJzaW9uGAEgASgNEhAKCGxvY2t0aW1lGAIgASgNEjEKBmlucHV0cxgDIAMoCzIhLnZ1bHRpc2lnLmtleXNpZ24udjEuQml0Y29pbklucHV0EjMKB291dHB1dHMYBCADKAsyIi52dWx0aXNpZy5rZXlzaWduLnYxLkJpdGNvaW5PdXRwdXRCVAoTdnVsdGlzaWcua2V5c2lnbi52MVo4Z2l0aHViLmNvbS92dWx0aXNpZy9jb21tb25kYXRhL2dvL3Z1bHRpc2lnL2tleXNpZ24vdjE7djG6AgJWU2IGcHJvdG8z");
9
- /**
10
- * Describes the message vultisig.keysign.v1.CosmosCoin.
11
- * Use `create(CosmosCoinSchema)` to create a new message.
12
- */
13
- export const CosmosCoinSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 0);
14
- /**
15
- * Describes the message vultisig.keysign.v1.CosmosFee.
16
- * Use `create(CosmosFeeSchema)` to create a new message.
17
- */
18
- export const CosmosFeeSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 1);
19
- /**
20
- * Describes the message vultisig.keysign.v1.CosmosMsg.
21
- * Use `create(CosmosMsgSchema)` to create a new message.
22
- */
23
- export const CosmosMsgSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 2);
24
- /**
25
- * Describes the message vultisig.keysign.v1.SignAmino.
26
- * Use `create(SignAminoSchema)` to create a new message.
27
- */
28
- export const SignAminoSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 3);
29
- /**
30
- * Describes the message vultisig.keysign.v1.SignDirect.
31
- * Use `create(SignDirectSchema)` to create a new message.
32
- */
33
- export const SignDirectSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 4);
34
- /**
35
- * Describes the message vultisig.keysign.v1.SignSolana.
36
- * Use `create(SignSolanaSchema)` to create a new message.
37
- */
38
- export const SignSolanaSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 5);
39
- /**
40
- * Describes the message vultisig.keysign.v1.TonMessage.
41
- * Use `create(TonMessageSchema)` to create a new message.
42
- */
43
- export const TonMessageSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 6);
44
- /**
45
- * Describes the message vultisig.keysign.v1.SignTon.
46
- * Use `create(SignTonSchema)` to create a new message.
47
- */
48
- export const SignTonSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 7);
49
- /**
50
- * Describes the message vultisig.keysign.v1.SignSui.
51
- * Use `create(SignSuiSchema)` to create a new message.
52
- */
53
- export const SignSuiSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 8);
54
- /**
55
- * Describes the message vultisig.keysign.v1.SignRipple.
56
- * Use `create(SignRippleSchema)` to create a new message.
57
- */
58
- export const SignRippleSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 9);
59
- /**
60
- * Describes the message vultisig.keysign.v1.WasmExecuteContractPayload.
61
- * Use `create(WasmExecuteContractPayloadSchema)` to create a new message.
62
- */
63
- export const WasmExecuteContractPayloadSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 10);
64
- /**
65
- * Describes the message vultisig.keysign.v1.BitcoinInput.
66
- * Use `create(BitcoinInputSchema)` to create a new message.
67
- */
68
- export const BitcoinInputSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 11);
69
- /**
70
- * Describes the message vultisig.keysign.v1.BitcoinOutput.
71
- * Use `create(BitcoinOutputSchema)` to create a new message.
72
- */
73
- export const BitcoinOutputSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 12);
74
- /**
75
- * Describes the message vultisig.keysign.v1.SignBitcoin.
76
- * Use `create(SignBitcoinSchema)` to create a new message.
77
- */
78
- export const SignBitcoinSchema = /*@__PURE__*/ messageDesc(file_vultisig_keysign_v1_wasm_execute_contract_payload, 13);
7
+ export * from "@vultisig/mpc-types/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb";
79
8
  //# sourceMappingURL=wasm_execute_contract_payload_pb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wasm_execute_contract_payload_pb.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,4HAA4H;AAC5H,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAGrE;;GAEG;AACH,MAAM,CAAC,MAAM,sDAAsD,GAAY,aAAa,CAC1F,QAAQ,CAAC,8nEAA8nE,CAAC,CAAC;AAiB3oE;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B,aAAa,CACnE,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AAgCzE;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAA0B,aAAa,CACjE,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AAiBzE;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAA0B,aAAa,CACjE,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AAiBzE;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAA0B,aAAa,CACjE,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AA2BzE;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B,aAAa,CACnE,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AAczE;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B,aAAa,CACnE,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AA2BzE;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B,aAAa,CACnE,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AAYzE;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAwB,aAAa,CAC7D,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AAkBzE;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAwB,aAAa,CAC7D,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AAmBzE;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B,aAAa,CACnE,WAAW,CAAC,sDAAsD,EAAE,CAAC,CAAC,CAAC;AA2BzE;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAA2C,aAAa,CACnG,WAAW,CAAC,sDAAsD,EAAE,EAAE,CAAC,CAAC;AAyE1E;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAA6B,aAAa,CACvE,WAAW,CAAC,sDAAsD,EAAE,EAAE,CAAC,CAAC;AA4C1E;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA8B,aAAa,CACzE,WAAW,CAAC,sDAAsD,EAAE,EAAE,CAAC,CAAC;AAwC1E;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA4B,aAAa,CACrE,WAAW,CAAC,sDAAsD,EAAE,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"wasm_execute_contract_payload_pb.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,cAAc,gFAAgF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vultisig/core-mpc",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "description": "MPC, keysign, and vault types shared across Vultisig clients",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -1094,13 +1094,13 @@
1094
1094
  "@noble/hashes": "^2.2.0",
1095
1095
  "@solana/web3.js": "^1.98.4",
1096
1096
  "@trustwallet/wallet-core": "^4.7.3",
1097
- "@vultisig/core-chain": "4.1.0",
1097
+ "@vultisig/core-chain": "4.1.1",
1098
1098
  "@vultisig/core-config": "0.9.1",
1099
1099
  "@vultisig/lib-dkls": "0.9.0",
1100
1100
  "@vultisig/lib-mldsa": "0.9.0",
1101
1101
  "@vultisig/lib-schnorr": "0.9.0",
1102
1102
  "@vultisig/lib-utils": "0.10.6",
1103
- "@vultisig/mpc-types": "0.2.3",
1103
+ "@vultisig/mpc-types": "0.3.0",
1104
1104
  "bitcoinjs-lib": "^7.0.1",
1105
1105
  "bs58": "^6.0.0",
1106
1106
  "buffer": "^6.0.3",