@meshconnect/uwc-wallet-connect-connector 0.14.13 → 0.14.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"tron-transaction-service.d.ts","sourceRoot":"","sources":["../../../src/services/tron/tron-transaction-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAIvB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAWxD,qBAAa,sBAAsB;IAC3B,eAAe,CACnB,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,YAAY,CAAC,MAAM,EAC5B,OAAO,EAAE,sBAAsB,EAC/B,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,CAuCjB;YAEa,gBAAgB;CA8B/B"}
1
+ {"version":3,"file":"tron-transaction-service.d.ts","sourceRoot":"","sources":["../../../src/services/tron/tron-transaction-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAIvB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAoExD,qBAAa,sBAAsB;IAC3B,eAAe,CACnB,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,YAAY,CAAC,MAAM,EAC5B,OAAO,EAAE,sBAAsB,EAC/B,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,CAwHjB;YAEa,gBAAgB;CA8B/B"}
@@ -1,34 +1,158 @@
1
1
  import { TRON_WC_METHODS } from './tron-methods';
2
- import { buildNativeTronTx, buildTrc20TronTx, buildContractCallTronTx, broadcastTronTx, tronAddressToHex } from '../../utils/tron-utils';
2
+ import { buildNativeTronTx, buildTrc20TronTx, buildContractCallTronTx, broadcastTronTx, nodeHasTransaction, tronAddressToHex } from '../../utils/tron-utils';
3
3
  import { parseError } from '../../utils/error-utils';
4
+ /**
5
+ * Session property a wallet sets to opt into the flat `tron_signTransaction`
6
+ * payload. Absent (the default) means the legacy nested shape.
7
+ * See https://docs.reown.com/advanced/multichain/rpc-reference/tron-rpc
8
+ */
9
+ const TRON_METHOD_VERSION_PROPERTY = 'tron_method_version';
10
+ const TRON_METHOD_VERSION_FLAT = 'v1';
11
+ /**
12
+ * Wallets answer `tron_signTransaction` in one of three shapes: the full signed
13
+ * transaction, that transaction wrapped in `{ result }`, or — per the spec's own
14
+ * example — the signature alone. Peel the wrapper so the caller only deals with
15
+ * the innermost object.
16
+ */
17
+ function unwrapWalletResult(result) {
18
+ const record = result;
19
+ const inner = record['result'];
20
+ return inner !== null && typeof inner === 'object'
21
+ ? inner
22
+ : record;
23
+ }
24
+ /**
25
+ * Normalize a wallet's signature to what a Tron full node accepts: an array of
26
+ * unprefixed hex strings. Trust Wallet returns a single `0x`-prefixed string,
27
+ * which the node rejects with a NullPointerException once it lands in a
28
+ * broadcast body.
29
+ */
30
+ function normalizeTronSignature(value) {
31
+ const raw = Array.isArray(value) ? value : [value];
32
+ const signatures = [];
33
+ for (const entry of raw) {
34
+ if (typeof entry !== 'string')
35
+ continue;
36
+ const hex = entry.replace(/^0x/i, '');
37
+ if (hex.length > 0)
38
+ signatures.push(hex);
39
+ }
40
+ return signatures;
41
+ }
42
+ /**
43
+ * `parseError` classifies by throwing, so capture its typed error instead —
44
+ * the recovery path needs to read the classification before deciding whether
45
+ * to rethrow, and the rethrow must stay the same typed error callers expect.
46
+ */
47
+ function toConnectorError(error) {
48
+ try {
49
+ parseError(error);
50
+ }
51
+ catch (typed) {
52
+ return typed;
53
+ }
54
+ return error;
55
+ }
4
56
  export class TronTransactionService {
5
57
  async sendTransaction(client, session, request, activeNetworkId, activeAddress) {
58
+ // Hoisted so the recovery path can still reach the txID after a throw: it
59
+ // is the hash of the raw_data we built, known before anyone signs anything.
60
+ let builtTxId;
6
61
  try {
7
62
  const unsignedTx = await this.buildTransaction(request, activeNetworkId, activeAddress);
63
+ builtTxId =
64
+ typeof unsignedTx.txID === 'string' ? unsignedTx.txID : undefined;
65
+ // The wallet decides the payload shape, not us: sending the flat form to a
66
+ // wallet that expects `transaction.transaction` leaves it with no
67
+ // transaction to sign, and it answers with a signature over something we
68
+ // never built — which then fails to broadcast, or worse, broadcasts wrong.
69
+ const usesFlatPayload = session.sessionProperties?.[TRON_METHOD_VERSION_PROPERTY] ===
70
+ TRON_METHOD_VERSION_FLAT;
71
+ const params = {
72
+ address: activeAddress,
73
+ transaction: usesFlatPayload ? unsignedTx : { transaction: unsignedTx }
74
+ };
8
75
  const result = await client.request({
9
76
  topic: session.topic,
10
77
  chainId: activeNetworkId,
11
78
  request: {
12
79
  method: TRON_WC_METHODS.signTransaction,
13
- params: { address: activeAddress, transaction: unsignedTx }
80
+ params
14
81
  }
15
82
  });
16
83
  if (result === null || typeof result !== 'object') {
17
84
  throw new Error(`tron-wc: wallet returned unexpected result for tron_signTransaction (got ${result === null ? 'null' : typeof result})`);
18
85
  }
19
- // Normalize: Trust Wallet wraps the signed tx in { result: {...} };
20
- // other wallets return the signed tx object directly.
21
- // Note: typeof null === 'object', so we also guard against result.result === null.
22
- const inner = result['result'];
23
- const signedTx = ('result' in result &&
24
- inner !== null &&
25
- typeof inner === 'object'
26
- ? inner
27
- : result);
86
+ const walletResult = unwrapWalletResult(result);
87
+ const signature = normalizeTronSignature(walletResult['signature']);
88
+ if (signature.length === 0) {
89
+ throw new Error('tron-wc: wallet returned no usable signature for tron_signTransaction');
90
+ }
91
+ // A wallet must sign the transaction it was handed. A different txID means
92
+ // different raw_data — a different recipient or amount — so refuse to
93
+ // broadcast it rather than relay whatever came back.
94
+ const returnedTxId = walletResult['txID'];
95
+ if (typeof returnedTxId === 'string' &&
96
+ typeof unsignedTx.txID === 'string' &&
97
+ returnedTxId !== unsignedTx.txID) {
98
+ throw new Error(`tron-wc: wallet signed a different transaction (expected txID ${unsignedTx.txID}, got ${returnedTxId})`);
99
+ }
100
+ // Nothing but the signature is taken from the wallet. The txID check above
101
+ // only bites when a wallet volunteers one, so trusting a returned
102
+ // `raw_data` would leave a hole exactly where it matters: a wallet could
103
+ // echo our txID (or omit it) while returning raw_data for a different
104
+ // recipient or amount, and the node validates the signature against
105
+ // whatever raw_data it is handed. Broadcasting only what we built closes
106
+ // that, and costs nothing — a wallet that signs the transaction it was
107
+ // given produces an identical body anyway.
108
+ const signedTx = {
109
+ ...unsignedTx,
110
+ signature
111
+ };
28
112
  return await broadcastTronTx(activeNetworkId, signedTx);
29
113
  }
30
114
  catch (error) {
31
- throw parseError(error);
115
+ // Last line of defence against a silently completed transfer. A wallet
116
+ // that broadcasts before it answers can leave the transaction on-chain
117
+ // while we never receive a signature at all — Trust Wallet does exactly
118
+ // this: it sends the transaction on the first Confirm, its energy-rental
119
+ // callback then fails, and it only returns the WalletConnect response if
120
+ // the user confirms a second time. Close that sheet instead and the funds
121
+ // have moved with nothing to record them against.
122
+ //
123
+ // We know the txID before anyone signs, so ask the chain rather than
124
+ // trust the error. Finding it can only turn a lost transfer into a
125
+ // recorded one; not finding it changes nothing and the original error
126
+ // stands.
127
+ const typed = toConnectorError(error);
128
+ if (builtTxId) {
129
+ // The one place every ambiguous outcome is settled: an unanswered or
130
+ // expired sign, a declined second prompt, a duplicate, a broadcast
131
+ // whose response was lost. All of them reduce to the same question —
132
+ // is the transaction we built on the chain? — so it is asked once,
133
+ // against one budget.
134
+ //
135
+ // Rejections included. A decline is not evidence that nothing was
136
+ // sent, and it is not evidence that anything sent is already visible
137
+ // either: `gettransactionbyid` answers from blocks, not the pending
138
+ // pool, and the wallet may have broadcast through a different node. On
139
+ // the device run the transaction became readable 16s after the wallet
140
+ // reported it out, so a single immediate lookup would report a landed
141
+ // transfer as failed.
142
+ //
143
+ // A probe that cannot answer is inconclusive, never a new failure: its
144
+ // own error must not displace the one the caller needs to see.
145
+ let landed = false;
146
+ try {
147
+ landed = await nodeHasTransaction(activeNetworkId, builtTxId);
148
+ }
149
+ catch {
150
+ landed = false;
151
+ }
152
+ if (landed)
153
+ return builtTxId;
154
+ }
155
+ throw typed;
32
156
  }
33
157
  }
34
158
  async buildTransaction(request, networkId, activeAddress) {
@@ -1 +1 @@
1
- {"version":3,"file":"tron-transaction-service.js","sourceRoot":"","sources":["../../../src/services/tron/tron-transaction-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tron-transaction-service.js","sourceRoot":"","sources":["../../../src/services/tron/tron-transaction-service.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,15 @@ export declare function buildContractCallTronTx(networkId: string, params: {
43
43
  * amount argument). Omitted/0 keeps the non-payable behaviour. */
44
44
  callValue?: number | bigint;
45
45
  }): Promise<UnsignedTronTx>;
46
+ /**
47
+ * Does the node actually hold this transaction? `gettransactionbyid` answers
48
+ * `{}` for one it has never seen, so a returned `txID` is proof of acceptance
49
+ * rather than an inference from an error code.
50
+ *
51
+ * Also the recovery probe after a failed sign: a wallet that broadcasts before
52
+ * it answers leaves the transfer on-chain with nothing to tell us about it.
53
+ */
54
+ export declare function nodeHasTransaction(networkId: string, txid: string): Promise<boolean>;
46
55
  /** Broadcast a signed Tron transaction. Returns the on-chain txid. */
47
56
  export declare function broadcastTronTx(networkId: string, signedTx: Record<string, unknown>): Promise<string>;
48
57
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"tron-utils.d.ts","sourceRoot":"","sources":["../../src/utils/tron-utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqDH,+EAA+E;AAC/E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAaxD;AAgGD;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,4DAA4D;AAC5D,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAC5D,OAAO,CAAC,cAAc,CAAC,CAuBzB;AAED,uEAAuE;AACvE,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;IACN,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;CACxB,GACA,OAAO,CAAC,cAAc,CAAC,CAiCzB;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;IACN,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ;uEACmE;IACnE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAC5B,GACA,OAAO,CAAC,cAAc,CAAC,CAsCzB;AAED,sEAAsE;AACtE,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,MAAM,CAAC,CAmBjB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC,CAAA;IAC3D,YAAY,EAAE,MAAM,CAAA;CACrB,GAAG,OAAO,CAAC;IACV,WAAW,CAAC,EAAE;QACZ,QAAQ,EAAE;YACR,QAAQ,EAAE,KAAK,CAAC;gBACd,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,IAAI,EAAE,MAAM,CAAA;wBACZ,aAAa,EAAE,MAAM,CAAA;wBACrB,gBAAgB,EAAE,MAAM,CAAA;qBACzB,CAAA;oBACD,QAAQ,EAAE,MAAM,CAAA;iBACjB,CAAA;gBACD,IAAI,EAAE,MAAM,CAAA;aACb,CAAC,CAAA;YACF,eAAe,EAAE,MAAM,CAAA;YACvB,cAAc,EAAE,MAAM,CAAA;YACtB,UAAU,EAAE,MAAM,CAAA;YAClB,SAAS,EAAE,MAAM,CAAA;YACjB,SAAS,EAAE,MAAM,CAAA;YACjB,IAAI,CAAC,EAAE,MAAM,CAAA;SACd,CAAA;QACD,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,MAAM,CAAC,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAA;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAC,CAsGD"}
1
+ {"version":3,"file":"tron-utils.d.ts","sourceRoot":"","sources":["../../src/utils/tron-utils.ts"],"names":[],"mappings":"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"}
@@ -132,12 +132,23 @@ function tronGridBaseUrl(networkId) {
132
132
  throw new Error(`tron-wc: no full-node endpoint for network "${networkId}"`);
133
133
  return url;
134
134
  }
135
- async function tronGridPost(networkId, path, body) {
135
+ async function tronGridPost(networkId, path, body, timeoutMs) {
136
136
  const url = `${tronGridBaseUrl(networkId)}${path}`;
137
137
  const response = await fetch(url, {
138
138
  method: 'POST',
139
139
  headers: { 'Content-Type': 'application/json' },
140
- body: JSON.stringify(body)
140
+ body: JSON.stringify(body),
141
+ // `fetch` has no default timeout, so an unresponsive node would otherwise
142
+ // hang the call indefinitely. Two kinds of caller bound it, for different
143
+ // reasons: a lookup, where abandoning an idempotent read costs nothing
144
+ // (LOOKUP_TIMEOUT_MS), and a broadcast, where abandoning one is NOT safe on
145
+ // its own — it leaves the outcome ambiguous, and is only bounded because
146
+ // the caller resolves that ambiguity against the chain
147
+ // (BROADCAST_TIMEOUT_MS). Don't add a third without knowing which case it
148
+ // is in.
149
+ ...(timeoutMs !== undefined
150
+ ? { signal: AbortSignal.timeout(timeoutMs) }
151
+ : {})
141
152
  });
142
153
  if (!response.ok) {
143
154
  throw new Error(`tron-wc: ${path} responded ${response.status} ${response.statusText}`);
@@ -226,15 +237,86 @@ export async function buildContractCallTronTx(networkId, params) {
226
237
  }
227
238
  return response.transaction;
228
239
  }
240
+ /** How long to keep asking before concluding a transaction never landed.
241
+ *
242
+ * It has to be an elapsed-time budget, not an attempt count: a miss answers
243
+ * immediately (~280ms), so three attempts with backoff cover barely three
244
+ * seconds. `gettransactionbyid` reads from blocks rather than the pending
245
+ * pool, and the wallet may have broadcast through a node other than the one we
246
+ * query — on the device run the transaction only became readable 16.3s after
247
+ * the wallet reported it out. A budget shorter than that cannot catch the case
248
+ * this exists for, and a probe that reports "never landed" too early is worse
249
+ * than none: it turns a completed transfer into a confident failure.
250
+ *
251
+ * Only ever spent on an error path, after the user has already confirmed. */
252
+ const LOOKUP_BUDGET_MS = 20_000;
253
+ const LOOKUP_INTERVAL_MS = 2000;
254
+ /** Hard bound on a single lookup, so a hung node cannot stall the budget above
255
+ * — `fetch` has no timeout of its own. A lookup is an idempotent read, so
256
+ * abandoning one costs nothing. */
257
+ const LOOKUP_TIMEOUT_MS = 5000;
258
+ /** Bound on a broadcast. Waiting forever is not the safe option it looks like:
259
+ * a node can accept the transaction and lose the response, and an unbounded
260
+ * `fetch` then leaves the call pending indefinitely — the funds move and the
261
+ * recovery probe never even runs. Timing out instead makes the outcome
262
+ * ambiguous, which is a state the caller already knows how to settle by
263
+ * asking the chain for the txID it built. */
264
+ const BROADCAST_TIMEOUT_MS = 15_000;
265
+ const wait = (ms) => new Promise(resolve => setTimeout(resolve, ms));
266
+ /**
267
+ * Does the node actually hold this transaction? `gettransactionbyid` answers
268
+ * `{}` for one it has never seen, so a returned `txID` is proof of acceptance
269
+ * rather than an inference from an error code.
270
+ *
271
+ * Also the recovery probe after a failed sign: a wallet that broadcasts before
272
+ * it answers leaves the transfer on-chain with nothing to tell us about it.
273
+ */
274
+ export async function nodeHasTransaction(networkId, txid) {
275
+ const deadline = Date.now() + LOOKUP_BUDGET_MS;
276
+ for (;;) {
277
+ try {
278
+ const found = await tronGridPost(networkId, '/wallet/gettransactionbyid', { value: txid }, LOOKUP_TIMEOUT_MS);
279
+ if (found?.txID === txid)
280
+ return true;
281
+ }
282
+ catch {
283
+ // A lookup failure is not evidence either way: keep asking, then fail closed.
284
+ }
285
+ if (Date.now() + LOOKUP_INTERVAL_MS >= deadline)
286
+ return false;
287
+ await wait(LOOKUP_INTERVAL_MS);
288
+ }
289
+ }
229
290
  /** Broadcast a signed Tron transaction. Returns the on-chain txid. */
230
291
  export async function broadcastTronTx(networkId, signedTx) {
231
- const response = await tronGridPost(networkId, '/wallet/broadcasttransaction', signedTx);
292
+ const response = await tronGridPost(networkId, '/wallet/broadcasttransaction', signedTx, BROADCAST_TIMEOUT_MS);
293
+ // Our own id is the reconciliation key: it is the hash of the `raw_data` we
294
+ // posted, so unlike the echoed one it cannot be influenced by the response.
295
+ // The node derives the same hash from the same body, so a divergent echo
296
+ // would mean the body and the id disagree — not something to reconcile by
297
+ // trusting the node's version.
298
+ const ownTxId = signedTx['txID'];
299
+ const txid = (typeof ownTxId === 'string' ? ownTxId : undefined) ??
300
+ response.txid ??
301
+ response.transaction?.txID;
302
+ // Every ambiguous outcome — a duplicate, a lost response, an unreadable
303
+ // node — is settled in one place: the caller's recovery probe, which asks
304
+ // the chain for the txID it built. Reconciling here as well would spend the
305
+ // lookup budget twice over and double the traffic for one decision.
306
+ //
307
+ // A duplicate in particular must not be read as success on its own. That is
308
+ // Tron's own guidance — "this error does not prove that the transaction is
309
+ // on-chain … query the original transaction and receipt by txID" — because
310
+ // java-tron returns the code both from `DupTransactionException` out of
311
+ // `pushTransaction`, where the node really does hold it, and from a tx-id
312
+ // cache written BEFORE validation, where an earlier attempt failed and left
313
+ // its id behind.
232
314
  if (response.result !== true) {
233
315
  throw new Error(decodeHexMessage(response.message) ||
234
316
  response.code ||
317
+ response.Error ||
235
318
  'tron-wc: broadcast rejected by node');
236
319
  }
237
- const txid = response.txid ?? response.transaction?.txID ?? signedTx['txID'];
238
320
  if (!txid)
239
321
  throw new Error('tron-wc: broadcast returned no txid');
240
322
  return txid;
@@ -1 +1 @@
1
- {"version":3,"file":"tron-utils.js","sourceRoot":"","sources":["../../src/utils/tron-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tron-utils.js","sourceRoot":"","sources":["../../src/utils/tron-utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshconnect/uwc-wallet-connect-connector",
3
- "version": "0.14.13",
3
+ "version": "0.14.14",
4
4
  "description": "WalletConnect connector for Universal Wallet Connector",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",