diff --git a/src/components/GenerateCourse/AICourseContent.tsx b/src/components/GenerateCourse/AICourseContent.tsx index 499729bd7..6feca785c 100644 --- a/src/components/GenerateCourse/AICourseContent.tsx +++ b/src/components/GenerateCourse/AICourseContent.tsx @@ -334,12 +334,16 @@ export function AICourseContent(props: AICourseContentProps) { > {viewMode === 'module' && ( - + )} {viewMode !== 'module' && ( diff --git a/src/components/GenerateCourse/AICourseRoadmapView.tsx b/src/components/GenerateCourse/AICourseRoadmapView.tsx index 8300f1cfc..25017aa5f 100644 --- a/src/components/GenerateCourse/AICourseRoadmapView.tsx +++ b/src/components/GenerateCourse/AICourseRoadmapView.tsx @@ -99,6 +99,17 @@ export function AICourseRoadmapView(props: AICourseRoadmapViewProps) { done.forEach((id) => { renderTopicProgress(id, 'done'); }); + + const modules = roadmap.filter((item) => item.type === 'topic'); + for (const module of modules) { + const moduleId = module.id; + const isAllLessonsDone = + module?.children?.every((child) => done.includes(child.id)) ?? + false; + if (isAllLessonsDone) { + renderTopicProgress(moduleId, 'done'); + } + } }, }); } catch (error) {