@meshconnect/uwc-core 1.0.0 → 1.0.1-snapshot.c7e65ce

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 (76) hide show
  1. package/README.md +211 -66
  2. package/dist/events.d.ts +69 -2
  3. package/dist/events.d.ts.map +1 -1
  4. package/dist/events.js +40 -1
  5. package/dist/events.js.map +1 -1
  6. package/dist/index.d.ts +2 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +1 -0
  9. package/dist/index.js.map +1 -1
  10. package/dist/logger/create-logger.d.ts +32 -0
  11. package/dist/logger/create-logger.d.ts.map +1 -0
  12. package/dist/logger/create-logger.js +69 -0
  13. package/dist/logger/create-logger.js.map +1 -0
  14. package/dist/managers/event-manager.d.ts.map +1 -1
  15. package/dist/managers/event-manager.js +5 -1
  16. package/dist/managers/event-manager.js.map +1 -1
  17. package/dist/observability/connect-observer.d.ts +22 -0
  18. package/dist/observability/connect-observer.d.ts.map +1 -0
  19. package/dist/observability/connect-observer.js +60 -0
  20. package/dist/observability/connect-observer.js.map +1 -0
  21. package/dist/observability/instrument-handoff.d.ts +39 -0
  22. package/dist/observability/instrument-handoff.d.ts.map +1 -0
  23. package/dist/observability/instrument-handoff.js +86 -0
  24. package/dist/observability/instrument-handoff.js.map +1 -0
  25. package/dist/observability/scrub.d.ts +30 -0
  26. package/dist/observability/scrub.d.ts.map +1 -0
  27. package/dist/observability/scrub.js +135 -0
  28. package/dist/observability/scrub.js.map +1 -0
  29. package/dist/observability/telemetry.d.ts +77 -0
  30. package/dist/observability/telemetry.d.ts.map +1 -0
  31. package/dist/observability/telemetry.js +138 -0
  32. package/dist/observability/telemetry.js.map +1 -0
  33. package/dist/services/connection-service.d.ts +2 -1
  34. package/dist/services/connection-service.d.ts.map +1 -1
  35. package/dist/services/connection-service.js +35 -15
  36. package/dist/services/connection-service.js.map +1 -1
  37. package/dist/services/network-switch-service.d.ts +2 -1
  38. package/dist/services/network-switch-service.d.ts.map +1 -1
  39. package/dist/services/network-switch-service.js +33 -15
  40. package/dist/services/network-switch-service.js.map +1 -1
  41. package/dist/universal-wallet-connector.d.ts +51 -2
  42. package/dist/universal-wallet-connector.d.ts.map +1 -1
  43. package/dist/universal-wallet-connector.js +163 -61
  44. package/dist/universal-wallet-connector.js.map +1 -1
  45. package/dist/utils/id.d.ts +2 -0
  46. package/dist/utils/id.d.ts.map +1 -0
  47. package/dist/utils/id.js +41 -0
  48. package/dist/utils/id.js.map +1 -0
  49. package/dist/utils/to-wallet-error.d.ts +16 -0
  50. package/dist/utils/to-wallet-error.d.ts.map +1 -0
  51. package/dist/utils/to-wallet-error.js +33 -0
  52. package/dist/utils/to-wallet-error.js.map +1 -0
  53. package/package.json +5 -5
  54. package/src/events.ts +114 -1
  55. package/src/index.ts +6 -0
  56. package/src/logger/create-logger.test.ts +111 -0
  57. package/src/logger/create-logger.ts +101 -0
  58. package/src/managers/event-manager.test.ts +25 -0
  59. package/src/managers/event-manager.ts +5 -1
  60. package/src/observability/connect-observer.test.ts +100 -0
  61. package/src/observability/connect-observer.ts +71 -0
  62. package/src/observability/instrument-handoff.test.ts +150 -0
  63. package/src/observability/instrument-handoff.ts +122 -0
  64. package/src/observability/scrub.test.ts +109 -0
  65. package/src/observability/scrub.ts +142 -0
  66. package/src/observability/telemetry.test.ts +134 -0
  67. package/src/observability/telemetry.ts +211 -0
  68. package/src/services/connection-service.test.ts +66 -1
  69. package/src/services/connection-service.ts +54 -32
  70. package/src/services/network-switch-service.test.ts +51 -1
  71. package/src/services/network-switch-service.ts +43 -23
  72. package/src/universal-wallet-connector.observability.test.ts +265 -0
  73. package/src/universal-wallet-connector.ts +244 -71
  74. package/src/utils/id.test.ts +15 -0
  75. package/src/utils/id.ts +48 -0
  76. package/src/utils/to-wallet-error.ts +36 -0
