rambdax
Version:
Extended version of Rambda - a lightweight, faster alternative to Ramda
21 lines (15 loc) • 410 B
JavaScript
import { type } from './type'
export async function pipedAsync(...inputs){
const [ input, ...fnList ] = inputs
let argumentsToPass = input
while (fnList.length !== 0){
const fn = fnList.shift()
const typeFn = type(fn)
if (typeFn === 'Async'){
argumentsToPass = await fn(argumentsToPass)
} else {
argumentsToPass = fn(argumentsToPass)
}
}
return argumentsToPass
}