UNPKG

1.91 kBSource Map (JSON)View Raw
1{"version":3,"sources":["asynciterable/share.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,mBAAuB,SAAQ,cAAiB;IAGpD,YAAY,EAAoB;QAC9B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;CACF;AASD,MAAM,UAAU,KAAK,CACnB,MAA8B,EAC9B,QAE6D;IAE7D,OAAO,QAAQ;QACb,CAAC,CAAC,MAAM,CAAU,KAAK,IAAI,EAAE;YACzB,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;YACnF,OAAO,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QACpC,CAAC,CAAC;QACJ,CAAC,CAAC,IAAI,mBAAmB,CAAU,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;AACvE,CAAC","file":"share.js","sourcesContent":["import { AsyncIterableX } from './asynciterablex';\nimport { create } from './create';\n\nclass SharedAsyncIterable<T> extends AsyncIterableX<T> {\n private _it: AsyncIterator<T>;\n\n constructor(it: AsyncIterator<T>) {\n super();\n this._it = it;\n }\n\n [Symbol.asyncIterator]() {\n return this._it;\n }\n}\n\nexport function share<TSource>(source: AsyncIterable<TSource>): AsyncIterableX<TSource>;\nexport function share<TSource, TResult>(\n source: AsyncIterable<TSource>,\n selector?: (\n value: AsyncIterable<TSource>\n ) => AsyncIterable<TResult> | Promise<AsyncIterable<TResult>>\n): AsyncIterableX<TResult>;\nexport function share<TSource, TResult = TSource>(\n source: AsyncIterable<TSource>,\n selector?: (\n value: AsyncIterable<TSource>\n ) => AsyncIterable<TResult> | Promise<AsyncIterable<TResult>>\n): AsyncIterableX<TSource | TResult> {\n return selector\n ? create<TResult>(async () => {\n const it = await selector(new SharedAsyncIterable(source[Symbol.asyncIterator]()));\n return it[Symbol.asyncIterator]();\n })\n : new SharedAsyncIterable<TSource>(source[Symbol.asyncIterator]());\n}\n"]}
\No newline at end of file