@meshconnect/uwc-injected-connector 0.5.2 → 0.6.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,14 +1,13 @@
1
- import type { EVMNativeTransferRequest, EVMContractCallRequest, EVMDataTransferRequest } from '@meshconnect/uwc-types';
2
- import type { TransactionRequest } from 'ethers';
1
+ import type { EVMNativeTransferRequest, EVMContractCallRequest, EVMTransactionParams, EVMDataTransferRequest } from '@meshconnect/uwc-types';
3
2
  /**
4
3
  * Service for handling Ethereum/EVM transaction operations
5
4
  */
6
5
  export declare class EthereumTransactionBuilder {
7
- getContractTransaction(request: EVMContractCallRequest): Promise<TransactionRequest>;
8
- getNativeTransaction(request: EVMNativeTransferRequest): Promise<TransactionRequest>;
9
- getDataTransaction(request: EVMDataTransferRequest): Promise<TransactionRequest>;
6
+ getContractTransaction(request: EVMContractCallRequest): Promise<EVMTransactionParams>;
7
+ getNativeTransaction(request: EVMNativeTransferRequest): Promise<EVMTransactionParams>;
8
+ getDataTransaction(request: EVMDataTransferRequest): Promise<EVMTransactionParams>;
10
9
  /**
11
- * Helper to format gas configuration for ethers
10
+ * Helper to format gas configuration for viem
12
11
  */
13
12
  private formatGasConfig;
14
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum-transaction-builder.d.ts","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-transaction-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAEhD;;GAEG;AACH,qBAAa,0BAA0B;IAC/B,sBAAsB,CAC1B,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;IAgCxB,oBAAoB,CACxB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC;IAYxB,kBAAkB,CACtB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;IAgB9B;;OAEG;IACH,OAAO,CAAC,eAAe;CAiBxB"}
1
+ {"version":3,"file":"ethereum-transaction-builder.d.ts","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-transaction-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,wBAAwB,CAAA;AAG/B;;GAEG;AACH,qBAAa,0BAA0B;IAC/B,sBAAsB,CAC1B,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAoB1B,oBAAoB,CACxB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,oBAAoB,CAAC;IAY1B,kBAAkB,CACtB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAehC;;OAEG;IACH,OAAO,CAAC,eAAe;CAiBxB"}
@@ -1,4 +1,4 @@
1
- import { ethers } from 'ethers';
1
+ import { encodeFunctionData } from 'viem';
2
2
  import { parseError } from '../../utils/error-utils';
3
3
  /**
4
4
  * Service for handling Ethereum/EVM transaction operations
@@ -6,21 +6,17 @@ import { parseError } from '../../utils/error-utils';
6
6
  export class EthereumTransactionBuilder {
7
7
  async getContractTransaction(request) {
8
8
  try {
9
- // Build transaction options
10
- const txOptions = {
11
- ...this.formatGasConfig(request.gasConfig)
12
- };
13
- // Add value for payable functions
14
- if (request.value) {
15
- txOptions.value = request.value;
16
- }
17
- const iface = new ethers.Interface(request.abi);
18
- const data = iface.encodeFunctionData(request.functionName, request.args || []);
9
+ // Encode function data using viem
10
+ const data = encodeFunctionData({
11
+ abi: request.abi,
12
+ functionName: request.functionName,
13
+ args: request.args || []
14
+ });
19
15
  const txRequest = {
20
16
  to: request.contractAddress,
21
17
  data,
22
18
  value: request.value ?? 0n,
23
- ...txOptions
19
+ ...this.formatGasConfig(request.gasConfig)
24
20
  };
25
21
  return txRequest;
26
22
  }
@@ -46,7 +42,6 @@ export class EthereumTransactionBuilder {
46
42
  to: request.to,
47
43
  data: request.data,
48
44
  value: request.value ?? 0n,
49
- chainId: BigInt(request.chainId),
50
45
  ...this.formatGasConfig(request.gasConfig)
51
46
  };
52
47
  return txRequest;
@@ -56,7 +51,7 @@ export class EthereumTransactionBuilder {
56
51
  }
57
52
  }
58
53
  /**
59
- * Helper to format gas configuration for ethers
54
+ * Helper to format gas configuration for viem
60
55
  */
61
56
  formatGasConfig(gasConfig) {
62
57
  const txOptions = {};
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum-transaction-builder.js","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-transaction-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAO/B,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAGpD;;GAEG;AACH,MAAM,OAAO,0BAA0B;IACrC,KAAK,CAAC,sBAAsB,CAC1B,OAA+B;QAE/B,IAAI,CAAC;YACH,4BAA4B;YAC5B,MAAM,SAAS,GAAqB;gBAClC,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC;aAC3C,CAAA;YAED,kCAAkC;YAClC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,SAAS,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;YACjC,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAE/C,MAAM,IAAI,GAAG,KAAK,CAAC,kBAAkB,CACnC,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,IAAI,IAAI,EAAE,CACnB,CAAA;YAED,MAAM,SAAS,GAAuB;gBACpC,EAAE,EAAE,OAAO,CAAC,eAAe;gBAC3B,IAAI;gBACJ,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;gBAC1B,GAAG,SAAS;aACb,CAAA;YAED,OAAO,SAAS,CAAA;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,OAAiC;QAEjC,IAAI,CAAC;YACH,OAAO;gBACL,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,KAAK,EAAE,OAAO,CAAC,MAAM;gBACrB,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC;aAC3C,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,OAA+B;QAE/B,IAAI,CAAC;YACH,MAAM,SAAS,GAAuB;gBACpC,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;gBAC1B,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;gBAChC,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC;aAC3C,CAAA;YAED,OAAO,SAAS,CAAA;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,SAAwB;QAC9C,MAAM,SAAS,GAAqB,EAAE,CAAA;QAEtC,IAAI,SAAS,EAAE,QAAQ,EAAE,CAAC;YACxB,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC7D,CAAC;QACD,IAAI,SAAS,EAAE,YAAY,EAAE,CAAC;YAC5B,SAAS,CAAC,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAA;QACrE,CAAC;QACD,IAAI,SAAS,EAAE,oBAAoB,EAAE,CAAC;YACpC,SAAS,CAAC,oBAAoB,GAAG,MAAM,CACrC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAC3C,CAAA;QACH,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;CACF"}
1
+ {"version":3,"file":"ethereum-transaction-builder.js","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-transaction-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAA;AAQzC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD;;GAEG;AACH,MAAM,OAAO,0BAA0B;IACrC,KAAK,CAAC,sBAAsB,CAC1B,OAA+B;QAE/B,IAAI,CAAC;YACH,kCAAkC;YAClC,MAAM,IAAI,GAAG,kBAAkB,CAAC;gBAC9B,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;aACzB,CAAC,CAAA;YACF,MAAM,SAAS,GAAyB;gBACtC,EAAE,EAAE,OAAO,CAAC,eAAe;gBAC3B,IAAI;gBACJ,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;gBAC1B,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC;aAC3C,CAAA;YACD,OAAO,SAAS,CAAA;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,OAAiC;QAEjC,IAAI,CAAC;YACH,OAAO;gBACL,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,KAAK,EAAE,OAAO,CAAC,MAAM;gBACrB,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC;aAC3C,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,OAA+B;QAE/B,IAAI,CAAC;YACH,MAAM,SAAS,GAAyB;gBACtC,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;gBAC1B,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC;aAC3C,CAAA;YAED,OAAO,SAAS,CAAA;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CACrB,SAAwB;QAExB,MAAM,SAAS,GAAkC,EAAE,CAAA;QACnD,IAAI,SAAS,EAAE,QAAQ,EAAE,CAAC;YACxB,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC7D,CAAC;QACD,IAAI,SAAS,EAAE,YAAY,EAAE,CAAC;YAC5B,SAAS,CAAC,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAA;QACrE,CAAC;QACD,IAAI,SAAS,EAAE,oBAAoB,EAAE,CAAC;YACpC,SAAS,CAAC,oBAAoB,GAAG,MAAM,CACrC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAC3C,CAAA;QACH,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum-transaction-service.d.ts","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-transaction-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,KAAK,EAKV,0BAA0B,EAE3B,MAAM,wBAAwB,CAAA;AAI/B;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,OAAO,CAA4B;;IAM3C;;OAEG;IACG,eAAe,CACnB,OAAO,EAAE,0BAA0B,EACnC,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,CAAC;IAmClB;;OAEG;YACW,qBAAqB;IAuBnC;;OAEG;YACW,gBAAgB;IAuB9B;;OAEG;YACW,gBAAgB;IAuB9B;;OAEG;YACW,SAAS;CAkGxB"}
1
+ {"version":3,"file":"ethereum-transaction-service.d.ts","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-transaction-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,KAAK,EAKV,0BAA0B,EAE3B,MAAM,wBAAwB,CAAA;AAI/B;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,OAAO,CAA4B;;IAM3C;;OAEG;IACG,eAAe,CACnB,OAAO,EAAE,0BAA0B,EACnC,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,CAAC;IAmClB;;OAEG;YACW,qBAAqB;IAiCnC;;OAEG;YACW,gBAAgB;IAkC9B;;OAEG;YACW,gBAAgB;IAkC9B;;OAEG;YACW,SAAS;CA0HxB"}
@@ -1,4 +1,4 @@
1
- import { ethers } from 'ethers';
1
+ import { createWalletClient, custom } from 'viem';
2
2
  import { parseError } from '../../utils/error-utils';
3
3
  import { EthereumTransactionBuilder } from './ethereum-transaction-builder';
4
4
  /**
@@ -46,14 +46,24 @@ export class EthereumTransactionService {
46
46
  try {
47
47
  // Build transaction
48
48
  const tx = await this.builder.getNativeTransaction(request);
49
- // Create ethers provider and signer
50
- const ethersProvider = new ethers.BrowserProvider(provider);
51
- const signer = await ethersProvider.getSigner(request.from);
52
- // Send transaction
53
- const response = await signer.sendTransaction(tx);
54
- // Wait for confirmation
55
- const receipt = await response.wait();
56
- return receipt ? receipt.hash : '';
49
+ // Create viem wallet client
50
+ const client = createWalletClient({
51
+ account: request.from,
52
+ transport: custom(provider)
53
+ });
54
+ // Send transaction and wait for confirmation
55
+ const hash = await client.sendTransaction({
56
+ account: request.from,
57
+ chain: null,
58
+ to: tx.to,
59
+ value: tx.value,
60
+ ...(tx.gasLimit && { gas: tx.gasLimit }),
61
+ ...(tx.maxFeePerGas && { maxFeePerGas: tx.maxFeePerGas }),
62
+ ...(tx.maxPriorityFeePerGas && {
63
+ maxPriorityFeePerGas: tx.maxPriorityFeePerGas
64
+ })
65
+ });
66
+ return hash;
57
67
  }
58
68
  catch (error) {
59
69
  parseError(error);
@@ -66,14 +76,25 @@ export class EthereumTransactionService {
66
76
  try {
67
77
  // Build transaction
68
78
  const tx = await this.builder.getContractTransaction(request);
69
- // Create ethers provider and signer
70
- const ethersProvider = new ethers.BrowserProvider(provider);
71
- const signer = await ethersProvider.getSigner(request.from);
79
+ // Create viem wallet client
80
+ const client = createWalletClient({
81
+ account: request.from,
82
+ transport: custom(provider)
83
+ });
72
84
  // Send transaction
73
- const response = await signer.sendTransaction(tx);
74
- // Wait for confirmation
75
- const receipt = await response.wait();
76
- return receipt ? receipt.hash : '';
85
+ const hash = await client.sendTransaction({
86
+ account: request.from,
87
+ chain: null,
88
+ to: tx.to,
89
+ data: tx.data,
90
+ value: tx.value,
91
+ ...(tx.gasLimit && { gas: tx.gasLimit }),
92
+ ...(tx.maxFeePerGas && { maxFeePerGas: tx.maxFeePerGas }),
93
+ ...(tx.maxPriorityFeePerGas && {
94
+ maxPriorityFeePerGas: tx.maxPriorityFeePerGas
95
+ })
96
+ });
97
+ return hash;
77
98
  }
78
99
  catch (error) {
79
100
  parseError(error);
@@ -86,14 +107,25 @@ export class EthereumTransactionService {
86
107
  try {
87
108
  // Build transaction
88
109
  const tx = await this.builder.getDataTransaction(request);
89
- // Create ethers provider and signer
90
- const ethersProvider = new ethers.BrowserProvider(provider);
91
- const signer = await ethersProvider.getSigner(request.from);
110
+ // Create viem wallet client
111
+ const client = createWalletClient({
112
+ account: request.from,
113
+ transport: custom(provider)
114
+ });
92
115
  // Send transaction
93
- const response = await signer.sendTransaction(tx);
94
- // Wait for confirmation
95
- const receipt = await response.wait();
96
- return receipt ? receipt.hash : '';
116
+ const hash = await client.sendTransaction({
117
+ account: request.from,
118
+ chain: null,
119
+ to: tx.to,
120
+ data: tx.data,
121
+ value: tx.value,
122
+ ...(tx.gasLimit && { gas: tx.gasLimit }),
123
+ ...(tx.maxFeePerGas && { maxFeePerGas: tx.maxFeePerGas }),
124
+ ...(tx.maxPriorityFeePerGas && {
125
+ maxPriorityFeePerGas: tx.maxPriorityFeePerGas
126
+ })
127
+ });
128
+ return hash;
97
129
  }
98
130
  catch (error) {
99
131
  parseError(error);
@@ -123,30 +155,46 @@ export class EthereumTransactionService {
123
155
  value: '0x' + (result.value ?? 0n).toString(16)
124
156
  };
125
157
  }
158
+ else if ('data' in tx && 'chainId' in tx) {
159
+ // Data transfer
160
+ const result = await this.builder.getDataTransaction(tx);
161
+ return {
162
+ to: result.to ?? '',
163
+ data: result.data,
164
+ value: '0x' + (result.value ?? 0n).toString(16)
165
+ };
166
+ }
126
167
  else {
127
168
  throw new Error('Invalid transaction request type');
128
169
  }
129
170
  }));
130
- // Create ethers provider
131
- const ethersProvider = new ethers.BrowserProvider(provider);
132
- // Send batch transaction
133
- const response = await ethersProvider.send('wallet_sendCalls', [
134
- {
135
- version: request.version,
136
- from: request.from,
137
- chainId: request.chainId,
138
- atomicRequired: request.atomicRequired,
139
- calls: calls
140
- }
141
- ]);
171
+ // Create viem wallet client
172
+ const client = createWalletClient({
173
+ account: request.from,
174
+ transport: custom(provider)
175
+ });
176
+ // Send batch transaction using EIP-5792
177
+ const response = await client.request({
178
+ method: 'wallet_sendCalls',
179
+ params: [
180
+ {
181
+ version: request.version,
182
+ from: request.from,
183
+ chainId: request.chainId,
184
+ atomicRequired: request.atomicRequired,
185
+ calls: calls
186
+ }
187
+ ]
188
+ });
142
189
  // Poll for completion with retry logic for specific errors
143
190
  const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
144
191
  let result;
145
192
  while (true) {
146
193
  try {
147
- result = (await ethersProvider.send('wallet_getCallsStatus', [
148
- response.id
149
- ]));
194
+ result = await client.request({
195
+ method: 'wallet_getCallsStatus',
196
+ params: [response.id]
197
+ });
150
198
  // Wait 1 second if still pending
151
199
  if (result?.status === 100) {
152
200
  await sleep(1000);
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum-transaction-service.js","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-transaction-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ethereum-transaction-service.js","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-transaction-service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum-wallet-service.d.ts","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-wallet-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAChB,eAAe,EAEf,OAAO,EACP,cAAc,EACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,IAAI,qBAAqB,EACxC,MAAM,yBAAyB,CAAA;AAIhC;;GAEG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,eAAe,CAA8B;IACrD,OAAO,CAAC,iBAAiB,CAAgC;IACzD,OAAO,CAAC,OAAO,CAAsB;IAErC;;OAEG;IACG,mBAAmB,CAAC,eAAe,CAAC,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5E;;OAEG;IACH,kBAAkB,IAAI,qBAAqB,EAAE;IAI7C;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS;IAIjE;;OAEG;IACG,uBAAuB,CAC3B,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAY3B;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB1D;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS;IAKzD;;OAEG;IACG,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,sBAAsB,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAClD,OAAO,CAAC,IAAI,CAAC;IAuEhB;;OAEG;IACH,uBAAuB,CACrB,mBAAmB,EAAE,MAAM,EAAE,EAC7B,OAAO,EAAE,MAAM,GACd,gBAAgB,EAAE;IAarB;;OAEG;IACH,kBAAkB,CAChB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,EACjC,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,IAAI;IAKP;;OAEG;IACH,UAAU,IAAI,MAAM,GAAG,IAAI;IAI3B;;OAEG;IACH,oBAAoB,IAAI,gBAAgB,GAAG,IAAI;IAI/C;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;OAEG;IACG,eAAe,CACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,EAAE,GAClB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAsD5C"}
1
+ {"version":3,"file":"ethereum-wallet-service.d.ts","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-wallet-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAChB,eAAe,EAEf,OAAO,EACP,cAAc,EACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,IAAI,qBAAqB,EACxC,MAAM,yBAAyB,CAAA;AAIhC;;GAEG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,eAAe,CAA8B;IACrD,OAAO,CAAC,iBAAiB,CAAgC;IACzD,OAAO,CAAC,OAAO,CAAsB;IAErC;;OAEG;IACG,mBAAmB,CAAC,eAAe,CAAC,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5E;;OAEG;IACH,kBAAkB,IAAI,qBAAqB,EAAE;IAI7C;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS;IAIjE;;OAEG;IACG,uBAAuB,CAC3B,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAY3B;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB1D;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS;IAKzD;;OAEG;IACG,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,sBAAsB,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAClD,OAAO,CAAC,IAAI,CAAC;IAsEhB;;OAEG;IACH,uBAAuB,CACrB,mBAAmB,EAAE,MAAM,EAAE,EAC7B,OAAO,EAAE,MAAM,GACd,gBAAgB,EAAE;IAarB;;OAEG;IACH,kBAAkB,CAChB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,EACjC,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,IAAI;IAKP;;OAEG;IACH,UAAU,IAAI,MAAM,GAAG,IAAI;IAI3B;;OAEG;IACH,oBAAoB,IAAI,gBAAgB,GAAG,IAAI;IAI/C;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;OAEG;IACG,eAAe,CACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,EAAE,GAClB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAsD5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum-wallet-service.js","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-wallet-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ethereum-wallet-service.js","sourceRoot":"","sources":["../../../src/services/ethereum/ethereum-wallet-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshconnect/uwc-injected-connector",
3
- "version": "0.5.2",
3
+ "version": "0.6.1",
4
4
  "description": "Injected connector for Universal Wallet Connector",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -25,10 +25,10 @@
25
25
  "@wallet-standard/base": "^1.1.0",
26
26
  "bs58": "^6.0.0",
27
27
  "buffer": "^6.0.3",
28
- "ethers": "^6.15.0",
28
+ "viem": "^2.39.2",
29
29
  "uuid": "^11.1.0",
30
- "@meshconnect/uwc-types": "0.4.5",
31
- "@meshconnect/uwc-constants": "0.2.19"
30
+ "@meshconnect/uwc-types": "0.5.1",
31
+ "@meshconnect/uwc-constants": "0.3.1"
32
32
  },
33
33
  "devDependencies": {
34
34
  "typescript": "^5.9.2"
@@ -136,11 +136,27 @@ describe('EthereumTransactionBuilder', () => {
136
136
  expect(result).toEqual({
137
137
  to: request.to,
138
138
  data: request.data,
139
- chainId: BigInt(1),
139
+ value: request.value,
140
140
  gasLimit: BigInt(100000),
141
141
  maxFeePerGas: BigInt(50000000000),
142
- maxPriorityFeePerGas: BigInt(2000000000),
143
- value: BigInt('500000000000000000')
142
+ maxPriorityFeePerGas: BigInt(2000000000)
143
+ })
144
+ })
145
+
146
+ it('should build a data transaction without value', async () => {
147
+ const request: EVMDataTransferRequest = {
148
+ from: '0x1234567890123456789012345678901234567890',
149
+ to: '0x0987654321098765432109876543210987654321',
150
+ data: '0xa9059cbb',
151
+ chainId: '137' // Polygon
152
+ }
153
+
154
+ const result = await builder.getDataTransaction(request)
155
+
156
+ expect(result).toEqual({
157
+ to: request.to,
158
+ data: request.data,
159
+ value: 0n
144
160
  })
145
161
  })
146
162
 
@@ -174,7 +190,7 @@ describe('EthereumTransactionBuilder', () => {
174
190
 
175
191
  expect(result.data).toBe('0x')
176
192
  expect(result.to).toBe(request.to)
177
- expect(result.chainId).toBe(BigInt(1))
193
+ expect(result.value).toBe(0n)
178
194
  })
179
195
 
180
196
  it('should handle complex encoded data', async () => {
@@ -190,7 +206,7 @@ describe('EthereumTransactionBuilder', () => {
190
206
  const result = await builder.getDataTransaction(request)
191
207
 
192
208
  expect(result.data).toBe(complexData)
193
- expect(result.chainId).toBe(BigInt(42161))
209
+ expect(result.value).toBe(0n)
194
210
  })
195
211
  })
196
212
 
@@ -1,12 +1,12 @@
1
- import { ethers } from 'ethers'
1
+ import { encodeFunctionData } from 'viem'
2
2
  import type {
3
3
  EVMGasConfig,
4
4
  EVMNativeTransferRequest,
5
5
  EVMContractCallRequest,
6
+ EVMTransactionParams,
6
7
  EVMDataTransferRequest
7
8
  } from '@meshconnect/uwc-types'
8
9
  import { parseError } from '../../utils/error-utils'
9
- import type { TransactionRequest } from 'ethers'
10
10
 
11
11
  /**
12
12
  * Service for handling Ethereum/EVM transaction operations
@@ -14,32 +14,20 @@ import type { TransactionRequest } from 'ethers'
14
14
  export class EthereumTransactionBuilder {
15
15
  async getContractTransaction(
16
16
  request: EVMContractCallRequest
17
- ): Promise<TransactionRequest> {
17
+ ): Promise<EVMTransactionParams> {
18
18
  try {
19
- // Build transaction options
20
- const txOptions: ethers.Overrides = {
21
- ...this.formatGasConfig(request.gasConfig)
22
- }
23
-
24
- // Add value for payable functions
25
- if (request.value) {
26
- txOptions.value = request.value
27
- }
28
-
29
- const iface = new ethers.Interface(request.abi)
30
-
31
- const data = iface.encodeFunctionData(
32
- request.functionName,
33
- request.args || []
34
- )
35
-
36
- const txRequest: TransactionRequest = {
19
+ // Encode function data using viem
20
+ const data = encodeFunctionData({
21
+ abi: request.abi,
22
+ functionName: request.functionName,
23
+ args: request.args || []
24
+ })
25
+ const txRequest: EVMTransactionParams = {
37
26
  to: request.contractAddress,
38
27
  data,
39
28
  value: request.value ?? 0n,
40
- ...txOptions
29
+ ...this.formatGasConfig(request.gasConfig)
41
30
  }
42
-
43
31
  return txRequest
44
32
  } catch (error) {
45
33
  parseError(error)
@@ -48,7 +36,7 @@ export class EthereumTransactionBuilder {
48
36
 
49
37
  async getNativeTransaction(
50
38
  request: EVMNativeTransferRequest
51
- ): Promise<TransactionRequest> {
39
+ ): Promise<EVMTransactionParams> {
52
40
  try {
53
41
  return {
54
42
  to: request.to,
@@ -62,13 +50,12 @@ export class EthereumTransactionBuilder {
62
50
 
63
51
  async getDataTransaction(
64
52
  request: EVMDataTransferRequest
65
- ): Promise<TransactionRequest> {
53
+ ): Promise<EVMTransactionParams> {
66
54
  try {
67
- const txRequest: TransactionRequest = {
55
+ const txRequest: EVMTransactionParams = {
68
56
  to: request.to,
69
57
  data: request.data,
70
58
  value: request.value ?? 0n,
71
- chainId: BigInt(request.chainId),
72
59
  ...this.formatGasConfig(request.gasConfig)
73
60
  }
74
61
 
@@ -79,11 +66,12 @@ export class EthereumTransactionBuilder {
79
66
  }
80
67
 
81
68
  /**
82
- * Helper to format gas configuration for ethers
69
+ * Helper to format gas configuration for viem
83
70
  */
84
- private formatGasConfig(gasConfig?: EVMGasConfig): ethers.Overrides {
85
- const txOptions: ethers.Overrides = {}
86
-
71
+ private formatGasConfig(
72
+ gasConfig?: EVMGasConfig
73
+ ): Partial<EVMTransactionParams> {
74
+ const txOptions: Partial<EVMTransactionParams> = {}
87
75
  if (gasConfig?.gasLimit) {
88
76
  txOptions.gasLimit = BigInt(Math.floor(gasConfig.gasLimit))
89
77
  }
@@ -95,7 +83,6 @@ export class EthereumTransactionBuilder {
95
83
  Math.floor(gasConfig.maxPriorityFeePerGas)
96
84
  )
97
85
  }
98
-
99
86
  return txOptions
100
87
  }
101
88
  }
@@ -7,30 +7,6 @@ import type {
7
7
  } from '@meshconnect/uwc-types'
8
8
  import type { EthereumProvider } from '../../eip6963-discovery'
9
9
 
10
- // Mock ethers
11
- vi.mock('ethers', () => {
12
- const mockReceipt = { hash: '0xtxhash' }
13
- const mockResponse = {
14
- wait: vi.fn().mockResolvedValue(mockReceipt)
15
- }
16
- const mockSigner = {
17
- sendTransaction: vi.fn().mockResolvedValue(mockResponse)
18
- }
19
- const mockProvider = {
20
- getSigner: vi.fn().mockResolvedValue(mockSigner),
21
- send: vi.fn()
22
- }
23
-
24
- return {
25
- ethers: {
26
- BrowserProvider: vi.fn().mockImplementation(() => mockProvider),
27
- Interface: vi.fn().mockImplementation(() => ({
28
- encodeFunctionData: vi.fn().mockReturnValue('0xencodeddata')
29
- }))
30
- }
31
- }
32
- })
33
-
34
10
  describe('EthereumTransactionService', () => {
35
11
  let service: EthereumTransactionService
36
12
  let mockProvider: EthereumProvider
@@ -39,7 +15,7 @@ describe('EthereumTransactionService', () => {
39
15
  vi.clearAllMocks()
40
16
  service = new EthereumTransactionService()
41
17
  mockProvider = {
42
- request: vi.fn()
18
+ request: vi.fn().mockResolvedValue('0xtxhash')
43
19
  } as any
44
20
  })
45
21
 
@@ -280,13 +256,8 @@ describe('EthereumTransactionService', () => {
280
256
 
281
257
  describe('error handling', () => {
282
258
  it('should handle transaction errors', async () => {
283
- const { ethers } = await import('ethers')
284
259
  const mockError = new Error('Transaction failed')
285
- vi.mocked(ethers.BrowserProvider).mockImplementationOnce(
286
- (_provider: any) => {
287
- throw mockError
288
- }
289
- )
260
+ mockProvider.request = vi.fn().mockRejectedValue(mockError)
290
261
 
291
262
  const request: EVMDataTransferRequest = {
292
263
  from: '0x1234567890123456789012345678901234567890',
@@ -1,4 +1,4 @@
1
- import { ethers } from 'ethers'
1
+ import { createWalletClient, custom } from 'viem'
2
2
  import type { EthereumProvider } from '../../eip6963-discovery'
3
3
  import type {
4
4
  EVMNativeTransferRequest,
@@ -73,16 +73,26 @@ export class EthereumTransactionService {
73
73
  // Build transaction
74
74
  const tx = await this.builder.getNativeTransaction(request)
75
75
 
76
- // Create ethers provider and signer
77
- const ethersProvider = new ethers.BrowserProvider(provider)
78
- const signer = await ethersProvider.getSigner(request.from)
76
+ // Create viem wallet client
77
+ const client = createWalletClient({
78
+ account: request.from as `0x${string}`,
79
+ transport: custom(provider)
80
+ })
79
81
 
80
- // Send transaction
81
- const response = await signer.sendTransaction(tx)
82
+ // Send transaction and wait for confirmation
83
+ const hash = await client.sendTransaction({
84
+ account: request.from as `0x${string}`,
85
+ chain: null,
86
+ to: tx.to as `0x${string}`,
87
+ value: tx.value,
88
+ ...(tx.gasLimit && { gas: tx.gasLimit }),
89
+ ...(tx.maxFeePerGas && { maxFeePerGas: tx.maxFeePerGas }),
90
+ ...(tx.maxPriorityFeePerGas && {
91
+ maxPriorityFeePerGas: tx.maxPriorityFeePerGas
92
+ })
93
+ })
82
94
 
83
- // Wait for confirmation
84
- const receipt = await response.wait()
85
- return receipt ? receipt.hash : ''
95
+ return hash
86
96
  } catch (error) {
87
97
  parseError(error)
88
98
  }
@@ -99,16 +109,27 @@ export class EthereumTransactionService {
99
109
  // Build transaction
100
110
  const tx = await this.builder.getContractTransaction(request)
101
111
 
102
- // Create ethers provider and signer
103
- const ethersProvider = new ethers.BrowserProvider(provider)
104
- const signer = await ethersProvider.getSigner(request.from)
112
+ // Create viem wallet client
113
+ const client = createWalletClient({
114
+ account: request.from as `0x${string}`,
115
+ transport: custom(provider)
116
+ })
105
117
 
106
118
  // Send transaction
107
- const response = await signer.sendTransaction(tx)
119
+ const hash = await client.sendTransaction({
120
+ account: request.from as `0x${string}`,
121
+ chain: null,
122
+ to: tx.to as `0x${string}`,
123
+ data: tx.data as `0x${string}`,
124
+ value: tx.value,
125
+ ...(tx.gasLimit && { gas: tx.gasLimit }),
126
+ ...(tx.maxFeePerGas && { maxFeePerGas: tx.maxFeePerGas }),
127
+ ...(tx.maxPriorityFeePerGas && {
128
+ maxPriorityFeePerGas: tx.maxPriorityFeePerGas
129
+ })
130
+ })
108
131
 
109
- // Wait for confirmation
110
- const receipt = await response.wait()
111
- return receipt ? receipt.hash : ''
132
+ return hash
112
133
  } catch (error) {
113
134
  parseError(error)
114
135
  }
@@ -125,16 +146,27 @@ export class EthereumTransactionService {
125
146
  // Build transaction
126
147
  const tx = await this.builder.getDataTransaction(request)
127
148
 
128
- // Create ethers provider and signer
129
- const ethersProvider = new ethers.BrowserProvider(provider)
130
- const signer = await ethersProvider.getSigner(request.from)
149
+ // Create viem wallet client
150
+ const client = createWalletClient({
151
+ account: request.from as `0x${string}`,
152
+ transport: custom(provider)
153
+ })
131
154
 
132
155
  // Send transaction
133
- const response = await signer.sendTransaction(tx)
156
+ const hash = await client.sendTransaction({
157
+ account: request.from as `0x${string}`,
158
+ chain: null,
159
+ to: tx.to as `0x${string}`,
160
+ data: tx.data as `0x${string}`,
161
+ value: tx.value,
162
+ ...(tx.gasLimit && { gas: tx.gasLimit }),
163
+ ...(tx.maxFeePerGas && { maxFeePerGas: tx.maxFeePerGas }),
164
+ ...(tx.maxPriorityFeePerGas && {
165
+ maxPriorityFeePerGas: tx.maxPriorityFeePerGas
166
+ })
167
+ })
134
168
 
135
- // Wait for confirmation
136
- const receipt = await response.wait()
137
- return receipt ? receipt.hash : ''
169
+ return hash
138
170
  } catch (error) {
139
171
  parseError(error)
140
172
  }
@@ -170,19 +202,37 @@ export class EthereumTransactionService {
170
202
  to: result.to ?? '',
171
203
  value: '0x' + (result.value ?? 0n).toString(16)
172
204
  }
205
+ } else if ('data' in tx && 'chainId' in tx) {
206
+ // Data transfer
207
+ const result = await this.builder.getDataTransaction(
208
+ tx as EVMDataTransferRequest
209
+ )
210
+ return {
211
+ to: result.to ?? '',
212
+ data: result.data,
213
+ value: '0x' + (result.value ?? 0n).toString(16)
214
+ }
173
215
  } else {
174
216
  throw new Error('Invalid transaction request type')
175
217
  }
176
218
  })
177
219
  )
178
220
 
179
- // Create ethers provider
180
- const ethersProvider = new ethers.BrowserProvider(provider)
221
+ // Create viem wallet client
222
+ const client = createWalletClient({
223
+ account: request.from as `0x${string}`,
224
+ transport: custom(provider)
225
+ })
181
226
 
182
- // Send batch transaction
183
- const response: { id: string } = await ethersProvider.send(
184
- 'wallet_sendCalls',
185
- [
227
+ // Send batch transaction using EIP-5792
228
+ const response: { id: string } = await (
229
+ client.request as (args: {
230
+ method: string
231
+ params: unknown[]
232
+ }) => Promise<{ id: string }>
233
+ )({
234
+ method: 'wallet_sendCalls',
235
+ params: [
186
236
  {
187
237
  version: request.version,
188
238
  from: request.from,
@@ -191,7 +241,7 @@ export class EthereumTransactionService {
191
241
  calls: calls
192
242
  }
193
243
  ]
194
- )
244
+ })
195
245
 
196
246
  // Poll for completion with retry logic for specific errors
197
247
  const sleep = (ms: number) =>
@@ -200,9 +250,15 @@ export class EthereumTransactionService {
200
250
 
201
251
  while (true) {
202
252
  try {
203
- result = (await ethersProvider.send('wallet_getCallsStatus', [
204
- response.id
205
- ])) as BatchTransactionResult
253
+ result = await (
254
+ client.request as (args: {
255
+ method: string
256
+ params: unknown[]
257
+ }) => Promise<BatchTransactionResult>
258
+ )({
259
+ method: 'wallet_getCallsStatus',
260
+ params: [response.id]
261
+ })
206
262
 
207
263
  // Wait 1 second if still pending
208
264
  if (result?.status === 100) {
@@ -116,9 +116,8 @@ export class EthereumWalletService {
116
116
  })
117
117
  } catch (switchError: unknown) {
118
118
  // This error code indicates that the chain has not been added to the wallet
119
-
120
119
  if (
121
- (switchError as any).code === 4902 &&
120
+ (switchError as { code?: number }).code === 4902 &&
122
121
  (supportsAddingNetworks ?? true)
123
122
  ) {
124
123
  // Try to add the chain to the wallet