const stream = Stream.async((emit: StreamEmit.Emit<never, never, Readonly<number[]>, void>) => {
majorCategoryUrls.forEach((majorCategoryUrl) => {
const proudctList = pipe(
Effect.succeed(majorCategoryUrl),
Effect.flatMap(fetchProductList),
Effect.flatMap(parseProductList),
Effect.tap((a) => {
if (a.length === 0) return Effect.fail(new ParseAllJsonError());
else return Effect.unit;
})
);
emit(proudctList);
});
});
const stream = Stream.async((emit: StreamEmit.Emit<never, never, Readonly<number[]>, void>) => {
majorCategoryUrls.forEach((majorCategoryUrl) => {
const proudctList = pipe(
Effect.succeed(majorCategoryUrl),
Effect.flatMap(fetchProductList),
Effect.flatMap(parseProductList),
Effect.tap((a) => {
if (a.length === 0) return Effect.fail(new ParseAllJsonError());
else return Effect.unit;
})
);
emit(proudctList);
});
});