UNPKG

@daiso-tech/core

Version:

The library offers flexible, framework-agnostic solutions for modern web applications, built on adaptable components that integrate seamlessly with popular frameworks like Next Js.

27 lines 807 B
/** * @module Collection */ import {} from "../../../../collection/contracts/_module-exports.js"; import { resolveInvokable } from "../../../../utilities/_module-exports.js"; /** * @internal */ export class AsyncUniqueIterable { collection; callback; constructor(collection, callback = (item) => item) { this.collection = collection; this.callback = callback; } async *[Symbol.asyncIterator]() { const set = new Set([]); for await (const [index, item] of this.collection.entries()) { const item_ = await resolveInvokable(this.callback)(item, index, this.collection); if (!set.has(item_)) { yield item; } set.add(item_); } } } //# sourceMappingURL=async-unique-iterable.js.map