UNPKG

1.07 kBSource Map (JSON)View Raw
1{"version":3,"sources":["asynciterable/last.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,MAAwB,EACxB,YAAqE,KAAK,IAAI,EAAE,CAAC,IAAI;IAErF,IAAI,CAAC,GAAG,CAAC,EACP,MAAqB,CAAC;IACxB,IAAI,KAAK,EAAE,IAAI,IAAI,IAAI,MAAM,EAAE;QAC7B,IAAI,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE;YAC9B,MAAM,GAAG,IAAI,CAAC;SACf;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","file":"last.js","sourcesContent":["export async function last<T, S extends T>(\n source: AsyncIterable<T>,\n predicate: (value: T, index: number) => value is S\n): Promise<S | undefined>;\nexport async function last<T>(\n source: AsyncIterable<T>,\n predicate?: (value: T, index: number) => boolean | Promise<boolean>\n): Promise<T | undefined>;\nexport async function last<T>(\n source: AsyncIterable<T>,\n predicate: (value: T, index: number) => boolean | Promise<boolean> = async () => true\n): Promise<T | undefined> {\n let i = 0,\n result: T | undefined;\n for await (let item of source) {\n if (await predicate(item, i++)) {\n result = item;\n }\n }\n\n return result;\n}\n"]}
\No newline at end of file