@@ -1,4 +1,3 @@
1
- import { WalletConnectorError } from '@meshconnect/uwc-types';
2
1
  import { InjectedConnector } from '@meshconnect/uwc-injected-connector';
3
2
  import { WalletConnectConnector } from '@meshconnect/uwc-wallet-connect-connector';
4
3
  import { TonConnectConnector } from '@meshconnect/uwc-ton-connector';
@@ -10,6 +9,13 @@ import { SignatureService } from './services/signature-service';
10
9
  import { TransactionService } from './services/transaction-service';
11
10
  import { WalletCapabilitiesService } from './services/wallet-capabilities-service';
12
11
  import { createNetworkRpcMap } from './utils/network-rpc-utils';
12
+ import { generateId } from './utils/id';
13
+ import { toWalletError, isAbortError } from './utils/to-wallet-error';
14
+ import { createLogger } from './logger/create-logger';
15
+ import { connectObserver } from './observability/connect-observer';
16
+ import { instrumentHandoff } from './observability/instrument-handoff';
17
+ /** Default observational wallet-response deadline (ms). Matches TON's 60s. */
18
+ const DEFAULT_WALLET_RESPONSE_TIMEOUT_MS = 60_000;
13
19
  export class UniversalWalletConnector {
14
20
  static instance = null;
15
21
  static instanceCount = 0;
@@ -27,6 +33,12 @@ export class UniversalWalletConnector {
27
33
  usingIntegratedBrowser;
28
34
  detectionComplete = false;
29
35
  networkRpcMap;
36
+ logger;
37
+ /** Per-instance correlation id stamped on every telemetry record. */
38
+ sdkSessionId = generateId();
39
+ walletResponseTimeoutMs;
40
+ /** Tears down the observer subscriptions; set only when an observer is wired. */
41
+ observerTeardown;
30
42
  /**
31
43
  * Recommended entry point: returns the shared instance, creating it on the
32
44
  * first call. Subsequent calls ignore the `config` argument — use
@@ -72,12 +84,41 @@ export class UniversalWalletConnector {
72
84
  config = networksOrConfig;
73
85
  }
74
86
  const { networks, wallets: configuredWallets = [], usingIntegratedBrowser: configuredUsingIntegratedBrowser = false, walletConnectConfig: configuredWalletConnectConfig, tonConnectConfig: configuredTonConnectConfig, tronConnectorConfig: configuredTronConnectorConfig } = config;
87
+ // Observability seam — wire the event bus, logger, and (optional) observer
88
+ // FIRST so even construction-time logs/events are captured. `sdkSessionId` is
89
+ // already assigned as a field initializer.
90
+ this.eventManager = new EventManager();
91
+ this.walletResponseTimeoutMs =
92
+ config.walletResponseTimeoutMs ?? DEFAULT_WALLET_RESPONSE_TIMEOUT_MS;
93
+ this.logger = createLogger({
94
+ level: config.logLevel ?? 'warn',
95
+ sink: config.logger,
96
+ // Pre-gate tap → typed `log` event → observer.onLog. Fires for all levels
97
+ // regardless of the console threshold.
98
+ onLog: (level, message, args) => this.eventManager.emit('log', { level, message, args })
99
+ });
100
+ if (config.observer) {
101
+ // Resolve the correlation id per-event. A consumer can align it to their
102
+ // own session key (e.g. link_sess_id); the generated `sdkSessionId` is the
103
+ // always-available fallback if none is supplied or a getter misbehaves.
104
+ const cid = config.correlationId;
105
+ const getCorrelationId = typeof cid === 'function'
106
+ ? () => {
107
+ try {
108
+ return cid() || this.sdkSessionId;
109
+ }
110
+ catch {
111
+ return this.sdkSessionId;
112
+ }
113
+ }
114
+ : () => cid ?? this.sdkSessionId;
115
+ this.observerTeardown = connectObserver(this.eventManager, config.observer, getCorrelationId);
116
+ }
75
117
  // Track instance creation and warn on duplicates
76
118
  UniversalWalletConnector.instanceCount++;
77
119
  if (UniversalWalletConnector.instanceCount > 1 &&
78
120
  !UniversalWalletConnector.hasWarnedAboutMultipleInstances) {
79
- // eslint-disable-next-line no-console
80
- console.error(`⚠️ WARNING: Multiple instances of UniversalWalletConnector detected (${UniversalWalletConnector.instanceCount} instances). ` +
121
+ this.logger.error(`⚠️ WARNING: Multiple instances of UniversalWalletConnector detected (${UniversalWalletConnector.instanceCount} instances). ` +
81
122
  'This can lead to state inconsistencies and unexpected behavior. ' +
82
123
  'Please ensure you create only one instance and reuse it throughout your application. ' +
83
124
  'Use UniversalWalletConnector.getInstance(config) instead of `new` to guarantee a single instance. ' +
@@ -110,9 +151,8 @@ export class UniversalWalletConnector {
110
151
  this.connectors.set('walletConnect', new WalletConnectConnector(configuredWalletConnectConfig, this.networkRpcMap));
111
152
  }
112
153
  this.sessionManager = new SessionManager();
113
- this.eventManager = new EventManager();
114
- this.connectionService = new ConnectionService(networks, this.wallets, this.sessionManager, this.connectors, configuredUsingIntegratedBrowser, this.eventManager);
115
- this.networkSwitchService = new NetworkSwitchService(networks, this.sessionManager, this.connectors, configuredUsingIntegratedBrowser, this.eventManager);
154
+ this.connectionService = new ConnectionService(networks, this.wallets, this.sessionManager, this.connectors, configuredUsingIntegratedBrowser, this.eventManager, this.walletResponseTimeoutMs);
155
+ this.networkSwitchService = new NetworkSwitchService(networks, this.sessionManager, this.connectors, configuredUsingIntegratedBrowser, this.eventManager, this.walletResponseTimeoutMs);
116
156
  this.signatureService = new SignatureService(this.sessionManager, this.connectors);
117
157
  this.transactionService = new TransactionService(this.sessionManager, this.connectors);
118
158
  this.walletCapabilitiesService = new WalletCapabilitiesService(networks, this.connectors, this.sessionManager, this.eventManager);
@@ -311,6 +351,9 @@ export class UniversalWalletConnector {
311
351
  }
312
352
  async connect(connectionMode, walletId, networkId, options) {
313
353
  try {
354
+ // Hand-off instrumentation lives in ConnectionService.connect (emitted
355
+ // after validation, at the real wallet boundary) — not here, so pre-wallet
356
+ // validation failures don't pollute the funnel.
314
357
  await this.connectionService.connect(connectionMode, walletId, networkId, options);
315
358
  }
316
359
  catch (error) {
@@ -332,6 +375,8 @@ export class UniversalWalletConnector {
332
375
  }
333
376
  async switchNetwork(networkId, options) {
334
377
  try {
378
+ // Hand-off instrumentation lives in NetworkSwitchService.switchNetwork
379
+ // (emitted after validation, at the real wallet boundary).
335
380
  await this.networkSwitchService.switchNetwork(networkId, options);
336
381
  }
337
382
  catch (error) {
@@ -357,23 +402,25 @@ export class UniversalWalletConnector {
357
402
  throw new Error('No active connection');
358
403
  }
359
404
  try {
360
- // Get the provider from the active wallet based on connection mode
361
- let provider;
362
- if (session.connectionMode === 'injected') {
363
- provider = this.usingIntegratedBrowser
364
- ? session.activeWallet.integratedBrowserInjectedProvider
365
- : session.activeWallet.extensionInjectedProvider;
366
- }
367
- else if (session.connectionMode === 'walletConnect') {
368
- provider = session.activeWallet.walletConnectProvider;
369
- }
370
- else if (session.connectionMode === 'tonConnect') {
371
- return await this.signatureService.signMessage(message, undefined, options);
372
- }
373
- if (!provider) {
374
- throw new Error('No provider available for the active wallet');
375
- }
376
- return await this.signatureService.signMessage(message, provider, options);
405
+ return await this.instrument(this.sessionHandoffContext('signMessage', session), async () => {
406
+ // Get the provider from the active wallet based on connection mode
407
+ let provider;
408
+ if (session.connectionMode === 'injected') {
409
+ provider = this.usingIntegratedBrowser
410
+ ? session.activeWallet.integratedBrowserInjectedProvider
411
+ : session.activeWallet.extensionInjectedProvider;
412
+ }
413
+ else if (session.connectionMode === 'walletConnect') {
414
+ provider = session.activeWallet.walletConnectProvider;
415
+ }
416
+ else if (session.connectionMode === 'tonConnect') {
417
+ return await this.signatureService.signMessage(message, undefined, options);
418
+ }
419
+ if (!provider) {
420
+ throw new Error('No provider available for the active wallet');
421
+ }
422
+ return await this.signatureService.signMessage(message, provider, options);
423
+ });
377
424
  }
378
425
  catch (error) {
379
426
  this.emitError(error, 'signMessage');
@@ -399,18 +446,26 @@ export class UniversalWalletConnector {
399
446
  if (session.connectionMode === 'tonConnect') {
400
447
  throw new Error('signTypedData is not supported for TON wallets');
401
448
  }
402
- // Resolve the injected provider from the active wallet. WalletConnect
403
- // resolves its own provider inside the connector, so it stays undefined here.
404
- let provider;
405
- if (session.connectionMode === 'injected') {
406
- provider = this.usingIntegratedBrowser
407
- ? session.activeWallet.integratedBrowserInjectedProvider
408
- : session.activeWallet.extensionInjectedProvider;
409
- if (!provider) {
410
- throw new Error('No provider available for the active wallet');
411
- }
449
+ try {
450
+ return await this.instrument(this.sessionHandoffContext('signTypedData', session), async () => {
451
+ // Resolve the injected provider from the active wallet. WalletConnect
452
+ // resolves its own provider inside the connector, so it stays undefined.
453
+ let provider;
454
+ if (session.connectionMode === 'injected') {
455
+ provider = this.usingIntegratedBrowser
456
+ ? session.activeWallet.integratedBrowserInjectedProvider
457
+ : session.activeWallet.extensionInjectedProvider;
458
+ if (!provider) {
459
+ throw new Error('No provider available for the active wallet');
460
+ }
461
+ }
462
+ return await this.signatureService.signTypedData(typedData, provider);
463
+ });
464
+ }
465
+ catch (error) {
466
+ this.emitError(error, 'signTypedData');
467
+ throw error;
412
468
  }
413
- return await this.signatureService.signTypedData(typedData, provider);
414
469
  }
415
470
  /**
416
471
  * Send a transaction with the connected wallet
@@ -427,23 +482,25 @@ export class UniversalWalletConnector {
427
482
  throw new Error('No active connection');
428
483
  }
429
484
  try {
430
- // Get the provider from the active wallet based on connection mode
431
- let provider;
432
- if (session.connectionMode === 'injected') {
433
- provider = this.usingIntegratedBrowser
434
- ? session.activeWallet.integratedBrowserInjectedProvider
435
- : session.activeWallet.extensionInjectedProvider;
436
- }
437
- else if (session.connectionMode === 'walletConnect') {
438
- provider = session.activeWallet.walletConnectProvider;
439
- }
440
- else if (session.connectionMode === 'tonConnect') {
441
- return await this.transactionService.sendTransaction(request, undefined, options);
442
- }
443
- if (!provider) {
444
- throw new Error('No provider available for the active wallet');
445
- }
446
- return await this.transactionService.sendTransaction(request, provider, options);
485
+ return await this.instrument(this.sessionHandoffContext('sendTransaction', session), async () => {
486
+ // Get the provider from the active wallet based on connection mode
487
+ let provider;
488
+ if (session.connectionMode === 'injected') {
489
+ provider = this.usingIntegratedBrowser
490
+ ? session.activeWallet.integratedBrowserInjectedProvider
491
+ : session.activeWallet.extensionInjectedProvider;
492
+ }
493
+ else if (session.connectionMode === 'walletConnect') {
494
+ provider = session.activeWallet.walletConnectProvider;
495
+ }
496
+ else if (session.connectionMode === 'tonConnect') {
497
+ return await this.transactionService.sendTransaction(request, undefined, options);
498
+ }
499
+ if (!provider) {
500
+ throw new Error('No provider available for the active wallet');
501
+ }
502
+ return await this.transactionService.sendTransaction(request, provider, options);
503
+ });
447
504
  }
448
505
  catch (error) {
449
506
  this.emitError(error, 'sendTransaction');
@@ -468,7 +525,13 @@ export class UniversalWalletConnector {
468
525
  if (!connector?.signSolanaTransactionBytes) {
469
526
  throw new Error(`signSolanaTransaction is not supported for connection mode "${session.connectionMode}"`);
470
527
  }
471
- return await connector.signSolanaTransactionBytes(serializedTx);
528
+ try {
529
+ return await this.instrument(this.sessionHandoffContext('signSolanaTransaction', session), () => connector.signSolanaTransactionBytes(serializedTx));
530
+ }
531
+ catch (error) {
532
+ this.emitError(error, 'signSolanaTransaction');
533
+ throw error;
534
+ }
472
535
  }
473
536
  /**
474
537
  * Fetch wallet capabilities for the connected wallet
@@ -528,21 +591,60 @@ export class UniversalWalletConnector {
528
591
  const session = this.sessionManager.getSession();
529
592
  return session.activeWalletCapabilities;
530
593
  }
594
+ /**
595
+ * Set the console log threshold at runtime (e.g. from a support toggle). The
596
+ * global `window.UWC_DEBUG` override still takes precedence for ad-hoc triage.
597
+ */
598
+ setLogLevel(level) {
599
+ this.logger.setLevel(level);
600
+ }
601
+ /**
602
+ * Release observer subscriptions and clear all event listeners. Call on full
603
+ * teardown / logout to avoid leaking listeners across connector lifecycles.
604
+ */
605
+ dispose() {
606
+ this.observerTeardown?.();
607
+ this.observerTeardown = undefined;
608
+ this.eventManager.clearAllListeners();
609
+ // Full teardown: if this was the shared singleton, clear the static refs too
610
+ // so a later getInstance()/new starts clean — otherwise getInstance() would
611
+ // hand back this now-listener-less instance, and the instance-count warning
612
+ // would mis-fire on the next construction.
613
+ if (UniversalWalletConnector.instance === this) {
614
+ UniversalWalletConnector.resetInstance();
615
+ }
616
+ }
531
617
  // ---- private helpers ----
618
+ /** Instrument a wallet-boundary op (emits awaitingWallet + a terminal). */
619
+ instrument(context, fn) {
620
+ return instrumentHandoff({
621
+ eventManager: this.eventManager,
622
+ timeoutMs: this.walletResponseTimeoutMs
623
+ }, context, fn);
624
+ }
625
+ /** Build handoff routing facets from the active session (no address). */
626
+ sessionHandoffContext(operation, session) {
627
+ return {
628
+ operation,
629
+ connectionMode: session.connectionMode ?? 'injected',
630
+ walletId: session.activeWallet?.id,
631
+ namespace: session.activeNetwork?.namespace,
632
+ chainId: session.activeNetwork?.id ?? undefined
633
+ };
634
+ }
532
635
  emitError(error, operation) {
533
636
  // Intentional cancellations (AbortSignal.throwIfAborted, fetch abort,
534
637
  // DOMException) should NOT surface as wallet errors — the caller already
535
- // knows it asked to abort. Skip emission so error telemetry stays clean.
536
- if (error instanceof Error && error.name === 'AbortError') {
638
+ // knows it asked to abort. Uses the same name-based check as
639
+ // `instrumentHandoff` so a DOMException abort (not an `Error` subclass in
640
+ // every runtime) is skipped consistently on both paths.
641
+ if (isAbortError(error)) {
537
642
  return;
538
643
  }
539
- const walletError = error instanceof WalletConnectorError
540
- ? { type: error.type, message: error.message }
541
- : {
542
- type: 'unknown',
543
- message: error instanceof Error ? error.message : String(error)
544
- };
545
- this.eventManager.emit('error', { error: walletError, operation });
644
+ this.eventManager.emit('error', {
645
+ error: toWalletError(error),
646
+ operation
647
+ });
546
648
  }
547
649
  }
548
650
  //# sourceMappingURL=universal-wallet-connector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"universal-wallet-connector.js","sourceRoot":"","sources":["../src/universal-wallet-connector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"universal-wallet-connector.js","sourceRoot":"","sources":["../src/universal-wallet-connector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function generateId(): string;
2
+ //# sourceMappingURL=id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../src/utils/id.ts"],"names":[],"mappings":"AAgBA,wBAAgB,UAAU,IAAI,MAAM,CA+BnC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Generate a correlation id (RFC-4122 v4 when available).
3
+ *
4
+ * Used for the per-instance `sdkSessionId` and per-handoff `handoffId` — both are
5
+ * opaque correlation tokens, never derived from wallet data (no address, no key).
6
+ * Prefers the native `crypto.randomUUID()` (browsers + Node ≥ 16); falls back to a
7
+ * `crypto.getRandomValues`-backed v4, and finally to a timestamp + monotonic
8
+ * counter only in environments that expose neither. Correlation ids need to be
9
+ * collision-resistant enough to pair a start event with its terminal — NOT
10
+ * cryptographically unpredictable — so the last-resort branch uses no PRNG.
11
+ */
12
+ // Monotonic counter for the no-crypto fallback: guarantees per-process uniqueness
13
+ // without any pseudo-random generator (correlation ids need uniqueness, not
14
+ // unpredictability — and a counter is strictly more collision-resistant here).
15
+ let fallbackCounter = 0;
16
+ export function generateId() {
17
+ const c = typeof globalThis !== 'undefined' ? globalThis.crypto : undefined;
18
+ if (c?.randomUUID) {
19
+ return c.randomUUID();
20
+ }
21
+ if (c?.getRandomValues) {
22
+ const bytes = c.getRandomValues(new Uint8Array(16));
23
+ // Set the version (4) and variant (10xx) bits per RFC 4122 §4.4.
24
+ bytes[6] = (bytes[6] & 0x0f) | 0x40;
25
+ bytes[8] = (bytes[8] & 0x3f) | 0x80;
26
+ const hex = Array.from(bytes, b => b.toString(16).padStart(2, '0'));
27
+ return (hex.slice(0, 4).join('') +
28
+ '-' +
29
+ hex.slice(4, 6).join('') +
30
+ '-' +
31
+ hex.slice(6, 8).join('') +
32
+ '-' +
33
+ hex.slice(8, 10).join('') +
34
+ '-' +
35
+ hex.slice(10, 16).join(''));
36
+ }
37
+ // Last-resort fallback (no Web Crypto). Timestamp + monotonic counter keeps
38
+ // ids unique within the process without a PRNG. Sufficient for correlation.
39
+ return ('uwc-' + Date.now().toString(36) + '-' + (fallbackCounter++).toString(36));
40
+ }
41
+ //# sourceMappingURL=id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id.js","sourceRoot":"","sources":["../../src/utils/id.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,kFAAkF;AAClF,4EAA4E;AAC5E,+EAA+E;AAC/E,IAAI,eAAe,GAAG,CAAC,CAAA;AAEvB,MAAM,UAAU,UAAU;IACxB,MAAM,CAAC,GAAG,OAAO,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;IAE3E,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;QAClB,OAAO,CAAC,CAAC,UAAU,EAAE,CAAA;IACvB,CAAC;IAED,IAAI,CAAC,EAAE,eAAe,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,CAAC,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;QACnD,iEAAiE;QACjE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;QACpC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;QACpC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;QACnE,OAAO,CACL,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,GAAG;YACH,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,GAAG;YACH,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,GAAG;YACH,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,GAAG;YACH,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAC3B,CAAA;IACH,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,OAAO,CACL,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC1E,CAAA;AACH,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { type WalletError } from '@meshconnect/uwc-types';
2
+ /** Normalize any thrown value into the PII-light `WalletError` shape. */
3
+ export declare function toWalletError(error: unknown): WalletError;
4
+ /**
5
+ * Whether a thrown value is an explicit user rejection. Connectors usually wrap
6
+ * these as `WalletConnectorError{type:'rejected'}`, but a raw EIP-1193 reject
7
+ * (code `4001`) or ethers' `ACTION_REJECTED` can also reach the façade.
8
+ */
9
+ export declare function isUserRejection(error: unknown): boolean;
10
+ /**
11
+ * Whether a thrown value is an intentional cancellation (AbortSignal / fetch
12
+ * abort). Matched by `name` rather than `instanceof Error` because a real abort is
13
+ * a `DOMException`, which is not an `Error` subclass in every runtime.
14
+ */
15
+ export declare function isAbortError(error: unknown): boolean;
16
+ //# sourceMappingURL=to-wallet-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-wallet-error.d.ts","sourceRoot":"","sources":["../../src/utils/to-wallet-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAE/E,yEAAyE;AACzE,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAQzD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAIvD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMpD"}
@@ -0,0 +1,33 @@
1
+ import { WalletConnectorError } from '@meshconnect/uwc-types';
2
+ /** Normalize any thrown value into the PII-light `WalletError` shape. */
3
+ export function toWalletError(error) {
4
+ if (error instanceof WalletConnectorError) {
5
+ return { type: error.type, message: error.message };
6
+ }
7
+ return {
8
+ type: 'unknown',
9
+ message: error instanceof Error ? error.message : String(error)
10
+ };
11
+ }
12
+ /**
13
+ * Whether a thrown value is an explicit user rejection. Connectors usually wrap
14
+ * these as `WalletConnectorError{type:'rejected'}`, but a raw EIP-1193 reject
15
+ * (code `4001`) or ethers' `ACTION_REJECTED` can also reach the façade.
16
+ */
17
+ export function isUserRejection(error) {
18
+ if (error instanceof WalletConnectorError)
19
+ return error.type === 'rejected';
20
+ const code = error?.code;
21
+ return code === 4001 || code === 'ACTION_REJECTED';
22
+ }
23
+ /**
24
+ * Whether a thrown value is an intentional cancellation (AbortSignal / fetch
25
+ * abort). Matched by `name` rather than `instanceof Error` because a real abort is
26
+ * a `DOMException`, which is not an `Error` subclass in every runtime.
27
+ */
28
+ export function isAbortError(error) {
29
+ return (typeof error === 'object' &&
30
+ error !== null &&
31
+ error.name === 'AbortError');
32
+ }
33
+ //# sourceMappingURL=to-wallet-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-wallet-error.js","sourceRoot":"","sources":["../../src/utils/to-wallet-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAoB,MAAM,wBAAwB,CAAA;AAE/E,yEAAyE;AACzE,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;QAC1C,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAA;IACrD,CAAC;IACD,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;KAChE,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,oBAAoB;QAAE,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAA;IAC3E,MAAM,IAAI,GAAI,KAA+C,EAAE,IAAI,CAAA;IACnE,OAAO,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,iBAAiB,CAAA;AACpD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAA4B,CAAC,IAAI,KAAK,YAAY,CACpD,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshconnect/uwc-core",
3
- "version": "1.0.0",
3
+ "version": "1.0.1-snapshot.c7e65ce",
4
4
  "description": "Core functionality for Universal Wallet Connector",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -16,10 +16,10 @@
16
16
  "src"
17
17
  ],
18
18
  "dependencies": {
19
- "@meshconnect/uwc-injected-connector": "0.15.2",
20
- "@meshconnect/uwc-ton-connector": "0.6.6",
21
- "@meshconnect/uwc-types": "0.16.1",
22
- "@meshconnect/uwc-wallet-connect-connector": "0.6.3"
19
+ "@meshconnect/uwc-injected-connector": "0.15.2-snapshot.c7e65ce",
20
+ "@meshconnect/uwc-ton-connector": "0.6.6-snapshot.c7e65ce",
21
+ "@meshconnect/uwc-types": "0.16.1-snapshot.c7e65ce",
22
+ "@meshconnect/uwc-wallet-connect-connector": "0.6.4-snapshot.c7e65ce"
23
23
  },
24
24
  "devDependencies": {
25
25
  "typescript": "^5.9.3"