@meshconnect/web-link-sdk 2.1.0-rc.4 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Link.js +64 -47
- package/cjs/Link.js +63 -46
- package/cjs/utils/version.js +1 -1
- package/cjs/utils/wagmiCoreConnectorsUtils.js +13 -31
- package/cjs/utils/wallet-browser-event-types.js +1 -0
- package/package.json +2 -2
- package/utils/types.d.ts +1 -3
- package/utils/version.d.ts +1 -1
- package/utils/version.js +1 -1
- package/utils/wagmiCoreConnectorsUtils.d.ts +4 -4
- package/utils/wagmiCoreConnectorsUtils.js +13 -31
- package/utils/wallet-browser-event-types.d.ts +8 -2
- package/utils/wallet-browser-event-types.js +1 -0
package/Link.js
CHANGED
@@ -49,7 +49,7 @@ import { addPopup, iframeId, removePopup } from './utils/popup';
|
|
49
49
|
import { isLinkEventTypeKey } from './utils/event-types';
|
50
50
|
import { isWalletBrowserEventTypeKey } from './utils/wallet-browser-event-types';
|
51
51
|
import { sdkSpecs } from './utils/sdk-specs';
|
52
|
-
import { connectToSpecificWallet, sendTransactionFromSDK, switchChainFromSDK, getWagmiCoreInjectedData, sendNonNativeTransactionFromSDK, disconnectAllAccounts } from './utils/wagmiCoreConnectorsUtils';
|
52
|
+
import { connectToSpecificWallet, signedMessage, sendTransactionFromSDK, switchChainFromSDK, getWagmiCoreInjectedData, sendNonNativeTransactionFromSDK, disconnectAllAccounts } from './utils/wagmiCoreConnectorsUtils';
|
53
53
|
var currentOptions;
|
54
54
|
var possibleOrigins = new Set([
|
55
55
|
'https://web.meshconnect.com',
|
@@ -189,21 +189,22 @@ function handleLinkEvent(event) {
|
|
189
189
|
}
|
190
190
|
function handleWalletBrowserEvent(event) {
|
191
191
|
return __awaiter(this, void 0, void 0, function () {
|
192
|
-
var _a, payload, result, error_1, payload, result, error_2, payload, result, error_3, payload, result, error_4, payload, result, error_5, payload, result, error_6;
|
192
|
+
var _a, payload, result, error_1, payload, result, error_2, payload, result, error_3, payload, result, error_4, payload, result, error_5, payload, result, error_6, payload, result, error_7;
|
193
193
|
return __generator(this, function (_b) {
|
194
194
|
switch (_b.label) {
|
195
195
|
case 0:
|
196
196
|
_a = event.data.type;
|
197
197
|
switch (_a) {
|
198
198
|
case 'walletBrowserInjectedWalletSelected': return [3 /*break*/, 1];
|
199
|
-
case '
|
200
|
-
case '
|
201
|
-
case '
|
202
|
-
case '
|
203
|
-
case '
|
204
|
-
case '
|
199
|
+
case 'walletBrowserSignRequest': return [3 /*break*/, 6];
|
200
|
+
case 'walletBrowserChainSwitchRequest': return [3 /*break*/, 11];
|
201
|
+
case 'walletBrowserNativeTransferRequest': return [3 /*break*/, 16];
|
202
|
+
case 'walletBrowserNonNativeTransferRequest': return [3 /*break*/, 21];
|
203
|
+
case 'walletBrowserNativeSmartDeposit': return [3 /*break*/, 26];
|
204
|
+
case 'walletBrowserNonNativeSmartDeposit': return [3 /*break*/, 31];
|
205
|
+
case 'walletBrowserDisconnect': return [3 /*break*/, 36];
|
205
206
|
}
|
206
|
-
return [3 /*break*/,
|
207
|
+
return [3 /*break*/, 37];
|
207
208
|
case 1:
|
208
209
|
payload = event.data.payload;
|
209
210
|
_b.label = 2;
|
@@ -219,8 +220,7 @@ function handleWalletBrowserEvent(event) {
|
|
219
220
|
type: 'SDKinjectedConnectionCompleted',
|
220
221
|
payload: {
|
221
222
|
accounts: result.accounts,
|
222
|
-
chainId: result.chainId
|
223
|
-
signedTxHash: result.txSigned
|
223
|
+
chainId: result.chainId
|
224
224
|
}
|
225
225
|
});
|
226
226
|
return [3 /*break*/, 5];
|
@@ -228,100 +228,121 @@ function handleWalletBrowserEvent(event) {
|
|
228
228
|
error_1 = _b.sent();
|
229
229
|
handleErrorAndSendMessage(error_1, 'SDKinjectedConnectionCompleted');
|
230
230
|
return [3 /*break*/, 5];
|
231
|
-
case 5: return [3 /*break*/,
|
231
|
+
case 5: return [3 /*break*/, 37];
|
232
232
|
case 6:
|
233
233
|
payload = event.data.payload;
|
234
234
|
_b.label = 7;
|
235
235
|
case 7:
|
236
236
|
_b.trys.push([7, 9, , 10]);
|
237
|
-
return [4 /*yield*/,
|
237
|
+
return [4 /*yield*/, signedMessage(payload.address)];
|
238
238
|
case 8:
|
239
239
|
result = _b.sent();
|
240
240
|
if (result instanceof Error) {
|
241
241
|
throw result;
|
242
242
|
}
|
243
243
|
sendMessageToIframe({
|
244
|
-
type: '
|
244
|
+
type: 'SDKsignRequestCompleted',
|
245
245
|
payload: result
|
246
246
|
});
|
247
247
|
return [3 /*break*/, 10];
|
248
248
|
case 9:
|
249
249
|
error_2 = _b.sent();
|
250
|
-
handleErrorAndSendMessage(error_2, '
|
250
|
+
handleErrorAndSendMessage(error_2, 'SDKsignRequestCompleted');
|
251
251
|
return [3 /*break*/, 10];
|
252
|
-
case 10: return [3 /*break*/,
|
252
|
+
case 10: return [3 /*break*/, 37];
|
253
253
|
case 11:
|
254
254
|
payload = event.data.payload;
|
255
255
|
_b.label = 12;
|
256
256
|
case 12:
|
257
257
|
_b.trys.push([12, 14, , 15]);
|
258
|
-
return [4 /*yield*/,
|
258
|
+
return [4 /*yield*/, switchChainFromSDK(payload.chainId)];
|
259
259
|
case 13:
|
260
260
|
result = _b.sent();
|
261
261
|
if (result instanceof Error) {
|
262
262
|
throw result;
|
263
263
|
}
|
264
264
|
sendMessageToIframe({
|
265
|
-
type: '
|
265
|
+
type: 'SDKswitchChainCompleted',
|
266
266
|
payload: result
|
267
267
|
});
|
268
268
|
return [3 /*break*/, 15];
|
269
269
|
case 14:
|
270
270
|
error_3 = _b.sent();
|
271
|
-
handleErrorAndSendMessage(error_3, '
|
271
|
+
handleErrorAndSendMessage(error_3, 'SDKswitchChainCompleted');
|
272
272
|
return [3 /*break*/, 15];
|
273
|
-
case 15: return [3 /*break*/,
|
273
|
+
case 15: return [3 /*break*/, 37];
|
274
274
|
case 16:
|
275
275
|
payload = event.data.payload;
|
276
276
|
_b.label = 17;
|
277
277
|
case 17:
|
278
278
|
_b.trys.push([17, 19, , 20]);
|
279
|
-
return [4 /*yield*/,
|
279
|
+
return [4 /*yield*/, sendTransactionFromSDK(payload.toAddress, payload.amount, payload.decimalPlaces, payload.chainId, payload.account)];
|
280
280
|
case 18:
|
281
281
|
result = _b.sent();
|
282
282
|
if (result instanceof Error) {
|
283
283
|
throw result;
|
284
284
|
}
|
285
285
|
sendMessageToIframe({
|
286
|
-
type: '
|
286
|
+
type: 'SDKnativeTransferCompleted',
|
287
287
|
payload: result
|
288
288
|
});
|
289
289
|
return [3 /*break*/, 20];
|
290
290
|
case 19:
|
291
291
|
error_4 = _b.sent();
|
292
|
-
handleErrorAndSendMessage(error_4, '
|
292
|
+
handleErrorAndSendMessage(error_4, 'SDKnativeTransferCompleted');
|
293
293
|
return [3 /*break*/, 20];
|
294
|
-
case 20: return [3 /*break*/,
|
294
|
+
case 20: return [3 /*break*/, 37];
|
295
295
|
case 21:
|
296
296
|
payload = event.data.payload;
|
297
297
|
_b.label = 22;
|
298
298
|
case 22:
|
299
299
|
_b.trys.push([22, 24, , 25]);
|
300
|
-
return [4 /*yield*/, sendNonNativeTransactionFromSDK(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args
|
300
|
+
return [4 /*yield*/, sendNonNativeTransactionFromSDK(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args)];
|
301
301
|
case 23:
|
302
302
|
result = _b.sent();
|
303
303
|
if (result instanceof Error) {
|
304
304
|
throw result;
|
305
305
|
}
|
306
306
|
sendMessageToIframe({
|
307
|
-
type: '
|
308
|
-
payload:
|
309
|
-
txHash: result
|
310
|
-
}
|
307
|
+
type: 'SDKnonNativeTransferCompleted',
|
308
|
+
payload: result
|
311
309
|
});
|
312
310
|
return [3 /*break*/, 25];
|
313
311
|
case 24:
|
314
312
|
error_5 = _b.sent();
|
315
|
-
handleErrorAndSendMessage(error_5, '
|
313
|
+
handleErrorAndSendMessage(error_5, 'SDKnonNativeTransferCompleted');
|
316
314
|
return [3 /*break*/, 25];
|
317
|
-
case 25: return [3 /*break*/,
|
315
|
+
case 25: return [3 /*break*/, 37];
|
318
316
|
case 26:
|
319
317
|
payload = event.data.payload;
|
320
318
|
_b.label = 27;
|
321
319
|
case 27:
|
322
320
|
_b.trys.push([27, 29, , 30]);
|
323
|
-
return [4 /*yield*/, sendNonNativeTransactionFromSDK(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args)];
|
321
|
+
return [4 /*yield*/, sendNonNativeTransactionFromSDK(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args, payload.value)];
|
324
322
|
case 28:
|
323
|
+
result = _b.sent();
|
324
|
+
if (result instanceof Error) {
|
325
|
+
throw result;
|
326
|
+
}
|
327
|
+
sendMessageToIframe({
|
328
|
+
type: 'SDKnativeSmartDepositCompleted',
|
329
|
+
payload: {
|
330
|
+
txHash: result
|
331
|
+
}
|
332
|
+
});
|
333
|
+
return [3 /*break*/, 30];
|
334
|
+
case 29:
|
335
|
+
error_6 = _b.sent();
|
336
|
+
handleErrorAndSendMessage(error_6, 'SDKnativeSmartDepositCompleted');
|
337
|
+
return [3 /*break*/, 30];
|
338
|
+
case 30: return [3 /*break*/, 37];
|
339
|
+
case 31:
|
340
|
+
payload = event.data.payload;
|
341
|
+
_b.label = 32;
|
342
|
+
case 32:
|
343
|
+
_b.trys.push([32, 34, , 35]);
|
344
|
+
return [4 /*yield*/, sendNonNativeTransactionFromSDK(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args)];
|
345
|
+
case 33:
|
325
346
|
result = _b.sent();
|
326
347
|
if (result) {
|
327
348
|
sendMessageToIframe({
|
@@ -334,22 +355,22 @@ function handleWalletBrowserEvent(event) {
|
|
334
355
|
else {
|
335
356
|
throw new Error('Transfer failed');
|
336
357
|
}
|
337
|
-
return [3 /*break*/,
|
338
|
-
case
|
339
|
-
|
340
|
-
handleErrorAndSendMessage(
|
341
|
-
return [3 /*break*/,
|
342
|
-
case
|
343
|
-
case
|
358
|
+
return [3 /*break*/, 35];
|
359
|
+
case 34:
|
360
|
+
error_7 = _b.sent();
|
361
|
+
handleErrorAndSendMessage(error_7, 'SDKnonNativeSmartDepositCompleted');
|
362
|
+
return [3 /*break*/, 35];
|
363
|
+
case 35: return [3 /*break*/, 37];
|
364
|
+
case 36:
|
344
365
|
{
|
345
366
|
disconnectAllAccounts();
|
346
367
|
sendMessageToIframe({
|
347
368
|
type: 'SDKdisconnectSuccess'
|
348
369
|
});
|
349
|
-
return [3 /*break*/,
|
370
|
+
return [3 /*break*/, 37];
|
350
371
|
}
|
351
|
-
_b.label =
|
352
|
-
case
|
372
|
+
_b.label = 37;
|
373
|
+
case 37: return [2 /*return*/];
|
353
374
|
}
|
354
375
|
});
|
355
376
|
});
|
@@ -374,14 +395,10 @@ function eventsListener(event) {
|
|
374
395
|
});
|
375
396
|
}
|
376
397
|
function handleErrorAndSendMessage(error, messageType) {
|
377
|
-
var errorMessage = 'An unexpected error occurred';
|
378
|
-
if (error instanceof Error) {
|
379
|
-
errorMessage = error.message;
|
380
|
-
}
|
381
398
|
sendMessageToIframe({
|
382
399
|
type: messageType,
|
383
400
|
payload: {
|
384
|
-
error:
|
401
|
+
error: error
|
385
402
|
}
|
386
403
|
});
|
387
404
|
}
|
package/cjs/Link.js
CHANGED
@@ -192,21 +192,22 @@ function handleLinkEvent(event) {
|
|
192
192
|
}
|
193
193
|
function handleWalletBrowserEvent(event) {
|
194
194
|
return __awaiter(this, void 0, void 0, function () {
|
195
|
-
var _a, payload, result, error_1, payload, result, error_2, payload, result, error_3, payload, result, error_4, payload, result, error_5, payload, result, error_6;
|
195
|
+
var _a, payload, result, error_1, payload, result, error_2, payload, result, error_3, payload, result, error_4, payload, result, error_5, payload, result, error_6, payload, result, error_7;
|
196
196
|
return __generator(this, function (_b) {
|
197
197
|
switch (_b.label) {
|
198
198
|
case 0:
|
199
199
|
_a = event.data.type;
|
200
200
|
switch (_a) {
|
201
201
|
case 'walletBrowserInjectedWalletSelected': return [3 /*break*/, 1];
|
202
|
-
case '
|
203
|
-
case '
|
204
|
-
case '
|
205
|
-
case '
|
206
|
-
case '
|
207
|
-
case '
|
202
|
+
case 'walletBrowserSignRequest': return [3 /*break*/, 6];
|
203
|
+
case 'walletBrowserChainSwitchRequest': return [3 /*break*/, 11];
|
204
|
+
case 'walletBrowserNativeTransferRequest': return [3 /*break*/, 16];
|
205
|
+
case 'walletBrowserNonNativeTransferRequest': return [3 /*break*/, 21];
|
206
|
+
case 'walletBrowserNativeSmartDeposit': return [3 /*break*/, 26];
|
207
|
+
case 'walletBrowserNonNativeSmartDeposit': return [3 /*break*/, 31];
|
208
|
+
case 'walletBrowserDisconnect': return [3 /*break*/, 36];
|
208
209
|
}
|
209
|
-
return [3 /*break*/,
|
210
|
+
return [3 /*break*/, 37];
|
210
211
|
case 1:
|
211
212
|
payload = event.data.payload;
|
212
213
|
_b.label = 2;
|
@@ -222,8 +223,7 @@ function handleWalletBrowserEvent(event) {
|
|
222
223
|
type: 'SDKinjectedConnectionCompleted',
|
223
224
|
payload: {
|
224
225
|
accounts: result.accounts,
|
225
|
-
chainId: result.chainId
|
226
|
-
signedTxHash: result.txSigned
|
226
|
+
chainId: result.chainId
|
227
227
|
}
|
228
228
|
});
|
229
229
|
return [3 /*break*/, 5];
|
@@ -231,100 +231,121 @@ function handleWalletBrowserEvent(event) {
|
|
231
231
|
error_1 = _b.sent();
|
232
232
|
handleErrorAndSendMessage(error_1, 'SDKinjectedConnectionCompleted');
|
233
233
|
return [3 /*break*/, 5];
|
234
|
-
case 5: return [3 /*break*/,
|
234
|
+
case 5: return [3 /*break*/, 37];
|
235
235
|
case 6:
|
236
236
|
payload = event.data.payload;
|
237
237
|
_b.label = 7;
|
238
238
|
case 7:
|
239
239
|
_b.trys.push([7, 9, , 10]);
|
240
|
-
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.
|
240
|
+
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.signedMessage)(payload.address)];
|
241
241
|
case 8:
|
242
242
|
result = _b.sent();
|
243
243
|
if (result instanceof Error) {
|
244
244
|
throw result;
|
245
245
|
}
|
246
246
|
sendMessageToIframe({
|
247
|
-
type: '
|
247
|
+
type: 'SDKsignRequestCompleted',
|
248
248
|
payload: result
|
249
249
|
});
|
250
250
|
return [3 /*break*/, 10];
|
251
251
|
case 9:
|
252
252
|
error_2 = _b.sent();
|
253
|
-
handleErrorAndSendMessage(error_2, '
|
253
|
+
handleErrorAndSendMessage(error_2, 'SDKsignRequestCompleted');
|
254
254
|
return [3 /*break*/, 10];
|
255
|
-
case 10: return [3 /*break*/,
|
255
|
+
case 10: return [3 /*break*/, 37];
|
256
256
|
case 11:
|
257
257
|
payload = event.data.payload;
|
258
258
|
_b.label = 12;
|
259
259
|
case 12:
|
260
260
|
_b.trys.push([12, 14, , 15]);
|
261
|
-
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.
|
261
|
+
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.switchChainFromSDK)(payload.chainId)];
|
262
262
|
case 13:
|
263
263
|
result = _b.sent();
|
264
264
|
if (result instanceof Error) {
|
265
265
|
throw result;
|
266
266
|
}
|
267
267
|
sendMessageToIframe({
|
268
|
-
type: '
|
268
|
+
type: 'SDKswitchChainCompleted',
|
269
269
|
payload: result
|
270
270
|
});
|
271
271
|
return [3 /*break*/, 15];
|
272
272
|
case 14:
|
273
273
|
error_3 = _b.sent();
|
274
|
-
handleErrorAndSendMessage(error_3, '
|
274
|
+
handleErrorAndSendMessage(error_3, 'SDKswitchChainCompleted');
|
275
275
|
return [3 /*break*/, 15];
|
276
|
-
case 15: return [3 /*break*/,
|
276
|
+
case 15: return [3 /*break*/, 37];
|
277
277
|
case 16:
|
278
278
|
payload = event.data.payload;
|
279
279
|
_b.label = 17;
|
280
280
|
case 17:
|
281
281
|
_b.trys.push([17, 19, , 20]);
|
282
|
-
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.
|
282
|
+
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.sendTransactionFromSDK)(payload.toAddress, payload.amount, payload.decimalPlaces, payload.chainId, payload.account)];
|
283
283
|
case 18:
|
284
284
|
result = _b.sent();
|
285
285
|
if (result instanceof Error) {
|
286
286
|
throw result;
|
287
287
|
}
|
288
288
|
sendMessageToIframe({
|
289
|
-
type: '
|
289
|
+
type: 'SDKnativeTransferCompleted',
|
290
290
|
payload: result
|
291
291
|
});
|
292
292
|
return [3 /*break*/, 20];
|
293
293
|
case 19:
|
294
294
|
error_4 = _b.sent();
|
295
|
-
handleErrorAndSendMessage(error_4, '
|
295
|
+
handleErrorAndSendMessage(error_4, 'SDKnativeTransferCompleted');
|
296
296
|
return [3 /*break*/, 20];
|
297
|
-
case 20: return [3 /*break*/,
|
297
|
+
case 20: return [3 /*break*/, 37];
|
298
298
|
case 21:
|
299
299
|
payload = event.data.payload;
|
300
300
|
_b.label = 22;
|
301
301
|
case 22:
|
302
302
|
_b.trys.push([22, 24, , 25]);
|
303
|
-
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.sendNonNativeTransactionFromSDK)(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args
|
303
|
+
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.sendNonNativeTransactionFromSDK)(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args)];
|
304
304
|
case 23:
|
305
305
|
result = _b.sent();
|
306
306
|
if (result instanceof Error) {
|
307
307
|
throw result;
|
308
308
|
}
|
309
309
|
sendMessageToIframe({
|
310
|
-
type: '
|
311
|
-
payload:
|
312
|
-
txHash: result
|
313
|
-
}
|
310
|
+
type: 'SDKnonNativeTransferCompleted',
|
311
|
+
payload: result
|
314
312
|
});
|
315
313
|
return [3 /*break*/, 25];
|
316
314
|
case 24:
|
317
315
|
error_5 = _b.sent();
|
318
|
-
handleErrorAndSendMessage(error_5, '
|
316
|
+
handleErrorAndSendMessage(error_5, 'SDKnonNativeTransferCompleted');
|
319
317
|
return [3 /*break*/, 25];
|
320
|
-
case 25: return [3 /*break*/,
|
318
|
+
case 25: return [3 /*break*/, 37];
|
321
319
|
case 26:
|
322
320
|
payload = event.data.payload;
|
323
321
|
_b.label = 27;
|
324
322
|
case 27:
|
325
323
|
_b.trys.push([27, 29, , 30]);
|
326
|
-
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.sendNonNativeTransactionFromSDK)(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args)];
|
324
|
+
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.sendNonNativeTransactionFromSDK)(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args, payload.value)];
|
327
325
|
case 28:
|
326
|
+
result = _b.sent();
|
327
|
+
if (result instanceof Error) {
|
328
|
+
throw result;
|
329
|
+
}
|
330
|
+
sendMessageToIframe({
|
331
|
+
type: 'SDKnativeSmartDepositCompleted',
|
332
|
+
payload: {
|
333
|
+
txHash: result
|
334
|
+
}
|
335
|
+
});
|
336
|
+
return [3 /*break*/, 30];
|
337
|
+
case 29:
|
338
|
+
error_6 = _b.sent();
|
339
|
+
handleErrorAndSendMessage(error_6, 'SDKnativeSmartDepositCompleted');
|
340
|
+
return [3 /*break*/, 30];
|
341
|
+
case 30: return [3 /*break*/, 37];
|
342
|
+
case 31:
|
343
|
+
payload = event.data.payload;
|
344
|
+
_b.label = 32;
|
345
|
+
case 32:
|
346
|
+
_b.trys.push([32, 34, , 35]);
|
347
|
+
return [4 /*yield*/, (0, wagmiCoreConnectorsUtils_1.sendNonNativeTransactionFromSDK)(payload.address, JSON.parse(payload.abi), payload.functionName, payload.args)];
|
348
|
+
case 33:
|
328
349
|
result = _b.sent();
|
329
350
|
if (result) {
|
330
351
|
sendMessageToIframe({
|
@@ -337,22 +358,22 @@ function handleWalletBrowserEvent(event) {
|
|
337
358
|
else {
|
338
359
|
throw new Error('Transfer failed');
|
339
360
|
}
|
340
|
-
return [3 /*break*/,
|
341
|
-
case
|
342
|
-
|
343
|
-
handleErrorAndSendMessage(
|
344
|
-
return [3 /*break*/,
|
345
|
-
case
|
346
|
-
case
|
361
|
+
return [3 /*break*/, 35];
|
362
|
+
case 34:
|
363
|
+
error_7 = _b.sent();
|
364
|
+
handleErrorAndSendMessage(error_7, 'SDKnonNativeSmartDepositCompleted');
|
365
|
+
return [3 /*break*/, 35];
|
366
|
+
case 35: return [3 /*break*/, 37];
|
367
|
+
case 36:
|
347
368
|
{
|
348
369
|
(0, wagmiCoreConnectorsUtils_1.disconnectAllAccounts)();
|
349
370
|
sendMessageToIframe({
|
350
371
|
type: 'SDKdisconnectSuccess'
|
351
372
|
});
|
352
|
-
return [3 /*break*/,
|
373
|
+
return [3 /*break*/, 37];
|
353
374
|
}
|
354
|
-
_b.label =
|
355
|
-
case
|
375
|
+
_b.label = 37;
|
376
|
+
case 37: return [2 /*return*/];
|
356
377
|
}
|
357
378
|
});
|
358
379
|
});
|
@@ -377,14 +398,10 @@ function eventsListener(event) {
|
|
377
398
|
});
|
378
399
|
}
|
379
400
|
function handleErrorAndSendMessage(error, messageType) {
|
380
|
-
var errorMessage = 'An unexpected error occurred';
|
381
|
-
if (error instanceof Error) {
|
382
|
-
errorMessage = error.message;
|
383
|
-
}
|
384
401
|
sendMessageToIframe({
|
385
402
|
type: messageType,
|
386
403
|
payload: {
|
387
|
-
error:
|
404
|
+
error: error
|
388
405
|
}
|
389
406
|
});
|
390
407
|
}
|
package/cjs/utils/version.js
CHANGED
@@ -124,7 +124,7 @@ exports.getWagmiCoreInjectedData = getWagmiCoreInjectedData;
|
|
124
124
|
var connectToSpecificWallet = function (walletName) { return __awaiter(void 0, void 0, void 0, function () {
|
125
125
|
return __generator(this, function (_a) {
|
126
126
|
return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
|
127
|
-
var config, connectors, selectedConnector, result
|
127
|
+
var config, connectors, selectedConnector, result;
|
128
128
|
return __generator(this, function (_a) {
|
129
129
|
switch (_a.label) {
|
130
130
|
case 0: return [4 /*yield*/, configPromise];
|
@@ -143,16 +143,9 @@ var connectToSpecificWallet = function (walletName) { return __awaiter(void 0, v
|
|
143
143
|
return [4 /*yield*/, (0, core_1.connect)(config, { connector: selectedConnector })];
|
144
144
|
case 3:
|
145
145
|
result = _a.sent();
|
146
|
-
return [4 /*yield*/, (0, core_1.getAccount)(config)];
|
147
|
-
case 4:
|
148
|
-
accountInfo = _a.sent();
|
149
|
-
return [4 /*yield*/, (0, exports.signedMessage)(config, accountInfo)];
|
150
|
-
case 5:
|
151
|
-
txSigned = _a.sent();
|
152
146
|
return [2 /*return*/, {
|
153
147
|
accounts: __spreadArray([], result.accounts, true),
|
154
|
-
chainId: result.chainId
|
155
|
-
txSigned: txSigned
|
148
|
+
chainId: result.chainId
|
156
149
|
}];
|
157
150
|
}
|
158
151
|
});
|
@@ -160,20 +153,20 @@ var connectToSpecificWallet = function (walletName) { return __awaiter(void 0, v
|
|
160
153
|
});
|
161
154
|
}); };
|
162
155
|
exports.connectToSpecificWallet = connectToSpecificWallet;
|
163
|
-
var signedMessage = function (
|
156
|
+
var signedMessage = function (address) { return __awaiter(void 0, void 0, void 0, function () {
|
164
157
|
return __generator(this, function (_a) {
|
165
|
-
if (!accountInfo.address) {
|
166
|
-
return [2 /*return*/, new Error('Address not found')];
|
167
|
-
}
|
168
158
|
return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
|
169
|
-
var signedMessage;
|
159
|
+
var config, signedMessage;
|
170
160
|
return __generator(this, function (_a) {
|
171
161
|
switch (_a.label) {
|
172
|
-
case 0: return [4 /*yield*/,
|
173
|
-
account: accountInfo.address,
|
174
|
-
message: 'Sign to verify ownership of wallet'
|
175
|
-
})];
|
162
|
+
case 0: return [4 /*yield*/, configPromise];
|
176
163
|
case 1:
|
164
|
+
config = _a.sent();
|
165
|
+
return [4 /*yield*/, (0, core_1.signMessage)(config, {
|
166
|
+
account: address,
|
167
|
+
message: 'Sign to verify ownership of wallet'
|
168
|
+
})];
|
169
|
+
case 2:
|
177
170
|
signedMessage = _a.sent();
|
178
171
|
return [2 /*return*/, signedMessage];
|
179
172
|
}
|
@@ -350,12 +343,7 @@ function withWagmiErrorHandling(fn) {
|
|
350
343
|
return [2 /*return*/, handleWagmiError(error_1)];
|
351
344
|
}
|
352
345
|
else {
|
353
|
-
|
354
|
-
throw new Error(error_1.message);
|
355
|
-
}
|
356
|
-
else {
|
357
|
-
throw new Error('An unexpected error has occurred');
|
358
|
-
}
|
346
|
+
throw error_1;
|
359
347
|
}
|
360
348
|
return [3 /*break*/, 3];
|
361
349
|
case 3: return [2 /*return*/];
|
@@ -389,13 +377,7 @@ var handleWagmiError = function (error) {
|
|
389
377
|
return handleBaseError(error);
|
390
378
|
}
|
391
379
|
else {
|
392
|
-
|
393
|
-
if (error instanceof Error) {
|
394
|
-
throw new Error(error.message);
|
395
|
-
}
|
396
|
-
else {
|
397
|
-
throw new Error('An unexpected error has occurred');
|
398
|
-
}
|
380
|
+
throw error;
|
399
381
|
}
|
400
382
|
};
|
401
383
|
// All errors extend base error
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isWalletBrowserEventTypeKey = void 0;
|
4
4
|
var WALLET_BROWSER_EVENT_TYPE_KEYS = [
|
5
5
|
'walletBrowserInjectedWalletSelected',
|
6
|
+
'walletBrowserSignRequest',
|
6
7
|
'walletBrowserChainSwitchRequest',
|
7
8
|
'walletBrowserTransferBalanceRequest',
|
8
9
|
'walletBrowserNativeTransferRequest',
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@meshconnect/web-link-sdk",
|
3
|
-
"version": "2.1.0
|
3
|
+
"version": "2.1.0",
|
4
4
|
"description": "A client-side JS library for integrating with Mesh Connect",
|
5
5
|
"license": "MIT",
|
6
6
|
"repository": "https://github.com/FrontFin/mesh-web-sdk.git",
|
@@ -21,7 +21,7 @@
|
|
21
21
|
"util": "^0.12.4"
|
22
22
|
},
|
23
23
|
"dependencies": {
|
24
|
-
"@meshconnect/node-api": "^2.0.
|
24
|
+
"@meshconnect/node-api": "^2.0.6",
|
25
25
|
"@wagmi/core": "^2.11.2",
|
26
26
|
"viem": "^2.x",
|
27
27
|
"@wagmi/connectors": "^5.0.14"
|
package/utils/types.d.ts
CHANGED
@@ -70,9 +70,7 @@ export interface WagmiInjectedConnectorData {
|
|
70
70
|
icon?: string;
|
71
71
|
uid: string;
|
72
72
|
}
|
73
|
-
export interface
|
74
|
-
accounts: string[];
|
75
|
-
chainId: number;
|
73
|
+
export interface WalletConnectSignedTxHash {
|
76
74
|
txSigned: Hash;
|
77
75
|
}
|
78
76
|
export interface IncomingConfig {
|
package/utils/version.d.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export declare const sdkVersion = "2.1.0
|
1
|
+
export declare const sdkVersion = "2.1.0";
|
package/utils/version.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export var sdkVersion = '2.1.0
|
1
|
+
export var sdkVersion = '2.1.0';
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import { type
|
2
|
-
import { WagmiInjectedConnectorData,
|
1
|
+
import { type GetBalanceReturnType, type ConnectReturnType } from '@wagmi/core';
|
2
|
+
import { WagmiInjectedConnectorData, Abi } from './types';
|
3
3
|
import { Hash, Chain } from 'viem';
|
4
4
|
export declare const getWagmiCoreInjectedData: () => Promise<WagmiInjectedConnectorData[] | Error>;
|
5
|
-
export declare const connectToSpecificWallet: (walletName: string) => Promise<
|
6
|
-
export declare const signedMessage: (
|
5
|
+
export declare const connectToSpecificWallet: (walletName: string) => Promise<ConnectReturnType | Error>;
|
6
|
+
export declare const signedMessage: (address: `0x${string}`) => Promise<Hash | Error>;
|
7
7
|
export declare const walletBalance: (account: string, chainId: number) => Promise<GetBalanceReturnType | Error>;
|
8
8
|
export declare const switchChainFromSDK: (chainId: number) => Promise<Chain | Error>;
|
9
9
|
export declare const sendTransactionFromSDK: (toAddress: string, amount: number, decimalPlaces: number, chainId: number, account: string) => Promise<Hash | Error>;
|
@@ -120,7 +120,7 @@ export var getWagmiCoreInjectedData = function () { return __awaiter(void 0, voi
|
|
120
120
|
export var connectToSpecificWallet = function (walletName) { return __awaiter(void 0, void 0, void 0, function () {
|
121
121
|
return __generator(this, function (_a) {
|
122
122
|
return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
|
123
|
-
var config, connectors, selectedConnector, result
|
123
|
+
var config, connectors, selectedConnector, result;
|
124
124
|
return __generator(this, function (_a) {
|
125
125
|
switch (_a.label) {
|
126
126
|
case 0: return [4 /*yield*/, configPromise];
|
@@ -139,36 +139,29 @@ export var connectToSpecificWallet = function (walletName) { return __awaiter(vo
|
|
139
139
|
return [4 /*yield*/, connect(config, { connector: selectedConnector })];
|
140
140
|
case 3:
|
141
141
|
result = _a.sent();
|
142
|
-
return [4 /*yield*/, getAccount(config)];
|
143
|
-
case 4:
|
144
|
-
accountInfo = _a.sent();
|
145
|
-
return [4 /*yield*/, signedMessage(config, accountInfo)];
|
146
|
-
case 5:
|
147
|
-
txSigned = _a.sent();
|
148
142
|
return [2 /*return*/, {
|
149
143
|
accounts: __spreadArray([], result.accounts, true),
|
150
|
-
chainId: result.chainId
|
151
|
-
txSigned: txSigned
|
144
|
+
chainId: result.chainId
|
152
145
|
}];
|
153
146
|
}
|
154
147
|
});
|
155
148
|
}); })];
|
156
149
|
});
|
157
150
|
}); };
|
158
|
-
export var signedMessage = function (
|
151
|
+
export var signedMessage = function (address) { return __awaiter(void 0, void 0, void 0, function () {
|
159
152
|
return __generator(this, function (_a) {
|
160
|
-
if (!accountInfo.address) {
|
161
|
-
return [2 /*return*/, new Error('Address not found')];
|
162
|
-
}
|
163
153
|
return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
|
164
|
-
var signedMessage;
|
154
|
+
var config, signedMessage;
|
165
155
|
return __generator(this, function (_a) {
|
166
156
|
switch (_a.label) {
|
167
|
-
case 0: return [4 /*yield*/,
|
168
|
-
account: accountInfo.address,
|
169
|
-
message: 'Sign to verify ownership of wallet'
|
170
|
-
})];
|
157
|
+
case 0: return [4 /*yield*/, configPromise];
|
171
158
|
case 1:
|
159
|
+
config = _a.sent();
|
160
|
+
return [4 /*yield*/, signMessage(config, {
|
161
|
+
account: address,
|
162
|
+
message: 'Sign to verify ownership of wallet'
|
163
|
+
})];
|
164
|
+
case 2:
|
172
165
|
signedMessage = _a.sent();
|
173
166
|
return [2 /*return*/, signedMessage];
|
174
167
|
}
|
@@ -339,12 +332,7 @@ function withWagmiErrorHandling(fn) {
|
|
339
332
|
return [2 /*return*/, handleWagmiError(error_1)];
|
340
333
|
}
|
341
334
|
else {
|
342
|
-
|
343
|
-
throw new Error(error_1.message);
|
344
|
-
}
|
345
|
-
else {
|
346
|
-
throw new Error('An unexpected error has occurred');
|
347
|
-
}
|
335
|
+
throw error_1;
|
348
336
|
}
|
349
337
|
return [3 /*break*/, 3];
|
350
338
|
case 3: return [2 /*return*/];
|
@@ -378,13 +366,7 @@ var handleWagmiError = function (error) {
|
|
378
366
|
return handleBaseError(error);
|
379
367
|
}
|
380
368
|
else {
|
381
|
-
|
382
|
-
if (error instanceof Error) {
|
383
|
-
throw new Error(error.message);
|
384
|
-
}
|
385
|
-
else {
|
386
|
-
throw new Error('An unexpected error has occurred');
|
387
|
-
}
|
369
|
+
throw error;
|
388
370
|
}
|
389
371
|
};
|
390
372
|
// All errors extend base error
|
@@ -1,5 +1,5 @@
|
|
1
|
-
export type WalletBrowserEventType = WalletBrowserInjectedWalletSelected | WalletBrowserChainSwitchRequest | WalletBrowserTransferBalanceRequest | WalletBrowserNativeTransferRequest | WalletBrowserNonNativeTransferRequest | WalletBrowserNativeSmartDeposit | WalletBrowserNonNativeSmartDeposit | WalletBrowserDisconnect;
|
2
|
-
declare const WALLET_BROWSER_EVENT_TYPE_KEYS: readonly ["walletBrowserInjectedWalletSelected", "walletBrowserChainSwitchRequest", "walletBrowserTransferBalanceRequest", "walletBrowserNativeTransferRequest", "walletBrowserNonNativeTransferRequest", "walletBrowserNativeSmartDeposit", "walletBrowserNonNativeSmartDeposit", "walletBrowserDisconnect"];
|
1
|
+
export type WalletBrowserEventType = WalletBrowserInjectedWalletSelected | WalletBrowserSignRequest | WalletBrowserChainSwitchRequest | WalletBrowserTransferBalanceRequest | WalletBrowserNativeTransferRequest | WalletBrowserNonNativeTransferRequest | WalletBrowserNativeSmartDeposit | WalletBrowserNonNativeSmartDeposit | WalletBrowserDisconnect;
|
2
|
+
declare const WALLET_BROWSER_EVENT_TYPE_KEYS: readonly ["walletBrowserInjectedWalletSelected", "walletBrowserSignRequest", "walletBrowserChainSwitchRequest", "walletBrowserTransferBalanceRequest", "walletBrowserNativeTransferRequest", "walletBrowserNonNativeTransferRequest", "walletBrowserNativeSmartDeposit", "walletBrowserNonNativeSmartDeposit", "walletBrowserDisconnect"];
|
3
3
|
export type WalletBrowserEventTypeKeys = (typeof WALLET_BROWSER_EVENT_TYPE_KEYS)[number];
|
4
4
|
export declare function isWalletBrowserEventTypeKey(key: string): key is WalletBrowserEventTypeKeys;
|
5
5
|
interface WalletBrowserEventBase {
|
@@ -11,6 +11,12 @@ export interface WalletBrowserInjectedWalletSelected extends WalletBrowserEventB
|
|
11
11
|
integrationName: string;
|
12
12
|
};
|
13
13
|
}
|
14
|
+
export interface WalletBrowserSignRequest extends WalletBrowserEventBase {
|
15
|
+
type: 'walletBrowserSignRequest';
|
16
|
+
payload: {
|
17
|
+
address: `0x${string}`;
|
18
|
+
};
|
19
|
+
}
|
14
20
|
export interface WalletBrowserChainSwitchRequest extends WalletBrowserEventBase {
|
15
21
|
type: 'walletBrowserChainSwitchRequest';
|
16
22
|
payload: {
|