PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@polkadot/api-derive/cjs/staking
Просмотр файла: erasPrefs.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.erasPrefs = exports._erasPrefs = exports.eraPrefs = void 0;
exports._eraPrefs = _eraPrefs;
const rxjs_1 = require("rxjs");
const index_js_1 = require("../util/index.js");
const cache_js_1 = require("./cache.js");
const util_js_1 = require("./util.js");
const CACHE_KEY = 'eraPrefs';
function mapPrefs(era, all) {
const validators = {};
all.forEach(([key, prefs]) => {
validators[key.args[1].toString()] = prefs;
});
return { era, validators };
}
function _eraPrefs(instanceId, api) {
return (0, index_js_1.memo)(instanceId, (era, withActive) => {
const [cacheKey, cached] = (0, cache_js_1.getEraCache)(CACHE_KEY, era, withActive);
return cached
? (0, rxjs_1.of)(cached)
: api.query.staking.erasValidatorPrefs.entries(era).pipe((0, rxjs_1.map)((r) => (0, cache_js_1.setEraCache)(cacheKey, withActive, mapPrefs(era, r))));
});
}
exports.eraPrefs = (0, util_js_1.singleEra)('_eraPrefs');
exports._erasPrefs = (0, util_js_1.combineEras)('_eraPrefs');
exports.erasPrefs = (0, util_js_1.erasHistoricApply)('_erasPrefs');
Выполнить команду
Для локальной разработки. Не используйте в интернете!