Version: 0.0.20.0.30.1.00.2.00.2.10.2.20.2.30.2.40.2.50.2.60.2.70.3.0-beta.10.3.00.3.10.4.0-beta.10.4.0-beta.20.4.0-beta.30.4.00.4.10.4.20.4.30.4.40.4.50.4.60.4.7
import { identity } from '@antv/util';
export function compose<T>(fn?: (x: T) => T, ...rest: ((x: T) => T)[]) {
return fn ? rest.reduce((total, current) => (x: T) => current(total(x)), fn) : identity;
}