@authereum/bnc-onboard
Version:
Onboard users to web3 by allowing them to select a wallet, get that wallet ready to transact and have access to synced wallet state.
53 lines (46 loc) • 2.29 kB
JavaScript
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
import { m as mobileWalletInstallMessage } from './content-eeaca1cc.js';
import { c as coinbaseIcon } from './icon-coinbase-9c595a2f.js';
function coinbase(options) {
var preferred = options.preferred,
label = options.label,
iconSrc = options.iconSrc,
svg = options.svg;
return {
name: label || 'Coinbase',
iconSrc: iconSrc,
svg: svg || coinbaseIcon,
wallet: function () {
var _wallet = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(helpers) {
var getProviderName, createLegacyProviderInterface, provider;
return regeneratorRuntime.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
getProviderName = helpers.getProviderName, createLegacyProviderInterface = helpers.createLegacyProviderInterface;
provider = window.web3 && window.web3.currentProvider;
return _context.abrupt("return", {
provider: provider,
"interface": provider && getProviderName(provider) === 'Coinbase' ? createLegacyProviderInterface(provider) : null
});
case 3:
case "end":
return _context.stop();
}
}
}, _callee);
}));
function wallet(_x) {
return _wallet.apply(this, arguments);
}
return wallet;
}(),
type: 'injected',
link: 'https://go.cb-w.com/',
installMessage: mobileWalletInstallMessage,
mobile: true,
preferred: preferred
};
}
export default coinbase;