@meshconnect/uwc-core 0.3.7 → 0.3.9

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.
@@ -15,7 +15,6 @@ export declare class ConnectionService {
15
15
  private findWallet;
16
16
  private getProviderForMode;
17
17
  private validateAndDetermineNetwork;
18
- private getWalletCapabilities;
19
18
  disconnect(): Promise<void>;
20
19
  getConnectionURI(): string | undefined;
21
20
  getWallets(): WalletMetadata[];
@@ -1 +1 @@
1
- {"version":3,"file":"connection-service.d.ts","sourceRoot":"","sources":["../../src/services/connection-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACd,cAAc,EACd,SAAS,EAMV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAE7D,qBAAa,iBAAiB;IAI1B,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,sBAAsB;IAC9B,OAAO,CAAC,YAAY;IARtB,OAAO,CAAC,eAAe,CAAyB;gBAGtC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,cAAc,EAAE,EACzB,cAAc,EAAE,cAAc,EAC9B,UAAU,EAAE,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,EAC1C,sBAAsB,EAAE,OAAO,EAC/B,YAAY,EAAE,YAAY;IAG9B,OAAO,CACX,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,IAAI,CAAC;IAiFhB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,2BAA2B;YA6CrB,qBAAqB;IAmC7B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBjC,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAkBtC,UAAU,IAAI,cAAc,EAAE;IAI9B,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI;IAI9C,WAAW,IAAI,OAAO,EAAE;CAGzB"}
1
+ {"version":3,"file":"connection-service.d.ts","sourceRoot":"","sources":["../../src/services/connection-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACd,cAAc,EACd,SAAS,EAKV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAE7D,qBAAa,iBAAiB;IAI1B,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,sBAAsB;IAC9B,OAAO,CAAC,YAAY;IARtB,OAAO,CAAC,eAAe,CAAyB;gBAGtC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,cAAc,EAAE,EACzB,cAAc,EAAE,cAAc,EAC9B,UAAU,EAAE,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,EAC1C,sBAAsB,EAAE,OAAO,EAC/B,YAAY,EAAE,YAAY;IAG9B,OAAO,CACX,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,IAAI,CAAC;IA4EhB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,2BAA2B;IA6C7B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBjC,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAkBtC,UAAU,IAAI,cAAc,EAAE;IAI9B,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI;IAI9C,WAAW,IAAI,OAAO,EAAE;CAGzB"}
@@ -61,13 +61,10 @@ export class ConnectionService {
61
61
  }
62
62
  // Filter available addresses to only include those for configured networks
63
63
  const filteredAvailableAddresses = result.availableAddresses.filter(addr => this.networks.some(n => n.id === addr.networkId));
64
- const [activeWalletCapabilities, activeNetworkWalletCapabilities] = await this.getWalletCapabilities(result.address);
65
64
  this.sessionManager.updateSession({
66
65
  connectionMode,
67
66
  activeWallet: wallet,
68
67
  activeNetwork: network,
69
- activeWalletCapabilities: activeWalletCapabilities,
70
- activeNetworkWalletCapabilities: activeNetworkWalletCapabilities,
71
68
  activeAddress: result.address,
72
69
  availableNetworks: this.networks.filter(n => provider.supportedNetworkIds.includes(n.id)),
73
70
  availableAddresses: filteredAvailableAddresses
@@ -140,25 +137,6 @@ export class ConnectionService {
140
137
  }
141
138
  return network;
142
139
  }
143
- async getWalletCapabilities(address) {
144
- let activeWalletCapabilities = {};
145
- let activeNetworkWalletCapabilities = {};
146
- if (this.activeConnector &&
147
- typeof this.activeConnector.getWalletCapabilities === 'function') {
148
- let capabilities;
149
- try {
150
- capabilities = await this.activeConnector.getWalletCapabilities(address, this.networks);
151
- }
152
- catch {
153
- capabilities = {};
154
- }
155
- // keep only supported networks
156
- activeWalletCapabilities = Object.fromEntries(Object.entries(capabilities).filter(([networkId, _]) => this.networks.some(n => n.id === networkId)));
157
- const firstMatch = Object.entries(activeWalletCapabilities).find(([networkId]) => this.networks.some(n => n.id === networkId));
158
- activeNetworkWalletCapabilities = firstMatch ? firstMatch[1] : {};
159
- }
160
- return [activeWalletCapabilities, activeNetworkWalletCapabilities];
161
- }
162
140
  async disconnect() {
163
141
  // If there's an active connector with a disconnect method, call it
164
142
  if (this.activeConnector &&
@@ -1 +1 @@
1
- {"version":3,"file":"connection-service.js","sourceRoot":"","sources":["../../src/services/connection-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-service.js","sourceRoot":"","sources":["../../src/services/connection-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { Network, ConnectionMode, Connector } from '@meshconnect/uwc-types';
2
+ import type { SessionManager } from '../managers/session-manager';
3
+ import type { EventManager } from '../managers/event-manager';
4
+ export declare class WalletCapabilitiesService {
5
+ private networks;
6
+ private connectors;
7
+ private sessionManager;
8
+ private eventManager;
9
+ constructor(networks: Network[], connectors: Map<ConnectionMode, Connector>, sessionManager: SessionManager, eventManager: EventManager);
10
+ getWalletCapabilities(address: string, activeNetwork?: Network): Promise<void>;
11
+ }
12
+ //# sourceMappingURL=wallet-capabilities-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet-capabilities-service.d.ts","sourceRoot":"","sources":["../../src/services/wallet-capabilities-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,SAAS,EAEV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAE7D,qBAAa,yBAAyB;IAElC,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,YAAY;gBAHZ,QAAQ,EAAE,OAAO,EAAE,EACnB,UAAU,EAAE,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,EAC1C,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,YAAY;IAG9B,qBAAqB,CACzB,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,OAAO,GACtB,OAAO,CAAC,IAAI,CAAC;CAwDjB"}
@@ -0,0 +1,53 @@
1
+ export class WalletCapabilitiesService {
2
+ networks;
3
+ connectors;
4
+ sessionManager;
5
+ eventManager;
6
+ constructor(networks, connectors, sessionManager, eventManager) {
7
+ this.networks = networks;
8
+ this.connectors = connectors;
9
+ this.sessionManager = sessionManager;
10
+ this.eventManager = eventManager;
11
+ }
12
+ async getWalletCapabilities(address, activeNetwork) {
13
+ let activeWalletCapabilities = {};
14
+ let activeNetworkWalletCapabilities = {};
15
+ const session = this.sessionManager.getSession();
16
+ if (!session) {
17
+ throw new Error('No active connection. Connect to a wallet first.');
18
+ }
19
+ // Check if connection mode is set
20
+ if (!session.connectionMode) {
21
+ throw new Error('No connection mode found in session');
22
+ }
23
+ const activeConnector = this.connectors.get(session.connectionMode);
24
+ if (activeConnector &&
25
+ typeof activeConnector.getWalletCapabilities === 'function') {
26
+ let capabilities;
27
+ try {
28
+ capabilities = await activeConnector.getWalletCapabilities(address, this.networks);
29
+ }
30
+ catch {
31
+ capabilities = {};
32
+ }
33
+ // keep only supported networks
34
+ activeWalletCapabilities = Object.fromEntries(Object.entries(capabilities).filter(([networkId, _]) => this.networks.some(n => n.id === networkId)));
35
+ if (activeNetwork) {
36
+ const firstMatch = Object.entries(activeWalletCapabilities).find(([networkId]) => networkId == activeNetwork.id);
37
+ activeNetworkWalletCapabilities = firstMatch ? firstMatch[1] : {};
38
+ this.sessionManager.updateSession({
39
+ activeWalletCapabilities: activeWalletCapabilities,
40
+ activeNetworkWalletCapabilities: activeNetworkWalletCapabilities
41
+ });
42
+ }
43
+ else {
44
+ this.sessionManager.updateSession({
45
+ activeWalletCapabilities: activeWalletCapabilities,
46
+ activeNetworkWalletCapabilities: null
47
+ });
48
+ }
49
+ this.eventManager.notify();
50
+ }
51
+ }
52
+ }
53
+ //# sourceMappingURL=wallet-capabilities-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet-capabilities-service.js","sourceRoot":"","sources":["../../src/services/wallet-capabilities-service.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,yBAAyB;IAE1B;IACA;IACA;IACA;IAJV,YACU,QAAmB,EACnB,UAA0C,EAC1C,cAA8B,EAC9B,YAA0B;QAH1B,aAAQ,GAAR,QAAQ,CAAW;QACnB,eAAU,GAAV,UAAU,CAAgC;QAC1C,mBAAc,GAAd,cAAc,CAAgB;QAC9B,iBAAY,GAAZ,YAAY,CAAc;IACjC,CAAC;IAEJ,KAAK,CAAC,qBAAqB,CACzB,OAAe,EACf,aAAuB;QAEvB,IAAI,wBAAwB,GAAoC,EAAE,CAAA;QAClE,IAAI,+BAA+B,GAAoB,EAAE,CAAA;QAEzD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAA;QAEhD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;QACrE,CAAC;QAED,kCAAkC;QAClC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACxD,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QAEnE,IACE,eAAe;YACf,OAAO,eAAe,CAAC,qBAAqB,KAAK,UAAU,EAC3D,CAAC;YACD,IAAI,YAA6C,CAAA;YACjD,IAAI,CAAC;gBACH,YAAY,GAAG,MAAM,eAAe,CAAC,qBAAqB,CACxD,OAAO,EACP,IAAI,CAAC,QAAQ,CACd,CAAA;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY,GAAG,EAAE,CAAA;YACnB,CAAC;YAED,+BAA+B;YAC/B,wBAAwB,GAAG,MAAM,CAAC,WAAW,CAC3C,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CACrD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAC5C,CACF,CAAA;YAED,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAC9D,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,IAAI,aAAa,CAAC,EAAE,CAC/C,CAAA;gBACD,+BAA+B,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;gBACjE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;oBAChC,wBAAwB,EAAE,wBAAwB;oBAClD,+BAA+B,EAAE,+BAA+B;iBACjE,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;oBAChC,wBAAwB,EAAE,wBAAwB;oBAClD,+BAA+B,EAAE,IAAI;iBACtC,CAAC,CAAA;YACJ,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAA;QAC5B,CAAC;IACH,CAAC;CACF"}
@@ -8,6 +8,7 @@ export declare class UniversalWalletConnector {
8
8
  private networkSwitchService;
9
9
  private signatureService;
10
10
  private transactionService;
11
+ private walletCapabilitiesService;
11
12
  private connectors;
12
13
  private injectedConnector;
13
14
  private wallets;
@@ -45,6 +46,13 @@ export declare class UniversalWalletConnector {
45
46
  * @returns A promise that resolves to the transaction result
46
47
  */
47
48
  sendTransaction(request: TransactionRequest): Promise<TransactionResult>;
49
+ /**
50
+ * Fetch wallet capabilities for the connected wallet
51
+ * @param address The wallet address to fetch capabilities for
52
+ * @param activeNetwork Optional network to set as the active network for capabilities
53
+ * @returns A promise that resolves when capabilities are fetched and updated
54
+ */
55
+ getWalletCapabilities(address: string, activeNetwork?: Network): Promise<void>;
48
56
  /**
49
57
  * Check if a connection mode is available for a specific wallet
50
58
  * @param connectionMode The connection mode to check
@@ -1 +1 @@
1
- {"version":3,"file":"universal-wallet-connector.d.ts","sourceRoot":"","sources":["../src/universal-wallet-connector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAC7B,OAAO,EACP,cAAc,EACd,SAAS,EACT,cAAc,EACd,mBAAmB,EAKnB,kBAAkB,EAClB,iBAAiB,EAEjB,eAAe,EACf,aAAa,EACd,MAAM,wBAAwB,CAAA;AAY/B,qBAAa,wBAAwB;IACnC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAI;IAChC,OAAO,CAAC,MAAM,CAAC,+BAA+B,CAAQ;IAEtD,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,iBAAiB,CAAmB;IAC5C,OAAO,CAAC,oBAAoB,CAAsB;IAClD,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,kBAAkB,CAAoB;IAC9C,OAAO,CAAC,UAAU,CAAgC;IAClD,OAAO,CAAC,iBAAiB,CAAmB;IAC5C,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,iBAAiB,CAAQ;IACjC,OAAO,CAAC,aAAa,CAAe;gBAGlC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,GAAE,cAAc,EAAO,EAC9B,sBAAsB,UAAQ,EAC9B,mBAAmB,CAAC,EAAE,mBAAmB;IAuF3C;;OAEG;YACW,yBAAyB;IAgIvC,UAAU;IAIV,OAAO;IAIP,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAI3C,QAAQ,IAAI,6BAA6B;IAMzC,UAAU,IAAI,cAAc,EAAE;IAI9B,WAAW,IAAI,OAAO,EAAE;IAIlB,OAAO,CACX,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,IAAI,CAAC;IAKhB,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAIhC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD,4BAA4B;;;;IAI5B;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA4B1D;;;;OAIG;IACG,eAAe,CACnB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC;IA4B7B;;;;;OAKG;IACH,yBAAyB,CACvB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,GACf,OAAO;IAuCV,2BAA2B,IAAI,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,IAAI;CAItE"}
1
+ {"version":3,"file":"universal-wallet-connector.d.ts","sourceRoot":"","sources":["../src/universal-wallet-connector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAC7B,OAAO,EACP,cAAc,EACd,SAAS,EACT,cAAc,EACd,mBAAmB,EAKnB,kBAAkB,EAClB,iBAAiB,EAEjB,eAAe,EACf,aAAa,EACd,MAAM,wBAAwB,CAAA;AAa/B,qBAAa,wBAAwB;IACnC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAI;IAChC,OAAO,CAAC,MAAM,CAAC,+BAA+B,CAAQ;IAEtD,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,iBAAiB,CAAmB;IAC5C,OAAO,CAAC,oBAAoB,CAAsB;IAClD,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,kBAAkB,CAAoB;IAC9C,OAAO,CAAC,yBAAyB,CAA2B;IAC5D,OAAO,CAAC,UAAU,CAAgC;IAClD,OAAO,CAAC,iBAAiB,CAAmB;IAC5C,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,iBAAiB,CAAQ;IACjC,OAAO,CAAC,aAAa,CAAe;gBAGlC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,GAAE,cAAc,EAAO,EAC9B,sBAAsB,UAAQ,EAC9B,mBAAmB,CAAC,EAAE,mBAAmB;IA6F3C;;OAEG;YACW,yBAAyB;IAgIvC,UAAU;IAIV,OAAO;IAIP,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAI3C,QAAQ,IAAI,6BAA6B;IAMzC,UAAU,IAAI,cAAc,EAAE;IAI9B,WAAW,IAAI,OAAO,EAAE;IAIlB,OAAO,CACX,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,IAAI,CAAC;IAKhB,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAIhC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD,4BAA4B;;;;IAI5B;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA4B1D;;;;OAIG;IACG,eAAe,CACnB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC;IA4B7B;;;;;OAKG;IACG,qBAAqB,CACzB,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,OAAO,GACtB,OAAO,CAAC,IAAI,CAAC;IAOhB;;;;;OAKG;IACH,yBAAyB,CACvB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,GACf,OAAO;IAuCV,2BAA2B,IAAI,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,IAAI;CAItE"}
@@ -7,6 +7,7 @@ import { ConnectionService } from './services/connection-service';
7
7
  import { NetworkSwitchService } from './services/network-switch-service';
8
8
  import { SignatureService } from './services/signature-service';
9
9
  import { TransactionService } from './services/transaction-service';
10
+ import { WalletCapabilitiesService } from './services/wallet-capabilities-service';
10
11
  import { createNetworkRpcMap } from './utils/network-rpc-utils';
11
12
  export class UniversalWalletConnector {
12
13
  static instanceCount = 0;
@@ -17,6 +18,7 @@ export class UniversalWalletConnector {
17
18
  networkSwitchService;
18
19
  signatureService;
19
20
  transactionService;
21
+ walletCapabilitiesService;
20
22
  connectors;
21
23
  injectedConnector;
22
24
  wallets;
@@ -63,6 +65,7 @@ export class UniversalWalletConnector {
63
65
  this.networkSwitchService = new NetworkSwitchService(networks, this.sessionManager, this.connectors, usingIntegratedBrowser, this.eventManager);
64
66
  this.signatureService = new SignatureService(this.sessionManager, this.connectors);
65
67
  this.transactionService = new TransactionService(this.sessionManager, this.connectors);
68
+ this.walletCapabilitiesService = new WalletCapabilitiesService(networks, this.connectors, this.sessionManager, this.eventManager);
66
69
  // Initialize detected wallets after services are created
67
70
  this.initializeDetectedWallets();
68
71
  }
@@ -267,6 +270,15 @@ export class UniversalWalletConnector {
267
270
  }
268
271
  return await this.transactionService.sendTransaction(request, provider);
269
272
  }
273
+ /**
274
+ * Fetch wallet capabilities for the connected wallet
275
+ * @param address The wallet address to fetch capabilities for
276
+ * @param activeNetwork Optional network to set as the active network for capabilities
277
+ * @returns A promise that resolves when capabilities are fetched and updated
278
+ */
279
+ async getWalletCapabilities(address, activeNetwork) {
280
+ return await this.walletCapabilitiesService.getWalletCapabilities(address, activeNetwork);
281
+ }
270
282
  /**
271
283
  * Check if a connection mode is available for a specific wallet
272
284
  * @param connectionMode The connection mode to check
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshconnect/uwc-core",
3
- "version": "0.3.7",
3
+ "version": "0.3.9",
4
4
  "description": "Core functionality for Universal Wallet Connector",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -16,9 +16,9 @@
16
16
  "src"
17
17
  ],
18
18
  "dependencies": {
19
- "@meshconnect/uwc-types": "0.4.0",
20
- "@meshconnect/uwc-injected-connector": "0.4.1",
21
- "@meshconnect/uwc-wallet-connect-connector": "0.3.0",
19
+ "@meshconnect/uwc-types": "0.4.1",
20
+ "@meshconnect/uwc-injected-connector": "0.4.3",
21
+ "@meshconnect/uwc-wallet-connect-connector": "0.3.1",
22
22
  "@meshconnect/uwc-bridge-child": "0.0.3"
23
23
  },
24
24
  "devDependencies": {
@@ -148,91 +148,4 @@ describe('ConnectionService', () => {
148
148
  )
149
149
  expect(provider).toBeDefined()
150
150
  })
151
-
152
- describe('getWalletCapabilities', () => {
153
- it('should fetch wallet capabilities successfully', async () => {
154
- const mockCapabilities = {
155
- 'eip155:1': {
156
- paymasterService: { supported: true },
157
- sessionKeys: { supported: false }
158
- }
159
- }
160
-
161
- mockConnector.getWalletCapabilities = vi
162
- .fn()
163
- .mockResolvedValue(mockCapabilities)
164
- connectionService['activeConnector'] = mockConnector
165
-
166
- const [allCapabilities, networkCapabilities] =
167
- await connectionService['getWalletCapabilities']('0x123')
168
-
169
- expect(mockConnector.getWalletCapabilities).toHaveBeenCalledWith(
170
- '0x123',
171
- networks
172
- )
173
- expect(allCapabilities).toEqual(mockCapabilities)
174
- expect(networkCapabilities).toEqual(mockCapabilities['eip155:1'])
175
- })
176
-
177
- it('should handle getWalletCapabilities error gracefully', async () => {
178
- mockConnector.getWalletCapabilities = vi
179
- .fn()
180
- .mockRejectedValue(new Error('Network error'))
181
- connectionService['activeConnector'] = mockConnector
182
-
183
- const [allCapabilities, networkCapabilities] =
184
- await connectionService['getWalletCapabilities']('0x123')
185
-
186
- expect(mockConnector.getWalletCapabilities).toHaveBeenCalledWith(
187
- '0x123',
188
- networks
189
- )
190
- expect(allCapabilities).toEqual({})
191
- expect(networkCapabilities).toEqual({})
192
- })
193
-
194
- it('should filter out unsupported networks from capabilities', async () => {
195
- const mockCapabilities = {
196
- 'eip155:1': {
197
- paymasterService: { supported: true }
198
- },
199
- 'eip155:999': {
200
- paymasterService: { supported: false }
201
- }
202
- }
203
-
204
- mockConnector.getWalletCapabilities = vi
205
- .fn()
206
- .mockResolvedValue(mockCapabilities)
207
- connectionService['activeConnector'] = mockConnector
208
-
209
- const [allCapabilities] =
210
- await connectionService['getWalletCapabilities']('0x123')
211
-
212
- expect(allCapabilities).toEqual({
213
- 'eip155:1': mockCapabilities['eip155:1']
214
- })
215
- expect(allCapabilities['eip155:999']).toBeUndefined()
216
- })
217
-
218
- it('should return empty capabilities when connector does not support getWalletCapabilities', async () => {
219
- connectionService['activeConnector'] = mockConnector
220
-
221
- const [allCapabilities, networkCapabilities] =
222
- await connectionService['getWalletCapabilities']('0x123')
223
-
224
- expect(allCapabilities).toEqual({})
225
- expect(networkCapabilities).toEqual({})
226
- })
227
-
228
- it('should return empty capabilities when no active connector', async () => {
229
- connectionService['activeConnector'] = null
230
-
231
- const [allCapabilities, networkCapabilities] =
232
- await connectionService['getWalletCapabilities']('0x123')
233
-
234
- expect(allCapabilities).toEqual({})
235
- expect(networkCapabilities).toEqual({})
236
- })
237
- })
238
151
  })
@@ -7,8 +7,7 @@ import type {
7
7
  SupportedProvider,
8
8
  ExtensionInjectedProvider,
9
9
  IntegratedBrowserInjectedProvider,
10
- WalletConnectProvider,
11
- EVMCapabilities
10
+ WalletConnectProvider
12
11
  } from '@meshconnect/uwc-types'
13
12
  import type { SessionManager } from '../managers/session-manager'
14
13
  import type { EventManager } from '../managers/event-manager'
@@ -93,15 +92,10 @@ export class ConnectionService {
93
92
  this.networks.some(n => n.id === addr.networkId)
94
93
  )
95
94
 
96
- const [activeWalletCapabilities, activeNetworkWalletCapabilities] =
97
- await this.getWalletCapabilities(result.address)
98
-
99
95
  this.sessionManager.updateSession({
100
96
  connectionMode,
101
97
  activeWallet: wallet,
102
98
  activeNetwork: network,
103
- activeWalletCapabilities: activeWalletCapabilities,
104
- activeNetworkWalletCapabilities: activeNetworkWalletCapabilities,
105
99
  activeAddress: result.address,
106
100
  availableNetworks: this.networks.filter(n =>
107
101
  provider.supportedNetworkIds.includes(n.id)
@@ -206,41 +200,6 @@ export class ConnectionService {
206
200
  return network
207
201
  }
208
202
 
209
- private async getWalletCapabilities(
210
- address: string
211
- ): Promise<[Record<string, EVMCapabilities>, EVMCapabilities]> {
212
- let activeWalletCapabilities: Record<string, EVMCapabilities> = {}
213
- let activeNetworkWalletCapabilities: EVMCapabilities = {}
214
- if (
215
- this.activeConnector &&
216
- typeof this.activeConnector.getWalletCapabilities === 'function'
217
- ) {
218
- let capabilities: Record<string, EVMCapabilities>
219
- try {
220
- capabilities = await this.activeConnector.getWalletCapabilities(
221
- address,
222
- this.networks
223
- )
224
- } catch {
225
- capabilities = {}
226
- }
227
-
228
- // keep only supported networks
229
- activeWalletCapabilities = Object.fromEntries(
230
- Object.entries(capabilities).filter(([networkId, _]) =>
231
- this.networks.some(n => n.id === networkId)
232
- )
233
- )
234
-
235
- const firstMatch = Object.entries(activeWalletCapabilities).find(
236
- ([networkId]) => this.networks.some(n => n.id === networkId)
237
- )
238
- activeNetworkWalletCapabilities = firstMatch ? firstMatch[1] : {}
239
- }
240
-
241
- return [activeWalletCapabilities, activeNetworkWalletCapabilities]
242
- }
243
-
244
203
  async disconnect(): Promise<void> {
245
204
  // If there's an active connector with a disconnect method, call it
246
205
  if (
@@ -0,0 +1,313 @@
1
+ import { describe, it, expect, beforeEach, vi } from 'vitest'
2
+ import type {
3
+ Network,
4
+ ConnectionMode,
5
+ Connector,
6
+ EVMCapabilities
7
+ } from '../../../types/src'
8
+ import type { SessionManager } from '../managers/session-manager'
9
+ import { WalletCapabilitiesService } from './wallet-capabilities-service'
10
+ import { EventManager } from '../managers/event-manager'
11
+
12
+ describe('WalletCapabilitiesService', () => {
13
+ let service: WalletCapabilitiesService
14
+ let sessionManager: SessionManager
15
+ let eventManager: EventManager
16
+ let mockConnectors: Map<ConnectionMode, Connector>
17
+ let networks: Network[]
18
+ let mockConnector: Connector
19
+
20
+ beforeEach(() => {
21
+ networks = [
22
+ {
23
+ id: 'eip155:1',
24
+ internalId: 1,
25
+ name: 'Ethereum Mainnet',
26
+ namespace: 'eip155',
27
+ logoUrl:
28
+ 'https://ethereum.org/static/6b935ac0e619424734bc5a3b11026273/6ed5f/eth-diamond-black.png',
29
+ rpcUrls: {
30
+ default: {
31
+ http: ['https://mainnet.infura.io/v3/test']
32
+ }
33
+ },
34
+ blockExplorers: {
35
+ default: {
36
+ name: 'Etherscan',
37
+ url: 'https://etherscan.io'
38
+ }
39
+ },
40
+ networkType: 'evm',
41
+ nativeCurrency: {
42
+ name: 'Ether',
43
+ symbol: 'ETH',
44
+ decimals: 18
45
+ }
46
+ },
47
+ {
48
+ id: 'eip155:137',
49
+ internalId: 137,
50
+ name: 'Polygon',
51
+ namespace: 'eip155',
52
+ logoUrl: 'https://polygon.technology/logo.png',
53
+ rpcUrls: {
54
+ default: {
55
+ http: ['https://polygon-rpc.com']
56
+ }
57
+ },
58
+ blockExplorers: {
59
+ default: {
60
+ name: 'Polygonscan',
61
+ url: 'https://polygonscan.com'
62
+ }
63
+ },
64
+ networkType: 'evm',
65
+ nativeCurrency: {
66
+ name: 'Polygon',
67
+ symbol: 'MATIC',
68
+ decimals: 18
69
+ }
70
+ }
71
+ ]
72
+
73
+ mockConnector = {
74
+ connect: vi.fn(),
75
+ disconnect: vi.fn(),
76
+ signMessage: vi.fn(),
77
+ sendTransaction: vi.fn(),
78
+ switchNetwork: vi.fn()
79
+ }
80
+
81
+ mockConnectors = new Map()
82
+ mockConnectors.set('injected' as ConnectionMode, mockConnector)
83
+
84
+ sessionManager = {
85
+ getSession: vi.fn().mockReturnValue({
86
+ address: '0x123',
87
+ connectionMode: 'injected' as ConnectionMode,
88
+ chainId: 'eip155:1',
89
+ networkId: 'eip155:1'
90
+ }),
91
+ updateSession: vi.fn()
92
+ } as any
93
+ eventManager = new EventManager()
94
+ service = new WalletCapabilitiesService(
95
+ networks,
96
+ mockConnectors,
97
+ sessionManager,
98
+ eventManager
99
+ )
100
+ })
101
+
102
+ it('should initialize with provided parameters', () => {
103
+ expect(service).toBeDefined()
104
+ })
105
+
106
+ describe('getWalletCapabilities', () => {
107
+ it('should throw error when no active session exists', async () => {
108
+ sessionManager.getSession = vi.fn().mockReturnValue(null)
109
+
110
+ await expect(service.getWalletCapabilities('0x123')).rejects.toThrow(
111
+ 'No active connection. Connect to a wallet first.'
112
+ )
113
+ })
114
+
115
+ it('should throw error when connection mode is not set in session', async () => {
116
+ sessionManager.getSession = vi.fn().mockReturnValue({
117
+ address: '0x123',
118
+ connectionMode: undefined,
119
+ chainId: 'eip155:1',
120
+ networkId: 'eip155:1'
121
+ })
122
+
123
+ await expect(service.getWalletCapabilities('0x123')).rejects.toThrow(
124
+ 'No connection mode found in session'
125
+ )
126
+ })
127
+
128
+ it('should fetch and filter wallet capabilities for all networks', async () => {
129
+ const mockCapabilities: Record<string, EVMCapabilities> = {
130
+ 'eip155:1': {
131
+ atomicBatching: { supported: true }
132
+ } as EVMCapabilities,
133
+ 'eip155:137': {
134
+ atomicBatching: { supported: false }
135
+ } as EVMCapabilities,
136
+ 'eip155:999': {
137
+ atomicBatching: { supported: true }
138
+ } as EVMCapabilities
139
+ }
140
+
141
+ mockConnector.getWalletCapabilities = vi
142
+ .fn()
143
+ .mockResolvedValue(mockCapabilities)
144
+
145
+ await service.getWalletCapabilities('0x123')
146
+
147
+ expect(sessionManager.updateSession).toHaveBeenCalledWith({
148
+ activeWalletCapabilities: {
149
+ 'eip155:1': { atomicBatching: { supported: true } },
150
+ 'eip155:137': { atomicBatching: { supported: false } }
151
+ },
152
+ activeNetworkWalletCapabilities: null
153
+ })
154
+ })
155
+
156
+ it('should handle connector error by returning empty capabilities', async () => {
157
+ mockConnector.getWalletCapabilities = vi
158
+ .fn()
159
+ .mockRejectedValue(new Error('Network error'))
160
+
161
+ await service.getWalletCapabilities('0x123')
162
+
163
+ expect(sessionManager.updateSession).toHaveBeenCalledWith({
164
+ activeWalletCapabilities: {},
165
+ activeNetworkWalletCapabilities: null
166
+ })
167
+ })
168
+
169
+ it('should set active network wallet capabilities when activeNetwork is provided', async () => {
170
+ const mockCapabilities: Record<string, EVMCapabilities> = {
171
+ 'eip155:1': {
172
+ atomicBatching: { supported: true }
173
+ } as EVMCapabilities,
174
+ 'eip155:137': {
175
+ atomicBatching: { supported: false }
176
+ } as EVMCapabilities
177
+ }
178
+
179
+ mockConnector.getWalletCapabilities = vi
180
+ .fn()
181
+ .mockResolvedValue(mockCapabilities)
182
+
183
+ await service.getWalletCapabilities('0x123', networks[0])
184
+
185
+ expect(sessionManager.updateSession).toHaveBeenCalledWith({
186
+ activeWalletCapabilities: {
187
+ 'eip155:1': { atomicBatching: { supported: true } },
188
+ 'eip155:137': { atomicBatching: { supported: false } }
189
+ },
190
+ activeNetworkWalletCapabilities: {
191
+ atomicBatching: { supported: true }
192
+ }
193
+ })
194
+ })
195
+
196
+ it('should set empty capabilities when activeNetwork has no matching capabilities', async () => {
197
+ const mockCapabilities: Record<string, EVMCapabilities> = {
198
+ 'eip155:999': {
199
+ atomicBatching: { supported: true }
200
+ } as EVMCapabilities
201
+ }
202
+
203
+ mockConnector.getWalletCapabilities = vi
204
+ .fn()
205
+ .mockResolvedValue(mockCapabilities)
206
+
207
+ await service.getWalletCapabilities('0x123', networks[0])
208
+
209
+ expect(sessionManager.updateSession).toHaveBeenCalledWith({
210
+ activeWalletCapabilities: {},
211
+ activeNetworkWalletCapabilities: {}
212
+ })
213
+ })
214
+
215
+ it('should call getWalletCapabilities with correct parameters', async () => {
216
+ mockConnector.getWalletCapabilities = vi.fn().mockResolvedValue({})
217
+
218
+ await service.getWalletCapabilities('0xabc', networks[0])
219
+
220
+ expect(mockConnector.getWalletCapabilities).toHaveBeenCalledWith(
221
+ '0xabc',
222
+ networks
223
+ )
224
+ })
225
+
226
+ it('should set activeNetworkWalletCapabilities to null when no activeNetwork', async () => {
227
+ const mockCapabilities: Record<string, EVMCapabilities> = {
228
+ 'eip155:1': {
229
+ atomicBatching: { supported: true }
230
+ } as EVMCapabilities
231
+ }
232
+
233
+ mockConnector.getWalletCapabilities = vi
234
+ .fn()
235
+ .mockResolvedValue(mockCapabilities)
236
+
237
+ await service.getWalletCapabilities('0x123')
238
+
239
+ expect(sessionManager.updateSession).toHaveBeenCalledWith({
240
+ activeWalletCapabilities: {
241
+ 'eip155:1': { atomicBatching: { supported: true } }
242
+ },
243
+ activeNetworkWalletCapabilities: null
244
+ })
245
+ })
246
+
247
+ it('should preserve all capabilities properties when filtering', async () => {
248
+ const mockCapabilities: Record<string, EVMCapabilities> = {
249
+ 'eip155:1': {
250
+ atomicBatching: { supported: true },
251
+ paymasterService: {
252
+ supported: true,
253
+ signerTypes: ['EOA']
254
+ }
255
+ } as any
256
+ }
257
+
258
+ mockConnector.getWalletCapabilities = vi
259
+ .fn()
260
+ .mockResolvedValue(mockCapabilities)
261
+
262
+ await service.getWalletCapabilities('0x123', networks[0])
263
+
264
+ expect(sessionManager.updateSession).toHaveBeenCalledWith({
265
+ activeWalletCapabilities: {
266
+ 'eip155:1': {
267
+ atomicBatching: { supported: true },
268
+ paymasterService: {
269
+ supported: true,
270
+ signerTypes: ['EOA']
271
+ }
272
+ }
273
+ },
274
+ activeNetworkWalletCapabilities: {
275
+ atomicBatching: { supported: true },
276
+ paymasterService: {
277
+ supported: true,
278
+ signerTypes: ['EOA']
279
+ }
280
+ }
281
+ })
282
+ })
283
+
284
+ it('should handle multiple connectors but use only the active one', async () => {
285
+ const mockConnector1 = {
286
+ getWalletCapabilities: vi.fn().mockResolvedValue({
287
+ 'eip155:1': { atomicBatching: { supported: true } }
288
+ })
289
+ } as any
290
+
291
+ const mockConnector2 = {
292
+ getWalletCapabilities: vi.fn().mockResolvedValue({
293
+ 'eip155:137': { atomicBatching: { supported: false } }
294
+ })
295
+ } as any
296
+
297
+ mockConnectors.set('injected' as ConnectionMode, mockConnector1)
298
+ mockConnectors.set('walletConnect' as ConnectionMode, mockConnector2)
299
+
300
+ sessionManager.getSession = vi.fn().mockReturnValue({
301
+ address: '0x123',
302
+ connectionMode: 'injected' as ConnectionMode,
303
+ chainId: 'eip155:1',
304
+ networkId: 'eip155:1'
305
+ })
306
+
307
+ await service.getWalletCapabilities('0x123')
308
+
309
+ expect(mockConnector1.getWalletCapabilities).toHaveBeenCalled()
310
+ expect(mockConnector2.getWalletCapabilities).not.toHaveBeenCalled()
311
+ })
312
+ })
313
+ })
@@ -0,0 +1,77 @@
1
+ import type {
2
+ Network,
3
+ ConnectionMode,
4
+ Connector,
5
+ EVMCapabilities
6
+ } from '@meshconnect/uwc-types'
7
+ import type { SessionManager } from '../managers/session-manager'
8
+ import type { EventManager } from '../managers/event-manager'
9
+
10
+ export class WalletCapabilitiesService {
11
+ constructor(
12
+ private networks: Network[],
13
+ private connectors: Map<ConnectionMode, Connector>,
14
+ private sessionManager: SessionManager,
15
+ private eventManager: EventManager
16
+ ) {}
17
+
18
+ async getWalletCapabilities(
19
+ address: string,
20
+ activeNetwork?: Network
21
+ ): Promise<void> {
22
+ let activeWalletCapabilities: Record<string, EVMCapabilities> = {}
23
+ let activeNetworkWalletCapabilities: EVMCapabilities = {}
24
+
25
+ const session = this.sessionManager.getSession()
26
+
27
+ if (!session) {
28
+ throw new Error('No active connection. Connect to a wallet first.')
29
+ }
30
+
31
+ // Check if connection mode is set
32
+ if (!session.connectionMode) {
33
+ throw new Error('No connection mode found in session')
34
+ }
35
+
36
+ const activeConnector = this.connectors.get(session.connectionMode)
37
+
38
+ if (
39
+ activeConnector &&
40
+ typeof activeConnector.getWalletCapabilities === 'function'
41
+ ) {
42
+ let capabilities: Record<string, EVMCapabilities>
43
+ try {
44
+ capabilities = await activeConnector.getWalletCapabilities(
45
+ address,
46
+ this.networks
47
+ )
48
+ } catch {
49
+ capabilities = {}
50
+ }
51
+
52
+ // keep only supported networks
53
+ activeWalletCapabilities = Object.fromEntries(
54
+ Object.entries(capabilities).filter(([networkId, _]) =>
55
+ this.networks.some(n => n.id === networkId)
56
+ )
57
+ )
58
+
59
+ if (activeNetwork) {
60
+ const firstMatch = Object.entries(activeWalletCapabilities).find(
61
+ ([networkId]) => networkId == activeNetwork.id
62
+ )
63
+ activeNetworkWalletCapabilities = firstMatch ? firstMatch[1] : {}
64
+ this.sessionManager.updateSession({
65
+ activeWalletCapabilities: activeWalletCapabilities,
66
+ activeNetworkWalletCapabilities: activeNetworkWalletCapabilities
67
+ })
68
+ } else {
69
+ this.sessionManager.updateSession({
70
+ activeWalletCapabilities: activeWalletCapabilities,
71
+ activeNetworkWalletCapabilities: null
72
+ })
73
+ }
74
+ this.eventManager.notify()
75
+ }
76
+ }
77
+ }
@@ -101,9 +101,7 @@ describe('UniversalWalletConnector', () => {
101
101
  let mockWalletConnectConfig: WalletConnectConfig
102
102
 
103
103
  beforeEach(() => {
104
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
105
104
  ;(UniversalWalletConnector as any).instanceCount = 0
106
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
107
105
  ;(UniversalWalletConnector as any).hasWarnedAboutMultipleInstances = false
108
106
 
109
107
  mockNetworks = [
@@ -24,6 +24,7 @@ import { ConnectionService } from './services/connection-service'
24
24
  import { NetworkSwitchService } from './services/network-switch-service'
25
25
  import { SignatureService } from './services/signature-service'
26
26
  import { TransactionService } from './services/transaction-service'
27
+ import { WalletCapabilitiesService } from './services/wallet-capabilities-service'
27
28
  import { createNetworkRpcMap } from './utils/network-rpc-utils'
28
29
 
29
30
  export class UniversalWalletConnector {
@@ -36,6 +37,7 @@ export class UniversalWalletConnector {
36
37
  private networkSwitchService: NetworkSwitchService
37
38
  private signatureService: SignatureService
38
39
  private transactionService: TransactionService
40
+ private walletCapabilitiesService: WalletCapabilitiesService
39
41
  private connectors: Map<ConnectionMode, Connector>
40
42
  private injectedConnector: InjectedConnector
41
43
  private wallets: WalletMetadata[]
@@ -129,6 +131,12 @@ export class UniversalWalletConnector {
129
131
  this.sessionManager,
130
132
  this.connectors
131
133
  )
134
+ this.walletCapabilitiesService = new WalletCapabilitiesService(
135
+ networks,
136
+ this.connectors,
137
+ this.sessionManager,
138
+ this.eventManager
139
+ )
132
140
 
133
141
  // Initialize detected wallets after services are created
134
142
  this.initializeDetectedWallets()
@@ -386,6 +394,22 @@ export class UniversalWalletConnector {
386
394
  return await this.transactionService.sendTransaction(request, provider)
387
395
  }
388
396
 
397
+ /**
398
+ * Fetch wallet capabilities for the connected wallet
399
+ * @param address The wallet address to fetch capabilities for
400
+ * @param activeNetwork Optional network to set as the active network for capabilities
401
+ * @returns A promise that resolves when capabilities are fetched and updated
402
+ */
403
+ async getWalletCapabilities(
404
+ address: string,
405
+ activeNetwork?: Network
406
+ ): Promise<void> {
407
+ return await this.walletCapabilitiesService.getWalletCapabilities(
408
+ address,
409
+ activeNetwork
410
+ )
411
+ }
412
+
389
413
  /**
390
414
  * Check if a connection mode is available for a specific wallet
391
415
  * @param connectionMode The connection mode to check