@meshconnect/web-link-sdk 3.2.1 → 3.2.3
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 +47 -25
- package/package.json +1 -1
- package/utils/connectors/evm/transactions.d.ts +1 -0
- package/utils/connectors/evm/transactions.js +20 -0
- package/utils/connectors/evm/walletConnection.js +34 -21
- package/utils/types.d.ts +4 -0
- package/utils/version.d.ts +1 -1
- package/utils/version.js +1 -1
- package/utils/wallet/EVMWalletStrategy.d.ts +6 -1
- package/utils/wallet/EVMWalletStrategy.js +14 -1
- package/utils/wallet/SolanaWalletStrategy.d.ts +5 -0
- package/utils/wallet/SolanaWalletStrategy.js +3 -0
- package/utils/wallet/WalletStrategy.d.ts +11 -1
- package/utils/wallet-browser-event-types.d.ts +9 -2
- package/utils/wallet-browser-event-types.js +2 -1
package/Link.js
CHANGED
@@ -159,7 +159,7 @@ function handleLinkEvent(event) {
|
|
159
159
|
}
|
160
160
|
function handleWalletBrowserEvent(event) {
|
161
161
|
return __awaiter(this, void 0, void 0, function () {
|
162
|
-
var walletFactory, _a, payload, networkType, strategy, result, error_1, payload, networkType, strategy, result, error_2, payload, networkType, strategy, result, error_3, payload, networkType, strategy, result, error_4, payload, getResponseType, networkType, strategy, result, responseType, error_5, errorType, payload, responseType, networkType, strategy, result, error_6, payload, networkType, strategy, error_7;
|
162
|
+
var walletFactory, _a, payload, networkType, strategy, result, error_1, payload, networkType, strategy, result, error_2, payload, networkType, strategy, result, error_3, payload, networkType, strategy, result, error_4, payload, getResponseType, networkType, strategy, result, responseType, error_5, errorType, payload, responseType, networkType, strategy, result, error_6, payload, responseType, networkType, strategy, result, error_7, payload, networkType, strategy, error_8;
|
163
163
|
var _b;
|
164
164
|
return __generator(this, function (_c) {
|
165
165
|
switch (_c.label) {
|
@@ -175,9 +175,10 @@ function handleWalletBrowserEvent(event) {
|
|
175
175
|
case 'walletBrowserNativeSmartDeposit': return [3 /*break*/, 21];
|
176
176
|
case 'walletBrowserNonNativeSmartDeposit': return [3 /*break*/, 21];
|
177
177
|
case 'walletBrowserTransactionBatchRequest': return [3 /*break*/, 26];
|
178
|
-
case '
|
178
|
+
case 'walletBrowserWalletCapabilities': return [3 /*break*/, 31];
|
179
|
+
case 'walletBrowserDisconnect': return [3 /*break*/, 36];
|
179
180
|
}
|
180
|
-
return [3 /*break*/,
|
181
|
+
return [3 /*break*/, 44];
|
181
182
|
case 1:
|
182
183
|
payload = event.data.payload;
|
183
184
|
_c.label = 2;
|
@@ -202,7 +203,7 @@ function handleWalletBrowserEvent(event) {
|
|
202
203
|
console.error('Connection error:', error_1);
|
203
204
|
handleErrorAndSendMessage(error_1, 'SDKinjectedConnectionCompleted');
|
204
205
|
return [3 /*break*/, 5];
|
205
|
-
case 5: return [3 /*break*/,
|
206
|
+
case 5: return [3 /*break*/, 44];
|
206
207
|
case 6:
|
207
208
|
payload = event.data.payload;
|
208
209
|
_c.label = 7;
|
@@ -222,7 +223,7 @@ function handleWalletBrowserEvent(event) {
|
|
222
223
|
error_2 = _c.sent();
|
223
224
|
handleErrorAndSendMessage(error_2, 'SDKsignRequestCompleted');
|
224
225
|
return [3 /*break*/, 10];
|
225
|
-
case 10: return [3 /*break*/,
|
226
|
+
case 10: return [3 /*break*/, 44];
|
226
227
|
case 11:
|
227
228
|
payload = event.data.payload;
|
228
229
|
_c.label = 12;
|
@@ -247,7 +248,7 @@ function handleWalletBrowserEvent(event) {
|
|
247
248
|
console.error('Chain switch failed:', error_3);
|
248
249
|
handleErrorAndSendMessage(error_3, 'SDKswitchChainCompleted');
|
249
250
|
return [3 /*break*/, 15];
|
250
|
-
case 15: return [3 /*break*/,
|
251
|
+
case 15: return [3 /*break*/, 44];
|
251
252
|
case 16:
|
252
253
|
payload = event.data.payload;
|
253
254
|
_c.label = 17;
|
@@ -267,7 +268,7 @@ function handleWalletBrowserEvent(event) {
|
|
267
268
|
error_4 = _c.sent();
|
268
269
|
handleErrorAndSendMessage(error_4, 'SDKnativeTransferCompleted');
|
269
270
|
return [3 /*break*/, 20];
|
270
|
-
case 20: return [3 /*break*/,
|
271
|
+
case 20: return [3 /*break*/, 44];
|
271
272
|
case 21:
|
272
273
|
payload = event.data.payload;
|
273
274
|
getResponseType = function (type) {
|
@@ -303,7 +304,7 @@ function handleWalletBrowserEvent(event) {
|
|
303
304
|
errorType = getResponseType(event.data.type);
|
304
305
|
handleErrorAndSendMessage(error_5, errorType);
|
305
306
|
return [3 /*break*/, 25];
|
306
|
-
case 25: return [3 /*break*/,
|
307
|
+
case 25: return [3 /*break*/, 44];
|
307
308
|
case 26:
|
308
309
|
payload = event.data.payload;
|
309
310
|
responseType = 'SDKtransactionBatchCompleted';
|
@@ -326,41 +327,62 @@ function handleWalletBrowserEvent(event) {
|
|
326
327
|
error_6 = _c.sent();
|
327
328
|
handleErrorAndSendMessage(error_6, responseType);
|
328
329
|
return [3 /*break*/, 30];
|
329
|
-
case 30: return [3 /*break*/,
|
330
|
+
case 30: return [3 /*break*/, 44];
|
330
331
|
case 31:
|
331
332
|
payload = event.data.payload;
|
333
|
+
responseType = 'SDKwalletCapabilitiesCompleted';
|
332
334
|
_c.label = 32;
|
333
335
|
case 32:
|
334
|
-
_c.trys.push([32,
|
335
|
-
|
336
|
+
_c.trys.push([32, 34, , 35]);
|
337
|
+
networkType = (payload.from.startsWith('0x') ? 'evm' : 'solana');
|
338
|
+
strategy = walletFactory.getStrategy(networkType);
|
339
|
+
return [4 /*yield*/, strategy.getWalletCapabilities(payload)];
|
340
|
+
case 33:
|
341
|
+
result = _c.sent();
|
342
|
+
sendMessageToIframe({
|
343
|
+
type: responseType,
|
344
|
+
payload: result
|
345
|
+
});
|
346
|
+
return [3 /*break*/, 35];
|
347
|
+
case 34:
|
348
|
+
error_7 = _c.sent();
|
349
|
+
handleErrorAndSendMessage(error_7, responseType);
|
350
|
+
return [3 /*break*/, 35];
|
351
|
+
case 35: return [3 /*break*/, 44];
|
352
|
+
case 36:
|
353
|
+
payload = event.data.payload;
|
354
|
+
_c.label = 37;
|
355
|
+
case 37:
|
356
|
+
_c.trys.push([37, 42, , 43]);
|
357
|
+
if (!(payload === null || payload === void 0 ? void 0 : payload.networkType)) return [3 /*break*/, 39];
|
336
358
|
networkType = (payload.networkType === 'solana' ? 'solana' : 'evm');
|
337
359
|
strategy = walletFactory.getStrategy(networkType);
|
338
360
|
return [4 /*yield*/, strategy.disconnect(payload)];
|
339
|
-
case
|
361
|
+
case 38:
|
340
362
|
_c.sent();
|
341
|
-
return [3 /*break*/,
|
342
|
-
case
|
363
|
+
return [3 /*break*/, 41];
|
364
|
+
case 39:
|
343
365
|
// Disconnect from all if no specific network type
|
344
366
|
return [4 /*yield*/, Promise.all([
|
345
367
|
walletFactory.getStrategy('solana').disconnect(payload),
|
346
368
|
walletFactory.getStrategy('evm').disconnect(payload)
|
347
369
|
])];
|
348
|
-
case
|
370
|
+
case 40:
|
349
371
|
// Disconnect from all if no specific network type
|
350
372
|
_c.sent();
|
351
|
-
_c.label =
|
352
|
-
case
|
373
|
+
_c.label = 41;
|
374
|
+
case 41:
|
353
375
|
sendMessageToIframe({
|
354
376
|
type: 'SDKdisconnectSuccess'
|
355
377
|
});
|
356
|
-
return [3 /*break*/,
|
357
|
-
case
|
358
|
-
|
359
|
-
console.error('Error during disconnect:',
|
360
|
-
handleErrorAndSendMessage(
|
361
|
-
return [3 /*break*/,
|
362
|
-
case
|
363
|
-
case
|
378
|
+
return [3 /*break*/, 43];
|
379
|
+
case 42:
|
380
|
+
error_8 = _c.sent();
|
381
|
+
console.error('Error during disconnect:', error_8);
|
382
|
+
handleErrorAndSendMessage(error_8, 'SDKdisconnectSuccess');
|
383
|
+
return [3 /*break*/, 43];
|
384
|
+
case 43: return [3 /*break*/, 44];
|
385
|
+
case 44: return [2 /*return*/];
|
364
386
|
}
|
365
387
|
});
|
366
388
|
});
|
package/package.json
CHANGED
@@ -274,3 +274,23 @@ export var sendEVMTransactionBatch = function (params) { return __awaiter(void 0
|
|
274
274
|
}
|
275
275
|
});
|
276
276
|
}); };
|
277
|
+
export var getWalletCapabilities = function (from, chainId) { return __awaiter(void 0, void 0, void 0, function () {
|
278
|
+
var activeRawProvider, provider, capabilities;
|
279
|
+
return __generator(this, function (_a) {
|
280
|
+
switch (_a.label) {
|
281
|
+
case 0:
|
282
|
+
activeRawProvider = getActiveRawProvider();
|
283
|
+
if (!activeRawProvider) {
|
284
|
+
throw new Error('No active EVM provider');
|
285
|
+
}
|
286
|
+
provider = new ethers.BrowserProvider(activeRawProvider);
|
287
|
+
return [4 /*yield*/, provider.send('wallet_getCapabilities', [
|
288
|
+
from,
|
289
|
+
[chainId]
|
290
|
+
])];
|
291
|
+
case 1:
|
292
|
+
capabilities = _a.sent();
|
293
|
+
return [2 /*return*/, capabilities[chainId]];
|
294
|
+
}
|
295
|
+
});
|
296
|
+
}); };
|
@@ -50,7 +50,10 @@ export var getEVMProvider = function (walletName, walletDetail) {
|
|
50
50
|
throw new Error('Wallet name is required');
|
51
51
|
}
|
52
52
|
var providers = findAvailableProviders();
|
53
|
-
var matchingProvider = providers.find(function (p) {
|
53
|
+
var matchingProvider = providers.find(function (p) {
|
54
|
+
return p.name.toLowerCase() === walletName.toLowerCase() ||
|
55
|
+
p.name.toLowerCase().includes(walletName.toLowerCase());
|
56
|
+
});
|
54
57
|
if (matchingProvider) {
|
55
58
|
return matchingProvider.injectedData.provider;
|
56
59
|
}
|
@@ -63,11 +66,11 @@ export var getEVMProvider = function (walletName, walletDetail) {
|
|
63
66
|
* Connects to an EVM wallet
|
64
67
|
*/
|
65
68
|
export var connectToEVMWallet = function (walletName, targetChainId, walletDetail) { return __awaiter(void 0, void 0, void 0, function () {
|
66
|
-
var provider, browserProvider, existingAccounts, signer, address, chainId, switchResult,
|
69
|
+
var provider, browserProvider, existingAccounts, error_1, signer, address, chainId, switchResult, error_2;
|
67
70
|
return __generator(this, function (_a) {
|
68
71
|
switch (_a.label) {
|
69
72
|
case 0:
|
70
|
-
_a.trys.push([0,
|
73
|
+
_a.trys.push([0, 12, , 13]);
|
71
74
|
provider = void 0;
|
72
75
|
try {
|
73
76
|
provider = getEVMProvider(walletName, walletDetail);
|
@@ -77,46 +80,56 @@ export var connectToEVMWallet = function (walletName, targetChainId, walletDetai
|
|
77
80
|
}
|
78
81
|
browserProvider = new ethers.BrowserProvider(provider);
|
79
82
|
setActiveEVMProvider(browserProvider, provider);
|
80
|
-
|
83
|
+
existingAccounts = void 0;
|
84
|
+
_a.label = 1;
|
81
85
|
case 1:
|
86
|
+
_a.trys.push([1, 3, , 4]);
|
87
|
+
return [4 /*yield*/, provider.request({ method: 'eth_accounts' })];
|
88
|
+
case 2:
|
82
89
|
existingAccounts = _a.sent();
|
83
|
-
|
90
|
+
return [3 /*break*/, 4];
|
91
|
+
case 3:
|
92
|
+
error_1 = _a.sent();
|
93
|
+
existingAccounts = [];
|
94
|
+
return [3 /*break*/, 4];
|
95
|
+
case 4:
|
96
|
+
if (!(!existingAccounts || existingAccounts.length === 0)) return [3 /*break*/, 6];
|
84
97
|
return [4 /*yield*/, browserProvider.send('eth_requestAccounts', [])];
|
85
|
-
case
|
98
|
+
case 5:
|
86
99
|
_a.sent();
|
87
|
-
_a.label =
|
88
|
-
case
|
89
|
-
case
|
100
|
+
_a.label = 6;
|
101
|
+
case 6: return [4 /*yield*/, browserProvider.getSigner()];
|
102
|
+
case 7:
|
90
103
|
signer = _a.sent();
|
91
104
|
return [4 /*yield*/, signer.getAddress()];
|
92
|
-
case
|
105
|
+
case 8:
|
93
106
|
address = _a.sent();
|
94
107
|
return [4 /*yield*/, browserProvider
|
95
108
|
.getNetwork()
|
96
109
|
.then(function (network) { return Number(network.chainId); })];
|
97
|
-
case
|
110
|
+
case 9:
|
98
111
|
chainId = _a.sent();
|
99
|
-
if (!(targetChainId && chainId !== targetChainId)) return [3 /*break*/,
|
112
|
+
if (!(targetChainId && chainId !== targetChainId)) return [3 /*break*/, 11];
|
100
113
|
return [4 /*yield*/, switchEVMChain(targetChainId, provider)];
|
101
|
-
case
|
114
|
+
case 10:
|
102
115
|
switchResult = _a.sent();
|
103
116
|
if (switchResult instanceof Error) {
|
104
117
|
throw switchResult;
|
105
118
|
}
|
106
119
|
chainId = switchResult.chainId;
|
107
|
-
_a.label =
|
108
|
-
case
|
120
|
+
_a.label = 11;
|
121
|
+
case 11: return [2 /*return*/, {
|
109
122
|
accounts: [address],
|
110
123
|
chainId: chainId,
|
111
124
|
isConnected: true
|
112
125
|
}];
|
113
|
-
case
|
114
|
-
|
115
|
-
console.error('EVM wallet connection error:',
|
116
|
-
return [2 /*return*/,
|
117
|
-
?
|
126
|
+
case 12:
|
127
|
+
error_2 = _a.sent();
|
128
|
+
console.error('EVM wallet connection error:', error_2);
|
129
|
+
return [2 /*return*/, error_2 instanceof Error
|
130
|
+
? error_2
|
118
131
|
: new Error("Failed to connect to ".concat(walletName, " wallet"))];
|
119
|
-
case
|
132
|
+
case 13: return [2 /*return*/];
|
120
133
|
}
|
121
134
|
});
|
122
135
|
}); };
|
package/utils/types.d.ts
CHANGED
@@ -149,6 +149,10 @@ export interface TransactionBatchPayload {
|
|
149
149
|
data?: string;
|
150
150
|
}[];
|
151
151
|
}
|
152
|
+
export interface WalletCapabilitiesPayload {
|
153
|
+
from: string;
|
154
|
+
chainId: string;
|
155
|
+
}
|
152
156
|
export interface DisconnectPayload {
|
153
157
|
networkType?: string;
|
154
158
|
walletName?: string;
|
package/utils/version.d.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export declare const sdkVersion = "3.2.
|
1
|
+
export declare const sdkVersion = "3.2.3";
|
package/utils/version.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export var sdkVersion = '3.2.
|
1
|
+
export var sdkVersion = '3.2.3';
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { BaseWalletStrategy } from './WalletStrategy';
|
2
|
-
import { WalletBrowserPayload, SignRequestPayload, ChainSwitchPayload, TransferPayload, SmartContractPayload, DisconnectPayload, TransactionBatchPayload } from '../types';
|
2
|
+
import { WalletBrowserPayload, SignRequestPayload, ChainSwitchPayload, TransferPayload, SmartContractPayload, DisconnectPayload, TransactionBatchPayload, WalletCapabilitiesPayload } from '../types';
|
3
3
|
export declare class EVMWalletStrategy extends BaseWalletStrategy {
|
4
4
|
connect(payload: WalletBrowserPayload): Promise<{
|
5
5
|
accounts: string[];
|
@@ -15,6 +15,11 @@ export declare class EVMWalletStrategy extends BaseWalletStrategy {
|
|
15
15
|
sendNativeTransfer(payload: TransferPayload): Promise<string>;
|
16
16
|
sendSmartContractInteraction(payload: SmartContractPayload): Promise<string>;
|
17
17
|
sendTransactionBatch(payload: TransactionBatchPayload): Promise<string>;
|
18
|
+
getWalletCapabilities(payload: WalletCapabilitiesPayload): Promise<{
|
19
|
+
atomic: {
|
20
|
+
status: string;
|
21
|
+
};
|
22
|
+
}>;
|
18
23
|
getProviders(): {
|
19
24
|
icon: string | undefined;
|
20
25
|
id: string;
|
@@ -50,7 +50,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
50
50
|
}
|
51
51
|
};
|
52
52
|
import { BaseWalletStrategy } from './WalletStrategy';
|
53
|
-
import { connectToEVMWallet, disconnectFromEVMWallet, signEVMMessage, sendEVMTransaction, sendEVMTokenTransaction, switchEVMChain, findAvailableProviders, sendEVMTransactionBatch } from '../connectors/evm';
|
53
|
+
import { connectToEVMWallet, disconnectFromEVMWallet, signEVMMessage, sendEVMTransaction, sendEVMTokenTransaction, switchEVMChain, findAvailableProviders, sendEVMTransactionBatch, getWalletCapabilities } from '../connectors/evm';
|
54
54
|
var EVMWalletStrategy = /** @class */ (function (_super) {
|
55
55
|
__extends(EVMWalletStrategy, _super);
|
56
56
|
function EVMWalletStrategy() {
|
@@ -214,6 +214,19 @@ var EVMWalletStrategy = /** @class */ (function (_super) {
|
|
214
214
|
});
|
215
215
|
});
|
216
216
|
};
|
217
|
+
EVMWalletStrategy.prototype.getWalletCapabilities = function (payload) {
|
218
|
+
return __awaiter(this, void 0, void 0, function () {
|
219
|
+
var result;
|
220
|
+
return __generator(this, function (_a) {
|
221
|
+
switch (_a.label) {
|
222
|
+
case 0: return [4 /*yield*/, getWalletCapabilities(payload.from, payload.chainId)];
|
223
|
+
case 1:
|
224
|
+
result = _a.sent();
|
225
|
+
return [2 /*return*/, result];
|
226
|
+
}
|
227
|
+
});
|
228
|
+
});
|
229
|
+
};
|
217
230
|
EVMWalletStrategy.prototype.getProviders = function () {
|
218
231
|
return findAvailableProviders().map(function (provider) { return ({
|
219
232
|
icon: provider.icon,
|
@@ -19,6 +19,11 @@ export declare class SolanaWalletStrategy extends BaseWalletStrategy {
|
|
19
19
|
sendNativeTransfer(payload: TransferPayload): Promise<string>;
|
20
20
|
sendSmartContractInteraction(payload: SmartContractPayload): Promise<string>;
|
21
21
|
sendTransactionBatch(): Promise<string>;
|
22
|
+
getWalletCapabilities(): Promise<{
|
23
|
+
atomic: {
|
24
|
+
status: string;
|
25
|
+
};
|
26
|
+
}>;
|
22
27
|
getProviders(): {
|
23
28
|
id: string;
|
24
29
|
type: string;
|
@@ -212,6 +212,9 @@ var SolanaWalletStrategy = /** @class */ (function (_super) {
|
|
212
212
|
SolanaWalletStrategy.prototype.sendTransactionBatch = function () {
|
213
213
|
throw new Error('Method not implemented.');
|
214
214
|
};
|
215
|
+
SolanaWalletStrategy.prototype.getWalletCapabilities = function () {
|
216
|
+
throw new Error('Method not implemented.');
|
217
|
+
};
|
215
218
|
SolanaWalletStrategy.prototype.getProviders = function () {
|
216
219
|
var solanaProviderMap = findAvailableSolanaProviders();
|
217
220
|
return Object.keys(solanaProviderMap).map(function (id) { return ({
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { WalletBrowserPayload, SignRequestPayload, ChainSwitchPayload, TransferPayload, SmartContractPayload, DisconnectPayload, TransactionBatchPayload } from '../types';
|
1
|
+
import { WalletBrowserPayload, SignRequestPayload, ChainSwitchPayload, TransferPayload, SmartContractPayload, DisconnectPayload, TransactionBatchPayload, WalletCapabilitiesPayload } from '../types';
|
2
2
|
export interface WalletStrategy {
|
3
3
|
connect(payload: WalletBrowserPayload): Promise<{
|
4
4
|
accounts: string[];
|
@@ -14,6 +14,11 @@ export interface WalletStrategy {
|
|
14
14
|
sendNativeTransfer(payload: TransferPayload): Promise<string>;
|
15
15
|
sendSmartContractInteraction(payload: SmartContractPayload): Promise<string>;
|
16
16
|
sendTransactionBatch(payload: TransactionBatchPayload): Promise<string>;
|
17
|
+
getWalletCapabilities(payload: WalletCapabilitiesPayload): Promise<{
|
18
|
+
atomic: {
|
19
|
+
status: string;
|
20
|
+
};
|
21
|
+
}>;
|
17
22
|
getProviders(): {
|
18
23
|
id: string;
|
19
24
|
type: string;
|
@@ -36,6 +41,11 @@ export declare abstract class BaseWalletStrategy implements WalletStrategy {
|
|
36
41
|
abstract sendNativeTransfer(payload: TransferPayload): Promise<string>;
|
37
42
|
abstract sendSmartContractInteraction(payload: SmartContractPayload): Promise<string>;
|
38
43
|
abstract sendTransactionBatch(payload: TransactionBatchPayload): Promise<string>;
|
44
|
+
abstract getWalletCapabilities(payload: WalletCapabilitiesPayload): Promise<{
|
45
|
+
atomic: {
|
46
|
+
status: string;
|
47
|
+
};
|
48
|
+
}>;
|
39
49
|
abstract getProviders(): {
|
40
50
|
id: string;
|
41
51
|
type: string;
|
@@ -1,5 +1,5 @@
|
|
1
|
-
export type WalletBrowserEventType = WalletBrowserInjectedWalletSelected | WalletBrowserSignRequest | WalletBrowserChainSwitchRequest | WalletBrowserTransferBalanceRequest | WalletBrowserNativeTransferRequest | WalletBrowserNonNativeTransferRequest | WalletBrowserNativeSmartDeposit | WalletBrowserNonNativeSmartDeposit | WalletBrowserDisconnect | WalletBrowserTransactionBatch;
|
2
|
-
declare const WALLET_BROWSER_EVENT_TYPE_KEYS: readonly ["walletBrowserInjectedWalletSelected", "walletBrowserSignRequest", "walletBrowserChainSwitchRequest", "walletBrowserTransferBalanceRequest", "walletBrowserNativeTransferRequest", "walletBrowserNonNativeTransferRequest", "walletBrowserNativeSmartDeposit", "walletBrowserNonNativeSmartDeposit", "walletBrowserDisconnect", "walletBrowserTransactionBatchRequest"];
|
1
|
+
export type WalletBrowserEventType = WalletBrowserInjectedWalletSelected | WalletBrowserSignRequest | WalletBrowserChainSwitchRequest | WalletBrowserTransferBalanceRequest | WalletBrowserNativeTransferRequest | WalletBrowserNonNativeTransferRequest | WalletBrowserNativeSmartDeposit | WalletBrowserNonNativeSmartDeposit | WalletBrowserDisconnect | WalletBrowserTransactionBatch | WalletBrowserWalletCapabilities;
|
2
|
+
declare const WALLET_BROWSER_EVENT_TYPE_KEYS: readonly ["walletBrowserInjectedWalletSelected", "walletBrowserSignRequest", "walletBrowserChainSwitchRequest", "walletBrowserTransferBalanceRequest", "walletBrowserNativeTransferRequest", "walletBrowserNonNativeTransferRequest", "walletBrowserNativeSmartDeposit", "walletBrowserNonNativeSmartDeposit", "walletBrowserDisconnect", "walletBrowserTransactionBatchRequest", "walletBrowserWalletCapabilities"];
|
3
3
|
export type NetworkType = 'unknown' | 'evm' | 'solana' | 'bitcoin' | 'cardano' | 'tron' | 'avalancheX' | 'tezos' | 'dogecoin' | 'ripple' | 'stellar' | 'litecoin' | 'sui' | 'aptos' | 'tvm';
|
4
4
|
export type WalletBrowserEventTypeKeys = (typeof WALLET_BROWSER_EVENT_TYPE_KEYS)[number];
|
5
5
|
export declare function isWalletBrowserEventTypeKey(key: string): key is WalletBrowserEventTypeKeys;
|
@@ -91,4 +91,11 @@ export interface WalletBrowserTransactionBatch extends WalletBrowserEventBase {
|
|
91
91
|
}[];
|
92
92
|
};
|
93
93
|
}
|
94
|
+
export interface WalletBrowserWalletCapabilities extends WalletBrowserEventBase {
|
95
|
+
type: 'walletBrowserWalletCapabilities';
|
96
|
+
payload: {
|
97
|
+
from: string;
|
98
|
+
chainId: string;
|
99
|
+
};
|
100
|
+
}
|
94
101
|
export {};
|
@@ -8,7 +8,8 @@ var WALLET_BROWSER_EVENT_TYPE_KEYS = [
|
|
8
8
|
'walletBrowserNativeSmartDeposit',
|
9
9
|
'walletBrowserNonNativeSmartDeposit',
|
10
10
|
'walletBrowserDisconnect',
|
11
|
-
'walletBrowserTransactionBatchRequest'
|
11
|
+
'walletBrowserTransactionBatchRequest',
|
12
|
+
'walletBrowserWalletCapabilities'
|
12
13
|
];
|
13
14
|
export function isWalletBrowserEventTypeKey(key) {
|
14
15
|
return WALLET_BROWSER_EVENT_TYPE_KEYS.includes(key);
|