UNPKG

3.83 kBSource Map (JSON)View Raw
1{"version":3,"sources":["asynciterable/pipe.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AA4E9B,MAAM,UAAU,IAAI,CAClB,MAA8B,EAC9B,GAAG,UAAqD;IAExD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,OAAO,MAAM,YAAY,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACjE;IAED,MAAM,KAAK,GAAG,CAAC,KAA6B,EAA2B,EAAE;QACvE,OAAO,UAAU,CAAC,MAAM,CACtB,CAAC,IAAS,EAAE,EAA2C,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EACpE,KAAY,CACb,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC;AACvB,CAAC","file":"pipe.js","sourcesContent":["import { OperatorAsyncFunction } from '../interfaces';\nimport { AsyncIterableX } from './asynciterablex';\nimport { from } from './from';\n\nexport function pipe<T>(source: AsyncIterable<T>): AsyncIterableX<T>;\nexport function pipe<T, A>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>\n): AsyncIterableX<A>;\nexport function pipe<T, A, B>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>,\n op2: OperatorAsyncFunction<A, B>\n): AsyncIterableX<B>;\nexport function pipe<T, A, B, C>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>,\n op2: OperatorAsyncFunction<A, B>,\n op3: OperatorAsyncFunction<B, C>\n): AsyncIterableX<C>;\nexport function pipe<T, A, B, C, D>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>,\n op2: OperatorAsyncFunction<A, B>,\n op3: OperatorAsyncFunction<B, C>,\n op4: OperatorAsyncFunction<C, D>\n): AsyncIterableX<D>;\nexport function pipe<T, A, B, C, D, E>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>,\n op2: OperatorAsyncFunction<A, B>,\n op3: OperatorAsyncFunction<B, C>,\n op4: OperatorAsyncFunction<C, D>,\n op5: OperatorAsyncFunction<D, E>\n): AsyncIterableX<E>;\nexport function pipe<T, A, B, C, D, E, F>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>,\n op2: OperatorAsyncFunction<A, B>,\n op3: OperatorAsyncFunction<B, C>,\n op4: OperatorAsyncFunction<C, D>,\n op5: OperatorAsyncFunction<D, E>,\n op6: OperatorAsyncFunction<E, F>\n): AsyncIterableX<F>;\nexport function pipe<T, A, B, C, D, E, F, G>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>,\n op2: OperatorAsyncFunction<A, B>,\n op3: OperatorAsyncFunction<B, C>,\n op4: OperatorAsyncFunction<C, D>,\n op5: OperatorAsyncFunction<D, E>,\n op6: OperatorAsyncFunction<E, F>,\n op7: OperatorAsyncFunction<F, G>\n): AsyncIterableX<G>;\nexport function pipe<T, A, B, C, D, E, F, G, H>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>,\n op2: OperatorAsyncFunction<A, B>,\n op3: OperatorAsyncFunction<B, C>,\n op4: OperatorAsyncFunction<C, D>,\n op5: OperatorAsyncFunction<D, E>,\n op6: OperatorAsyncFunction<E, F>,\n op7: OperatorAsyncFunction<F, G>,\n op8: OperatorAsyncFunction<G, H>\n): AsyncIterableX<H>;\nexport function pipe<T, A, B, C, D, E, F, G, H, I>(\n source: AsyncIterable<T>,\n op1: OperatorAsyncFunction<T, A>,\n op2: OperatorAsyncFunction<A, B>,\n op3: OperatorAsyncFunction<B, C>,\n op4: OperatorAsyncFunction<C, D>,\n op5: OperatorAsyncFunction<D, E>,\n op6: OperatorAsyncFunction<E, F>,\n op7: OperatorAsyncFunction<F, G>,\n op8: OperatorAsyncFunction<G, H>,\n op9: OperatorAsyncFunction<H, I>\n): AsyncIterableX<I>;\n\nexport function pipe<TSource, TResult>(\n source: AsyncIterable<TSource>,\n ...operations: OperatorAsyncFunction<TSource, TResult>[]\n): AsyncIterableX<TResult> {\n if (operations.length === 0) {\n return source instanceof AsyncIterableX ? source : from(source);\n }\n\n const piped = (input: AsyncIterable<TSource>): AsyncIterableX<TResult> => {\n return operations.reduce(\n (prev: any, fn: OperatorAsyncFunction<TSource, TResult>) => fn(prev),\n input as any\n );\n };\n\n return piped(source);\n}\n"]}
\No newline at end of file