All files / src/utils compactMap.ts

25% Statements 1/4
0% Branches 0/2
0% Functions 0/2
25% Lines 1/4

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 71x            
export function compactMap<T, U>(list: T[], callbackFn: (value: T, index: number, array: T[]) => U | null): U[] {
    return list.flatMap((value, index, array) => {
        const result = callbackFn(value, index, array);
        return result === null ? [] : [result];
    });
}