enhance lesson generation and focus mode functionality
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { db } from "../../../db/index";
|
||||
import { topics, lessons } from "../../../db/schema";
|
||||
import { eq } from "drizzle-orm";
|
||||
import { eq, and } from "drizzle-orm";
|
||||
import { generateLesson } from "../../../utils/generateLesson";
|
||||
|
||||
export default defineEventHandler(async (event) => {
|
||||
@@ -19,6 +19,18 @@ export default defineEventHandler(async (event) => {
|
||||
|
||||
try {
|
||||
await generateLesson(id);
|
||||
|
||||
// pre-generate the next topic silently
|
||||
const currentTopic = await db.query.topics.findFirst({ where: eq(topics.id, id) });
|
||||
const nextTopic = await db.query.topics.findFirst({
|
||||
where: and(
|
||||
eq(topics.courseId, currentTopic!.courseId),
|
||||
eq(topics.order, currentTopic!.order + 1),
|
||||
eq(topics.status, "pending")
|
||||
)
|
||||
});
|
||||
if (nextTopic) generateLesson(nextTopic.id);
|
||||
|
||||
return { status: "ready" };
|
||||
} catch (err: any) {
|
||||
console.error(`[generate.post] topic ${id} failed: ${err?.message ?? err}`);
|
||||
|
||||
Reference in New Issue
Block a user