import {error} from "../util/error"; export function minBy(value: T[], transform: (it: T) => number): T { if (value.length === 0) error(); let minIt = value[0]; let minVal = transform(minIt); for (let index = 1; index < value.length; index++) { const it = value[index]; const val = transform(it); if (val < minVal) { minIt = it; minVal = val; } } return minIt; }