@vultisig/core-chain 1.2.2 → 1.3.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 (68) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/chains/cardano/cip30/buildCardanoValue.d.ts +18 -0
  3. package/dist/chains/cardano/cip30/buildCardanoValue.d.ts.map +1 -0
  4. package/dist/chains/cardano/cip30/buildCardanoValue.js +72 -0
  5. package/dist/chains/cardano/cip30/buildCardanoValue.js.map +1 -0
  6. package/dist/chains/cardano/cip30/buildCardanoWitnessSet.d.ts +10 -0
  7. package/dist/chains/cardano/cip30/buildCardanoWitnessSet.d.ts.map +1 -0
  8. package/dist/chains/cardano/cip30/buildCardanoWitnessSet.js +15 -0
  9. package/dist/chains/cardano/cip30/buildCardanoWitnessSet.js.map +1 -0
  10. package/dist/chains/cardano/cip30/buildCoseStructures.d.ts +45 -0
  11. package/dist/chains/cardano/cip30/buildCoseStructures.d.ts.map +1 -0
  12. package/dist/chains/cardano/cip30/buildCoseStructures.js +70 -0
  13. package/dist/chains/cardano/cip30/buildCoseStructures.js.map +1 -0
  14. package/dist/chains/cardano/cip30/cardanoAddressBytes.d.ts +6 -0
  15. package/dist/chains/cardano/cip30/cardanoAddressBytes.d.ts.map +1 -0
  16. package/dist/chains/cardano/cip30/cardanoAddressBytes.js +12 -0
  17. package/dist/chains/cardano/cip30/cardanoAddressBytes.js.map +1 -0
  18. package/dist/chains/cardano/cip30/cardanoCborPrimitives.d.ts +53 -0
  19. package/dist/chains/cardano/cip30/cardanoCborPrimitives.d.ts.map +1 -0
  20. package/dist/chains/cardano/cip30/cardanoCborPrimitives.js +91 -0
  21. package/dist/chains/cardano/cip30/cardanoCborPrimitives.js.map +1 -0
  22. package/dist/chains/cardano/cip30/cardanoTxBodyHash.d.ts +6 -0
  23. package/dist/chains/cardano/cip30/cardanoTxBodyHash.d.ts.map +1 -0
  24. package/dist/chains/cardano/cip30/cardanoTxBodyHash.js +55 -0
  25. package/dist/chains/cardano/cip30/cardanoTxBodyHash.js.map +1 -0
  26. package/dist/chains/cardano/cip30/cborEncoder.d.ts +11 -0
  27. package/dist/chains/cardano/cip30/cborEncoder.d.ts.map +1 -0
  28. package/dist/chains/cardano/cip30/cborEncoder.js +14 -0
  29. package/dist/chains/cardano/cip30/cborEncoder.js.map +1 -0
  30. package/dist/chains/cardano/cip30/cborSkip.d.ts +13 -0
  31. package/dist/chains/cardano/cip30/cborSkip.d.ts.map +1 -0
  32. package/dist/chains/cardano/cip30/cborSkip.js +108 -0
  33. package/dist/chains/cardano/cip30/cborSkip.js.map +1 -0
  34. package/dist/chains/cardano/cip30/decodeCardanoAmountValue.d.ts +16 -0
  35. package/dist/chains/cardano/cip30/decodeCardanoAmountValue.d.ts.map +1 -0
  36. package/dist/chains/cardano/cip30/decodeCardanoAmountValue.js +72 -0
  37. package/dist/chains/cardano/cip30/decodeCardanoAmountValue.js.map +1 -0
  38. package/dist/chains/cardano/cip30/encodeCardanoUnspentOutput.d.ts +16 -0
  39. package/dist/chains/cardano/cip30/encodeCardanoUnspentOutput.d.ts.map +1 -0
  40. package/dist/chains/cardano/cip30/encodeCardanoUnspentOutput.js +23 -0
  41. package/dist/chains/cardano/cip30/encodeCardanoUnspentOutput.js.map +1 -0
  42. package/dist/chains/cardano/cip30/encodeCardanoValue.d.ts +4 -0
  43. package/dist/chains/cardano/cip30/encodeCardanoValue.d.ts.map +1 -0
  44. package/dist/chains/cardano/cip30/encodeCardanoValue.js +5 -0
  45. package/dist/chains/cardano/cip30/encodeCardanoValue.js.map +1 -0
  46. package/dist/chains/cardano/cip30/selectCardanoUtxosByLovelace.d.ts +24 -0
  47. package/dist/chains/cardano/cip30/selectCardanoUtxosByLovelace.d.ts.map +1 -0
  48. package/dist/chains/cardano/cip30/selectCardanoUtxosByLovelace.js +23 -0
  49. package/dist/chains/cardano/cip30/selectCardanoUtxosByLovelace.js.map +1 -0
  50. package/dist/chains/cardano/submit/submitCardanoCbor.d.ts +18 -0
  51. package/dist/chains/cardano/submit/submitCardanoCbor.d.ts.map +1 -0
  52. package/dist/chains/cardano/submit/submitCardanoCbor.js +71 -0
  53. package/dist/chains/cardano/submit/submitCardanoCbor.js.map +1 -0
  54. package/dist/chains/cosmos/account/getCosmosAccountInfo.d.ts +1 -1
  55. package/dist/chains/cosmos/account/getCosmosAccountInfo.d.ts.map +1 -1
  56. package/dist/chains/cosmos/account/getCosmosAccountInfo.js +5 -3
  57. package/dist/chains/cosmos/account/getCosmosAccountInfo.js.map +1 -1
  58. package/dist/coin/price/evm/getErc20Prices.d.ts +3 -1
  59. package/dist/coin/price/evm/getErc20Prices.d.ts.map +1 -1
  60. package/dist/coin/price/evm/getErc20Prices.js +4 -1
  61. package/dist/coin/price/evm/getErc20Prices.js.map +1 -1
  62. package/dist/publicKey/getPublicKey.d.ts.map +1 -1
  63. package/dist/publicKey/getPublicKey.js +11 -5
  64. package/dist/publicKey/getPublicKey.js.map +1 -1
  65. package/dist/tx/broadcast/resolvers/cardano.d.ts.map +1 -1
  66. package/dist/tx/broadcast/resolvers/cardano.js +11 -63
  67. package/dist/tx/broadcast/resolvers/cardano.js.map +1 -1
  68. package/package.json +67 -2
