UNPKG

reshuffle

Version:

Reshuffle is a fast, unopinionated, minimalist integration framework

25 lines (19 loc) 479 B
import { Pipe } from './types' export default class SimplePipe implements Pipe { private _chain: Array<any> constructor() { this._chain = [] } makePromises(payload: any) { return this._chain.reduce((chain, handler) => { return chain.then((payload: any) => handler(payload)) }, Promise.resolve()) } flow(payload: any): Promise<any> { return this.makePromises(payload) } pipe(f: any): Pipe { this._chain.push(f) return this } }