UNPKG

web3-wallets-kit

Version:

Package for connecting with Ethereum wallets for dApp

144 lines 6.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var bitski_1 = require("bitski"); var fortmatic_1 = tslib_1.__importDefault(require("fortmatic")); var web3_provider_1 = tslib_1.__importDefault(require("@walletconnect/web3-provider")); exports.resolvers = { 'wallet-connect': { initialize: function (config) { return tslib_1.__awaiter(this, void 0, void 0, function () { var provider; return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: provider = new web3_provider_1.default(config); return [4 /*yield*/, provider.enable()]; case 1: _a.sent(); return [2 /*return*/, { wallet: 'wallet-connect', provider: provider, payload: provider, }]; } }); }); }, destroy: function (_a) { var provider = _a.payload; return tslib_1.__awaiter(this, void 0, void 0, function () { var walletConnector; return tslib_1.__generator(this, function (_b) { switch (_b.label) { case 0: return [4 /*yield*/, provider.getWalletConnector()]; case 1: walletConnector = _b.sent(); return [4 /*yield*/, walletConnector.killSession()]; case 2: _b.sent(); return [4 /*yield*/, provider.stop()]; case 3: _b.sent(); return [2 /*return*/]; } }); }); }, }, metamask: { initialize: function () { return tslib_1.__awaiter(this, void 0, void 0, function () { var provider; return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: if (typeof window.ethereum !== 'undefined') { provider = window.ethereum; } else if (typeof window.web3 !== 'undefined') { provider = window.web3.currentProvider; } else { throw new Error('No web3 provider found! Please install Metamask or use TrustWallet on mobile device.'); } if (!provider.enable) return [3 /*break*/, 2]; return [4 /*yield*/, provider.enable()]; case 1: _a.sent(); _a.label = 2; case 2: return [2 /*return*/, { wallet: 'metamask', provider: provider, }]; } }); }); }, destroy: function () { }, }, fortmatic: { initialize: function (_a) { var apiKey = _a.apiKey, network = _a.network; return tslib_1.__awaiter(this, void 0, void 0, function () { var fm, provider; return tslib_1.__generator(this, function (_b) { switch (_b.label) { case 0: fm = new fortmatic_1.default(apiKey, network); provider = fm.getProvider(); return [4 /*yield*/, provider.enable()]; case 1: _b.sent(); return [2 /*return*/, { wallet: 'fortmatic', provider: provider, payload: fm, }]; } }); }); }, destroy: function (_a) { var fm = _a.payload; fm.user.logout(); }, }, bitski: { initialize: function (_a) { var clientId = _a.clientId, redirectUri = _a.redirectUri, additionalScopes = _a.additionalScopes, options = _a.options; return tslib_1.__awaiter(this, void 0, void 0, function () { var bitski, provider; return tslib_1.__generator(this, function (_b) { switch (_b.label) { case 0: bitski = new bitski_1.Bitski(clientId, redirectUri, additionalScopes, options); provider = bitski.getProvider(); return [4 /*yield*/, bitski.signIn()]; case 1: _b.sent(); return [2 /*return*/, { wallet: 'bitski', provider: provider, payload: bitski, }]; } }); }); }, destroy: function (_a) { var bitski = _a.payload; return tslib_1.__awaiter(this, void 0, void 0, function () { return tslib_1.__generator(this, function (_b) { switch (_b.label) { case 0: return [4 /*yield*/, bitski.signOut()]; case 1: _b.sent(); return [2 /*return*/]; } }); }); }, }, }; //# sourceMappingURL=resolvers.js.map