From 767637a5efd845e5c5a4bf2a60f1adce4a7bf323 Mon Sep 17 00:00:00 2001 From: Yared Yemane Date: Tue, 7 Apr 2026 07:29:54 -0700 Subject: [PATCH] Fix Human Language level actions visibility and CEFR add-level guidance. Avoid nested button markup so remove-level controls render reliably, keep level rows visible for all CEFR levels, and add clearer guidance/labeling for incremental level creation starting from A1. Made-with: Cursor --- .../content-management/HumanLanguagePage.tsx | 79 ++++++++++--------- 1 file changed, 42 insertions(+), 37 deletions(-) diff --git a/src/pages/content-management/HumanLanguagePage.tsx b/src/pages/content-management/HumanLanguagePage.tsx index 78b03c6..5c466c9 100644 --- a/src/pages/content-management/HumanLanguagePage.tsx +++ b/src/pages/content-management/HumanLanguagePage.tsx @@ -313,14 +313,22 @@ export function HumanLanguagePage() { - -
+ +
+

+ {selectedCourseId === "ALL" + ? "Select a specific course above to enable adding the next CEFR level (starts at A1) and to use remove actions." + : levelsForSelectedCourse.length >= CEFR_LEVELS.length + ? "All CEFR levels (A1–C3) already have content for this course." + : `Next level to add: ${CEFR_LEVELS.find((l) => !levelsForSelectedCourse.includes(l)) ?? "—"}`} +

@@ -388,46 +396,43 @@ export function HumanLanguagePage() { {availableCourses.length > 0 ? CEFR_LEVELS.filter((l) => selectedLevel === "ALL" || l === selectedLevel).map((level) => { - const modulesByCourse = selectedCourses - .map((course: HumanLanguageCourseTree) => { - const levelNode = course.levels.find((item) => item.level.toUpperCase() === level) - return { - course, - modules: levelNode?.modules ?? [], - } - }) - .filter((entry) => entry.modules.length > 0 || (selectedCourses.length > 0 && level === "A1")) + const modulesByCourse = selectedCourses.map((course: HumanLanguageCourseTree) => { + const levelNode = course.levels.find((item) => item.level.toUpperCase() === level) + return { + course, + modules: levelNode?.modules ?? [], + } + }) return ( - -
- + + + {!collapsedLevels.includes(level) ? ( {modulesByCourse.length === 0 ? (