@meshconnect/uwc-bridge-child 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"BridgeChild.d.ts","sourceRoot":"","sources":["../src/BridgeChild.ts"],"names":[],"mappings":"AAgBA,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAAC,CAA2B;IAC7C,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,sBAAsB,CAAQ;gBAE1B,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;YAKtC,oBAAoB;YAiBpB,cAAc;YAkDd,YAAY;CAmF3B"}
1
+ {"version":3,"file":"BridgeChild.d.ts","sourceRoot":"","sources":["../src/BridgeChild.ts"],"names":[],"mappings":"AAgBA,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAAC,CAA2B;IAC7C,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,sBAAsB,CAAQ;gBAE1B,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;YAKtC,oBAAoB;YAiBpB,cAAc;YAkDd,YAAY;CAwF3B"}
@@ -60,13 +60,10 @@ export class BridgeChild {
60
60
  }
61
61
  async checkWallets() {
62
62
  try {
63
- //start tron walletdiscovery with provided IDs
64
- await this.parentAPI?.discoverTronWallets(this.tronInjectedIds);
65
- // Check if EIP6963, Tron and Wallet Standard wallets are ready
63
+ // Check if EIP6963 and Wallet Standard wallets are ready
66
64
  const eip6963Ready = await this.parentAPI?.eip6963WalletsReady;
67
65
  const walletStandardReady = await this.parentAPI?.walletStandardWalletsReady;
68
- const tronDiscoveryReady = await this.parentAPI?.tronWalletsReady;
69
- if (!eip6963Ready || !walletStandardReady || !tronDiscoveryReady) {
66
+ if (!eip6963Ready || !walletStandardReady) {
70
67
  return 'continue';
71
68
  }
72
69
  // Get EIP6963 wallets
@@ -99,21 +96,33 @@ export class BridgeChild {
99
96
  walletStandardWallets.push(wallet);
100
97
  }
101
98
  }
102
- // Get Tron wallets - create local wrapper objects because Comlink proxies
103
- // don't support typeof checks, optional chaining, or sync property access
104
- const availableTronWallets = await this.parentAPI.tronWallets.length;
105
- const tronWallets = [];
106
- if (availableTronWallets > 0) {
107
- for (let index = 0; index < availableTronWallets; index++) {
108
- // const providerProxy = this.parentAPI.tronWallets[index].provider
109
- const wallet = {
110
- uuid: await this.parentAPI.tronWallets[index].uuid,
111
- name: await this.parentAPI.tronWallets[index].name,
112
- injectedId: await this.parentAPI.tronWallets[index].injectedId,
113
- provider: this.parentAPI.tronWallets[index].provider
114
- };
115
- tronWallets.push(wallet);
99
+ // Get Tron wallets - wrapped in try/catch for backward compatibility
100
+ // with older BridgeParent versions that don't have Tron support
101
+ let tronWallets = [];
102
+ try {
103
+ if (!this.tronDiscoveryTriggered) {
104
+ await this.parentAPI?.discoverTronWallets?.(this.tronInjectedIds);
105
+ this.tronDiscoveryTriggered = true;
116
106
  }
107
+ const tronReady = await this.parentAPI?.tronWalletsReady;
108
+ if (tronReady) {
109
+ const availableTronWallets = await this.parentAPI.tronWallets.length;
110
+ if (availableTronWallets > 0) {
111
+ for (let index = 0; index < availableTronWallets; index++) {
112
+ const wallet = {
113
+ uuid: await this.parentAPI.tronWallets[index].uuid,
114
+ name: await this.parentAPI.tronWallets[index].name,
115
+ injectedId: await this.parentAPI.tronWallets[index].injectedId,
116
+ provider: this.parentAPI.tronWallets[index].provider
117
+ };
118
+ tronWallets.push(wallet);
119
+ }
120
+ }
121
+ }
122
+ }
123
+ catch {
124
+ // Parent doesn't support Tron - use empty array
125
+ tronWallets = [];
117
126
  }
118
127
  // Set all wallet types on window
119
128
  window.eip6963Wallets = eip6963Wallets;
@@ -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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"}
@@ -225,6 +225,120 @@ describe('BridgeChild', () => {
225
225
  expect(window.eip6963Wallets).toBeDefined();
226
226
  });
227
227
  });
228
+ describe('backward compatibility with older BridgeParent (no Tron)', () => {
229
+ it('should still set EVM and Solana wallets when parent has no Tron support', async () => {
230
+ const eip6963Wallets = [
231
+ {
232
+ uuid: 'mm-1',
233
+ name: 'MetaMask',
234
+ icon: 'mm-icon',
235
+ rdns: 'io.metamask',
236
+ provider: { request: vi.fn() }
237
+ }
238
+ ];
239
+ const walletStandardWallets = [
240
+ {
241
+ uuid: 'phantom-1',
242
+ name: 'Phantom',
243
+ chains: ['solana:mainnet'],
244
+ features: ['standard:connect'],
245
+ adapter: {}
246
+ }
247
+ ];
248
+ // Simulate old parent that throws on any Tron property access
249
+ const oldParentAPI = {
250
+ eip6963WalletsReady: true,
251
+ walletStandardWalletsReady: true,
252
+ eip6963Wallets,
253
+ walletStandardWallets,
254
+ get tronWalletsReady() {
255
+ throw new Error('tronWalletsReady is not defined');
256
+ },
257
+ get tronWallets() {
258
+ throw new Error('tronWallets is not defined');
259
+ },
260
+ get discoverTronWallets() {
261
+ return undefined;
262
+ }
263
+ };
264
+ mockWrappedAPI = oldParentAPI;
265
+ await createBridgeChildInIframe({ tronInjectedIds: ['tronLink'] });
266
+ await vi.advanceTimersByTimeAsync(500);
267
+ // EVM and Solana should still be set
268
+ expect(window.eip6963Wallets).toHaveLength(1);
269
+ expect(window.eip6963Wallets[0].uuid).toBe('mm-1');
270
+ expect(window.walletStandardWallets).toHaveLength(1);
271
+ expect(window.walletStandardWallets[0].name).toBe('Phantom');
272
+ // Tron should fall back to empty array
273
+ expect(window.tronWallets).toEqual([]);
274
+ });
275
+ it('should set tron to empty array when discoverTronWallets throws', async () => {
276
+ const apiWithBrokenDiscover = {
277
+ eip6963WalletsReady: true,
278
+ walletStandardWalletsReady: true,
279
+ eip6963Wallets: [],
280
+ walletStandardWallets: [],
281
+ tronWalletsReady: true,
282
+ tronWallets: [],
283
+ discoverTronWallets: vi.fn(() => {
284
+ throw new Error('Method not supported');
285
+ })
286
+ };
287
+ mockWrappedAPI = apiWithBrokenDiscover;
288
+ await createBridgeChildInIframe({ tronInjectedIds: ['tronLink'] });
289
+ await vi.advanceTimersByTimeAsync(500);
290
+ expect(window.eip6963Wallets).toEqual([]);
291
+ expect(window.walletStandardWallets).toEqual([]);
292
+ expect(window.tronWallets).toEqual([]);
293
+ });
294
+ it('should not block on tron when tronWalletsReady is false', async () => {
295
+ const eip6963Wallets = [
296
+ {
297
+ uuid: 'mm-1',
298
+ name: 'MetaMask',
299
+ icon: 'mm-icon',
300
+ rdns: 'io.metamask',
301
+ provider: { request: vi.fn() }
302
+ }
303
+ ];
304
+ mockWrappedAPI = createMockParentAPI({
305
+ eip6963Wallets,
306
+ tronReady: false,
307
+ tronWallets: []
308
+ });
309
+ await createBridgeChildInIframe();
310
+ await vi.advanceTimersByTimeAsync(500);
311
+ // EVM and Solana should be set even though tron is not ready
312
+ expect(window.eip6963Wallets).toHaveLength(1);
313
+ expect(window.walletStandardWallets).toEqual([]);
314
+ // Tron should be empty (not ready, so inner block skipped)
315
+ expect(window.tronWallets).toEqual([]);
316
+ });
317
+ it('should only call discoverTronWallets once across multiple polls', async () => {
318
+ // First poll: eip6963 not ready, so returns 'continue'
319
+ // Second poll: eip6963 ready, completes
320
+ let callCount = 0;
321
+ const progressiveAPI = {
322
+ get eip6963WalletsReady() {
323
+ callCount++;
324
+ return callCount > 1;
325
+ },
326
+ walletStandardWalletsReady: true,
327
+ tronWalletsReady: true,
328
+ eip6963Wallets: [],
329
+ walletStandardWallets: [],
330
+ tronWallets: [],
331
+ discoverTronWallets: vi.fn()
332
+ };
333
+ mockWrappedAPI = progressiveAPI;
334
+ await createBridgeChildInIframe({
335
+ tronInjectedIds: ['tronLink']
336
+ });
337
+ await vi.advanceTimersByTimeAsync(1000);
338
+ // discoverTronWallets should only be called once due to tronDiscoveryTriggered flag
339
+ expect(progressiveAPI.discoverTronWallets).toHaveBeenCalledTimes(1);
340
+ });
341
+ });
228
342
  describe('checkWallets with all wallet types', () => {
229
343
  it('should fetch all wallet types and set on window', async () => {
230
344
  const eip6963Wallets = [
@@ -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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshconnect/uwc-bridge-child",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Child iframe bridge for Universal Wallet Connector",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -291,6 +291,137 @@ describe('BridgeChild', () => {
291
291
  })
292
292
  })
293
293
 
294
+ describe('backward compatibility with older BridgeParent (no Tron)', () => {
295
+ it('should still set EVM and Solana wallets when parent has no Tron support', async () => {
296
+ const eip6963Wallets = [
297
+ {
298
+ uuid: 'mm-1',
299
+ name: 'MetaMask',
300
+ icon: 'mm-icon',
301
+ rdns: 'io.metamask',
302
+ provider: { request: vi.fn() }
303
+ }
304
+ ]
305
+ const walletStandardWallets = [
306
+ {
307
+ uuid: 'phantom-1',
308
+ name: 'Phantom',
309
+ chains: ['solana:mainnet'],
310
+ features: ['standard:connect'],
311
+ adapter: {}
312
+ }
313
+ ]
314
+
315
+ // Simulate old parent that throws on any Tron property access
316
+ const oldParentAPI = {
317
+ eip6963WalletsReady: true,
318
+ walletStandardWalletsReady: true,
319
+ eip6963Wallets,
320
+ walletStandardWallets,
321
+ get tronWalletsReady(): boolean {
322
+ throw new Error('tronWalletsReady is not defined')
323
+ },
324
+ get tronWallets(): unknown[] {
325
+ throw new Error('tronWallets is not defined')
326
+ },
327
+ get discoverTronWallets() {
328
+ return undefined
329
+ }
330
+ }
331
+
332
+ mockWrappedAPI = oldParentAPI as any
333
+
334
+ await createBridgeChildInIframe({ tronInjectedIds: ['tronLink'] })
335
+ await vi.advanceTimersByTimeAsync(500)
336
+
337
+ // EVM and Solana should still be set
338
+ expect((window as any).eip6963Wallets).toHaveLength(1)
339
+ expect((window as any).eip6963Wallets[0].uuid).toBe('mm-1')
340
+ expect((window as any).walletStandardWallets).toHaveLength(1)
341
+ expect((window as any).walletStandardWallets[0].name).toBe('Phantom')
342
+ // Tron should fall back to empty array
343
+ expect((window as any).tronWallets).toEqual([])
344
+ })
345
+
346
+ it('should set tron to empty array when discoverTronWallets throws', async () => {
347
+ const apiWithBrokenDiscover = {
348
+ eip6963WalletsReady: true,
349
+ walletStandardWalletsReady: true,
350
+ eip6963Wallets: [],
351
+ walletStandardWallets: [],
352
+ tronWalletsReady: true,
353
+ tronWallets: [],
354
+ discoverTronWallets: vi.fn(() => {
355
+ throw new Error('Method not supported')
356
+ })
357
+ }
358
+
359
+ mockWrappedAPI = apiWithBrokenDiscover as any
360
+
361
+ await createBridgeChildInIframe({ tronInjectedIds: ['tronLink'] })
362
+ await vi.advanceTimersByTimeAsync(500)
363
+
364
+ expect((window as any).eip6963Wallets).toEqual([])
365
+ expect((window as any).walletStandardWallets).toEqual([])
366
+ expect((window as any).tronWallets).toEqual([])
367
+ })
368
+
369
+ it('should not block on tron when tronWalletsReady is false', async () => {
370
+ const eip6963Wallets = [
371
+ {
372
+ uuid: 'mm-1',
373
+ name: 'MetaMask',
374
+ icon: 'mm-icon',
375
+ rdns: 'io.metamask',
376
+ provider: { request: vi.fn() }
377
+ }
378
+ ]
379
+
380
+ mockWrappedAPI = createMockParentAPI({
381
+ eip6963Wallets,
382
+ tronReady: false,
383
+ tronWallets: []
384
+ })
385
+
386
+ await createBridgeChildInIframe()
387
+ await vi.advanceTimersByTimeAsync(500)
388
+
389
+ // EVM and Solana should be set even though tron is not ready
390
+ expect((window as any).eip6963Wallets).toHaveLength(1)
391
+ expect((window as any).walletStandardWallets).toEqual([])
392
+ // Tron should be empty (not ready, so inner block skipped)
393
+ expect((window as any).tronWallets).toEqual([])
394
+ })
395
+
396
+ it('should only call discoverTronWallets once across multiple polls', async () => {
397
+ // First poll: eip6963 not ready, so returns 'continue'
398
+ // Second poll: eip6963 ready, completes
399
+ let callCount = 0
400
+ const progressiveAPI = {
401
+ get eip6963WalletsReady() {
402
+ callCount++
403
+ return callCount > 1
404
+ },
405
+ walletStandardWalletsReady: true,
406
+ tronWalletsReady: true,
407
+ eip6963Wallets: [],
408
+ walletStandardWallets: [],
409
+ tronWallets: [],
410
+ discoverTronWallets: vi.fn()
411
+ }
412
+
413
+ mockWrappedAPI = progressiveAPI as any
414
+
415
+ await createBridgeChildInIframe({
416
+ tronInjectedIds: ['tronLink']
417
+ })
418
+ await vi.advanceTimersByTimeAsync(1000)
419
+
420
+ // discoverTronWallets should only be called once due to tronDiscoveryTriggered flag
421
+ expect(progressiveAPI.discoverTronWallets).toHaveBeenCalledTimes(1)
422
+ })
423
+ })
424
+
294
425
  describe('checkWallets with all wallet types', () => {
295
426
  it('should fetch all wallet types and set on window', async () => {
296
427
  const eip6963Wallets = [
@@ -93,16 +93,12 @@ export class BridgeChild {
93
93
 
94
94
  private async checkWallets(): Promise<string> {
95
95
  try {
96
- //start tron walletdiscovery with provided IDs
97
- await this.parentAPI?.discoverTronWallets(this.tronInjectedIds)
98
-
99
- // Check if EIP6963, Tron and Wallet Standard wallets are ready
96
+ // Check if EIP6963 and Wallet Standard wallets are ready
100
97
  const eip6963Ready = await this.parentAPI?.eip6963WalletsReady
101
98
  const walletStandardReady =
102
99
  await this.parentAPI?.walletStandardWalletsReady
103
- const tronDiscoveryReady = await this.parentAPI?.tronWalletsReady
104
100
 
105
- if (!eip6963Ready || !walletStandardReady || !tronDiscoveryReady) {
101
+ if (!eip6963Ready || !walletStandardReady) {
106
102
  return 'continue'
107
103
  }
108
104
 
@@ -143,25 +139,34 @@ export class BridgeChild {
143
139
  }
144
140
  }
145
141
 
146
- // Get Tron wallets - create local wrapper objects because Comlink proxies
147
- // don't support typeof checks, optional chaining, or sync property access
148
- const availableTronWallets = await this.parentAPI.tronWallets.length
149
-
150
- const tronWallets = []
151
-
152
- if (availableTronWallets > 0) {
153
- for (let index = 0; index < availableTronWallets; index++) {
154
- // const providerProxy = this.parentAPI.tronWallets[index].provider
142
+ // Get Tron wallets - wrapped in try/catch for backward compatibility
143
+ // with older BridgeParent versions that don't have Tron support
144
+ let tronWallets: unknown[] = []
145
+ try {
146
+ if (!this.tronDiscoveryTriggered) {
147
+ await this.parentAPI?.discoverTronWallets?.(this.tronInjectedIds)
148
+ this.tronDiscoveryTriggered = true
149
+ }
155
150
 
156
- const wallet = {
157
- uuid: await this.parentAPI.tronWallets[index].uuid,
158
- name: await this.parentAPI.tronWallets[index].name,
159
- injectedId: await this.parentAPI.tronWallets[index].injectedId,
160
- provider: this.parentAPI.tronWallets[index].provider
151
+ const tronReady = await this.parentAPI?.tronWalletsReady
152
+ if (tronReady) {
153
+ const availableTronWallets = await this.parentAPI.tronWallets.length
154
+
155
+ if (availableTronWallets > 0) {
156
+ for (let index = 0; index < availableTronWallets; index++) {
157
+ const wallet = {
158
+ uuid: await this.parentAPI.tronWallets[index].uuid,
159
+ name: await this.parentAPI.tronWallets[index].name,
160
+ injectedId: await this.parentAPI.tronWallets[index].injectedId,
161
+ provider: this.parentAPI.tronWallets[index].provider
162
+ }
163
+ tronWallets.push(wallet)
164
+ }
161
165
  }
162
-
163
- tronWallets.push(wallet)
164
166
  }
167
+ } catch {
168
+ // Parent doesn't support Tron - use empty array
169
+ tronWallets = []
165
170
  }
166
171
 
167
172
  // Set all wallet types on window