UNPKG

@polkadot/util-keyring

Version:
61 lines (44 loc) 1.64 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; require("core-js/modules/web.dom.iterable"); var _assert = _interopRequireDefault(require("@polkadot/util/assert")); var _hex = _interopRequireDefault(require("@polkadot/util/is/hex")); var _u8a = _interopRequireDefault(require("@polkadot/util/is/u8a")); var _toHex = _interopRequireDefault(require("@polkadot/util/u8a/toHex")); var _toU8a = _interopRequireDefault(require("@polkadot/util/u8a/toU8a")); var _decode = _interopRequireDefault(require("./address/decode")); // Copyright 2017-2018 @polkadot/util-keyring authors & contributors // This software may be modified and distributed under the terms // of the ISC license. See the LICENSE file for details. class Pairs { constructor() { this._map = void 0; this._map = {}; } add(pair) { // @ts-ignore we use coercion :( this._map[pair.publicKey()] = pair; return pair; } all() { return Object.values(this._map); } get(address) { // @ts-ignore we use coercion :( const pair = this._map[(0, _decode.default)(address)]; (0, _assert.default)(pair, () => { const formatted = (0, _u8a.default)(address) || (0, _hex.default)(address) ? (0, _toHex.default)((0, _toU8a.default)(address)) : address; return `Unable to retrieve keypair '${formatted}'`; }); return pair; } remove(address) { // @ts-ignore we use coercion :( delete this._map[(0, _decode.default)(address)]; } } exports.default = Pairs;