All files / format trimAll.ts

80% Statements 8/10
71.43% Branches 5/7
100% Functions 1/1
77.78% Lines 7/9

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 7 8 9 10 11 12 13 14 15 16 17 18 19 202x   2x 4x     4x 4x   1x     3x              
import * as R from 'ramda';
 
export const trimAll = <T extends string | string[]>(data: T): T => {
  Iif (R.isNil(data) || R.isEmpty(data)) {
    return data;
  }
  const type = R.type(data);
  switch (type) {
    case 'String': {
      return R.trim(data as string) as T;
    }
    case 'Array': {
      return R.filter(R.complement(R.isEmpty))(data as string[]) as T;
    }
    default: {
      return data;
    }
  }
};