UNPKG

@foreverrbum/ethsign

Version:

This package will allow you to electronically sign documents within your application

132 lines (106 loc) 4.82 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getSignersWithAlias = exports.getMyName = exports.getAliasOrAddress = exports.getAlias = void 0; 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); }); }; } var getMyName = function getMyName(ensEnabled, signer, formatMessage) { return "".concat(formatMessage({ id: 'ME' }), " ").concat(ensEnabled && signer !== null && signer !== void 0 && signer.alias ? "(".concat(signer.alias, ")") : ''); }; exports.getMyName = getMyName; var getAlias = function getAlias(ethAccount, signer, ensEnabled, formatMessage) { if ((ethAccount === null || ethAccount === void 0 ? void 0 : ethAccount.localeCompare(signer === null || signer === void 0 ? void 0 : signer.address, undefined, { sensitivity: 'accent' })) === 0) { return getMyName(ensEnabled, signer, formatMessage); } else if (ensEnabled && signer.alias) { return signer.alias; } }; exports.getAlias = getAlias; var getAliasOrAddress = function getAliasOrAddress(ethAccount, signer, ensEnabled, formatMessage) { if ((ethAccount === null || ethAccount === void 0 ? void 0 : ethAccount.localeCompare(signer === null || signer === void 0 ? void 0 : signer.address, undefined, { sensitivity: 'accent' })) === 0) { return getMyName(ensEnabled, signer, formatMessage); } else if (ensEnabled && signer.alias) { return signer.alias; } else { var _signer$address; return (_signer$address = signer.address) === null || _signer$address === void 0 ? void 0 : _signer$address.toLowerCase(); } }; exports.getAliasOrAddress = getAliasOrAddress; var getSignerData = /*#__PURE__*/function () { var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(signer, provider) { var _signer$address2, alias, avatar, resolver; return regeneratorRuntime.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.prev = 0; _context.next = 3; return provider.lookupAddress(signer === null || signer === void 0 ? void 0 : signer.address); case 3: alias = _context.sent; avatar = null; if (!alias) { _context.next = 12; break; } _context.next = 8; return provider.getResolver(alias); case 8: resolver = _context.sent; _context.next = 11; return resolver.getText("avatar"); case 11: avatar = _context.sent; case 12: return _context.abrupt("return", Promise.resolve({ address: signer === null || signer === void 0 ? void 0 : (_signer$address2 = signer.address) === null || _signer$address2 === void 0 ? void 0 : _signer$address2.toLowerCase(), avatar: avatar, alias: alias, fullySigned: signer === null || signer === void 0 ? void 0 : signer.fullySigned })); case 15: _context.prev = 15; _context.t0 = _context["catch"](0); (function (err) { return Promise.resolve(signer); }); case 18: case "end": return _context.stop(); } } }, _callee, null, [[0, 15]]); })); return function getSignerData(_x, _x2) { return _ref.apply(this, arguments); }; }(); var getSignersWithAlias = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(signers, provider) { return regeneratorRuntime.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: return _context2.abrupt("return", Promise.all(signers.map(function (signer) { return getSignerData(signer, provider); }))); case 1: case "end": return _context2.stop(); } } }, _callee2); })); return function getSignersWithAlias(_x3, _x4) { return _ref2.apply(this, arguments); }; }(); exports.getSignersWithAlias = getSignersWithAlias;