template-saas/apps/backend/node_modules/rxjs/src/internal/util/isReadableStreamLike.ts
rckrdmrd 26f0e52ca7 feat: Initial commit - template-saas
Template base para proyectos SaaS multi-tenant.

Estructura inicial:
- apps/backend (NestJS API)
- apps/frontend (React/Vite)
- apps/database (PostgreSQL DDL)
- docs/ (Documentación)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 04:41:24 -06:00

24 lines
704 B
TypeScript

import { ReadableStreamLike } from '../types';
import { isFunction } from './isFunction';
export async function* readableStreamLikeToAsyncGenerator<T>(readableStream: ReadableStreamLike<T>): AsyncGenerator<T> {
const reader = readableStream.getReader();
try {
while (true) {
const { value, done } = await reader.read();
if (done) {
return;
}
yield value!;
}
} finally {
reader.releaseLock();
}
}
export function isReadableStreamLike<T>(obj: any): obj is ReadableStreamLike<T> {
// We don't want to use instanceof checks because they would return
// false for instances from another Realm, like an <iframe>.
return isFunction(obj?.getReader);
}