bitski-web3-react-connector
Version:
Bitski wallet connector for web3-react
158 lines (131 loc) • 4.15 kB
JavaScript
;
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
function _interopNamespace(e) {
if (e && e.__esModule) { return e; } else {
var n = {};
if (e) {
Object.keys(e).forEach(function (k) {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () {
return e[k];
}
});
});
}
n['default'] = e;
return n;
}
}
var abstractConnector = require('@web3-react/abstract-connector');
var invariant = _interopDefault(require('tiny-invariant'));
function _inheritsLoose(subClass, superClass) {
subClass.prototype = Object.create(superClass.prototype);
subClass.prototype.constructor = subClass;
_setPrototypeOf(subClass, superClass);
}
function _setPrototypeOf(o, p) {
_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
o.__proto__ = p;
return o;
};
return _setPrototypeOf(o, p);
}
var chainIdToNetwork = {
1: 'mainnet',
4: 'rinkeby',
137: 'polygon',
80001: 'mumbai'
};
var BitskiConnector = /*#__PURE__*/function (_AbstractConnector) {
_inheritsLoose(BitskiConnector, _AbstractConnector);
function BitskiConnector(_ref) {
var _this;
var clientId = _ref.clientId,
chainId = _ref.chainId,
callbackUrl = _ref.callbackUrl;
!Object.keys(chainIdToNetwork).includes(chainId.toString()) ? invariant(false, "Unsupported chainId " + chainId) : void 0;
_this = _AbstractConnector.call(this, {
supportedChainIds: [chainId]
}) || this;
_this.clientId = clientId;
_this.chainId = chainId;
_this.callbackUrl = callbackUrl;
return _this;
}
var _proto = BitskiConnector.prototype;
_proto.activate = function activate() {
try {
var _temp3 = function _temp3() {
var network = {
networkName: chainIdToNetwork[_this3.chainId]
};
return Promise.resolve(_this3.bitski.signIn().then(function (accounts) {
return accounts[0];
})).then(function (account) {
return {
provider: _this3.bitski.getProvider(network),
chainId: _this3.chainId,
account: account
};
});
};
var _this3 = this;
var _temp4 = function () {
if (!_this3.bitski) {
return Promise.resolve(new Promise(function (resolve) { resolve(_interopNamespace(require('bitski'))); })).then(function (_ref2) {
var Bitski = _ref2.Bitski;
_this3.bitski = new Bitski(_this3.clientId, _this3.callbackUrl);
});
}
}();
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
} catch (e) {
return Promise.reject(e);
}
};
_proto.getProvider = function getProvider(chainId) {
try {
var _this5 = this;
var network = {
networkName: chainIdToNetwork[chainId || _this5.chainId]
};
return Promise.resolve(_this5.bitski.getProvider(network));
} catch (e) {
return Promise.reject(e);
}
};
_proto.getChainId = function getChainId() {
try {
var _this7 = this;
return Promise.resolve(_this7.chainId);
} catch (e) {
return Promise.reject(e);
}
};
_proto.getAccount = function getAccount() {
try {
var _this9 = this;
return Promise.resolve(_this9.bitski.getProvider().send('eth_accounts').then(function (accounts) {
return accounts[0];
}));
} catch (e) {
return Promise.reject(e);
}
};
_proto.deactivate = function deactivate() {};
_proto.close = function close() {
try {
var _this11 = this;
return Promise.resolve(_this11.bitski.signOut()).then(function () {
_this11.emitDeactivate();
});
} catch (e) {
return Promise.reject(e);
}
};
return BitskiConnector;
}(abstractConnector.AbstractConnector);
exports.BitskiConnector = BitskiConnector;
//# sourceMappingURL=bitski-web3-react-connector.cjs.development.js.map