PHP WebShell

Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@polkadot/api-derive/staking

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

import { combineLatest, map, of, switchMap } from 'rxjs';
import { firstMemo, memo } from '../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()]
    };
}
export const keys = /*#__PURE__*/ firstMemo((api, stashId) => api.derive.staking.keysMulti([stashId]));
export function keysMulti(instanceId, api) {
    return memo(instanceId, (stashIds) => stashIds.length
        ? api.query.session.queuedKeys().pipe(switchMap((queuedKeys) => combineLatest([
            of(queuedKeys),
            api.consts['session']?.['dedupKeyPrefix']
                ? api.query.session.nextKeys.multi(stashIds.map((s) => [api.consts['session']['dedupKeyPrefix'], s]))
                : combineLatest(stashIds.map((s) => api.query.session.nextKeys(s)))
        ])), map(([queuedKeys, nextKeys]) => stashIds.map((stashId, index) => extractsIds(stashId, queuedKeys, nextKeys[index]))))
        : of([]));
}

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


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