@@ -1,74 +1,22 @@
1
1
  import { getCardanoTxHash } from '@vultisig/core-chain/tx/hash/resolvers/cardano';
2
- import { rootApiUrl } from '@vultisig/core-config';
3
- import { extractErrorMsg } from '@vultisig/lib-utils/error/extractErrorMsg';
4
2
  import { isInError } from '@vultisig/lib-utils/error/isInError';
3
+ import { submitCardanoCbor } from '../../../chains/cardano/submit/submitCardanoCbor.js';
5
4
  import { selectEncodedBytes } from './utxo.js';
6
- const cardanoBroadcastUrl = `${rootApiUrl}/ada/`;
7
- const normalizeHash = (hash) => hash.replace(/^0x/i, '');
8
- const parseJson = (raw) => {
9
- try {
10
- return JSON.parse(raw);
11
- }
12
- catch {
13
- return null;
14
- }
15
- };
16
- const extractTxHash = (response) => {
17
- if (!response) {
18
- return null;
19
- }
20
- if (typeof response === 'string') {
21
- const trimmed = response.trim();
22
- return trimmed ? normalizeHash(trimmed) : null;
23
- }
24
- const txId = response.result?.transaction?.id;
25
- if (typeof txId === 'string' && txId.trim()) {
26
- return normalizeHash(txId.trim());
27
- }
28
- return null;
29
- };
30
- const extractError = (response, raw) => {
31
- if (!response) {
32
- return extractErrorMsg(raw);
33
- }
34
- if (typeof response === 'string') {
35
- return extractErrorMsg(response);
36
- }
37
- return extractErrorMsg(response.error ?? raw);
38
- };
5
+ /**
6
+ * Ogmios code for "transaction already known / in ledger". When the node
7
+ * reports this, we hash the tx locally to return the deterministic id.
8
+ */
9
+ const alreadyCommittedCode = 3117;
39
10
  export const broadcastCardanoTx = async ({ chain, tx }) => {
40
11
  const encodedBytes = selectEncodedBytes(chain, tx);
41
12
  const cborHex = Buffer.from(encodedBytes).toString('hex');
42
- // @tony: sticking with the direct fetch here. Our 'queryUrl' auto-runs assertFetchResponse, which throws before we can inspect the raw body or status.
43
- const response = await fetch(cardanoBroadcastUrl, {
44
- method: 'POST',
45
- headers: {
46
- 'Content-Type': 'application/json',
47
- },
48
- body: JSON.stringify({
49
- jsonrpc: '2.0',
50
- method: 'submitTransaction',
51
- params: {
52
- transaction: {
53
- cbor: cborHex,
54
- },
55
- },
56
- id: 1,
57
- }),
58
- });
59
- const responseText = await response.text();
60
- const parsed = parseJson(responseText);
61
- const rpcErrorCode = parsed && typeof parsed === 'object' && !Array.isArray(parsed)
62
- ? parsed.error?.code
63
- : undefined;
64
- if (rpcErrorCode === 3117) {
65
- return normalizeHash(await getCardanoTxHash(tx));
66
- }
67
- const txHash = extractTxHash(parsed) ?? extractTxHash(responseText);
68
- if (txHash) {
13
+ const { txHash, errorMessage, rpcErrorCode } = await submitCardanoCbor(cborHex);
14
+ if (txHash)
69
15
  return txHash;
16
+ if (rpcErrorCode === alreadyCommittedCode) {
17
+ return (await getCardanoTxHash(tx)).replace(/^0x/i, '');
70
18
  }
71
- const error = extractError(parsed, responseText);
19
+ const error = errorMessage ?? 'unknown broadcast failure';
72
20
  if (isInError(error, 'BadInputsUTxO', 'timed out', 'txn-mempool-conflict', 'already known')) {
73
21
  return null;
74
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cardano.js","sourceRoot":"","sources":["../../../../../../../packages/core/chain/tx/broadcast/resolvers/cardano.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAA;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAA;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAA;AAG/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAE3C,MAAM,mBAAmB,GAAG,GAAG,UAAU,OAAO,CAAA;AAUhD,MAAM,aAAa,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AAExE,MAAM,SAAS,GAAG,CAAC,GAAW,EAAyB,EAAE;IACvD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,QAA+B,EAAiB,EAAE;IACvE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAA;QAC/B,OAAO,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAChD,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAA;IAE7C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QAC5C,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IACnC,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,QAA+B,EAAE,GAAW,EAAU,EAAE;IAC5E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,eAAe,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;IAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAA;IAClC,CAAC;IAED,OAAO,eAAe,CAAC,QAAQ,CAAC,KAAK,IAAI,GAAG,CAAC,CAAA;AAC/C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAE3B,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE;IAC1B,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEzD,uJAAuJ;IACvJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,mBAAmB,EAAE;QAChD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,mBAAmB;YAC3B,MAAM,EAAE;gBACN,WAAW,EAAE;oBACX,IAAI,EAAE,OAAO;iBACd;aACF;YACD,EAAE,EAAE,CAAC;SACN,CAAC;KACH,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAC1C,MAAM,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;IAEtC,MAAM,YAAY,GAChB,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5D,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI;QACpB,CAAC,CAAC,SAAS,CAAA;IAEf,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO,aAAa,CAAC,MAAM,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAA;IAClD,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,YAAY,CAAC,CAAA;IAEnE,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IAEhD,IACE,SAAS,CACP,KAAK,EACL,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,eAAe,CAChB,EACD,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAA;AAC9D,CAAC,CAAA"}
1
+ {"version":3,"file":"cardano.js","sourceRoot":"","sources":["../../../../../../../packages/core/chain/tx/broadcast/resolvers/cardano.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAA;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAA;AAE/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAA;AAGpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAE3C;;;GAGG;AACH,MAAM,oBAAoB,GAAG,IAAI,CAAA;AAEjC,MAAM,CAAC,MAAM,kBAAkB,GAE3B,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE;IAC1B,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEzD,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAE/E,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IAEzB,IAAI,YAAY,KAAK,oBAAoB,EAAE,CAAC;QAC1C,OAAO,CAAC,MAAM,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACzD,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,IAAI,2BAA2B,CAAA;IAEzD,IACE,SAAS,CACP,KAAK,EACL,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,eAAe,CAChB,EACD,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAA;AAC9D,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vultisig/core-chain",
3
- "version": "1.2.2",
3
+ "version": "1.3.1",
4
4
  "description": "Blockchain chain logic shared across Vultisig clients",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -79,6 +79,66 @@
79
79
  "import": "./dist/chains/cardano/asset/cardanoAssetId.js",
80
80
  "default": "./dist/chains/cardano/asset/cardanoAssetId.js"
81
81
  },
82
+ "./chains/cardano/cip30/buildCardanoValue": {
83
+ "types": "./dist/chains/cardano/cip30/buildCardanoValue.d.ts",
84
+ "import": "./dist/chains/cardano/cip30/buildCardanoValue.js",
85
+ "default": "./dist/chains/cardano/cip30/buildCardanoValue.js"
86
+ },
87
+ "./chains/cardano/cip30/buildCardanoWitnessSet": {
88
+ "types": "./dist/chains/cardano/cip30/buildCardanoWitnessSet.d.ts",
89
+ "import": "./dist/chains/cardano/cip30/buildCardanoWitnessSet.js",
90
+ "default": "./dist/chains/cardano/cip30/buildCardanoWitnessSet.js"
91
+ },
92
+ "./chains/cardano/cip30/buildCoseStructures": {
93
+ "types": "./dist/chains/cardano/cip30/buildCoseStructures.d.ts",
94
+ "import": "./dist/chains/cardano/cip30/buildCoseStructures.js",
95
+ "default": "./dist/chains/cardano/cip30/buildCoseStructures.js"
96
+ },
97
+ "./chains/cardano/cip30/cardanoAddressBytes": {
98
+ "types": "./dist/chains/cardano/cip30/cardanoAddressBytes.d.ts",
99
+ "import": "./dist/chains/cardano/cip30/cardanoAddressBytes.js",
100
+ "default": "./dist/chains/cardano/cip30/cardanoAddressBytes.js"
101
+ },
102
+ "./chains/cardano/cip30/cardanoCborPrimitives": {
103
+ "types": "./dist/chains/cardano/cip30/cardanoCborPrimitives.d.ts",
104
+ "import": "./dist/chains/cardano/cip30/cardanoCborPrimitives.js",
105
+ "default": "./dist/chains/cardano/cip30/cardanoCborPrimitives.js"
106
+ },
107
+ "./chains/cardano/cip30/cardanoTxBodyHash": {
108
+ "types": "./dist/chains/cardano/cip30/cardanoTxBodyHash.d.ts",
109
+ "import": "./dist/chains/cardano/cip30/cardanoTxBodyHash.js",
110
+ "default": "./dist/chains/cardano/cip30/cardanoTxBodyHash.js"
111
+ },
112
+ "./chains/cardano/cip30/cborEncoder": {
113
+ "types": "./dist/chains/cardano/cip30/cborEncoder.d.ts",
114
+ "import": "./dist/chains/cardano/cip30/cborEncoder.js",
115
+ "default": "./dist/chains/cardano/cip30/cborEncoder.js"
116
+ },
117
+ "./chains/cardano/cip30/cborSkip": {
118
+ "types": "./dist/chains/cardano/cip30/cborSkip.d.ts",
119
+ "import": "./dist/chains/cardano/cip30/cborSkip.js",
120
+ "default": "./dist/chains/cardano/cip30/cborSkip.js"
121
+ },
122
+ "./chains/cardano/cip30/decodeCardanoAmountValue": {
123
+ "types": "./dist/chains/cardano/cip30/decodeCardanoAmountValue.d.ts",
124
+ "import": "./dist/chains/cardano/cip30/decodeCardanoAmountValue.js",
125
+ "default": "./dist/chains/cardano/cip30/decodeCardanoAmountValue.js"
126
+ },
127
+ "./chains/cardano/cip30/encodeCardanoUnspentOutput": {
128
+ "types": "./dist/chains/cardano/cip30/encodeCardanoUnspentOutput.d.ts",
129
+ "import": "./dist/chains/cardano/cip30/encodeCardanoUnspentOutput.js",
130
+ "default": "./dist/chains/cardano/cip30/encodeCardanoUnspentOutput.js"
131
+ },
132
+ "./chains/cardano/cip30/encodeCardanoValue": {
133
+ "types": "./dist/chains/cardano/cip30/encodeCardanoValue.d.ts",
134
+ "import": "./dist/chains/cardano/cip30/encodeCardanoValue.js",
135
+ "default": "./dist/chains/cardano/cip30/encodeCardanoValue.js"
136
+ },
137
+ "./chains/cardano/cip30/selectCardanoUtxosByLovelace": {
138
+ "types": "./dist/chains/cardano/cip30/selectCardanoUtxosByLovelace.d.ts",
139
+ "import": "./dist/chains/cardano/cip30/selectCardanoUtxosByLovelace.js",
140
+ "default": "./dist/chains/cardano/cip30/selectCardanoUtxosByLovelace.js"
141
+ },
82
142
  "./chains/cardano/client/config": {
83
143
  "types": "./dist/chains/cardano/client/config.d.ts",
84
144
  "import": "./dist/chains/cardano/client/config.js",
@@ -104,6 +164,11 @@
104
164
  "import": "./dist/chains/cardano/config.js",
105
165
  "default": "./dist/chains/cardano/config.js"
106
166
  },
167
+ "./chains/cardano/submit/submitCardanoCbor": {
168
+ "types": "./dist/chains/cardano/submit/submitCardanoCbor.d.ts",
169
+ "import": "./dist/chains/cardano/submit/submitCardanoCbor.js",
170
+ "default": "./dist/chains/cardano/submit/submitCardanoCbor.js"
171
+ },
107
172
  "./chains/cardano/utxo/getCardanoExtendedUtxos": {
108
173
  "types": "./dist/chains/cardano/utxo/getCardanoExtendedUtxos.d.ts",
109
174
  "import": "./dist/chains/cardano/utxo/getCardanoExtendedUtxos.js",
@@ -1560,7 +1625,7 @@
1560
1625
  "@solana/web3.js": "^1.98.4",
1561
1626
  "@trustwallet/wallet-core": "^4.6.0",
1562
1627
  "@vultisig/core-config": "0.9.1",
1563
- "@vultisig/lib-utils": "0.9.2",
1628
+ "@vultisig/lib-utils": "0.9.3",
1564
1629
  "bip32": "^5.0.1",
1565
1630
  "bitcoinjs-lib": "^7.0.1",
1566
1631
  "bs58": "^6.0.0",