@meshconnect/web-link-sdk 2.0.5 → 2.1.0-rc.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.
@@ -0,0 +1,425 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
46
+ };
47
+ Object.defineProperty(exports, "__esModule", { value: true });
48
+ exports.disconnectAllAccounts = exports.sendNonNativeTransactionFromSDK = exports.sendTransactionFromSDK = exports.switchChainFromSDK = exports.walletBalance = exports.signedMessage = exports.connectToSpecificWallet = exports.getWagmiCoreInjectedData = void 0;
49
+ var core_1 = require("@wagmi/core");
50
+ var connectors_1 = require("@wagmi/connectors");
51
+ var viem_1 = require("viem");
52
+ var resolveConfigReady;
53
+ var configReady = new Promise(function (resolve) {
54
+ resolveConfigReady = resolve;
55
+ });
56
+ var setConfig = function (config) {
57
+ try {
58
+ var transports = {};
59
+ for (var chainId in config.transports) {
60
+ var urls = config.transports[chainId];
61
+ if (Array.isArray(urls)) {
62
+ // If the URL is an array, create a fallback transport with multiple transports
63
+ transports[chainId] = (0, core_1.fallback)(urls.map(function (url) { return (0, core_1.http)(url); }));
64
+ }
65
+ else {
66
+ // If the URL is a string, create a single HTTP transport
67
+ transports[chainId] = (0, core_1.http)(urls);
68
+ }
69
+ }
70
+ var chainsTuple = __spreadArray([], config.chains, true);
71
+ var dynamicConfig = (0, core_1.createConfig)({
72
+ chains: chainsTuple,
73
+ multiInjectedProviderDiscovery: true,
74
+ transports: transports,
75
+ connectors: [(0, connectors_1.injected)()]
76
+ });
77
+ resolveConfigReady(dynamicConfig);
78
+ }
79
+ catch (error) {
80
+ console.error('Error setting configuration:', error);
81
+ }
82
+ };
83
+ window.addEventListener('message', function (event) {
84
+ if (event.data.type === 'walletBrowserConfigInitialize') {
85
+ try {
86
+ var parsedConfig = JSON.parse(event.data.payload);
87
+ setConfig(parsedConfig);
88
+ }
89
+ catch (error) {
90
+ console.error('Error parsing configuration:', error);
91
+ }
92
+ }
93
+ });
94
+ var configPromise = configReady;
95
+ var getWagmiCoreInjectedData = function () { return __awaiter(void 0, void 0, void 0, function () {
96
+ return __generator(this, function (_a) {
97
+ return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
98
+ var config, connectors, mappedConnectors;
99
+ return __generator(this, function (_a) {
100
+ switch (_a.label) {
101
+ case 0: return [4 /*yield*/, configPromise];
102
+ case 1:
103
+ config = _a.sent();
104
+ return [4 /*yield*/, (0, core_1.getConnectors)(config)];
105
+ case 2:
106
+ connectors = _a.sent();
107
+ mappedConnectors = connectors.map(function (_a) {
108
+ var id = _a.id, name = _a.name, type = _a.type, uid = _a.uid, icon = _a.icon;
109
+ return ({
110
+ id: id,
111
+ name: name,
112
+ type: type,
113
+ uid: uid,
114
+ icon: icon || undefined
115
+ });
116
+ });
117
+ return [2 /*return*/, mappedConnectors];
118
+ }
119
+ });
120
+ }); })];
121
+ });
122
+ }); };
123
+ exports.getWagmiCoreInjectedData = getWagmiCoreInjectedData;
124
+ var connectToSpecificWallet = function (walletName) { return __awaiter(void 0, void 0, void 0, function () {
125
+ return __generator(this, function (_a) {
126
+ return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
127
+ var config, connectors, selectedConnector, result, accountInfo, txSigned;
128
+ return __generator(this, function (_a) {
129
+ switch (_a.label) {
130
+ case 0: return [4 /*yield*/, configPromise];
131
+ case 1:
132
+ config = _a.sent();
133
+ connectors = (0, core_1.getConnectors)(config);
134
+ selectedConnector = connectors.find(function (connector) {
135
+ return connector.name.toLowerCase() === walletName.toLowerCase();
136
+ });
137
+ if (!selectedConnector) {
138
+ throw new Error("No connector found for wallet: ".concat(walletName));
139
+ }
140
+ return [4 /*yield*/, disconnectCurrentAccount(config, selectedConnector)];
141
+ case 2:
142
+ _a.sent();
143
+ return [4 /*yield*/, (0, core_1.connect)(config, { connector: selectedConnector })];
144
+ case 3:
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
+ return [2 /*return*/, {
153
+ accounts: __spreadArray([], result.accounts, true),
154
+ chainId: result.chainId,
155
+ txSigned: txSigned
156
+ }];
157
+ }
158
+ });
159
+ }); })];
160
+ });
161
+ }); };
162
+ exports.connectToSpecificWallet = connectToSpecificWallet;
163
+ var signedMessage = function (config, accountInfo) { return __awaiter(void 0, void 0, void 0, function () {
164
+ return __generator(this, function (_a) {
165
+ if (!accountInfo.address) {
166
+ return [2 /*return*/, new Error('Address not found')];
167
+ }
168
+ return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
169
+ var signedMessage;
170
+ return __generator(this, function (_a) {
171
+ switch (_a.label) {
172
+ case 0: return [4 /*yield*/, (0, core_1.signMessage)(config, {
173
+ account: accountInfo.address,
174
+ message: 'Sign to verify ownership of wallet'
175
+ })];
176
+ case 1:
177
+ signedMessage = _a.sent();
178
+ return [2 /*return*/, signedMessage];
179
+ }
180
+ });
181
+ }); })];
182
+ });
183
+ }); };
184
+ exports.signedMessage = signedMessage;
185
+ var walletBalance = function (account, chainId) { return __awaiter(void 0, void 0, void 0, function () {
186
+ return __generator(this, function (_a) {
187
+ return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
188
+ var config, balance;
189
+ return __generator(this, function (_a) {
190
+ switch (_a.label) {
191
+ case 0: return [4 /*yield*/, configPromise];
192
+ case 1:
193
+ config = _a.sent();
194
+ return [4 /*yield*/, (0, core_1.getBalance)(config, {
195
+ address: account,
196
+ chainId: chainId
197
+ })];
198
+ case 2:
199
+ balance = _a.sent();
200
+ return [2 /*return*/, balance];
201
+ }
202
+ });
203
+ }); })];
204
+ });
205
+ }); };
206
+ exports.walletBalance = walletBalance;
207
+ var switchChainFromSDK = function (chainId) { return __awaiter(void 0, void 0, void 0, function () {
208
+ return __generator(this, function (_a) {
209
+ switch (_a.label) {
210
+ case 0: return [4 /*yield*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
211
+ var config, result;
212
+ return __generator(this, function (_a) {
213
+ switch (_a.label) {
214
+ case 0: return [4 /*yield*/, configPromise];
215
+ case 1:
216
+ config = _a.sent();
217
+ return [4 /*yield*/, (0, core_1.switchChain)(config, { chainId: chainId })];
218
+ case 2:
219
+ result = _a.sent();
220
+ return [2 /*return*/, result];
221
+ }
222
+ });
223
+ }); })];
224
+ case 1: return [2 /*return*/, _a.sent()];
225
+ }
226
+ });
227
+ }); };
228
+ exports.switchChainFromSDK = switchChainFromSDK;
229
+ var sendTransactionFromSDK = function (toAddress, amount, decimalPlaces, chainId, account) { return __awaiter(void 0, void 0, void 0, function () {
230
+ return __generator(this, function (_a) {
231
+ switch (_a.label) {
232
+ case 0: return [4 /*yield*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
233
+ var config, result;
234
+ return __generator(this, function (_a) {
235
+ switch (_a.label) {
236
+ case 0: return [4 /*yield*/, configPromise];
237
+ case 1:
238
+ config = _a.sent();
239
+ return [4 /*yield*/, (0, core_1.sendTransaction)(config, {
240
+ to: formatAddress(toAddress),
241
+ value: (0, viem_1.parseUnits)(amount.toFixed(decimalPlaces) || '0', decimalPlaces),
242
+ chainId: chainId,
243
+ account: formatAddress(account)
244
+ })];
245
+ case 2:
246
+ result = _a.sent();
247
+ return [2 /*return*/, result];
248
+ }
249
+ });
250
+ }); })];
251
+ case 1: return [2 /*return*/, _a.sent()];
252
+ }
253
+ });
254
+ }); };
255
+ exports.sendTransactionFromSDK = sendTransactionFromSDK;
256
+ var formatAddress = function (address) {
257
+ return address.startsWith('0x') ? address : "0x".concat(address);
258
+ };
259
+ var sendNonNativeTransactionFromSDK = function (address, abi, functionName, args, // eslint-disable-line @typescript-eslint/no-explicit-any
260
+ value) { return __awaiter(void 0, void 0, void 0, function () {
261
+ return __generator(this, function (_a) {
262
+ switch (_a.label) {
263
+ case 0: return [4 /*yield*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
264
+ var config, connector, request, result;
265
+ return __generator(this, function (_a) {
266
+ switch (_a.label) {
267
+ case 0: return [4 /*yield*/, configPromise];
268
+ case 1:
269
+ config = _a.sent();
270
+ return [4 /*yield*/, (0, core_1.getAccount)(config)];
271
+ case 2:
272
+ connector = (_a.sent()).connector;
273
+ return [4 /*yield*/, (0, core_1.simulateContract)(config, {
274
+ address: formatAddress(address),
275
+ abi: abi,
276
+ functionName: functionName,
277
+ args: args,
278
+ value: value,
279
+ connector: connector
280
+ })];
281
+ case 3:
282
+ request = (_a.sent()).request;
283
+ return [4 /*yield*/, (0, core_1.writeContract)(config, request)];
284
+ case 4:
285
+ result = _a.sent();
286
+ return [2 /*return*/, result];
287
+ }
288
+ });
289
+ }); })];
290
+ case 1: return [2 /*return*/, _a.sent()];
291
+ }
292
+ });
293
+ }); };
294
+ exports.sendNonNativeTransactionFromSDK = sendNonNativeTransactionFromSDK;
295
+ var disconnectCurrentAccount = function (config, currentConnector) { return __awaiter(void 0, void 0, void 0, function () {
296
+ return __generator(this, function (_a) {
297
+ switch (_a.label) {
298
+ case 0: return [4 /*yield*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
299
+ return __generator(this, function (_a) {
300
+ switch (_a.label) {
301
+ case 0: return [4 /*yield*/, (0, core_1.disconnect)(config, { connector: currentConnector })];
302
+ case 1:
303
+ _a.sent();
304
+ return [2 /*return*/];
305
+ }
306
+ });
307
+ }); })];
308
+ case 1: return [2 /*return*/, _a.sent()];
309
+ }
310
+ });
311
+ }); };
312
+ var disconnectAllAccounts = function () { return __awaiter(void 0, void 0, void 0, function () {
313
+ var config;
314
+ return __generator(this, function (_a) {
315
+ switch (_a.label) {
316
+ case 0: return [4 /*yield*/, configPromise];
317
+ case 1:
318
+ config = _a.sent();
319
+ return [2 /*return*/, withWagmiErrorHandling(function () { return __awaiter(void 0, void 0, void 0, function () {
320
+ return __generator(this, function (_a) {
321
+ switch (_a.label) {
322
+ case 0: return [4 /*yield*/, (0, core_1.disconnect)(config)];
323
+ case 1:
324
+ _a.sent();
325
+ return [2 /*return*/];
326
+ }
327
+ });
328
+ }); })];
329
+ }
330
+ });
331
+ }); };
332
+ exports.disconnectAllAccounts = disconnectAllAccounts;
333
+ /**
334
+ * Wrapper function for Wagmi Core functions that handles errors
335
+ * @param fn - The function to wrap
336
+ * @returns - The result of the function or an error
337
+ */
338
+ function withWagmiErrorHandling(fn) {
339
+ return __awaiter(this, void 0, void 0, function () {
340
+ var error_1;
341
+ return __generator(this, function (_a) {
342
+ switch (_a.label) {
343
+ case 0:
344
+ _a.trys.push([0, 2, , 3]);
345
+ return [4 /*yield*/, fn()];
346
+ case 1: return [2 /*return*/, _a.sent()];
347
+ case 2:
348
+ error_1 = _a.sent();
349
+ if (error_1 instanceof core_1.BaseError) {
350
+ return [2 /*return*/, handleWagmiError(error_1)];
351
+ }
352
+ else {
353
+ if (error_1 instanceof Error) {
354
+ throw new Error(error_1.message);
355
+ }
356
+ else {
357
+ throw new Error('An unexpected error has occurred');
358
+ }
359
+ }
360
+ return [3 /*break*/, 3];
361
+ case 3: return [2 /*return*/];
362
+ }
363
+ });
364
+ });
365
+ }
366
+ var handleWagmiError = function (error) {
367
+ if (error instanceof core_1.ChainNotConfiguredError) {
368
+ return handleChainNotConfiguredError(error);
369
+ }
370
+ else if (error instanceof core_1.ConnectorAccountNotFoundError) {
371
+ return handleConnectorAccountNotFoundError(error);
372
+ }
373
+ else if (error instanceof core_1.ConnectorAlreadyConnectedError) {
374
+ return handleConnectorAlreadyConnectedError(error);
375
+ }
376
+ else if (error instanceof core_1.ConnectorNotConnectedError) {
377
+ return handleConnectorNotConnectedError(error);
378
+ }
379
+ else if (error instanceof core_1.ConnectorNotFoundError) {
380
+ return handleConnectorNotFoundError(error);
381
+ }
382
+ else if (error instanceof core_1.ProviderNotFoundError) {
383
+ return handleProviderNotFoundError(error);
384
+ }
385
+ else if (error instanceof core_1.SwitchChainNotSupportedError) {
386
+ return handleSwitchChainNotSupportedError(error);
387
+ }
388
+ else if (error instanceof core_1.BaseError) {
389
+ return handleBaseError(error);
390
+ }
391
+ else {
392
+ // Handle unknown error types
393
+ if (error instanceof Error) {
394
+ throw new Error(error.message);
395
+ }
396
+ else {
397
+ throw new Error('An unexpected error has occurred');
398
+ }
399
+ }
400
+ };
401
+ // All errors extend base error
402
+ var handleBaseError = function (error) {
403
+ throw new Error(error.message);
404
+ };
405
+ var handleChainNotConfiguredError = function (error) {
406
+ throw new Error("Chain not configured: ".concat(error.message));
407
+ };
408
+ var handleConnectorAccountNotFoundError = function (error) {
409
+ throw new Error("Connector account not found: ".concat(error.message));
410
+ };
411
+ var handleConnectorAlreadyConnectedError = function (error) {
412
+ throw new Error("Connector already connected: ".concat(error.message));
413
+ };
414
+ var handleConnectorNotConnectedError = function (error) {
415
+ throw new Error("Connector not connected: ".concat(error.message));
416
+ };
417
+ var handleConnectorNotFoundError = function (error) {
418
+ throw new Error("Connector not found: ".concat(error.message));
419
+ };
420
+ var handleProviderNotFoundError = function (error) {
421
+ throw new Error("Provider not found: ".concat(error.message));
422
+ };
423
+ var handleSwitchChainNotSupportedError = function (error) {
424
+ throw new Error("Switch chain not supported: ".concat(error.message));
425
+ };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isWalletBrowserEventTypeKey = void 0;
4
+ var WALLET_BROWSER_EVENT_TYPE_KEYS = [
5
+ 'walletBrowserInjectedWalletSelected',
6
+ 'walletBrowserChainSwitchRequest',
7
+ 'walletBrowserTransferBalanceRequest',
8
+ 'walletBrowserNativeTransferRequest',
9
+ 'walletBrowserNonNativeTransferRequest',
10
+ 'walletBrowserNativeSmartDeposit',
11
+ 'walletBrowserNonNativeSmartDeposit',
12
+ 'walletBrowserDisconnect'
13
+ ];
14
+ function isWalletBrowserEventTypeKey(key) {
15
+ return WALLET_BROWSER_EVENT_TYPE_KEYS.includes(key);
16
+ }
17
+ exports.isWalletBrowserEventTypeKey = isWalletBrowserEventTypeKey;
package/package.json CHANGED
@@ -1,38 +1,56 @@
1
1
  {
2
2
  "name": "@meshconnect/web-link-sdk",
3
- "version": "2.0.5",
3
+ "version": "2.1.0-rc.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",
7
7
  "homepage": "https://github.com/FrontFin/mesh-web-sdk",
8
8
  "devDependencies": {
9
- "@typescript-eslint/eslint-plugin": "^4.21.0",
10
- "@typescript-eslint/parser": "^4.21.0",
9
+ "@types/jest": "^29.5.12",
11
10
  "eslint": "^7.23.0",
12
11
  "eslint-config-prettier": "^8.1.0",
13
12
  "eslint-plugin-import": "^2.22.1",
14
13
  "eslint-plugin-prettier": "^3.4.0",
14
+ "babel-jest": "^29.5.0",
15
+ "@babel/preset-env": "^7.20.0",
16
+ "@babel/preset-typescript": "^7.20.0",
17
+ "jest": "^29.7.0",
18
+ "jest-environment-jsdom": "^29.7.0",
15
19
  "prettier": "^2.2.1",
16
- "typescript": "^4.6.4",
17
20
  "ts-jest": "^29.1.2",
18
- "jest": "^29.7.0",
19
- "@types/jest": "^29.5.12",
20
- "jest-environment-jsdom": "^29.7.0"
21
+ "util": "^0.12.4"
21
22
  },
22
23
  "dependencies": {
23
- "@meshconnect/node-api": "^2.0.5"
24
+ "@meshconnect/node-api": "^2.0.5",
25
+ "@wagmi/core": "^2.10.5",
26
+ "viem": "^2.x",
27
+ "@wagmi/connectors": "^5.0.7"
24
28
  },
25
29
  "jest": {
26
30
  "preset": "ts-jest",
27
31
  "testEnvironment": "jsdom",
32
+ "setupFiles": [
33
+ "./jest.setup.ts"
34
+ ],
28
35
  "testPathIgnorePatterns": [
29
36
  "/node_modules/",
30
37
  "/dist/"
31
38
  ],
32
39
  "coverageDirectory": "./coverage",
33
40
  "transform": {
34
- "\\.[jt]sx?$": "ts-jest"
41
+ "^.+\\.[tj]sx?$": [
42
+ "babel-jest",
43
+ {
44
+ "presets": [
45
+ "@babel/preset-env",
46
+ "@babel/preset-typescript"
47
+ ]
48
+ }
49
+ ]
35
50
  },
51
+ "transformIgnorePatterns": [
52
+ "/node_modules/(?!(@wagmi/core|@wagmi/connectors)).+\\.js$"
53
+ ],
36
54
  "testEnvironmentOptions": {
37
55
  "url": "http://localhost/"
38
56
  }
package/utils/types.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import type { BrokerType } from '@meshconnect/node-api';
2
2
  import { SessionSymmary, LinkEventType } from './event-types';
3
+ import { Hash, Chain } from 'viem';
3
4
  export type EventType = 'brokerageAccountAccessToken' | 'delayedAuthentication' | 'loaded' | 'oauthLinkOpen' | 'transferFinished';
4
5
  export interface Link {
5
6
  /**
@@ -62,6 +63,36 @@ export interface IntegrationAccessToken {
62
63
  brokerType: BrokerType;
63
64
  brokerName: string;
64
65
  }
66
+ export interface WagmiInjectedConnectorData {
67
+ id: string;
68
+ name: string;
69
+ type: string;
70
+ icon?: string;
71
+ uid: string;
72
+ }
73
+ export interface ConnectReturnTypeAndTxHash {
74
+ accounts: string[];
75
+ chainId: number;
76
+ txSigned: Hash;
77
+ }
78
+ export interface IncomingConfig {
79
+ chains: Chain[];
80
+ transports: Record<number, string | string[]>;
81
+ }
82
+ export interface AbiItem {
83
+ name: string;
84
+ type: string;
85
+ inputs: {
86
+ name: string;
87
+ type: string;
88
+ }[];
89
+ outputs?: {
90
+ name: string;
91
+ type: string;
92
+ }[];
93
+ stateMutability?: string;
94
+ }
95
+ export type Abi = AbiItem[];
65
96
  export interface LinkOptions {
66
97
  /**
67
98
  * Client ID that can be obtained at https://dashboard.meshconnect.com/company/keys
@@ -1 +1 @@
1
- export declare const sdkVersion = "2.0.5";
1
+ export declare const sdkVersion = "2.1.0-rc.0";
package/utils/version.js CHANGED
@@ -1 +1 @@
1
- export var sdkVersion = '2.0.5';
1
+ export var sdkVersion = '2.1.0-rc.0';
@@ -0,0 +1,11 @@
1
+ import { type GetAccountReturnType, type Config, type GetBalanceReturnType } from '@wagmi/core';
2
+ import { WagmiInjectedConnectorData, ConnectReturnTypeAndTxHash, Abi } from './types';
3
+ import { Hash, Chain } from 'viem';
4
+ export declare const getWagmiCoreInjectedData: () => Promise<WagmiInjectedConnectorData[] | Error>;
5
+ export declare const connectToSpecificWallet: (walletName: string) => Promise<ConnectReturnTypeAndTxHash | Error>;
6
+ export declare const signedMessage: (config: Config, accountInfo: GetAccountReturnType) => Promise<Hash | Error>;
7
+ export declare const walletBalance: (account: string, chainId: number) => Promise<GetBalanceReturnType | Error>;
8
+ export declare const switchChainFromSDK: (chainId: number) => Promise<Chain | Error>;
9
+ export declare const sendTransactionFromSDK: (toAddress: string, amount: number, decimalPlaces: number, chainId: number, account: string) => Promise<Hash | Error>;
10
+ export declare const sendNonNativeTransactionFromSDK: (address: string, abi: Abi, functionName: string, args: any[], value?: bigint) => Promise<Hash | Error>;
11
+ export declare const disconnectAllAccounts: () => Promise<void | Error>;