PHP WebShell

Текущая директория: /opt/BitGoJS/node_modules/@polkadot/api-derive/cjs/staking

Просмотр файла: keys.js

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.keys = void 0;
exports.keysMulti = keysMulti;
const rxjs_1 = require("rxjs");
const index_js_1 = require("../util/index.js");
function extractsIds(stashId, queuedKeys, nextKeys) {
    const sessionIds = (queuedKeys.find(([currentId]) => currentId.eq(stashId)) || [undefined, []])[1];
    const nextSessionIds = nextKeys.unwrapOr([]);
    return {
        nextSessionIds: Array.isArray(nextSessionIds)
            ? nextSessionIds
            : [...nextSessionIds.values()],
        sessionIds: Array.isArray(sessionIds)
            ? sessionIds
            : [...sessionIds.values()]
    };
}
exports.keys = (0, index_js_1.firstMemo)((api, stashId) => api.derive.staking.keysMulti([stashId]));
function keysMulti(instanceId, api) {
    return (0, index_js_1.memo)(instanceId, (stashIds) => stashIds.length
        ? api.query.session.queuedKeys().pipe((0, rxjs_1.switchMap)((queuedKeys) => (0, rxjs_1.combineLatest)([
            (0, rxjs_1.of)(queuedKeys),
            api.consts['session']?.['dedupKeyPrefix']
                ? api.query.session.nextKeys.multi(stashIds.map((s) => [api.consts['session']['dedupKeyPrefix'], s]))
                : (0, rxjs_1.combineLatest)(stashIds.map((s) => api.query.session.nextKeys(s)))
        ])), (0, rxjs_1.map)(([queuedKeys, nextKeys]) => stashIds.map((stashId, index) => extractsIds(stashId, queuedKeys, nextKeys[index]))))
        : (0, rxjs_1.of)([]));
}

Выполнить команду


Для локальной разработки. Не используйте в интернете!