LiberTEM/LiberTEM

View on GitHub
client/src/progress/helpers.ts

Summary

Maintainability
A
0 mins
Test Coverage
import { ProgressDetails } from "../messages";
import { ProgressReducerState } from "./reducers";

export type ProgressState = Omit<ProgressDetails, 'event'>;

export const getTotalProgress = (state: ProgressReducerState): ProgressState => state.ids.reduce((acc, id, _idx) => ({
    numFrames: acc.numFrames + state.byId[id].numFrames,
    numFramesComplete: acc.numFramesComplete + state.byId[id].numFramesComplete
}), { numFrames: 0, numFramesComplete: 0 })