UNPKG

@virtualstate/examples

Version:
32 lines 975 B
export async function* read(options, state) { if (!state) return; const children = state.children; if (!children) return; const domainSources = options.domain.map(value => value.source); const domainVisit = options.visit?.map(value => value.source) ?? domainSources; let latest = []; for await (const update of children) { latest = update.filter(isInDomain); if (options.final) continue; yield* yieldLatest(); } if (options.final) yield* yieldLatest(); async function* yieldLatest() { yield* latest; const visit = latest.filter(isInDomainVisit); for (const next of visit) { yield* read(options, next); } } function isInDomain(value) { return domainSources.includes(value.source); } function isInDomainVisit(value) { return domainVisit.includes(value.source); } } //# sourceMappingURL=read.js.map