@vultisig/core-mpc 1.2.10 → 1.2.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # @vultisig/core-mpc
2
2
 
3
+ ## 1.2.12
4
+
5
+ ### Patch Changes
6
+
7
+ - [#466](https://github.com/vultisig/vultisig-sdk/pull/466) [`af16c0d`](https://github.com/vultisig/vultisig-sdk/commit/af16c0d8f59fd9b339f1a6b41229f105bd81820f) Thanks [@rcoderdev](https://github.com/rcoderdev)! - Clean shared package build output before generating package exports so removed modules do not leave stale subpath entries.
8
+
9
+ ## 1.2.11
10
+
11
+ ### Patch Changes
12
+
13
+ - [#457](https://github.com/vultisig/vultisig-sdk/pull/457) [`680119e`](https://github.com/vultisig/vultisig-sdk/commit/680119e7392921b8aeaf859c85e811fb40a25054) Thanks [@rcoderdev](https://github.com/rcoderdev)! - Add regression tests and drift guards for Bitcoin PSBT compilation, ChainKind signing-input alignment, generated protobuf headers, and CLI agent action names aligned with AGENTS.md.
14
+
15
+ - [#456](https://github.com/vultisig/vultisig-sdk/pull/456) [`b36eb62`](https://github.com/vultisig/vultisig-sdk/commit/b36eb62842051b8b2bae06f1e123a5ebcf6cad88) Thanks [@rcoderdev](https://github.com/rcoderdev)! - Add Terra CW20 metadata resolution and build CW20 token sends as CosmWasm execute transfers.
16
+
17
+ - Updated dependencies [[`5102976`](https://github.com/vultisig/vultisig-sdk/commit/5102976d7c13fa9578bbbc6e5122526cefc1ec66), [`b36eb62`](https://github.com/vultisig/vultisig-sdk/commit/b36eb62842051b8b2bae06f1e123a5ebcf6cad88)]:
18
+ - @vultisig/core-chain@1.7.1
19
+
3
20
  ## 1.2.10
4
21
 
5
22
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/build.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAA;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAA;AAIlF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAG1D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAA;AAEzE,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,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,6HAY3C,4BAA4B,sGAkD9B,CAAA"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/build.ts"],"names":[],"mappings":"AAGA,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;AAIzE,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,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,6HAY3C,4BAA4B,sGAgE9B,CAAA"}
@@ -7,15 +7,19 @@ import { refineKeysignAmount } from '@vultisig/core-mpc/keysign/refine/amount';
7
7
  import { refineKeysignUtxo } from '@vultisig/core-mpc/keysign/refine/utxo';
8
8
  import { getKeysignUtxoInfo } from '@vultisig/core-mpc/keysign/utxo/getKeysignUtxoInfo';
9
9
  import { toCommCoin } from '@vultisig/core-mpc/types/utils/commCoin';
10
+ import { TransactionType } from '@vultisig/core-mpc/types/vultisig/keysign/v1/blockchain_specific_pb';
10
11
  import { KeysignPayloadSchema } from '@vultisig/core-mpc/types/vultisig/keysign/v1/keysign_message_pb';
12
+ import { getCosmosWasmTokenTransferPayload } from './cosmosWasm.js';
11
13
  export const buildSendKeysignPayload = async ({ coin, receiver, amount, memo, vaultId, localPartyId, publicKey, hexPublicKeyOverride, walletCore, libType, feeSettings, }) => {
12
- const hexPublicKey = hexPublicKeyOverride ??
13
- (publicKey
14
- ? Buffer.from(publicKey.data()).toString('hex')
15
- : undefined);
14
+ const hexPublicKey = hexPublicKeyOverride ?? (publicKey ? Buffer.from(publicKey.data()).toString('hex') : undefined);
16
15
  if (!hexPublicKey) {
17
16
  throw new Error('buildSendKeysignPayload requires publicKey or hexPublicKeyOverride');
18
17
  }
18
+ const cosmosWasmTokenTransferPayload = getCosmosWasmTokenTransferPayload({
19
+ coin,
20
+ receiver,
21
+ amount,
22
+ });
19
23
  let keysignPayload = create(KeysignPayloadSchema, {
20
24
  coin: toCommCoin({
21
25
  ...coin,
@@ -28,12 +32,24 @@ export const buildSendKeysignPayload = async ({ coin, receiver, amount, memo, va
28
32
  vaultPublicKeyEcdsa: vaultId,
29
33
  libType,
30
34
  utxoInfo: await getKeysignUtxoInfo(coin),
35
+ contractPayload: cosmosWasmTokenTransferPayload
36
+ ? {
37
+ case: 'wasmExecuteContractPayload',
38
+ value: cosmosWasmTokenTransferPayload,
39
+ }
40
+ : undefined,
31
41
  });
32
- keysignPayload.blockchainSpecific = await getChainSpecific({
33
- keysignPayload,
34
- feeSettings,
35
- walletCore,
36
- });
42
+ keysignPayload.blockchainSpecific = cosmosWasmTokenTransferPayload
43
+ ? await getChainSpecific({
44
+ keysignPayload,
45
+ walletCore,
46
+ transactionType: TransactionType.GENERIC_CONTRACT,
47
+ })
48
+ : await getChainSpecific({
49
+ keysignPayload,
50
+ feeSettings,
51
+ walletCore,
52
+ });
37
53
  const balance = await getCoinBalance(coin);
38
54
  if (publicKey) {
39
55
  keysignPayload = refineKeysignAmount({
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAA;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAA;AAEvF,OAAO,EAAE,UAAU,EAAE,MAAM,yCAAyC,CAAA;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iEAAiE,CAAA;AAmBtG,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAAE,EAC5C,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,UAAU,EACV,OAAO,EACP,WAAW,GACkB,EAAE,EAAE;IACjC,MAAM,YAAY,GAChB,oBAAoB;QACpB,CAAC,SAAS;YACR,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC/C,CAAC,CAAC,SAAS,CAAC,CAAA;IAChB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;IACvF,CAAC;IAED,IAAI,cAAc,GAAG,MAAM,CAAC,oBAAoB,EAAE;QAChD,IAAI,EAAE,UAAU,CAAC;YACf,GAAG,IAAI;YACP,YAAY;SACb,CAAC;QACF,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;QAC3B,IAAI;QACJ,iBAAiB,EAAE,YAAY;QAC/B,mBAAmB,EAAE,OAAO;QAC5B,OAAO;QACP,QAAQ,EAAE,MAAM,kBAAkB,CAAC,IAAI,CAAC;KACzC,CAAC,CAAA;IAEF,cAAc,CAAC,kBAAkB,GAAG,MAAM,gBAAgB,CAAC;QACzD,cAAc;QACd,WAAW;QACX,UAAU;KACX,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;IAE1C,IAAI,SAAS,EAAE,CAAC;QACd,cAAc,GAAG,mBAAmB,CAAC;YACnC,cAAc;YACd,UAAU;YACV,SAAS;YACT,OAAO;SACR,CAAC,CAAA;QAEF,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;YACtC,cAAc,GAAG,iBAAiB,CAAC;gBACjC,cAAc;gBACd,UAAU;gBACV,SAAS;aACV,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAA;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAA;AAEvF,OAAO,EAAE,UAAU,EAAE,MAAM,yCAAyC,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,qEAAqE,CAAA;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iEAAiE,CAAA;AAItG,OAAO,EAAE,iCAAiC,EAAE,MAAM,cAAc,CAAA;AAiBhE,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAAE,EAC5C,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,UAAU,EACV,OAAO,EACP,WAAW,GACkB,EAAE,EAAE;IACjC,MAAM,YAAY,GAAG,oBAAoB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACpH,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;IACvF,CAAC;IAED,MAAM,8BAA8B,GAAG,iCAAiC,CAAC;QACvE,IAAI;QACJ,QAAQ;QACR,MAAM;KACP,CAAC,CAAA;IAEF,IAAI,cAAc,GAAG,MAAM,CAAC,oBAAoB,EAAE;QAChD,IAAI,EAAE,UAAU,CAAC;YACf,GAAG,IAAI;YACP,YAAY;SACb,CAAC;QACF,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;QAC3B,IAAI;QACJ,iBAAiB,EAAE,YAAY;QAC/B,mBAAmB,EAAE,OAAO;QAC5B,OAAO;QACP,QAAQ,EAAE,MAAM,kBAAkB,CAAC,IAAI,CAAC;QACxC,eAAe,EAAE,8BAA8B;YAC7C,CAAC,CAAC;gBACE,IAAI,EAAE,4BAA4B;gBAClC,KAAK,EAAE,8BAA8B;aACtC;YACH,CAAC,CAAC,SAAS;KACd,CAAC,CAAA;IAEF,cAAc,CAAC,kBAAkB,GAAG,8BAA8B;QAChE,CAAC,CAAC,MAAM,gBAAgB,CAAC;YACrB,cAAc;YACd,UAAU;YACV,eAAe,EAAE,eAAe,CAAC,gBAAgB;SAClD,CAAC;QACJ,CAAC,CAAC,MAAM,gBAAgB,CAAC;YACrB,cAAc;YACd,WAAW;YACX,UAAU;SACX,CAAC,CAAA;IAEN,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;IAE1C,IAAI,SAAS,EAAE,CAAC;QACd,cAAc,GAAG,mBAAmB,CAAC;YACnC,cAAc;YACd,UAAU;YACV,SAAS;YACT,OAAO;SACR,CAAC,CAAA;QAEF,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;YACtC,cAAc,GAAG,iBAAiB,CAAC;gBACjC,cAAc;gBACd,UAAU;gBACV,SAAS;aACV,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { AccountCoin } from '@vultisig/core-chain/coin/AccountCoin';
2
+ import { WasmExecuteContractPayload } from '@vultisig/core-mpc/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb';
3
+ export declare const getCosmosWasmTokenTransferPayload: ({ coin, receiver, amount, }: {
4
+ coin: AccountCoin;
5
+ receiver: string;
6
+ amount: bigint;
7
+ }) => WasmExecuteContractPayload | undefined;
8
+ //# sourceMappingURL=cosmosWasm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cosmosWasm.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/cosmosWasm.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAA;AACnE,OAAO,EACL,0BAA0B,EAE3B,MAAM,+EAA+E,CAAA;AAKtF,eAAO,MAAM,iCAAiC,GAAI,6BAI/C;IACD,IAAI,EAAE,WAAW,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACf,KAAG,0BAA0B,GAAG,SAkBhC,CAAA"}
@@ -0,0 +1,23 @@
1
+ import { create } from '@bufbuild/protobuf';
2
+ import { IbcEnabledCosmosChain } from '@vultisig/core-chain/Chain';
3
+ import { isCosmosWasmTokenId } from '@vultisig/core-chain/chains/cosmos/cosmosRpcUrl';
4
+ import { WasmExecuteContractPayloadSchema, } from '@vultisig/core-mpc/types/vultisig/keysign/v1/wasm_execute_contract_payload_pb';
5
+ const isIbcEnabledCosmosChain = (chain) => Object.values(IbcEnabledCosmosChain).some(value => value === chain);
6
+ export const getCosmosWasmTokenTransferPayload = ({ coin, receiver, amount, }) => {
7
+ const id = coin.id;
8
+ if (!isIbcEnabledCosmosChain(coin.chain) || !isCosmosWasmTokenId(id)) {
9
+ return undefined;
10
+ }
11
+ return create(WasmExecuteContractPayloadSchema, {
12
+ senderAddress: coin.address,
13
+ contractAddress: id,
14
+ executeMsg: JSON.stringify({
15
+ transfer: {
16
+ recipient: receiver,
17
+ amount: amount.toString(),
18
+ },
19
+ }),
20
+ coins: [],
21
+ });
22
+ };
23
+ //# sourceMappingURL=cosmosWasm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cosmosWasm.js","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/send/cosmosWasm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAS,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAA;AAErF,OAAO,EAEL,gCAAgC,GACjC,MAAM,+EAA+E,CAAA;AAEtF,MAAM,uBAAuB,GAAG,CAAC,KAAY,EAAkC,EAAE,CAC/E,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;AAErE,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,EAChD,IAAI,EACJ,QAAQ,EACR,MAAM,GAKP,EAA0C,EAAE;IAC3C,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;IAElB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,CAAC;QACrE,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,MAAM,CAAC,gCAAgC,EAAE;QAC9C,aAAa,EAAE,IAAI,CAAC,OAAO;QAC3B,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC;YACzB,QAAQ,EAAE;gBACR,SAAS,EAAE,QAAQ;gBACnB,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;aAC1B;SACF,CAAC;QACF,KAAK,EAAE,EAAE;KACV,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -1,11 +1,15 @@
1
+ import { ChainKind } from '@vultisig/core-chain/ChainKind';
1
2
  import { KeysignPayload } from '@vultisig/core-mpc/types/vultisig/keysign/v1/keysign_message_pb';
2
3
  import { WalletCore } from '@trustwallet/wallet-core';
3
4
  import { PublicKey } from '@trustwallet/wallet-core/dist/src/wallet-core';
5
+ import { SigningInputsResolver } from './resolver.js';
4
6
  type Input = {
5
7
  keysignPayload: KeysignPayload;
6
8
  walletCore: WalletCore;
7
9
  publicKey?: PublicKey;
8
10
  };
11
+ /** Exported for alignment tests: every {@link ChainKind} must map to a resolver and a TW signing-input class. */
12
+ export declare const signingInputResolversByChainKind: Record<ChainKind, SigningInputsResolver<any>>;
9
13
  export declare const getEncodedSigningInputs: (input: Input) => Uint8Array[];
10
14
  export {};
11
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/signingInputs/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAA;AAChG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAA;AAkBzE,KAAK,KAAK,GAAG;IACX,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,UAAU,CAAA;IACtB,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA;AAiBD,eAAO,MAAM,uBAAuB,GAAI,OAAO,KAAK,KAAG,UAAU,EAehE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/signingInputs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAA;AAChG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAA;AAIzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAclD,KAAK,KAAK,GAAG;IACX,cAAc,EAAE,cAAc,CAAA;IAC9B,UAAU,EAAE,UAAU,CAAA;IACtB,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA;AAED,iHAAiH;AACjH,eAAO,MAAM,gCAAgC,EAAE,MAAM,CACnD,SAAS,EACT,qBAAqB,CAAC,GAAG,CAAC,CAc3B,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,OAAO,KAAK,KAAG,UAAU,EAehE,CAAA"}
@@ -13,7 +13,8 @@ import { getSuiSigningInputs } from './resolvers/sui.js';
13
13
  import { getTonSigningInputs } from './resolvers/ton/index.js';
14
14
  import { getTronSigningInputs } from './resolvers/tron.js';
15
15
  import { getUtxoSigningInputs } from './resolvers/utxo.js';
16
- const resolvers = {
16
+ /** Exported for alignment tests: every {@link ChainKind} must map to a resolver and a TW signing-input class. */
17
+ export const signingInputResolversByChainKind = {
17
18
  bittensor: getBittensorSigningInputs,
18
19
  cardano: getCardanoSigningInputs,
19
20
  cosmos: getCosmosSigningInputs,
@@ -30,7 +31,7 @@ const resolvers = {
30
31
  export const getEncodedSigningInputs = (input) => {
31
32
  const chain = getKeysignChain(input.keysignPayload);
32
33
  const chainKind = getChainKind(chain);
33
- const signingInputs = resolvers[chainKind](input);
34
+ const signingInputs = signingInputResolversByChainKind[chainKind](input);
34
35
  // Bittensor returns pre-encoded Uint8Array (custom extrinsic builder, not TW proto)
35
36
  if (chainKind === 'bittensor' || chainKind === 'qbtc') {
36
37
  return signingInputs;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/signingInputs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAKxE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAE5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAQvD,MAAM,SAAS,GAAkD;IAC/D,SAAS,EAAE,yBAAyB;IACpC,OAAO,EAAE,uBAAuB;IAChC,MAAM,EAAE,sBAAsB;IAC9B,GAAG,EAAE,mBAAmB;IACxB,QAAQ,EAAE,wBAAwB;IAClC,IAAI,EAAE,oBAAoB;IAC1B,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,sBAAsB;IAC9B,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,mBAAmB;IACxB,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,oBAAoB;CACsB,CAAA;AAElD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,KAAY,EAAgB,EAAE;IACpE,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IACnD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IAErC,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,KAAY,CAAC,CAAA;IAExD,oFAAoF;IACpF,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACtD,OAAO,aAAwC,CAAA;IACjD,CAAC;IAED,OAAO,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;QACtC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;QACxD,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAA;IACxD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/mpc/keysign/signingInputs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAKxE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAE5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAQvD,iHAAiH;AACjH,MAAM,CAAC,MAAM,gCAAgC,GAGzC;IACF,SAAS,EAAE,yBAAyB;IACpC,OAAO,EAAE,uBAAuB;IAChC,MAAM,EAAE,sBAAsB;IAC9B,GAAG,EAAE,mBAAmB;IACxB,QAAQ,EAAE,wBAAwB;IAClC,IAAI,EAAE,oBAAoB;IAC1B,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,sBAAsB;IAC9B,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,mBAAmB;IACxB,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,oBAAoB;CAC3B,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,KAAY,EAAgB,EAAE;IACpE,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IACnD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IAErC,MAAM,aAAa,GAAG,gCAAgC,CAAC,SAAS,CAAC,CAAC,KAAY,CAAC,CAAA;IAE/E,oFAAoF;IACpF,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACtD,OAAO,aAAwC,CAAA;IACjD,CAAC;IAED,OAAO,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;QACtC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;QACxD,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAA;IACxD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vultisig/core-mpc",
3
- "version": "1.2.10",
3
+ "version": "1.2.12",
4
4
  "description": "MPC, keysign, and vault types shared across Vultisig clients",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -406,6 +406,11 @@
406
406
  "import": "./dist/keysign/send/build.js",
407
407
  "default": "./dist/keysign/send/build.js"
408
408
  },
409
+ "./keysign/send/cosmosWasm": {
410
+ "types": "./dist/keysign/send/cosmosWasm.d.ts",
411
+ "import": "./dist/keysign/send/cosmosWasm.js",
412
+ "default": "./dist/keysign/send/cosmosWasm.js"
413
+ },
409
414
  "./keysign/send/getSendFeeEstimate": {
410
415
  "types": "./dist/keysign/send/getSendFeeEstimate.d.ts",
411
416
  "import": "./dist/keysign/send/getSendFeeEstimate.js",
@@ -969,7 +974,7 @@
969
974
  "@noble/hashes": "^1.8.0",
970
975
  "@solana/web3.js": "^1.98.4",
971
976
  "@trustwallet/wallet-core": "^4.6.7",
972
- "@vultisig/core-chain": "1.7.0",
977
+ "@vultisig/core-chain": "1.7.1",
973
978
  "@vultisig/core-config": "0.9.1",
974
979
  "@vultisig/lib-dkls": "0.9.0",
975
980
  "@vultisig/lib-mldsa": "0.9.0",