@meshconnect/uwc-bridge-child 0.2.3 → 0.3.0-snapshot.7a97a0f
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/dist/BridgeChild.d.ts +24 -0
- package/dist/BridgeChild.d.ts.map +1 -1
- package/dist/BridgeChild.js +120 -6
- package/dist/BridgeChild.js.map +1 -1
- package/dist/BridgeChild.test.js +135 -0
- package/dist/BridgeChild.test.js.map +1 -1
- package/package.json +1 -1
- package/src/BridgeChild.test.ts +189 -0
- package/src/BridgeChild.ts +149 -6
package/dist/BridgeChild.d.ts
CHANGED
|
@@ -6,11 +6,35 @@ export declare class BridgeChild {
|
|
|
6
6
|
private solanaDone;
|
|
7
7
|
private tronDone;
|
|
8
8
|
private tonDone;
|
|
9
|
+
private onError?;
|
|
10
|
+
private reportedBridgeErrors;
|
|
11
|
+
private static readonly MAX_REPORTED_BRIDGE_ERRORS;
|
|
9
12
|
constructor(options?: {
|
|
10
13
|
tronInjectedIds?: string[];
|
|
11
14
|
tonJsBridgeKeys?: string[];
|
|
15
|
+
onError?: (info: {
|
|
16
|
+
namespace: string;
|
|
17
|
+
message: string;
|
|
18
|
+
}) => void;
|
|
12
19
|
});
|
|
20
|
+
/**
|
|
21
|
+
* Surface a bridge-discovery failure ONCE per (namespace, message). Benign
|
|
22
|
+
* poll-misses (`BridgeReadTimeout` — the parent isn't live yet, retried next
|
|
23
|
+
* tick) are NOT reported; only real failures (older/unsupported parent,
|
|
24
|
+
* malformed marshaling) reach the observer.
|
|
25
|
+
*/
|
|
26
|
+
private reportBridgeError;
|
|
13
27
|
private initializeConnection;
|
|
28
|
+
/**
|
|
29
|
+
* Install window globals the injected EVM/TRON connectors call directly to
|
|
30
|
+
* subscribe to live provider events across the bridge (accountsChanged,
|
|
31
|
+
* chainChanged, disconnect) — mirrors this file's existing convention of
|
|
32
|
+
* exposing bridge capability via `window.*` rather than requiring callers
|
|
33
|
+
* to hold a `BridgeChild` instance reference (see `window.eip6963Wallets`
|
|
34
|
+
* etc. above). Only installed once `this.parentAPI` exists, i.e. only in
|
|
35
|
+
* bridge mode.
|
|
36
|
+
*/
|
|
37
|
+
private installProviderEventSubscriptionGlobals;
|
|
14
38
|
private anyWindowWalletsAlreadySet;
|
|
15
39
|
private syncParentOrigin;
|
|
16
40
|
private pollForWallets;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BridgeChild.d.ts","sourceRoot":"","sources":["../src/BridgeChild.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BridgeChild.d.ts","sourceRoot":"","sources":["../src/BridgeChild.ts"],"names":[],"mappings":"AAqDA,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAAC,CAA2B;IAC7C,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,eAAe,CAAU;IAGjC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,OAAO,CAAQ;IAIvB,OAAO,CAAC,OAAO,CAAC,CAAwD;IAMxE,OAAO,CAAC,oBAAoB,CAAoB;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAM;gBAE5C,OAAO,CAAC,EAAE;QACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;QAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;QAC1B,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,KAAK,IAAI,CAAA;KACjE;IAOD;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;YAsBX,oBAAoB;IAgClC;;;;;;;;OAQG;IACH,OAAO,CAAC,uCAAuC;IA2D/C,OAAO,CAAC,0BAA0B;YAUpB,gBAAgB;IA0B9B,OAAO,CAAC,cAAc;IA0CtB,OAAO,CAAC,iBAAiB;YASX,iBAAiB;YAgCjB,gBAAgB;YAkChB,cAAc;YAyEd,aAAa;CA2G5B"}
|
package/dist/BridgeChild.js
CHANGED
|
@@ -3,6 +3,22 @@
|
|
|
3
3
|
import * as Comlink from 'comlink';
|
|
4
4
|
import { hasInFrameTonBridge } from './tonInFrameBridge';
|
|
5
5
|
import { MAX_POLL_MS, POLL_INTERVAL_MS, raceParentRead, BridgeReadTimeout } from './bridge-timing';
|
|
6
|
+
/**
|
|
7
|
+
* Extract a bounded message from any thrown value without ever throwing —
|
|
8
|
+
* local copy of `safeErrorMessage` (@meshconnect/uwc-types); this package
|
|
9
|
+
* deliberately stays dependency-free (comlink only); keep the two in sync.
|
|
10
|
+
* A poisoned getter / throwing toString() would otherwise kill the poll loop,
|
|
11
|
+
* and an unbounded message retained as a dedup key is a memory footgun.
|
|
12
|
+
*/
|
|
13
|
+
function safeErrorMessage(error) {
|
|
14
|
+
try {
|
|
15
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
16
|
+
return message.length > 500 ? message.slice(0, 500) : message;
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return 'Unreadable error object';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
6
22
|
export class BridgeChild {
|
|
7
23
|
parentAPI;
|
|
8
24
|
tronInjectedIds;
|
|
@@ -12,11 +28,51 @@ export class BridgeChild {
|
|
|
12
28
|
solanaDone = false;
|
|
13
29
|
tronDone = false;
|
|
14
30
|
tonDone = false;
|
|
31
|
+
// Report a bridge-discovery failure to the consumer (wired to UWC's observer).
|
|
32
|
+
// Optional; default no-op preserves the historical silent behaviour.
|
|
33
|
+
onError;
|
|
34
|
+
// Dedup so the per-tick retry loop can't storm the observer with the same error.
|
|
35
|
+
// Bounded (storm guard, not a permanent ledger): evicted wholesale past the cap
|
|
36
|
+
// so a long session with high-cardinality messages can't grow it without bound.
|
|
37
|
+
// Local copy of `createBoundedDedup` (@meshconnect/uwc-types) — this package
|
|
38
|
+
// deliberately stays dependency-free (comlink only); keep the two in sync.
|
|
39
|
+
reportedBridgeErrors = new Set();
|
|
40
|
+
static MAX_REPORTED_BRIDGE_ERRORS = 100;
|
|
15
41
|
constructor(options) {
|
|
16
42
|
this.tronInjectedIds = options?.tronInjectedIds ?? [];
|
|
17
43
|
this.tonJsBridgeKeys = options?.tonJsBridgeKeys ?? [];
|
|
44
|
+
this.onError = options?.onError;
|
|
18
45
|
this.initializeConnection();
|
|
19
46
|
}
|
|
47
|
+
/**
|
|
48
|
+
* Surface a bridge-discovery failure ONCE per (namespace, message). Benign
|
|
49
|
+
* poll-misses (`BridgeReadTimeout` — the parent isn't live yet, retried next
|
|
50
|
+
* tick) are NOT reported; only real failures (older/unsupported parent,
|
|
51
|
+
* malformed marshaling) reach the observer.
|
|
52
|
+
*/
|
|
53
|
+
reportBridgeError(namespace, err) {
|
|
54
|
+
if (!this.onError)
|
|
55
|
+
return;
|
|
56
|
+
if (err instanceof BridgeReadTimeout)
|
|
57
|
+
return;
|
|
58
|
+
const message = safeErrorMessage(err);
|
|
59
|
+
const key = `${namespace}:${message}`;
|
|
60
|
+
if (this.reportedBridgeErrors.has(key))
|
|
61
|
+
return;
|
|
62
|
+
if (this.reportedBridgeErrors.size >= BridgeChild.MAX_REPORTED_BRIDGE_ERRORS) {
|
|
63
|
+
this.reportedBridgeErrors.clear();
|
|
64
|
+
}
|
|
65
|
+
this.reportedBridgeErrors.add(key);
|
|
66
|
+
try {
|
|
67
|
+
this.onError({ namespace, message });
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
// A throwing consumer sink is invoked from inside the tryMarshal* catch
|
|
71
|
+
// blocks, whose rejection would kill the fire-and-forget poll() loop and
|
|
72
|
+
// silently stop wallet discovery for ALL namespaces. Telemetry must
|
|
73
|
+
// never break the bridge.
|
|
74
|
+
}
|
|
75
|
+
}
|
|
20
76
|
async initializeConnection() {
|
|
21
77
|
if (!window.parent || window.parent === window) {
|
|
22
78
|
return;
|
|
@@ -39,6 +95,57 @@ export class BridgeChild {
|
|
|
39
95
|
// Fetch the parent origin concurrently for TON Connect manifest URL.
|
|
40
96
|
this.syncParentOrigin();
|
|
41
97
|
this.pollForWallets();
|
|
98
|
+
this.installProviderEventSubscriptionGlobals();
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Install window globals the injected EVM/TRON connectors call directly to
|
|
102
|
+
* subscribe to live provider events across the bridge (accountsChanged,
|
|
103
|
+
* chainChanged, disconnect) — mirrors this file's existing convention of
|
|
104
|
+
* exposing bridge capability via `window.*` rather than requiring callers
|
|
105
|
+
* to hold a `BridgeChild` instance reference (see `window.eip6963Wallets`
|
|
106
|
+
* etc. above). Only installed once `this.parentAPI` exists, i.e. only in
|
|
107
|
+
* bridge mode.
|
|
108
|
+
*/
|
|
109
|
+
installProviderEventSubscriptionGlobals() {
|
|
110
|
+
const parentAPI = this.parentAPI;
|
|
111
|
+
if (!parentAPI)
|
|
112
|
+
return;
|
|
113
|
+
window.__uwcSubscribeEip6963ProviderEvent = (uuid, eventName, callback) => {
|
|
114
|
+
const proxiedCallback = Comlink.proxy(callback);
|
|
115
|
+
let unsubscribe = null;
|
|
116
|
+
let torndown = false;
|
|
117
|
+
Promise.resolve(parentAPI.subscribeEip6963ProviderEvent(uuid, eventName, proxiedCallback)).then((unsub) => {
|
|
118
|
+
if (torndown) {
|
|
119
|
+
if (typeof unsub === 'function')
|
|
120
|
+
unsub();
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
unsubscribe = typeof unsub === 'function' ? unsub : null;
|
|
124
|
+
});
|
|
125
|
+
return () => {
|
|
126
|
+
torndown = true;
|
|
127
|
+
if (unsubscribe)
|
|
128
|
+
unsubscribe();
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
window.__uwcSubscribeTronProviderEvent = (injectedId, eventName, callback) => {
|
|
132
|
+
const proxiedCallback = Comlink.proxy(callback);
|
|
133
|
+
let unsubscribe = null;
|
|
134
|
+
let torndown = false;
|
|
135
|
+
Promise.resolve(parentAPI.subscribeTronProviderEvent(injectedId, eventName, proxiedCallback)).then((unsub) => {
|
|
136
|
+
if (torndown) {
|
|
137
|
+
if (typeof unsub === 'function')
|
|
138
|
+
unsub();
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
unsubscribe = typeof unsub === 'function' ? unsub : null;
|
|
142
|
+
});
|
|
143
|
+
return () => {
|
|
144
|
+
torndown = true;
|
|
145
|
+
if (unsubscribe)
|
|
146
|
+
unsubscribe();
|
|
147
|
+
};
|
|
148
|
+
};
|
|
42
149
|
}
|
|
43
150
|
anyWindowWalletsAlreadySet() {
|
|
44
151
|
return Boolean((window.eip6963Wallets && window.eip6963Wallets.length > 0) ||
|
|
@@ -146,8 +253,9 @@ export class BridgeChild {
|
|
|
146
253
|
window.eip6963Wallets = wallets;
|
|
147
254
|
this.eip6963Done = true;
|
|
148
255
|
}
|
|
149
|
-
catch {
|
|
150
|
-
// retry on next tick
|
|
256
|
+
catch (err) {
|
|
257
|
+
// retry on next tick; surface only a real (non-timeout) failure, once.
|
|
258
|
+
this.reportBridgeError('eip155', err);
|
|
151
259
|
}
|
|
152
260
|
}
|
|
153
261
|
async tryMarshalSolana() {
|
|
@@ -176,8 +284,9 @@ export class BridgeChild {
|
|
|
176
284
|
window.walletStandardWallets = wallets;
|
|
177
285
|
this.solanaDone = true;
|
|
178
286
|
}
|
|
179
|
-
catch {
|
|
180
|
-
// retry on next tick
|
|
287
|
+
catch (err) {
|
|
288
|
+
// retry on next tick; surface only a real (non-timeout) failure, once.
|
|
289
|
+
this.reportBridgeError('solana', err);
|
|
181
290
|
}
|
|
182
291
|
}
|
|
183
292
|
async tryMarshalTron() {
|
|
@@ -218,6 +327,8 @@ export class BridgeChild {
|
|
|
218
327
|
if (err instanceof BridgeReadTimeout) {
|
|
219
328
|
return;
|
|
220
329
|
}
|
|
330
|
+
// Older / unsupported parent throwing on the property → no Tron via bridge.
|
|
331
|
+
this.reportBridgeError('tron', err);
|
|
221
332
|
window.tronWallets = [];
|
|
222
333
|
this.tronDone = true;
|
|
223
334
|
return;
|
|
@@ -243,7 +354,8 @@ export class BridgeChild {
|
|
|
243
354
|
window.tronWallets = wallets;
|
|
244
355
|
this.tronDone = true;
|
|
245
356
|
}
|
|
246
|
-
catch {
|
|
357
|
+
catch (err) {
|
|
358
|
+
this.reportBridgeError('tron', err);
|
|
247
359
|
window.tronWallets = [];
|
|
248
360
|
this.tronDone = true;
|
|
249
361
|
}
|
|
@@ -268,6 +380,7 @@ export class BridgeChild {
|
|
|
268
380
|
catch (err) {
|
|
269
381
|
if (err instanceof BridgeReadTimeout)
|
|
270
382
|
return;
|
|
383
|
+
this.reportBridgeError('tvm', err);
|
|
271
384
|
window.tonWallets = [];
|
|
272
385
|
this.tonDone = true;
|
|
273
386
|
return;
|
|
@@ -337,8 +450,9 @@ export class BridgeChild {
|
|
|
337
450
|
}));
|
|
338
451
|
this.tonDone = true;
|
|
339
452
|
}
|
|
340
|
-
catch {
|
|
453
|
+
catch (err) {
|
|
341
454
|
// Parent doesn't support TON — mark done with empty list.
|
|
455
|
+
this.reportBridgeError('tvm', err);
|
|
342
456
|
window.tonWallets = [];
|
|
343
457
|
this.tonDone = true;
|
|
344
458
|
}
|
package/dist/BridgeChild.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BridgeChild.js","sourceRoot":"","sources":["../src/BridgeChild.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BridgeChild.js","sourceRoot":"","sources":["../src/BridgeChild.ts"],"names":[],"mappings":"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"}
|
package/dist/BridgeChild.test.js
CHANGED
|
@@ -919,6 +919,56 @@ describe('BridgeChild', () => {
|
|
|
919
919
|
expect(window.uwcParentOrigin).toBe('https://stake.com');
|
|
920
920
|
});
|
|
921
921
|
});
|
|
922
|
+
describe('bridge provider-event subscription globals', () => {
|
|
923
|
+
it('installs window.__uwcSubscribeEip6963ProviderEvent that forwards to parentAPI', async () => {
|
|
924
|
+
mockWrappedAPI = createMockParentAPI();
|
|
925
|
+
const teardownFn = vi.fn();
|
|
926
|
+
mockWrappedAPI.subscribeEip6963ProviderEvent = vi
|
|
927
|
+
.fn()
|
|
928
|
+
.mockResolvedValue(teardownFn);
|
|
929
|
+
await createBridgeChildInIframe({});
|
|
930
|
+
await vi.advanceTimersByTimeAsync(500);
|
|
931
|
+
expect(typeof window.__uwcSubscribeEip6963ProviderEvent).toBe('function');
|
|
932
|
+
const callback = vi.fn();
|
|
933
|
+
const unsubscribe = window.__uwcSubscribeEip6963ProviderEvent('uuid-1', 'accountsChanged', callback);
|
|
934
|
+
expect(typeof unsubscribe).toBe('function');
|
|
935
|
+
expect(mockWrappedAPI.subscribeEip6963ProviderEvent).toHaveBeenCalledWith('uuid-1', 'accountsChanged', callback);
|
|
936
|
+
await Promise.resolve();
|
|
937
|
+
unsubscribe();
|
|
938
|
+
expect(teardownFn).toHaveBeenCalled();
|
|
939
|
+
});
|
|
940
|
+
it('unsubscribing before the parentAPI round-trip resolves still tears down once it does', async () => {
|
|
941
|
+
mockWrappedAPI = createMockParentAPI();
|
|
942
|
+
const teardownFn = vi.fn();
|
|
943
|
+
let resolveSubscribe;
|
|
944
|
+
mockWrappedAPI.subscribeEip6963ProviderEvent = vi
|
|
945
|
+
.fn()
|
|
946
|
+
.mockReturnValue(new Promise(resolve => {
|
|
947
|
+
resolveSubscribe = resolve;
|
|
948
|
+
}));
|
|
949
|
+
await createBridgeChildInIframe({});
|
|
950
|
+
await vi.advanceTimersByTimeAsync(500);
|
|
951
|
+
const unsubscribe = window.__uwcSubscribeEip6963ProviderEvent('uuid-1', 'accountsChanged', vi.fn());
|
|
952
|
+
// Caller tears down BEFORE the parent responds.
|
|
953
|
+
unsubscribe();
|
|
954
|
+
resolveSubscribe(teardownFn);
|
|
955
|
+
await Promise.resolve();
|
|
956
|
+
expect(teardownFn).toHaveBeenCalled();
|
|
957
|
+
});
|
|
958
|
+
it('installs window.__uwcSubscribeTronProviderEvent that forwards to parentAPI', async () => {
|
|
959
|
+
mockWrappedAPI = createMockParentAPI();
|
|
960
|
+
const teardownFn = vi.fn();
|
|
961
|
+
mockWrappedAPI.subscribeTronProviderEvent = vi
|
|
962
|
+
.fn()
|
|
963
|
+
.mockResolvedValue(teardownFn);
|
|
964
|
+
await createBridgeChildInIframe({});
|
|
965
|
+
await vi.advanceTimersByTimeAsync(500);
|
|
966
|
+
expect(typeof window.__uwcSubscribeTronProviderEvent).toBe('function');
|
|
967
|
+
const callback = vi.fn();
|
|
968
|
+
window.__uwcSubscribeTronProviderEvent('tronLink', 'accountsChanged', callback);
|
|
969
|
+
expect(mockWrappedAPI.subscribeTronProviderEvent).toHaveBeenCalledWith('tronLink', 'accountsChanged', callback);
|
|
970
|
+
});
|
|
971
|
+
});
|
|
922
972
|
describe('checkWallets with all wallet types', () => {
|
|
923
973
|
it('should fetch all wallet types and set on window', async () => {
|
|
924
974
|
const eip6963Wallets = [
|
|
@@ -971,5 +1021,90 @@ describe('BridgeChild', () => {
|
|
|
971
1021
|
expect(window.tronWallets).toEqual([]);
|
|
972
1022
|
});
|
|
973
1023
|
});
|
|
1024
|
+
describe('reportBridgeError (P6)', () => {
|
|
1025
|
+
beforeEach(() => {
|
|
1026
|
+
// No iframe parent → the constructor's initializeConnection returns early,
|
|
1027
|
+
// so we exercise reportBridgeError without spinning the poll loop.
|
|
1028
|
+
Object.defineProperty(window, 'parent', {
|
|
1029
|
+
value: window,
|
|
1030
|
+
writable: true,
|
|
1031
|
+
configurable: true
|
|
1032
|
+
});
|
|
1033
|
+
});
|
|
1034
|
+
afterEach(() => {
|
|
1035
|
+
Object.defineProperty(window, 'parent', {
|
|
1036
|
+
value: originalParent,
|
|
1037
|
+
writable: true,
|
|
1038
|
+
configurable: true
|
|
1039
|
+
});
|
|
1040
|
+
});
|
|
1041
|
+
it('reports a real failure once per (namespace, message); skips benign timeouts', async () => {
|
|
1042
|
+
const { BridgeChild } = await import('./BridgeChild');
|
|
1043
|
+
const { BridgeReadTimeout } = await import('./bridge-timing');
|
|
1044
|
+
const errors = [];
|
|
1045
|
+
const child = new BridgeChild({ onError: e => errors.push(e) });
|
|
1046
|
+
child['reportBridgeError']('eip155', new Error('marshal failed'));
|
|
1047
|
+
child['reportBridgeError']('eip155', new Error('marshal failed')); // dedup
|
|
1048
|
+
child['reportBridgeError']('tvm', new BridgeReadTimeout()); // benign → skip
|
|
1049
|
+
child['reportBridgeError']('tron', new Error('older parent'));
|
|
1050
|
+
expect(errors).toEqual([
|
|
1051
|
+
{ namespace: 'eip155', message: 'marshal failed' },
|
|
1052
|
+
{ namespace: 'tron', message: 'older parent' }
|
|
1053
|
+
]);
|
|
1054
|
+
});
|
|
1055
|
+
it('is a no-op when no onError sink is supplied', async () => {
|
|
1056
|
+
const { BridgeChild } = await import('./BridgeChild');
|
|
1057
|
+
const child = new BridgeChild();
|
|
1058
|
+
expect(() => child['reportBridgeError']('eip155', new Error('x'))).not.toThrow();
|
|
1059
|
+
});
|
|
1060
|
+
it('never throws for an error value with a throwing toString()', async () => {
|
|
1061
|
+
const { BridgeChild } = await import('./BridgeChild');
|
|
1062
|
+
const errors = [];
|
|
1063
|
+
const child = new BridgeChild({ onError: e => errors.push(e) });
|
|
1064
|
+
const evil = {
|
|
1065
|
+
toString() {
|
|
1066
|
+
throw new Error('poisoned toString');
|
|
1067
|
+
}
|
|
1068
|
+
};
|
|
1069
|
+
expect(() => child['reportBridgeError']('eip155', evil)).not.toThrow();
|
|
1070
|
+
expect(errors).toEqual([
|
|
1071
|
+
{ namespace: 'eip155', message: 'Unreadable error object' }
|
|
1072
|
+
]);
|
|
1073
|
+
});
|
|
1074
|
+
it('caps a huge error message so the dedup set stays bounded', async () => {
|
|
1075
|
+
const { BridgeChild } = await import('./BridgeChild');
|
|
1076
|
+
const errors = [];
|
|
1077
|
+
const child = new BridgeChild({ onError: e => errors.push(e) });
|
|
1078
|
+
child['reportBridgeError']('eip155', new Error('x'.repeat(10_000)));
|
|
1079
|
+
expect(errors[0]?.message).toHaveLength(500);
|
|
1080
|
+
});
|
|
1081
|
+
it('swallows a throwing onError sink — telemetry must not kill the poll loop', async () => {
|
|
1082
|
+
const { BridgeChild } = await import('./BridgeChild');
|
|
1083
|
+
const child = new BridgeChild({
|
|
1084
|
+
onError: () => {
|
|
1085
|
+
throw new Error('consumer sink exploded');
|
|
1086
|
+
}
|
|
1087
|
+
});
|
|
1088
|
+
// Invoked from inside the tryMarshal* catch blocks: a propagating throw
|
|
1089
|
+
// would reject the poll loop's Promise.all and stop discovery forever.
|
|
1090
|
+
expect(() => child['reportBridgeError']('eip155', new Error('marshal failed'))).not.toThrow();
|
|
1091
|
+
});
|
|
1092
|
+
it('bounds the dedup set — an evicted (namespace, message) reports again past the cap', async () => {
|
|
1093
|
+
const { BridgeChild } = await import('./BridgeChild');
|
|
1094
|
+
const errors = [];
|
|
1095
|
+
const child = new BridgeChild({ onError: e => errors.push(e) });
|
|
1096
|
+
const cap = BridgeChild['MAX_REPORTED_BRIDGE_ERRORS'];
|
|
1097
|
+
const report = (m) => child['reportBridgeError']('eip155', new Error(m));
|
|
1098
|
+
for (let i = 0; i < cap; i++)
|
|
1099
|
+
report(`err-${i}`);
|
|
1100
|
+
expect(errors).toHaveLength(cap);
|
|
1101
|
+
report('err-0'); // still deduped
|
|
1102
|
+
expect(errors).toHaveLength(cap);
|
|
1103
|
+
report('over-cap'); // trips cap → evict → reports
|
|
1104
|
+
expect(errors).toHaveLength(cap + 1);
|
|
1105
|
+
report('err-0'); // evicted → reports again, proving the set stays bounded
|
|
1106
|
+
expect(errors).toHaveLength(cap + 2);
|
|
1107
|
+
});
|
|
1108
|
+
});
|
|
974
1109
|
});
|
|
975
1110
|
//# sourceMappingURL=BridgeChild.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BridgeChild.test.js","sourceRoot":"","sources":["../src/BridgeChild.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BridgeChild.test.js","sourceRoot":"","sources":["../src/BridgeChild.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/BridgeChild.test.ts
CHANGED
|
@@ -1096,6 +1096,91 @@ describe('BridgeChild', () => {
|
|
|
1096
1096
|
})
|
|
1097
1097
|
})
|
|
1098
1098
|
|
|
1099
|
+
describe('bridge provider-event subscription globals', () => {
|
|
1100
|
+
it('installs window.__uwcSubscribeEip6963ProviderEvent that forwards to parentAPI', async () => {
|
|
1101
|
+
mockWrappedAPI = createMockParentAPI()
|
|
1102
|
+
const teardownFn = vi.fn()
|
|
1103
|
+
;(mockWrappedAPI as any).subscribeEip6963ProviderEvent = vi
|
|
1104
|
+
.fn()
|
|
1105
|
+
.mockResolvedValue(teardownFn)
|
|
1106
|
+
|
|
1107
|
+
await createBridgeChildInIframe({})
|
|
1108
|
+
await vi.advanceTimersByTimeAsync(500)
|
|
1109
|
+
|
|
1110
|
+
expect(typeof (window as any).__uwcSubscribeEip6963ProviderEvent).toBe(
|
|
1111
|
+
'function'
|
|
1112
|
+
)
|
|
1113
|
+
|
|
1114
|
+
const callback = vi.fn()
|
|
1115
|
+
const unsubscribe = (window as any).__uwcSubscribeEip6963ProviderEvent(
|
|
1116
|
+
'uuid-1',
|
|
1117
|
+
'accountsChanged',
|
|
1118
|
+
callback
|
|
1119
|
+
)
|
|
1120
|
+
expect(typeof unsubscribe).toBe('function')
|
|
1121
|
+
expect(
|
|
1122
|
+
(mockWrappedAPI as any).subscribeEip6963ProviderEvent
|
|
1123
|
+
).toHaveBeenCalledWith('uuid-1', 'accountsChanged', callback)
|
|
1124
|
+
|
|
1125
|
+
await Promise.resolve()
|
|
1126
|
+
unsubscribe()
|
|
1127
|
+
expect(teardownFn).toHaveBeenCalled()
|
|
1128
|
+
})
|
|
1129
|
+
|
|
1130
|
+
it('unsubscribing before the parentAPI round-trip resolves still tears down once it does', async () => {
|
|
1131
|
+
mockWrappedAPI = createMockParentAPI()
|
|
1132
|
+
const teardownFn = vi.fn()
|
|
1133
|
+
let resolveSubscribe!: (value: unknown) => void
|
|
1134
|
+
;(mockWrappedAPI as any).subscribeEip6963ProviderEvent = vi
|
|
1135
|
+
.fn()
|
|
1136
|
+
.mockReturnValue(
|
|
1137
|
+
new Promise(resolve => {
|
|
1138
|
+
resolveSubscribe = resolve
|
|
1139
|
+
})
|
|
1140
|
+
)
|
|
1141
|
+
|
|
1142
|
+
await createBridgeChildInIframe({})
|
|
1143
|
+
await vi.advanceTimersByTimeAsync(500)
|
|
1144
|
+
|
|
1145
|
+
const unsubscribe = (window as any).__uwcSubscribeEip6963ProviderEvent(
|
|
1146
|
+
'uuid-1',
|
|
1147
|
+
'accountsChanged',
|
|
1148
|
+
vi.fn()
|
|
1149
|
+
)
|
|
1150
|
+
// Caller tears down BEFORE the parent responds.
|
|
1151
|
+
unsubscribe()
|
|
1152
|
+
resolveSubscribe(teardownFn)
|
|
1153
|
+
await Promise.resolve()
|
|
1154
|
+
|
|
1155
|
+
expect(teardownFn).toHaveBeenCalled()
|
|
1156
|
+
})
|
|
1157
|
+
|
|
1158
|
+
it('installs window.__uwcSubscribeTronProviderEvent that forwards to parentAPI', async () => {
|
|
1159
|
+
mockWrappedAPI = createMockParentAPI()
|
|
1160
|
+
const teardownFn = vi.fn()
|
|
1161
|
+
;(mockWrappedAPI as any).subscribeTronProviderEvent = vi
|
|
1162
|
+
.fn()
|
|
1163
|
+
.mockResolvedValue(teardownFn)
|
|
1164
|
+
|
|
1165
|
+
await createBridgeChildInIframe({})
|
|
1166
|
+
await vi.advanceTimersByTimeAsync(500)
|
|
1167
|
+
|
|
1168
|
+
expect(typeof (window as any).__uwcSubscribeTronProviderEvent).toBe(
|
|
1169
|
+
'function'
|
|
1170
|
+
)
|
|
1171
|
+
|
|
1172
|
+
const callback = vi.fn()
|
|
1173
|
+
;(window as any).__uwcSubscribeTronProviderEvent(
|
|
1174
|
+
'tronLink',
|
|
1175
|
+
'accountsChanged',
|
|
1176
|
+
callback
|
|
1177
|
+
)
|
|
1178
|
+
expect(
|
|
1179
|
+
(mockWrappedAPI as any).subscribeTronProviderEvent
|
|
1180
|
+
).toHaveBeenCalledWith('tronLink', 'accountsChanged', callback)
|
|
1181
|
+
})
|
|
1182
|
+
})
|
|
1183
|
+
|
|
1099
1184
|
describe('checkWallets with all wallet types', () => {
|
|
1100
1185
|
it('should fetch all wallet types and set on window', async () => {
|
|
1101
1186
|
const eip6963Wallets = [
|
|
@@ -1154,4 +1239,108 @@ describe('BridgeChild', () => {
|
|
|
1154
1239
|
expect((window as any).tronWallets).toEqual([])
|
|
1155
1240
|
})
|
|
1156
1241
|
})
|
|
1242
|
+
|
|
1243
|
+
describe('reportBridgeError (P6)', () => {
|
|
1244
|
+
beforeEach(() => {
|
|
1245
|
+
// No iframe parent → the constructor's initializeConnection returns early,
|
|
1246
|
+
// so we exercise reportBridgeError without spinning the poll loop.
|
|
1247
|
+
Object.defineProperty(window, 'parent', {
|
|
1248
|
+
value: window,
|
|
1249
|
+
writable: true,
|
|
1250
|
+
configurable: true
|
|
1251
|
+
})
|
|
1252
|
+
})
|
|
1253
|
+
afterEach(() => {
|
|
1254
|
+
Object.defineProperty(window, 'parent', {
|
|
1255
|
+
value: originalParent,
|
|
1256
|
+
writable: true,
|
|
1257
|
+
configurable: true
|
|
1258
|
+
})
|
|
1259
|
+
})
|
|
1260
|
+
|
|
1261
|
+
it('reports a real failure once per (namespace, message); skips benign timeouts', async () => {
|
|
1262
|
+
const { BridgeChild } = await import('./BridgeChild')
|
|
1263
|
+
const { BridgeReadTimeout } = await import('./bridge-timing')
|
|
1264
|
+
const errors: Array<{ namespace: string; message: string }> = []
|
|
1265
|
+
const child = new BridgeChild({ onError: e => errors.push(e) })
|
|
1266
|
+
|
|
1267
|
+
child['reportBridgeError']('eip155', new Error('marshal failed'))
|
|
1268
|
+
child['reportBridgeError']('eip155', new Error('marshal failed')) // dedup
|
|
1269
|
+
child['reportBridgeError']('tvm', new BridgeReadTimeout()) // benign → skip
|
|
1270
|
+
child['reportBridgeError']('tron', new Error('older parent'))
|
|
1271
|
+
|
|
1272
|
+
expect(errors).toEqual([
|
|
1273
|
+
{ namespace: 'eip155', message: 'marshal failed' },
|
|
1274
|
+
{ namespace: 'tron', message: 'older parent' }
|
|
1275
|
+
])
|
|
1276
|
+
})
|
|
1277
|
+
|
|
1278
|
+
it('is a no-op when no onError sink is supplied', async () => {
|
|
1279
|
+
const { BridgeChild } = await import('./BridgeChild')
|
|
1280
|
+
const child = new BridgeChild()
|
|
1281
|
+
expect(() =>
|
|
1282
|
+
child['reportBridgeError']('eip155', new Error('x'))
|
|
1283
|
+
).not.toThrow()
|
|
1284
|
+
})
|
|
1285
|
+
|
|
1286
|
+
it('never throws for an error value with a throwing toString()', async () => {
|
|
1287
|
+
const { BridgeChild } = await import('./BridgeChild')
|
|
1288
|
+
const errors: Array<{ namespace: string; message: string }> = []
|
|
1289
|
+
const child = new BridgeChild({ onError: e => errors.push(e) })
|
|
1290
|
+
|
|
1291
|
+
const evil = {
|
|
1292
|
+
toString(): string {
|
|
1293
|
+
throw new Error('poisoned toString')
|
|
1294
|
+
}
|
|
1295
|
+
}
|
|
1296
|
+
expect(() => child['reportBridgeError']('eip155', evil)).not.toThrow()
|
|
1297
|
+
expect(errors).toEqual([
|
|
1298
|
+
{ namespace: 'eip155', message: 'Unreadable error object' }
|
|
1299
|
+
])
|
|
1300
|
+
})
|
|
1301
|
+
|
|
1302
|
+
it('caps a huge error message so the dedup set stays bounded', async () => {
|
|
1303
|
+
const { BridgeChild } = await import('./BridgeChild')
|
|
1304
|
+
const errors: Array<{ namespace: string; message: string }> = []
|
|
1305
|
+
const child = new BridgeChild({ onError: e => errors.push(e) })
|
|
1306
|
+
|
|
1307
|
+
child['reportBridgeError']('eip155', new Error('x'.repeat(10_000)))
|
|
1308
|
+
expect(errors[0]?.message).toHaveLength(500)
|
|
1309
|
+
})
|
|
1310
|
+
|
|
1311
|
+
it('swallows a throwing onError sink — telemetry must not kill the poll loop', async () => {
|
|
1312
|
+
const { BridgeChild } = await import('./BridgeChild')
|
|
1313
|
+
const child = new BridgeChild({
|
|
1314
|
+
onError: () => {
|
|
1315
|
+
throw new Error('consumer sink exploded')
|
|
1316
|
+
}
|
|
1317
|
+
})
|
|
1318
|
+
// Invoked from inside the tryMarshal* catch blocks: a propagating throw
|
|
1319
|
+
// would reject the poll loop's Promise.all and stop discovery forever.
|
|
1320
|
+
expect(() =>
|
|
1321
|
+
child['reportBridgeError']('eip155', new Error('marshal failed'))
|
|
1322
|
+
).not.toThrow()
|
|
1323
|
+
})
|
|
1324
|
+
|
|
1325
|
+
it('bounds the dedup set — an evicted (namespace, message) reports again past the cap', async () => {
|
|
1326
|
+
const { BridgeChild } = await import('./BridgeChild')
|
|
1327
|
+
const errors: Array<{ namespace: string; message: string }> = []
|
|
1328
|
+
const child = new BridgeChild({ onError: e => errors.push(e) })
|
|
1329
|
+
const cap = BridgeChild['MAX_REPORTED_BRIDGE_ERRORS']
|
|
1330
|
+
const report = (m: string) =>
|
|
1331
|
+
child['reportBridgeError']('eip155', new Error(m))
|
|
1332
|
+
|
|
1333
|
+
for (let i = 0; i < cap; i++) report(`err-${i}`)
|
|
1334
|
+
expect(errors).toHaveLength(cap)
|
|
1335
|
+
|
|
1336
|
+
report('err-0') // still deduped
|
|
1337
|
+
expect(errors).toHaveLength(cap)
|
|
1338
|
+
|
|
1339
|
+
report('over-cap') // trips cap → evict → reports
|
|
1340
|
+
expect(errors).toHaveLength(cap + 1)
|
|
1341
|
+
|
|
1342
|
+
report('err-0') // evicted → reports again, proving the set stays bounded
|
|
1343
|
+
expect(errors).toHaveLength(cap + 2)
|
|
1344
|
+
})
|
|
1345
|
+
})
|
|
1157
1346
|
})
|
package/src/BridgeChild.ts
CHANGED
|
@@ -23,6 +23,32 @@ interface ParentAPI {
|
|
|
23
23
|
parentOrigin: string
|
|
24
24
|
discoverTronWallets: (injectedIds: string[]) => void
|
|
25
25
|
discoverTonWallets: (jsBridgeKeys: string[]) => void
|
|
26
|
+
subscribeEip6963ProviderEvent: (
|
|
27
|
+
uuid: string,
|
|
28
|
+
eventName: string,
|
|
29
|
+
callback: (payload?: unknown) => void
|
|
30
|
+
) => (() => void) | undefined
|
|
31
|
+
subscribeTronProviderEvent: (
|
|
32
|
+
injectedId: string,
|
|
33
|
+
eventName: string,
|
|
34
|
+
callback: (payload?: unknown) => void
|
|
35
|
+
) => (() => void) | undefined
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Extract a bounded message from any thrown value without ever throwing —
|
|
40
|
+
* local copy of `safeErrorMessage` (@meshconnect/uwc-types); this package
|
|
41
|
+
* deliberately stays dependency-free (comlink only); keep the two in sync.
|
|
42
|
+
* A poisoned getter / throwing toString() would otherwise kill the poll loop,
|
|
43
|
+
* and an unbounded message retained as a dedup key is a memory footgun.
|
|
44
|
+
*/
|
|
45
|
+
function safeErrorMessage(error: unknown): string {
|
|
46
|
+
try {
|
|
47
|
+
const message = error instanceof Error ? error.message : String(error)
|
|
48
|
+
return message.length > 500 ? message.slice(0, 500) : message
|
|
49
|
+
} catch {
|
|
50
|
+
return 'Unreadable error object'
|
|
51
|
+
}
|
|
26
52
|
}
|
|
27
53
|
|
|
28
54
|
export class BridgeChild {
|
|
@@ -36,15 +62,56 @@ export class BridgeChild {
|
|
|
36
62
|
private tronDone = false
|
|
37
63
|
private tonDone = false
|
|
38
64
|
|
|
65
|
+
// Report a bridge-discovery failure to the consumer (wired to UWC's observer).
|
|
66
|
+
// Optional; default no-op preserves the historical silent behaviour.
|
|
67
|
+
private onError?: (info: { namespace: string; message: string }) => void
|
|
68
|
+
// Dedup so the per-tick retry loop can't storm the observer with the same error.
|
|
69
|
+
// Bounded (storm guard, not a permanent ledger): evicted wholesale past the cap
|
|
70
|
+
// so a long session with high-cardinality messages can't grow it without bound.
|
|
71
|
+
// Local copy of `createBoundedDedup` (@meshconnect/uwc-types) — this package
|
|
72
|
+
// deliberately stays dependency-free (comlink only); keep the two in sync.
|
|
73
|
+
private reportedBridgeErrors = new Set<string>()
|
|
74
|
+
private static readonly MAX_REPORTED_BRIDGE_ERRORS = 100
|
|
75
|
+
|
|
39
76
|
constructor(options?: {
|
|
40
77
|
tronInjectedIds?: string[]
|
|
41
78
|
tonJsBridgeKeys?: string[]
|
|
79
|
+
onError?: (info: { namespace: string; message: string }) => void
|
|
42
80
|
}) {
|
|
43
81
|
this.tronInjectedIds = options?.tronInjectedIds ?? []
|
|
44
82
|
this.tonJsBridgeKeys = options?.tonJsBridgeKeys ?? []
|
|
83
|
+
this.onError = options?.onError
|
|
45
84
|
this.initializeConnection()
|
|
46
85
|
}
|
|
47
86
|
|
|
87
|
+
/**
|
|
88
|
+
* Surface a bridge-discovery failure ONCE per (namespace, message). Benign
|
|
89
|
+
* poll-misses (`BridgeReadTimeout` — the parent isn't live yet, retried next
|
|
90
|
+
* tick) are NOT reported; only real failures (older/unsupported parent,
|
|
91
|
+
* malformed marshaling) reach the observer.
|
|
92
|
+
*/
|
|
93
|
+
private reportBridgeError(namespace: string, err: unknown): void {
|
|
94
|
+
if (!this.onError) return
|
|
95
|
+
if (err instanceof BridgeReadTimeout) return
|
|
96
|
+
const message = safeErrorMessage(err)
|
|
97
|
+
const key = `${namespace}:${message}`
|
|
98
|
+
if (this.reportedBridgeErrors.has(key)) return
|
|
99
|
+
if (
|
|
100
|
+
this.reportedBridgeErrors.size >= BridgeChild.MAX_REPORTED_BRIDGE_ERRORS
|
|
101
|
+
) {
|
|
102
|
+
this.reportedBridgeErrors.clear()
|
|
103
|
+
}
|
|
104
|
+
this.reportedBridgeErrors.add(key)
|
|
105
|
+
try {
|
|
106
|
+
this.onError({ namespace, message })
|
|
107
|
+
} catch {
|
|
108
|
+
// A throwing consumer sink is invoked from inside the tryMarshal* catch
|
|
109
|
+
// blocks, whose rejection would kill the fire-and-forget poll() loop and
|
|
110
|
+
// silently stop wallet discovery for ALL namespaces. Telemetry must
|
|
111
|
+
// never break the bridge.
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
48
115
|
private async initializeConnection(): Promise<void> {
|
|
49
116
|
if (!window.parent || window.parent === window) {
|
|
50
117
|
return
|
|
@@ -74,6 +141,75 @@ export class BridgeChild {
|
|
|
74
141
|
this.syncParentOrigin()
|
|
75
142
|
|
|
76
143
|
this.pollForWallets()
|
|
144
|
+
this.installProviderEventSubscriptionGlobals()
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* Install window globals the injected EVM/TRON connectors call directly to
|
|
149
|
+
* subscribe to live provider events across the bridge (accountsChanged,
|
|
150
|
+
* chainChanged, disconnect) — mirrors this file's existing convention of
|
|
151
|
+
* exposing bridge capability via `window.*` rather than requiring callers
|
|
152
|
+
* to hold a `BridgeChild` instance reference (see `window.eip6963Wallets`
|
|
153
|
+
* etc. above). Only installed once `this.parentAPI` exists, i.e. only in
|
|
154
|
+
* bridge mode.
|
|
155
|
+
*/
|
|
156
|
+
private installProviderEventSubscriptionGlobals(): void {
|
|
157
|
+
const parentAPI = this.parentAPI
|
|
158
|
+
if (!parentAPI) return
|
|
159
|
+
|
|
160
|
+
window.__uwcSubscribeEip6963ProviderEvent = (
|
|
161
|
+
uuid: string,
|
|
162
|
+
eventName: string,
|
|
163
|
+
callback: (payload?: unknown) => void
|
|
164
|
+
) => {
|
|
165
|
+
const proxiedCallback = Comlink.proxy(callback)
|
|
166
|
+
let unsubscribe: (() => void) | null = null
|
|
167
|
+
let torndown = false
|
|
168
|
+
Promise.resolve(
|
|
169
|
+
parentAPI.subscribeEip6963ProviderEvent(
|
|
170
|
+
uuid,
|
|
171
|
+
eventName,
|
|
172
|
+
proxiedCallback
|
|
173
|
+
)
|
|
174
|
+
).then((unsub: unknown) => {
|
|
175
|
+
if (torndown) {
|
|
176
|
+
if (typeof unsub === 'function') unsub()
|
|
177
|
+
return
|
|
178
|
+
}
|
|
179
|
+
unsubscribe = typeof unsub === 'function' ? unsub : null
|
|
180
|
+
})
|
|
181
|
+
return () => {
|
|
182
|
+
torndown = true
|
|
183
|
+
if (unsubscribe) unsubscribe()
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
window.__uwcSubscribeTronProviderEvent = (
|
|
188
|
+
injectedId: string,
|
|
189
|
+
eventName: string,
|
|
190
|
+
callback: (payload?: unknown) => void
|
|
191
|
+
) => {
|
|
192
|
+
const proxiedCallback = Comlink.proxy(callback)
|
|
193
|
+
let unsubscribe: (() => void) | null = null
|
|
194
|
+
let torndown = false
|
|
195
|
+
Promise.resolve(
|
|
196
|
+
parentAPI.subscribeTronProviderEvent(
|
|
197
|
+
injectedId,
|
|
198
|
+
eventName,
|
|
199
|
+
proxiedCallback
|
|
200
|
+
)
|
|
201
|
+
).then((unsub: unknown) => {
|
|
202
|
+
if (torndown) {
|
|
203
|
+
if (typeof unsub === 'function') unsub()
|
|
204
|
+
return
|
|
205
|
+
}
|
|
206
|
+
unsubscribe = typeof unsub === 'function' ? unsub : null
|
|
207
|
+
})
|
|
208
|
+
return () => {
|
|
209
|
+
torndown = true
|
|
210
|
+
if (unsubscribe) unsubscribe()
|
|
211
|
+
}
|
|
212
|
+
}
|
|
77
213
|
}
|
|
78
214
|
|
|
79
215
|
private anyWindowWalletsAlreadySet(): boolean {
|
|
@@ -189,8 +325,9 @@ export class BridgeChild {
|
|
|
189
325
|
}
|
|
190
326
|
window.eip6963Wallets = wallets
|
|
191
327
|
this.eip6963Done = true
|
|
192
|
-
} catch {
|
|
193
|
-
// retry on next tick
|
|
328
|
+
} catch (err) {
|
|
329
|
+
// retry on next tick; surface only a real (non-timeout) failure, once.
|
|
330
|
+
this.reportBridgeError('eip155', err)
|
|
194
331
|
}
|
|
195
332
|
}
|
|
196
333
|
|
|
@@ -222,8 +359,9 @@ export class BridgeChild {
|
|
|
222
359
|
}
|
|
223
360
|
window.walletStandardWallets = wallets
|
|
224
361
|
this.solanaDone = true
|
|
225
|
-
} catch {
|
|
226
|
-
// retry on next tick
|
|
362
|
+
} catch (err) {
|
|
363
|
+
// retry on next tick; surface only a real (non-timeout) failure, once.
|
|
364
|
+
this.reportBridgeError('solana', err)
|
|
227
365
|
}
|
|
228
366
|
}
|
|
229
367
|
|
|
@@ -264,6 +402,8 @@ export class BridgeChild {
|
|
|
264
402
|
if (err instanceof BridgeReadTimeout) {
|
|
265
403
|
return
|
|
266
404
|
}
|
|
405
|
+
// Older / unsupported parent throwing on the property → no Tron via bridge.
|
|
406
|
+
this.reportBridgeError('tron', err)
|
|
267
407
|
window.tronWallets = []
|
|
268
408
|
this.tronDone = true
|
|
269
409
|
return
|
|
@@ -291,7 +431,8 @@ export class BridgeChild {
|
|
|
291
431
|
}
|
|
292
432
|
window.tronWallets = wallets
|
|
293
433
|
this.tronDone = true
|
|
294
|
-
} catch {
|
|
434
|
+
} catch (err) {
|
|
435
|
+
this.reportBridgeError('tron', err)
|
|
295
436
|
window.tronWallets = []
|
|
296
437
|
this.tronDone = true
|
|
297
438
|
}
|
|
@@ -315,6 +456,7 @@ export class BridgeChild {
|
|
|
315
456
|
ready = await raceParentRead(this.parentAPI.tonWalletsReady)
|
|
316
457
|
} catch (err) {
|
|
317
458
|
if (err instanceof BridgeReadTimeout) return
|
|
459
|
+
this.reportBridgeError('tvm', err)
|
|
318
460
|
window.tonWallets = []
|
|
319
461
|
this.tonDone = true
|
|
320
462
|
return
|
|
@@ -396,8 +538,9 @@ export class BridgeChild {
|
|
|
396
538
|
)
|
|
397
539
|
|
|
398
540
|
this.tonDone = true
|
|
399
|
-
} catch {
|
|
541
|
+
} catch (err) {
|
|
400
542
|
// Parent doesn't support TON — mark done with empty list.
|
|
543
|
+
this.reportBridgeError('tvm', err)
|
|
401
544
|
window.tonWallets = []
|
|
402
545
|
this.tonDone = true
|
|
403
546
|
}
|