UNPKG

@exromany/lido-csm-sdk

Version:

[![GitHub license](https://img.shields.io/github/license/lidofinance/lido-csm-sdk?color=limegreen)](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [![Version npm](https://img.shields.io/npm/v/@lidofinance/lido-csm-sdk?label=version)](h

20 lines 885 B
import { PERCENT_BASIS } from '../common/index.js'; import { findModuleDigest } from './find-module-digest.js'; export const calculateShareLimit = (digests, moduleId) => { const moduleDigest = findModuleDigest(digests, moduleId); const shareLimit = moduleDigest.state.stakeShareLimit; const active = moduleDigest.summary.totalDepositedValidators - moduleDigest.summary.totalExitedValidators; const queue = moduleDigest.summary.depositableValidatorsCount; const totalActive = digests.reduce((acc, { summary }) => acc + summary.totalDepositedValidators - summary.totalExitedValidators, 0n); const capacity = (totalActive * shareLimit) / PERCENT_BASIS; const activeLeft = capacity - active; return { active, activeLeft, capacity, queue, shareLimit, }; }; //# sourceMappingURL=calculate-share-limit.js.map