UNPKG

@parity/light.js

Version:

A high-level reactive JS library optimized for light clients

56 lines (55 loc) 1.86 kB
"use strict"; // Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Parity. // // SPDX-License-Identifier: MIT Object.defineProperty(exports, "__esModule", { value: true }); var createRpc_1 = require("./utils/createRpc"); var frequency_1 = require("../frequency"); var operators_1 = require("../utils/operators"); /** * Get accounts info. Calls `parity_accountsInfo`. Works only with a Parity * node. * * @return - An Observable containing all info that can be * accessed by user concerning accounts. */ function accountsInfo$(options) { return createRpc_1.default({ frequency: [frequency_1.default.onAccountsInfoChanged$], name: 'accountsInfo$' })()(options); } exports.accountsInfo$ = accountsInfo$; /** * Get the name of the current chain. Calls `parity_chain`. Works only with * a Parity node. * * @return - An Observable containing the name of the * current chain. */ function chainName$(options) { return createRpc_1.default({ calls: ['parity_chain'], frequency: [frequency_1.default.onStartup$], name: 'chainName$', pipes: function (api) { return [operators_1.switchMapPromise(function () { return api.parity.chain(); })]; } })(options)(); } exports.chainName$ = chainName$; /** * Get the version info of Parity Ethereum. Calls `parity_versionInfo`. * * @return - An Observable containing the version object: {major, minor, patch} */ function versionInfo$(options) { return createRpc_1.default({ calls: ['parity_versionInfo'], frequency: [frequency_1.default.onStartup$], name: 'versionInfo$', pipes: function (api) { return [ operators_1.switchMapPromise(function () { return api.parity.versionInfo(); }, { emitErrors: true }) ]; } })(options)(); } exports.versionInfo$ = versionInfo$;