next/lib/server/storyHelpers/replaceGridFS.ts

20 lines
518 B
TypeScript
Raw Normal View History

import getBucket from "./getBucket";
import { Readable } from "stream";
export default async function replaceGridFS(
chapterID: number | undefined,
content: string,
) {
let filename = `/stories/${chapterID}.txt`;
const bucket = getBucket();
if (chapterID) {
const curs = bucket.find({ filename }).limit(1);
for await (const d of curs) {
await bucket.delete(d._id);
}
}
const readable = new Readable();
readable.push(content);
readable.push(null);
readable.pipe(bucket.openUploadStream(filename));
}