// lessonRegistry.tsx import { lazy, type ComponentType } from "react"; // lessonTypes.ts export type LessonId = // ---- EBRW ---- | "ebrw-words-in-context" | "ebrw-text-structure-purpose" | "ebrw-cross-text-connections" | "ebrw-central-ideas-details" | "ebrw-inferences" | "ebrw-command-of-evidence" | "ebrw-boundaries" | "ebrw-form-structure-sense" | "ebrw-transitions" | "ebrw-rhetorical-synthesis" // ---- MATH ---- | "alg-linear-eq-1var" | "alg-linear-eq-2var" | "alg-linear-functions" | "alg-systems" | "alg-linear-inequalities" | "adv-equivalent-expr" | "adv-nonlinear-eq" | "adv-systems-2var" | "adv-nonlinear-func" | "data-ratios-rates" | "data-percentages" | "data-one-var" | "data-two-var" | "data-probability" | "data-sample-stats" | "data-eval-claims" | "geom-area-volume" | "geom-lines-angles" | "geom-right-tri-trig" | "geom-circles"; // ---- EBRW ---- const EBRWWordsInContext = lazy( () => import("../pages/student/lessons/EBRWWordsInContextLesson"), ); const EBRWTextStructurePurpose = lazy( () => import("../pages/student/lessons/EBRWTextStructurePurposeLesson"), ); const EBRWCrossText = lazy( () => import("../pages/student/lessons/EBRWCrossTextLesson"), ); const EBRWCentralIdeas = lazy( () => import("../pages/student/lessons/EBRWCentralIdeasLesson"), ); const EBRWInferences = lazy( () => import("../pages/student/lessons/EBRWInferencesLesson"), ); const EBRWCommandEvidence = lazy( () => import("../pages/student/lessons/EBRWCommandEvidenceLesson"), ); const EBRWBoundaries = lazy( () => import("../pages/student/lessons/EBRWBoundariesLesson"), ); const EBRWFormStructureSense = lazy( () => import("../pages/student/lessons/EBRWFormStructureSenseLesson"), ); const EBRWTransitions = lazy( () => import("../pages/student/lessons/EBRWTransitionsLesson"), ); const EBRWRhetoricalSynthesis = lazy( () => import("../pages/student/lessons/EBRWRhetoricalSynthesisLesson"), ); // ---- MATH ---- const AlgLinearEq1Var = lazy( () => import("../pages/student/lessons/LinearEq1VarLesson"), ); const AlgLinearEq2Var = lazy( () => import("../pages/student/lessons/LinearEq2VarLesson"), ); const AlgLinearFunctions = lazy( () => import("../pages/student/lessons/LinearFunctionsLesson"), ); const AlgSystems = lazy( () => import("../pages/student/lessons/SystemsEquationsLesson"), ); const AlgLinearInequalities = lazy( () => import("../pages/student/lessons/LinearInequalitiesLesson"), ); const AdvEquivalentExpr = lazy( () => import("../pages/student/lessons/EquivalentExpressionsLesson"), ); const AdvNonlinearEq = lazy( () => import("../pages/student/lessons/NonlinearEq1VarLesson"), ); const AdvSystems2Var = lazy( () => import("../pages/student/lessons/SystemsEq2VarLesson"), ); const AdvNonlinearFunc = lazy( () => import("../pages/student/lessons/NonlinearFunctionsLesson"), ); const DataRatiosRates = lazy( () => import("../pages/student/lessons/RatiosRatesLesson"), ); const DataPercentages = lazy( () => import("../pages/student/lessons/PercentagesLesson"), ); const DataOneVar = lazy( () => import("../pages/student/lessons/OneVariableDataLesson"), ); const DataTwoVar = lazy( () => import("../pages/student/lessons/TwoVariableDataLesson"), ); const DataProbability = lazy( () => import("../pages/student/lessons/ProbabilityLesson"), ); const DataSampleStats = lazy( () => import("../pages/student/lessons/SampleStatsLesson"), ); const DataEvalClaims = lazy( () => import("../pages/student/lessons/EvalStatisticalClaimsLesson"), ); const GeomAreaVolume = lazy( () => import("../pages/student/lessons/AreaVolumeLesson"), ); const GeomLinesAngles = lazy( () => import("../pages/student/lessons/LinesAnglesLesson"), ); const GeomRightTriTrig = lazy( () => import("../pages/student/lessons/RightTrianglesTrigLesson"), ); const GeomCircles = lazy( () => import("../pages/student/lessons/CirclesLesson"), ); // ---- Registry Map ---- export const LESSON_COMPONENT_MAP: Record = { // ---- EBRW ---- "ebrw-words-in-context": EBRWWordsInContext, "ebrw-text-structure-purpose": EBRWTextStructurePurpose, "ebrw-cross-text-connections": EBRWCrossText, "ebrw-central-ideas-details": EBRWCentralIdeas, "ebrw-inferences": EBRWInferences, "ebrw-command-of-evidence": EBRWCommandEvidence, "ebrw-boundaries": EBRWBoundaries, "ebrw-form-structure-sense": EBRWFormStructureSense, "ebrw-transitions": EBRWTransitions, "ebrw-rhetorical-synthesis": EBRWRhetoricalSynthesis, // ---- MATH ---- "alg-linear-eq-1var": AlgLinearEq1Var, "alg-linear-eq-2var": AlgLinearEq2Var, "alg-linear-functions": AlgLinearFunctions, "alg-systems": AlgSystems, "alg-linear-inequalities": AlgLinearInequalities, "adv-equivalent-expr": AdvEquivalentExpr, "adv-nonlinear-eq": AdvNonlinearEq, "adv-systems-2var": AdvSystems2Var, "adv-nonlinear-func": AdvNonlinearFunc, "data-ratios-rates": DataRatiosRates, "data-percentages": DataPercentages, "data-one-var": DataOneVar, "data-two-var": DataTwoVar, "data-probability": DataProbability, "data-sample-stats": DataSampleStats, "data-eval-claims": DataEvalClaims, "geom-area-volume": GeomAreaVolume, "geom-lines-angles": GeomLinesAngles, "geom-right-tri-trig": GeomRightTriTrig, "geom-circles": GeomCircles, };