@cuemath/leap 3.5.47-gg6 → 3.5.48-link.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/dist/assets/line-icons/icons/bulb.js +10 -10
  2. package/dist/assets/line-icons/icons/bulb.js.map +1 -1
  3. package/dist/assets/line-icons/icons/hand.js.map +1 -1
  4. package/dist/assets/line-icons/icons/scribble.js +36 -13
  5. package/dist/assets/line-icons/icons/scribble.js.map +1 -1
  6. package/dist/assets/line-icons/icons/sticker.js +9 -9
  7. package/dist/assets/line-icons/icons/sticker.js.map +1 -1
  8. package/dist/features/analytics-events/whitelist-events.js +14 -16
  9. package/dist/features/analytics-events/whitelist-events.js.map +1 -1
  10. package/dist/features/circle-games/games/web-view/web-view-analytics-events.js.map +1 -1
  11. package/dist/features/cue-canvas/sidebar/puzzles/api/get-puzzles.js.map +1 -1
  12. package/dist/features/journey/hooks/use-home-page-journey/home-page-homeworks-mock.js +6 -6
  13. package/dist/features/journey/hooks/use-home-page-journey/home-page-homeworks-mock.js.map +1 -1
  14. package/dist/features/journey/hooks/use-home-page-journey/recent-chapters-mock.js +2 -2
  15. package/dist/features/journey/hooks/use-home-page-journey/recent-chapters-mock.js.map +1 -1
  16. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js +29 -64
  17. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js.map +1 -1
  18. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.js +9 -9
  19. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.js.map +1 -1
  20. package/dist/features/trial-session/comps/school-goals/school-goals-styled.js +8 -5
  21. package/dist/features/trial-session/comps/school-goals/school-goals-styled.js.map +1 -1
  22. package/dist/features/trial-session/comps/school-goals/school-goals-view.js +35 -32
  23. package/dist/features/trial-session/comps/school-goals/school-goals-view.js.map +1 -1
  24. package/dist/features/trial-session/comps/school-goals/school-goals.js +47 -45
  25. package/dist/features/trial-session/comps/school-goals/school-goals.js.map +1 -1
  26. package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js +44 -51
  27. package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
  28. package/dist/features/trial-session/comps/test-prep/test-prep.js +39 -46
  29. package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
  30. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.js +120 -144
  31. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.js.map +1 -1
  32. package/dist/features/trial-session/helper.js +49 -54
  33. package/dist/features/trial-session/helper.js.map +1 -1
  34. package/dist/features/trial-session/hooks/use-slide-config-update.js +65 -62
  35. package/dist/features/trial-session/hooks/use-slide-config-update.js.map +1 -1
  36. package/dist/features/trial-session/trial-session-view.js +45 -48
  37. package/dist/features/trial-session/trial-session-view.js.map +1 -1
  38. package/dist/features/ui/tabs/tabs.js +15 -15
  39. package/dist/features/ui/tabs/tabs.js.map +1 -1
  40. package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js +1 -0
  41. package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js.map +1 -1
  42. package/dist/features/worksheet/worksheet/constants.js +13 -12
  43. package/dist/features/worksheet/worksheet/constants.js.map +1 -1
  44. package/dist/features/worksheet/worksheet/question-tips.js +100 -0
  45. package/dist/features/worksheet/worksheet/question-tips.js.map +1 -0
  46. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js +109 -40
  47. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js.map +1 -1
  48. package/dist/features/worksheet/worksheet/worksheet-behavior-helper.js +7 -7
  49. package/dist/features/worksheet/worksheet/worksheet-behavior-helper.js.map +1 -1
  50. package/dist/features/worksheet/worksheet/worksheet-calculator/worksheet-calculator.js +4 -4
  51. package/dist/features/worksheet/worksheet/worksheet-calculator/worksheet-calculator.js.map +1 -1
  52. package/dist/features/worksheet/worksheet/worksheet-helpers.js.map +1 -1
  53. package/dist/features/worksheet/worksheet/worksheet-question/subjective-styled.js +22 -17
  54. package/dist/features/worksheet/worksheet/worksheet-question/subjective-styled.js.map +1 -1
  55. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.js +24 -23
  56. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.js.map +1 -1
  57. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js +220 -192
  58. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js.map +1 -1
  59. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js +53 -0
  60. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js.map +1 -0
  61. package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js +103 -73
  62. package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js.map +1 -1
  63. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js +251 -213
  64. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js.map +1 -1
  65. package/dist/features/worksheet/worksheet/worksheet-sidebar/navigator.js +20 -33
  66. package/dist/features/worksheet/worksheet/worksheet-sidebar/navigator.js.map +1 -1
  67. package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js +112 -0
  68. package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js.map +1 -0
  69. package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js +61 -0
  70. package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js.map +1 -0
  71. package/dist/features/worksheet/worksheet/worksheet-sidebar/worksheet-sidebar-styled.js +91 -0
  72. package/dist/features/worksheet/worksheet/worksheet-sidebar/worksheet-sidebar-styled.js.map +1 -0
  73. package/dist/features/worksheet/worksheet/worksheet-store.js +132 -138
  74. package/dist/features/worksheet/worksheet/worksheet-store.js.map +1 -1
  75. package/dist/features/worksheet/worksheet/worksheet-styled.js +83 -29
  76. package/dist/features/worksheet/worksheet/worksheet-styled.js.map +1 -1
  77. package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js +24 -45
  78. package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js.map +1 -1
  79. package/dist/features/worksheet/worksheet/worksheet-types.js +2 -3
  80. package/dist/features/worksheet/worksheet/worksheet-types.js.map +1 -1
  81. package/dist/features/worksheet/worksheet/worksheet-view.js +99 -88
  82. package/dist/features/worksheet/worksheet/worksheet-view.js.map +1 -1
  83. package/dist/features/worksheet/worksheet/worksheet.js +95 -96
  84. package/dist/features/worksheet/worksheet/worksheet.js.map +1 -1
  85. package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js +29 -29
  86. package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js.map +1 -1
  87. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js +1 -1
  88. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js.map +1 -1
  89. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js +24 -24
  90. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
  91. package/dist/index.d.ts +14 -32
  92. package/dist/index.js +745 -760
  93. package/dist/index.js.map +1 -1
  94. package/dist/types/models/worksheet.js +1 -2
  95. package/dist/types/models/worksheet.js.map +1 -1
  96. package/package.json +1 -1
  97. package/dist/assets/line-icons/icons/chevron-up.js +0 -28
  98. package/dist/assets/line-icons/icons/chevron-up.js.map +0 -1
  99. package/dist/assets/line-icons/icons/close.js +0 -28
  100. package/dist/assets/line-icons/icons/close.js.map +0 -1
  101. package/dist/assets/line-icons/icons/cursor2.js +0 -24
  102. package/dist/assets/line-icons/icons/cursor2.js.map +0 -1
  103. package/dist/assets/line-icons/icons/hints.js +0 -25
  104. package/dist/assets/line-icons/icons/hints.js.map +0 -1
  105. package/dist/assets/line-icons/icons/question-feedback.js +0 -30
  106. package/dist/assets/line-icons/icons/question-feedback.js.map +0 -1
  107. package/dist/assets/line-icons/icons/teaching-tools.js +0 -40
  108. package/dist/assets/line-icons/icons/teaching-tools.js.map +0 -1
  109. package/dist/assets/line-icons/icons/tval-question.js +0 -32
  110. package/dist/assets/line-icons/icons/tval-question.js.map +0 -1
  111. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game-analytics-events.js +0 -11
  112. package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game-analytics-events.js.map +0 -1
  113. package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar-styled.js +0 -49
  114. package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar-styled.js.map +0 -1
  115. package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar.js +0 -184
  116. package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar.js.map +0 -1
  117. package/dist/features/worksheet/worksheet/worksheet-questions-tools/scribble-switch.js +0 -65
  118. package/dist/features/worksheet/worksheet/worksheet-questions-tools/scribble-switch.js.map +0 -1
  119. package/dist/features/worksheet/worksheet/worksheet-questions-tools/worksheet-questions-styled.js +0 -9
  120. package/dist/features/worksheet/worksheet/worksheet-questions-tools/worksheet-questions-styled.js.map +0 -1
  121. package/dist/features/worksheet/worksheet/worksheet-questions-tools/worksheet-questions-tools.js +0 -38
  122. package/dist/features/worksheet/worksheet/worksheet-questions-tools/worksheet-questions-tools.js.map +0 -1
  123. package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools-styled.js +0 -19
  124. package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools-styled.js.map +0 -1
  125. package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools.js +0 -66
  126. package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-helpers.js","sources":["../../../../src/features/worksheet/worksheet/worksheet-helpers.ts"],"sourcesContent":["import Bulb2Icon from '../../../assets/line-icons/icons/bulb2';\nimport EditStarIcon from '../../../assets/line-icons/icons/edit-star';\nimport Edit2Icon from '../../../assets/line-icons/icons/edit2';\nimport QuestionLetterIcon from '../../../assets/line-icons/icons/question-letter';\nimport Star2Icon from '../../../assets/line-icons/icons/star2';\nimport type { NODE_TYPES } from '../../../types/models/worksheet';\nimport type { TColorNames, THueNames, TUserTypes } from '../../ui/types';\nimport EVENTS from '../constants/events';\nimport {\n ACTION_BAR_HEIGHT,\n CLOZE_FORMULA_RESPONSE_LIMIT,\n OPTIONAL_ITEM_TYPES,\n QUESTION_WIDTH,\n SPLIT_QUESTION_WIDTH,\n} from './constants';\nimport type { TWorksheetQuestionPaperColor } from './worksheet-question/worksheet-question-types';\nimport {\n QUESTION_TAGS,\n type ILearnosityItem,\n type ILearnosityQuestion,\n type ILearnosityQuestionResponse,\n type IWorksheetBehavior,\n type IWorksheetHeaderLayoutProps,\n type IWorksheetLayout,\n type IWorksheetQuestion,\n type IWorksheetResponse,\n type TInstructorStimulus,\n type TItemType,\n type TSectionName,\n} from './worksheet-types';\n\ninterface IGetSectionNameFromItemType {\n (itemType?: TItemType): TSectionName | undefined;\n}\n\nconst getSectionNameFromItemType: IGetSectionNameFromItemType = itemType => {\n switch (itemType) {\n case 'overview':\n return 'overview';\n case 'learning-we-do':\n case 'learning-your-turn':\n case 'learning-explore':\n return 'learning';\n case 'practice-basic':\n case 'practice-basic-optional':\n return 'practice-basic';\n case 'practice-regular':\n case 'practice-regular-optional':\n return 'practice-regular';\n case 'exit-ticket':\n return 'exit-ticket';\n case 'advanced-explore':\n case 'advanced-we-do':\n case 'advanced-your-turn':\n case 'advanced-practice':\n return 'advanced';\n default:\n return undefined;\n }\n};\n\nconst isConceptIntroWidget = (instructorStimulus?: TInstructorStimulus) => {\n if (!instructorStimulus) {\n return false;\n }\n\n const lowerCaseInstructorStimulus = instructorStimulus.toLowerCase();\n\n return lowerCaseInstructorStimulus === 'intro' || lowerCaseInstructorStimulus === 'concept-intro';\n};\n\nconst getTagsMap = (tags: string[]): Record<string, string> => {\n return tags.reduce((acc, tag) => {\n const [key, value] = tag.split(':');\n const trimmedKey = key?.trim();\n const trimmedValue = value?.trim();\n\n if (!trimmedKey || !trimmedValue) {\n return acc;\n }\n\n return {\n ...acc,\n [trimmedKey.toLowerCase()]: trimmedValue,\n };\n }, {});\n};\n\ninterface IGetQuestionsFromItems {\n (\n items: ILearnosityItem[],\n options: {\n sectioned?: boolean;\n adaptive?: boolean;\n },\n ): IWorksheetQuestion[];\n}\nconst getQuestionsFromItems: IGetQuestionsFromItems = (\n items,\n { sectioned = false, adaptive = false },\n) => {\n if (sectioned) {\n return items.reduce((acc, item, itemIndex) => {\n let hasIntroWidget = false;\n const { content, questions, itemType } = item;\n const sectionName = getSectionNameFromItemType(itemType);\n const prevItem = acc[acc.length - 1];\n const itemDisplayNumber =\n sectionName === prevItem?.section_name && prevItem?.item_display_number\n ? prevItem.item_display_number + 1\n : 1;\n const orderedQuestionIds = content.match(/question-[^\"]*/g);\n const orderedQuestions = orderedQuestionIds?.map((responseId, widgetIndex) => {\n const question = questions.find(\n ({ response_id: respId }) => respId === responseId.replace('question-', ''),\n );\n\n if (!question) {\n throw new Error(`Question not found for the response id: ${responseId}`);\n }\n\n hasIntroWidget = hasIntroWidget || isConceptIntroWidget(question.instructor_stimulus);\n\n return {\n ...question,\n // Some questions are set to limited number of attempts which can show feedback which is causing the question to be stuck in the errored state\n feedback_attempts: undefined,\n item_reference: item.reference,\n item_number: itemIndex,\n item_display_number: itemDisplayNumber,\n section_name: sectionName,\n item_type: sectioned ? itemType : undefined,\n is_optional: itemType ? OPTIONAL_ITEM_TYPES.includes(itemType) : false,\n item_tags: item.tags ?? [],\n item_tags_map: getTagsMap(item.tags ?? []),\n question_number: widgetIndex - (hasIntroWidget ? 1 : 0),\n total_questions: orderedQuestionIds.length,\n } as IWorksheetQuestion;\n });\n\n hasIntroWidget = false;\n\n if (orderedQuestions?.[0] && itemIndex > 0 && items.length > 0) {\n const prevItemType = items[itemIndex - 1]?.itemType;\n const itemTypeDerived = itemType?.startsWith('advanced-') ? 'advanced' : itemType;\n const prevItemTypeDerived = prevItemType?.startsWith('advanced-')\n ? 'advanced'\n : prevItemType;\n\n if (\n (itemTypeDerived === 'practice-basic' ||\n itemTypeDerived === 'practice-regular' ||\n itemTypeDerived === 'exit-ticket' ||\n itemTypeDerived === 'advanced') &&\n itemTypeDerived !== prevItemTypeDerived\n ) {\n return [\n ...acc,\n {\n ...orderedQuestions[0],\n metadata: {\n ...orderedQuestions[0].metadata,\n teacher_tips: undefined,\n hints: undefined,\n solution: undefined,\n },\n instructor_stimulus: 'SystemIntro',\n response_id: `${itemType}-system-intro`,\n is_optional: itemType?.startsWith('advanced-'),\n },\n ...(orderedQuestions ?? []),\n ];\n }\n }\n\n return [...acc, ...(orderedQuestions ?? [])];\n }, [] as IWorksheetQuestion[]);\n }\n\n const finalQuestions = items.reduce((acc, item, itemIndex) => {\n const { content, questions } = item;\n const orderedQuestionIds = content.match(/question-[^\"]*/g);\n const orderedQuestions = orderedQuestionIds?.map<IWorksheetQuestion>(\n (responseId, widgetIndex) => {\n const question = questions.find(\n ({ response_id: respId }) => respId === responseId.replace('question-', ''),\n );\n\n if (!question) {\n throw new Error(`Question not found for the response id: ${responseId}`);\n }\n\n return {\n ...question,\n feedback_attempts: undefined,\n item_reference: item.reference,\n item_number: itemIndex,\n item_display_number: itemIndex + 1,\n item_tags: item.tags ?? [],\n item_tags_map: getTagsMap(item.tags ?? []),\n question_number: widgetIndex,\n total_questions: orderedQuestionIds.length,\n };\n },\n );\n\n return [...acc, ...(orderedQuestions ?? [])];\n }, [] as IWorksheetQuestion[]);\n\n if (adaptive) {\n const topics: string[] = [];\n const topicsOrder: Record<string, number> = {};\n\n return finalQuestions\n .sort((a, b) => {\n const aTopic = a.item_tags_map[QUESTION_TAGS.TRIAL_TOPIC];\n const bTopic = b.item_tags_map[QUESTION_TAGS.TRIAL_TOPIC];\n\n if (aTopic && topicsOrder[aTopic] === undefined) {\n topicsOrder[aTopic] = topics.length;\n topics.push(aTopic);\n }\n\n if (bTopic && topicsOrder[bTopic] === undefined) {\n topicsOrder[bTopic] = topics.length;\n topics.push(bTopic);\n }\n\n if (!aTopic || !bTopic) {\n return 0;\n }\n\n const aSortKey = `${topicsOrder[aTopic]}-${\n a.item_tags_map[QUESTION_TAGS.QUESTION_CODE]?.length ?? 0\n }`;\n const bSortKey = `${topicsOrder[bTopic]}-${\n b.item_tags_map[QUESTION_TAGS.QUESTION_CODE]?.length ?? 0\n }`;\n\n return aSortKey > bSortKey ? 1 : -1;\n })\n .map(question => {\n const topicOrder =\n topicsOrder[question.item_tags_map[QUESTION_TAGS.TRIAL_TOPIC] ?? ''] ?? 0;\n const questionCode = question.item_tags_map[QUESTION_TAGS.QUESTION_CODE] ?? '';\n\n return {\n ...question,\n item_display_number: topicOrder * 3 + questionCode.length,\n };\n });\n }\n\n return finalQuestions;\n};\n\ninterface IGetInitialQuestionId {\n (params: {\n questions: IWorksheetQuestion[];\n initialQuestion: IWorksheetBehavior['initialQuestion'];\n lastUnlockedQuestionIndex: number;\n lastAttemptableQuestionIndex: number;\n initialResponseId?: string;\n initialItemIndex?: number;\n }): string;\n}\n\nconst getInitialQuestionId: IGetInitialQuestionId = ({\n questions,\n initialQuestion,\n initialResponseId,\n initialItemIndex,\n lastUnlockedQuestionIndex,\n lastAttemptableQuestionIndex,\n}) => {\n const unlockedQuestions = questions.slice(0, lastUnlockedQuestionIndex + 1);\n const lastUnlockedQuestion = questions[lastUnlockedQuestionIndex]!;\n const lastAttemptableQuestion = questions[lastAttemptableQuestionIndex]!;\n\n if (initialResponseId && unlockedQuestions.find(q => q.response_id === initialResponseId)) {\n return initialResponseId;\n }\n\n if (\n typeof initialItemIndex === 'number' &&\n initialItemIndex <= lastUnlockedQuestion.item_number\n ) {\n const question = questions.find(q => q.item_number === initialItemIndex);\n\n if (question?.response_id) {\n return question.response_id;\n }\n }\n\n if (initialQuestion === 'FIRST' && questions[0]?.response_id) {\n return questions[0].response_id;\n }\n\n if (initialQuestion === 'CURRENT') {\n return lastAttemptableQuestion.response_id;\n }\n\n if (questions[0]?.response_id) {\n return questions[0].response_id;\n }\n\n throw new Error('Initial question not found');\n};\n\ninterface IGetLastAttemptableQuestionIndex {\n (options: {\n questions: IWorksheetQuestion[];\n responses: Record<string, IWorksheetResponse>;\n behavior: IWorksheetBehavior;\n userType: TUserTypes;\n }): number;\n}\nconst getLastAttemptableQuestionIndex: IGetLastAttemptableQuestionIndex = ({\n questions,\n responses,\n behavior,\n userType,\n}) => {\n const { maximumAttempts, teacherValidationEnabled, validation, navigationMode } = behavior;\n\n const questionIndex = [...questions].reverse().findIndex(q => {\n const qResp = responses[q.response_id];\n\n const { attemptsHistory, validatedByTeacher, assignStatus } = qResp ?? {};\n\n if (teacherValidationEnabled) {\n if (validatedByTeacher) {\n return true;\n }\n\n if (assignStatus === 'skipped') {\n return true;\n }\n\n return false;\n }\n\n const lastAttemptScore = attemptsHistory?.slice(-1)[0]?.score;\n\n if (lastAttemptScore) {\n if ((lastAttemptScore.score ?? 0) === lastAttemptScore.max_score) {\n return true;\n }\n\n const maximumAttemptsReached = (attemptsHistory?.length ?? 0) >= maximumAttempts;\n\n return maximumAttemptsReached;\n }\n\n if (!validation && navigationMode === 'LINEAR' && (qResp?.response || qResp?.skipped)) {\n return true;\n }\n\n return false;\n });\n\n if (questionIndex === -1) {\n return 0;\n }\n\n if (questionIndex === 0) {\n if (teacherValidationEnabled) {\n const unskippedQuestionIndex = [...questions].reverse().findIndex(q => {\n return responses[q.response_id]?.assignStatus !== 'skipped';\n });\n\n return questions.length - unskippedQuestionIndex - 1;\n }\n\n return questions.length - 1;\n }\n\n if (teacherValidationEnabled && userType === 'STUDENT') {\n const lastUnlockedQuestionIndex = questions.length - questionIndex;\n const lastUnlockedQuestion = questions[lastUnlockedQuestionIndex]!;\n const { assignStatus } = responses[lastUnlockedQuestion.response_id] ?? {};\n\n if (lastUnlockedQuestion.is_optional && !assignStatus) {\n return lastUnlockedQuestionIndex - 1;\n }\n\n return lastUnlockedQuestionIndex;\n }\n\n return questions.length - questionIndex;\n};\n\ninterface IGetLastUnlockedQuestionIndex {\n (options: {\n questions: IWorksheetQuestion[];\n responses: Record<string, IWorksheetResponse>;\n behavior: IWorksheetBehavior;\n userType: TUserTypes;\n }): number;\n}\n\nconst getLastUnlockedQuestionIndex: IGetLastUnlockedQuestionIndex = ({\n questions,\n responses,\n behavior,\n userType,\n}) => {\n if (behavior.navigationMode === 'OPEN') {\n return questions.length - 1;\n }\n\n return getLastAttemptableQuestionIndex({\n questions,\n responses,\n behavior,\n userType,\n });\n};\n\ntype TQuestionMetadata = Pick<\n IWorksheetResponse,\n 'widgetReference' | 'itemReference' | 'itemPosition' | 'questionPosition' | 'isOkayTypeQuestion'\n>;\n\nfunction getQuestionMetadata(\n questions: IWorksheetQuestion[],\n questionId: string,\n): TQuestionMetadata;\nfunction getQuestionMetadata(question: IWorksheetQuestion): TQuestionMetadata;\nfunction getQuestionMetadata(\n questions: IWorksheetQuestion | IWorksheetQuestion[],\n questionId?: string,\n) {\n const question = Array.isArray(questions)\n ? questions.find(q => q.response_id === questionId)\n : questions;\n\n if (!question) {\n throw new Error(`Question with id ${questionId} not found`);\n }\n\n return {\n widgetReference: question.metadata.widget_reference,\n itemReference: question.item_reference,\n itemPosition: question.item_number,\n questionPosition: question.question_number,\n isOkayTypeQuestion: isOkayTypeQuestion(question),\n score: {\n max_score:\n question?.validation?.valid_response?.score ?? 0 * question.metadata.valid_response_count,\n },\n tags: {\n ...question.item_tags_map,\n instructor_stimulus: question.instructor_stimulus,\n },\n };\n}\n\ninterface IGetInitialResponses {\n (questions: IWorksheetQuestion[]): Record<string, IWorksheetResponse>;\n}\n\nconst getInitialResponses: IGetInitialResponses = questions => {\n return questions.reduce(\n (acc, question) => ({\n ...acc,\n [question.response_id]: getQuestionMetadata(questions, question.response_id),\n }),\n {},\n );\n};\n\ninterface IGetWorksheetDimensions {\n (\n items: ILearnosityItem[],\n layout: IWorksheetLayout,\n ): {\n questionsContainerWidth: number;\n maxQuestionWidth: number;\n actionbarHeight: number;\n };\n}\n\nconst getWorksheetDimensions: IGetWorksheetDimensions = (items, layout) => {\n const { actionBar } = layout;\n const isSingleColumn = !items.some(item =>\n item.questions.some(question => question.stimulus_review),\n );\n const actionbarHeight = actionBar === 'bottom' ? ACTION_BAR_HEIGHT : 0;\n\n return {\n questionsContainerWidth: isSingleColumn ? QUESTION_WIDTH : SPLIT_QUESTION_WIDTH,\n maxQuestionWidth: QUESTION_WIDTH,\n actionbarHeight,\n };\n};\n\ninterface IScrollToQuestion {\n (questionId: string, params?: { animation?: boolean }): void;\n}\n\nconst scrollToQuestion: IScrollToQuestion = (questionId, { animation = false } = {}) => {\n const $questionEl = document.querySelectorAll(`.widget-${questionId}`)[0];\n\n if ($questionEl) {\n $questionEl.scrollIntoView({\n block: 'start',\n behavior: animation ? 'smooth' : 'instant',\n });\n }\n};\n\ninterface IIsOkayTypeQuestion {\n (question: IWorksheetQuestion | ILearnosityQuestion): boolean;\n}\n\nconst isOkayTypeQuestion: IIsOkayTypeQuestion = question => {\n const { type, options, instructor_stimulus } = question;\n const itemType = 'item_type' in question ? question.item_type : undefined;\n\n if (\n itemType === 'overview' ||\n instructor_stimulus === 'Intro' ||\n instructor_stimulus === 'SystemIntro' ||\n instructor_stimulus === 'Concept-Intro'\n ) {\n return true;\n }\n\n return type === 'mcq' && options?.length === 1 ? true : false;\n};\n\nconst setMathJaxConfigInWindow = (\n logger: (eventName: string, data?: Record<string, unknown>) => void,\n) => {\n window.MathJax = {\n options: {\n enableMenu: false,\n ignoreHtmlClass: 'lrn_noMath',\n compileError: function (doc, math, err) {\n logger(EVENTS.MATHJAX_COMPILE_ERROR);\n doc.compileError(math, err);\n },\n typesetError: function (doc, math, err) {\n logger(EVENTS.MATHJAX_TYPESET_ERROR);\n doc.typesetError(math, err);\n // throw new Error('typesetError');\n },\n },\n tex: {\n inlineMath: [\n ['\\\\(', '\\\\)'],\n ['$$', '$$'],\n ],\n displayMath: [['\\\\[', '\\\\]']],\n macros: {\n abs: ['{|#1|}', 1],\n degree: ['°'],\n longdiv: ['{\\\\enclose{longdiv}{#1}}', 1],\n atomic: ['{_{#1}^{#2}}', 2],\n polyatomic: ['{_{#2}{}^{#1}}', 2],\n circledot: ['{\\\\odot}'],\n parallelogram: ['\\\\unicode{x25B1}'],\n ngtr: ['\\\\unicode{x226F}'],\n nless: ['\\\\unicode{x226E}'],\n MathQuillVarField: ['#1', 1],\n overarc: ['{\\\\overparen{#1}}', 1],\n },\n formatError: (jax, err) => {\n logger(EVENTS.MATHJAX_FORMAT_ERROR, {\n id: err.id,\n message: err.message,\n });\n jax.formatError(err);\n },\n },\n chtml: {\n minScale: 1,\n matchFontHeight: false,\n },\n };\n};\n\ninterface IGetPaperColorByQuestion {\n (question: IWorksheetQuestion): TWorksheetQuestionPaperColor;\n}\n\nconst getPaperColorByQuestion: IGetPaperColorByQuestion = question => {\n const { item_type, instructor_stimulus } = question;\n const lowerCaseInstructorStimulus = instructor_stimulus?.toLowerCase();\n\n switch (item_type) {\n case 'overview':\n return 'white';\n case 'learning-we-do':\n case 'learning-your-turn':\n case 'learning-explore':\n if (\n lowerCaseInstructorStimulus === 'instruction' ||\n lowerCaseInstructorStimulus === 'intro' ||\n lowerCaseInstructorStimulus === 'concept-intro'\n ) {\n return 'blue';\n }\n\n if (lowerCaseInstructorStimulus === 'task') {\n return 'green';\n }\n\n return 'yellow';\n case 'practice-basic':\n case 'practice-regular':\n return 'yellow';\n case 'exit-ticket':\n return 'purple';\n case 'advanced-practice':\n return 'orange';\n default:\n if (lowerCaseInstructorStimulus === 'learn') return 'blue';\n\n if (lowerCaseInstructorStimulus === 'try' || lowerCaseInstructorStimulus === 'apply')\n return 'green';\n\n return 'yellow';\n }\n};\n\nconst getQuestionBackgroundImage = (paperColor: TWorksheetQuestionPaperColor) => {\n return `https://cuemath-intel.s3.ap-southeast-1.amazonaws.com/media/math-canvas/paper-${paperColor}.png`;\n};\n\nconst getQuestionBorderColor = (\n paperColor: TWorksheetQuestionPaperColor,\n isActive?: boolean,\n): TColorNames => {\n if (!isActive) {\n return 'GREY_3';\n }\n\n switch (paperColor) {\n case 'orange':\n case 'white':\n return 'ORANGE_2';\n case 'blue':\n return 'BLUE_2';\n case 'green':\n return 'GREEN_2';\n case 'yellow':\n return 'YELLOW_2';\n case 'purple':\n return 'PURPLE_2';\n default:\n return 'GREY_3';\n }\n};\n\nconst getNavigationSectionBackgroundColor = (sectionName?: TSectionName): TColorNames => {\n switch (sectionName) {\n case 'learning':\n return 'BLUE_1';\n case 'practice-basic':\n case 'practice-regular':\n return 'YELLOW_1';\n case 'exit-ticket':\n return 'PURPLE_1';\n case 'advanced':\n return 'ORANGE_1';\n default:\n return 'YELLOW_1';\n }\n};\n\nconst getNavigationSectionName = (sectionName?: TSectionName): string => {\n switch (sectionName) {\n case 'learning':\n return 'Learning';\n case 'practice-basic':\n return 'Basic practice';\n case 'practice-regular':\n return 'Regular practice';\n case 'exit-ticket':\n return 'Mini quiz';\n case 'advanced':\n return 'Advanced work';\n default:\n return '';\n }\n};\n\nconst getNavigationSectionIcon = (sectionName?: TSectionName) => {\n switch (sectionName) {\n case 'learning':\n return Bulb2Icon;\n case 'practice-basic':\n return Edit2Icon;\n case 'practice-regular':\n return EditStarIcon;\n case 'exit-ticket':\n return QuestionLetterIcon;\n case 'advanced':\n return Star2Icon;\n default:\n return Bulb2Icon;\n }\n};\n\nconst isSATAssessmentNode = (nodeType: NODE_TYPES) =>\n nodeType === 'SAT_ENGLISH_ASSESSMENT' || nodeType === 'SAT_MATH_ASSESSMENT';\n\nconst checkIsClozeFormulaResponseInvalid = (response: ILearnosityQuestionResponse) => {\n if (Array.isArray(response.value)) {\n const isInvalid = response.value.some(\n item => typeof item === 'string' && item.length > CLOZE_FORMULA_RESPONSE_LIMIT,\n );\n\n return isInvalid;\n }\n\n return false;\n};\n\nconst getWorksheetHeaderLayout: IWorksheetHeaderLayoutProps = ({\n isPuzzleWorksheet,\n isTestWorksheet,\n imageHue = 'BLUE',\n}) => {\n if (isPuzzleWorksheet) {\n return {\n bgColor: `${imageHue}_3`,\n borderColor: `${imageHue}_4`,\n textColor: 'BLACK_T_87',\n };\n }\n\n if (isTestWorksheet) {\n return {\n bgColor: 'WHITE_3',\n borderColor: 'WHITE_4',\n textColor: 'BLACK_T_87',\n };\n }\n\n return {\n bgColor: 'BLACK',\n borderColor: 'BLACK_4',\n textColor: 'WHITE',\n };\n};\n\ninterface IGetPuzzleWorksheetBackgroundColor {\n (imageHue?: THueNames): TColorNames;\n}\n\nconst getPuzzleWorksheetBackgroundColor: IGetPuzzleWorksheetBackgroundColor = imageHue => {\n if (!imageHue) return 'BLUE_1';\n\n return `${imageHue}_1`;\n};\n\nexport {\n checkIsClozeFormulaResponseInvalid,\n getInitialQuestionId,\n getInitialResponses,\n getLastUnlockedQuestionIndex,\n getLastAttemptableQuestionIndex,\n getNavigationSectionBackgroundColor,\n getNavigationSectionIcon,\n getNavigationSectionName,\n getPaperColorByQuestion,\n getPuzzleWorksheetBackgroundColor,\n getQuestionBackgroundImage,\n getQuestionBorderColor,\n getQuestionMetadata,\n getQuestionsFromItems,\n getWorksheetDimensions,\n getWorksheetHeaderLayout,\n isConceptIntroWidget,\n isOkayTypeQuestion,\n isSATAssessmentNode,\n scrollToQuestion,\n setMathJaxConfigInWindow,\n};\n"],"names":["getSectionNameFromItemType","itemType","isConceptIntroWidget","instructorStimulus","lowerCaseInstructorStimulus","getTagsMap","tags","acc","tag","key","value","trimmedKey","trimmedValue","getQuestionsFromItems","items","sectioned","adaptive","item","itemIndex","hasIntroWidget","content","questions","sectionName","prevItem","itemDisplayNumber","orderedQuestionIds","orderedQuestions","responseId","widgetIndex","question","respId","OPTIONAL_ITEM_TYPES","prevItemType","_a","itemTypeDerived","prevItemTypeDerived","finalQuestions","topics","topicsOrder","a","b","aTopic","QUESTION_TAGS","bTopic","aSortKey","bSortKey","_b","topicOrder","questionCode","getInitialQuestionId","initialQuestion","initialResponseId","initialItemIndex","lastUnlockedQuestionIndex","lastAttemptableQuestionIndex","unlockedQuestions","lastUnlockedQuestion","lastAttemptableQuestion","q","getLastAttemptableQuestionIndex","responses","behavior","userType","maximumAttempts","teacherValidationEnabled","validation","navigationMode","questionIndex","qResp","attemptsHistory","validatedByTeacher","assignStatus","lastAttemptScore","unskippedQuestionIndex","getLastUnlockedQuestionIndex","getQuestionMetadata","questionId","isOkayTypeQuestion","getInitialResponses","getWorksheetDimensions","layout","actionBar","QUESTION_WIDTH","SPLIT_QUESTION_WIDTH","ACTION_BAR_HEIGHT","scrollToQuestion","animation","$questionEl","type","options","instructor_stimulus","setMathJaxConfigInWindow","logger","doc","math","err","EVENTS","jax","getPaperColorByQuestion","item_type","getQuestionBackgroundImage","paperColor","getQuestionBorderColor","isActive","getNavigationSectionBackgroundColor","getNavigationSectionName","getNavigationSectionIcon","Bulb2Icon","Edit2Icon","EditStarIcon","QuestionLetterIcon","Star2Icon","checkIsClozeFormulaResponseInvalid","response","CLOZE_FORMULA_RESPONSE_LIMIT","getWorksheetHeaderLayout","isPuzzleWorksheet","isTestWorksheet","imageHue","getPuzzleWorksheetBackgroundColor"],"mappings":"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"}
1
+ {"version":3,"file":"worksheet-helpers.js","sources":["../../../../src/features/worksheet/worksheet/worksheet-helpers.ts"],"sourcesContent":["import Bulb2Icon from '../../../assets/line-icons/icons/bulb2';\nimport EditStarIcon from '../../../assets/line-icons/icons/edit-star';\nimport Edit2Icon from '../../../assets/line-icons/icons/edit2';\nimport QuestionLetterIcon from '../../../assets/line-icons/icons/question-letter';\nimport Star2Icon from '../../../assets/line-icons/icons/star2';\nimport type { NODE_TYPES } from '../../../types/models/worksheet';\nimport type { TColorNames, THueNames, TUserTypes } from '../../ui/types';\nimport EVENTS from '../constants/events';\nimport {\n ACTION_BAR_HEIGHT,\n CLOZE_FORMULA_RESPONSE_LIMIT,\n OPTIONAL_ITEM_TYPES,\n QUESTION_WIDTH,\n SPLIT_QUESTION_WIDTH,\n} from './constants';\nimport type { TWorksheetQuestionPaperColor } from './worksheet-question/worksheet-question-types';\nimport {\n QUESTION_TAGS,\n type ILearnosityItem,\n type ILearnosityQuestion,\n type ILearnosityQuestionResponse,\n type ISheetNudgeBannerInfo,\n type IWorksheetBehavior,\n type IWorksheetHeaderLayoutProps,\n type IWorksheetLayout,\n type IWorksheetQuestion,\n type IWorksheetResponse,\n type TInstructorStimulus,\n type TItemType,\n type TSectionName,\n} from './worksheet-types';\n\ninterface IGetSectionNameFromItemType {\n (itemType?: TItemType): TSectionName | undefined;\n}\n\nconst getSectionNameFromItemType: IGetSectionNameFromItemType = itemType => {\n switch (itemType) {\n case 'overview':\n return 'overview';\n case 'learning-we-do':\n case 'learning-your-turn':\n case 'learning-explore':\n return 'learning';\n case 'practice-basic':\n case 'practice-basic-optional':\n return 'practice-basic';\n case 'practice-regular':\n case 'practice-regular-optional':\n return 'practice-regular';\n case 'exit-ticket':\n return 'exit-ticket';\n case 'advanced-explore':\n case 'advanced-we-do':\n case 'advanced-your-turn':\n case 'advanced-practice':\n return 'advanced';\n default:\n return undefined;\n }\n};\n\nconst isConceptIntroWidget = (instructorStimulus?: TInstructorStimulus) => {\n if (!instructorStimulus) {\n return false;\n }\n\n const lowerCaseInstructorStimulus = instructorStimulus.toLowerCase();\n\n return lowerCaseInstructorStimulus === 'intro' || lowerCaseInstructorStimulus === 'concept-intro';\n};\n\nconst getTagsMap = (tags: string[]): Record<string, string> => {\n return tags.reduce((acc, tag) => {\n const [key, value] = tag.split(':');\n const trimmedKey = key?.trim();\n const trimmedValue = value?.trim();\n\n if (!trimmedKey || !trimmedValue) {\n return acc;\n }\n\n return {\n ...acc,\n [trimmedKey.toLowerCase()]: trimmedValue,\n };\n }, {});\n};\n\ninterface IGetQuestionsFromItems {\n (\n items: ILearnosityItem[],\n options: {\n sectioned?: boolean;\n adaptive?: boolean;\n },\n ): IWorksheetQuestion[];\n}\nconst getQuestionsFromItems: IGetQuestionsFromItems = (\n items,\n { sectioned = false, adaptive = false },\n) => {\n if (sectioned) {\n return items.reduce((acc, item, itemIndex) => {\n let hasIntroWidget = false;\n const { content, questions, itemType } = item;\n const sectionName = getSectionNameFromItemType(itemType);\n const prevItem = acc[acc.length - 1];\n const itemDisplayNumber =\n sectionName === prevItem?.section_name && prevItem?.item_display_number\n ? prevItem.item_display_number + 1\n : 1;\n const orderedQuestionIds = content.match(/question-[^\"]*/g);\n const orderedQuestions = orderedQuestionIds?.map((responseId, widgetIndex) => {\n const question = questions.find(\n ({ response_id: respId }) => respId === responseId.replace('question-', ''),\n );\n\n if (!question) {\n throw new Error(`Question not found for the response id: ${responseId}`);\n }\n\n hasIntroWidget = hasIntroWidget || isConceptIntroWidget(question.instructor_stimulus);\n\n return {\n ...question,\n // Some questions are set to limited number of attempts which can show feedback which is causing the question to be stuck in the errored state\n feedback_attempts: undefined,\n item_reference: item.reference,\n item_number: itemIndex,\n item_display_number: itemDisplayNumber,\n section_name: sectionName,\n item_type: sectioned ? itemType : undefined,\n is_optional: itemType ? OPTIONAL_ITEM_TYPES.includes(itemType) : false,\n item_tags: item.tags ?? [],\n item_tags_map: getTagsMap(item.tags ?? []),\n question_number: widgetIndex - (hasIntroWidget ? 1 : 0),\n total_questions: orderedQuestionIds.length,\n } as IWorksheetQuestion;\n });\n\n hasIntroWidget = false;\n\n if (orderedQuestions?.[0] && itemIndex > 0 && items.length > 0) {\n const prevItemType = items[itemIndex - 1]?.itemType;\n const itemTypeDerived = itemType?.startsWith('advanced-') ? 'advanced' : itemType;\n const prevItemTypeDerived = prevItemType?.startsWith('advanced-')\n ? 'advanced'\n : prevItemType;\n\n if (\n (itemTypeDerived === 'practice-basic' ||\n itemTypeDerived === 'practice-regular' ||\n itemTypeDerived === 'exit-ticket' ||\n itemTypeDerived === 'advanced') &&\n itemTypeDerived !== prevItemTypeDerived\n ) {\n return [\n ...acc,\n {\n ...orderedQuestions[0],\n metadata: {\n ...orderedQuestions[0].metadata,\n teacher_tips: undefined,\n hints: undefined,\n solution: undefined,\n },\n instructor_stimulus: 'SystemIntro',\n response_id: `${itemType}-system-intro`,\n is_optional: itemType?.startsWith('advanced-'),\n },\n ...(orderedQuestions ?? []),\n ];\n }\n }\n\n return [...acc, ...(orderedQuestions ?? [])];\n }, [] as IWorksheetQuestion[]);\n }\n\n const finalQuestions = items.reduce((acc, item, itemIndex) => {\n const { content, questions } = item;\n const orderedQuestionIds = content.match(/question-[^\"]*/g);\n const orderedQuestions = orderedQuestionIds?.map<IWorksheetQuestion>(\n (responseId, widgetIndex) => {\n const question = questions.find(\n ({ response_id: respId }) => respId === responseId.replace('question-', ''),\n );\n\n if (!question) {\n throw new Error(`Question not found for the response id: ${responseId}`);\n }\n\n return {\n ...question,\n feedback_attempts: undefined,\n item_reference: item.reference,\n item_number: itemIndex,\n item_display_number: itemIndex + 1,\n item_tags: item.tags ?? [],\n item_tags_map: getTagsMap(item.tags ?? []),\n question_number: widgetIndex,\n total_questions: orderedQuestionIds.length,\n };\n },\n );\n\n return [...acc, ...(orderedQuestions ?? [])];\n }, [] as IWorksheetQuestion[]);\n\n if (adaptive) {\n const topics: string[] = [];\n const topicsOrder: Record<string, number> = {};\n\n return finalQuestions\n .sort((a, b) => {\n const aTopic = a.item_tags_map[QUESTION_TAGS.TRIAL_TOPIC];\n const bTopic = b.item_tags_map[QUESTION_TAGS.TRIAL_TOPIC];\n\n if (aTopic && topicsOrder[aTopic] === undefined) {\n topicsOrder[aTopic] = topics.length;\n topics.push(aTopic);\n }\n\n if (bTopic && topicsOrder[bTopic] === undefined) {\n topicsOrder[bTopic] = topics.length;\n topics.push(bTopic);\n }\n\n if (!aTopic || !bTopic) {\n return 0;\n }\n\n const aSortKey = `${topicsOrder[aTopic]}-${\n a.item_tags_map[QUESTION_TAGS.QUESTION_CODE]?.length ?? 0\n }`;\n const bSortKey = `${topicsOrder[bTopic]}-${\n b.item_tags_map[QUESTION_TAGS.QUESTION_CODE]?.length ?? 0\n }`;\n\n return aSortKey > bSortKey ? 1 : -1;\n })\n .map(question => {\n const topicOrder =\n topicsOrder[question.item_tags_map[QUESTION_TAGS.TRIAL_TOPIC] ?? ''] ?? 0;\n const questionCode = question.item_tags_map[QUESTION_TAGS.QUESTION_CODE] ?? '';\n\n return {\n ...question,\n item_display_number: topicOrder * 3 + questionCode.length,\n };\n });\n }\n\n return finalQuestions;\n};\n\ninterface IGetInitialQuestionId {\n (params: {\n questions: IWorksheetQuestion[];\n initialQuestion: IWorksheetBehavior['initialQuestion'];\n lastUnlockedQuestionIndex: number;\n lastAttemptableQuestionIndex: number;\n initialResponseId?: string;\n initialItemIndex?: number;\n }): string;\n}\n\nconst getInitialQuestionId: IGetInitialQuestionId = ({\n questions,\n initialQuestion,\n initialResponseId,\n initialItemIndex,\n lastUnlockedQuestionIndex,\n lastAttemptableQuestionIndex,\n}) => {\n const unlockedQuestions = questions.slice(0, lastUnlockedQuestionIndex + 1);\n const lastUnlockedQuestion = questions[lastUnlockedQuestionIndex]!;\n const lastAttemptableQuestion = questions[lastAttemptableQuestionIndex]!;\n\n if (initialResponseId && unlockedQuestions.find(q => q.response_id === initialResponseId)) {\n return initialResponseId;\n }\n\n if (\n typeof initialItemIndex === 'number' &&\n initialItemIndex <= lastUnlockedQuestion.item_number\n ) {\n const question = questions.find(q => q.item_number === initialItemIndex);\n\n if (question?.response_id) {\n return question.response_id;\n }\n }\n\n if (initialQuestion === 'FIRST' && questions[0]?.response_id) {\n return questions[0].response_id;\n }\n\n if (initialQuestion === 'CURRENT') {\n return lastAttemptableQuestion.response_id;\n }\n\n if (questions[0]?.response_id) {\n return questions[0].response_id;\n }\n\n throw new Error('Initial question not found');\n};\n\ninterface IGetLastAttemptableQuestionIndex {\n (options: {\n questions: IWorksheetQuestion[];\n responses: Record<string, IWorksheetResponse>;\n behavior: IWorksheetBehavior;\n userType: TUserTypes;\n }): number;\n}\nconst getLastAttemptableQuestionIndex: IGetLastAttemptableQuestionIndex = ({\n questions,\n responses,\n behavior,\n userType,\n}) => {\n const { maximumAttempts, teacherValidationEnabled, validation, navigationMode } = behavior;\n\n const questionIndex = [...questions].reverse().findIndex(q => {\n const qResp = responses[q.response_id];\n\n const { attemptsHistory, validatedByTeacher, assignStatus } = qResp ?? {};\n\n if (teacherValidationEnabled) {\n if (validatedByTeacher) {\n return true;\n }\n\n if (assignStatus === 'skipped') {\n return true;\n }\n\n return false;\n }\n\n const lastAttemptScore = attemptsHistory?.slice(-1)[0]?.score;\n\n if (lastAttemptScore) {\n if ((lastAttemptScore.score ?? 0) === lastAttemptScore.max_score) {\n return true;\n }\n\n const maximumAttemptsReached = (attemptsHistory?.length ?? 0) >= maximumAttempts;\n\n return maximumAttemptsReached;\n }\n\n if (!validation && navigationMode === 'LINEAR' && (qResp?.response || qResp?.skipped)) {\n return true;\n }\n\n return false;\n });\n\n if (questionIndex === -1) {\n return 0;\n }\n\n if (questionIndex === 0) {\n if (teacherValidationEnabled) {\n const unskippedQuestionIndex = [...questions].reverse().findIndex(q => {\n return responses[q.response_id]?.assignStatus !== 'skipped';\n });\n\n return questions.length - unskippedQuestionIndex - 1;\n }\n\n return questions.length - 1;\n }\n\n if (teacherValidationEnabled && userType === 'STUDENT') {\n const lastUnlockedQuestionIndex = questions.length - questionIndex;\n const lastUnlockedQuestion = questions[lastUnlockedQuestionIndex]!;\n const { assignStatus } = responses[lastUnlockedQuestion.response_id] ?? {};\n\n if (lastUnlockedQuestion.is_optional && !assignStatus) {\n return lastUnlockedQuestionIndex - 1;\n }\n\n return lastUnlockedQuestionIndex;\n }\n\n return questions.length - questionIndex;\n};\n\ninterface IGetLastUnlockedQuestionIndex {\n (options: {\n questions: IWorksheetQuestion[];\n responses: Record<string, IWorksheetResponse>;\n behavior: IWorksheetBehavior;\n userType: TUserTypes;\n }): number;\n}\n\nconst getLastUnlockedQuestionIndex: IGetLastUnlockedQuestionIndex = ({\n questions,\n responses,\n behavior,\n userType,\n}) => {\n if (behavior.navigationMode === 'OPEN') {\n return questions.length - 1;\n }\n\n return getLastAttemptableQuestionIndex({\n questions,\n responses,\n behavior,\n userType,\n });\n};\n\ntype TQuestionMetadata = Pick<\n IWorksheetResponse,\n 'widgetReference' | 'itemReference' | 'itemPosition' | 'questionPosition' | 'isOkayTypeQuestion'\n>;\n\nfunction getQuestionMetadata(\n questions: IWorksheetQuestion[],\n questionId: string,\n): TQuestionMetadata;\nfunction getQuestionMetadata(question: IWorksheetQuestion): TQuestionMetadata;\nfunction getQuestionMetadata(\n questions: IWorksheetQuestion | IWorksheetQuestion[],\n questionId?: string,\n) {\n const question = Array.isArray(questions)\n ? questions.find(q => q.response_id === questionId)\n : questions;\n\n if (!question) {\n throw new Error(`Question with id ${questionId} not found`);\n }\n\n return {\n widgetReference: question.metadata.widget_reference,\n itemReference: question.item_reference,\n itemPosition: question.item_number,\n questionPosition: question.question_number,\n isOkayTypeQuestion: isOkayTypeQuestion(question),\n score: {\n max_score:\n question?.validation?.valid_response?.score ?? 0 * question.metadata.valid_response_count,\n },\n tags: {\n ...question.item_tags_map,\n instructor_stimulus: question.instructor_stimulus,\n },\n };\n}\n\ninterface IGetInitialResponses {\n (questions: IWorksheetQuestion[]): Record<string, IWorksheetResponse>;\n}\n\nconst getInitialResponses: IGetInitialResponses = questions => {\n return questions.reduce(\n (acc, question) => ({\n ...acc,\n [question.response_id]: getQuestionMetadata(questions, question.response_id),\n }),\n {},\n );\n};\n\ninterface IGetWorksheetDimensions {\n (\n items: ILearnosityItem[],\n layout: IWorksheetLayout,\n ): {\n questionsContainerWidth: number;\n maxQuestionWidth: number;\n actionbarHeight: number;\n };\n}\n\nconst getWorksheetDimensions: IGetWorksheetDimensions = (items, layout) => {\n const { actionBar } = layout;\n const isSingleColumn = !items.some(item =>\n item.questions.some(question => question.stimulus_review),\n );\n const actionbarHeight = actionBar === 'bottom' ? ACTION_BAR_HEIGHT : 0;\n\n return {\n questionsContainerWidth: isSingleColumn ? QUESTION_WIDTH : SPLIT_QUESTION_WIDTH,\n maxQuestionWidth: QUESTION_WIDTH,\n actionbarHeight,\n };\n};\n\ninterface IScrollToQuestion {\n (questionId: string, params?: { animation?: boolean }): void;\n}\n\nconst scrollToQuestion: IScrollToQuestion = (questionId, { animation = false } = {}) => {\n const $questionEl = document.querySelectorAll(`.widget-${questionId}`)[0];\n\n if ($questionEl) {\n $questionEl.scrollIntoView({\n block: 'start',\n behavior: animation ? 'smooth' : 'instant',\n });\n }\n};\n\ninterface IIsOkayTypeQuestion {\n (question: IWorksheetQuestion | ILearnosityQuestion): boolean;\n}\n\nconst isOkayTypeQuestion: IIsOkayTypeQuestion = question => {\n const { type, options, instructor_stimulus } = question;\n const itemType = 'item_type' in question ? question.item_type : undefined;\n\n if (\n itemType === 'overview' ||\n instructor_stimulus === 'Intro' ||\n instructor_stimulus === 'SystemIntro' ||\n instructor_stimulus === 'Concept-Intro'\n ) {\n return true;\n }\n\n return type === 'mcq' && options?.length === 1 ? true : false;\n};\n\nconst setMathJaxConfigInWindow = (\n logger: (eventName: string, data?: Record<string, unknown>) => void,\n) => {\n window.MathJax = {\n options: {\n enableMenu: false,\n ignoreHtmlClass: 'lrn_noMath',\n compileError: function (doc, math, err) {\n logger(EVENTS.MATHJAX_COMPILE_ERROR);\n doc.compileError(math, err);\n },\n typesetError: function (doc, math, err) {\n logger(EVENTS.MATHJAX_TYPESET_ERROR);\n doc.typesetError(math, err);\n // throw new Error('typesetError');\n },\n },\n tex: {\n inlineMath: [\n ['\\\\(', '\\\\)'],\n ['$$', '$$'],\n ],\n displayMath: [['\\\\[', '\\\\]']],\n macros: {\n abs: ['{|#1|}', 1],\n degree: ['°'],\n longdiv: ['{\\\\enclose{longdiv}{#1}}', 1],\n atomic: ['{_{#1}^{#2}}', 2],\n polyatomic: ['{_{#2}{}^{#1}}', 2],\n circledot: ['{\\\\odot}'],\n parallelogram: ['\\\\unicode{x25B1}'],\n ngtr: ['\\\\unicode{x226F}'],\n nless: ['\\\\unicode{x226E}'],\n MathQuillVarField: ['#1', 1],\n overarc: ['{\\\\overparen{#1}}', 1],\n },\n formatError: (jax, err) => {\n logger(EVENTS.MATHJAX_FORMAT_ERROR, {\n id: err.id,\n message: err.message,\n });\n jax.formatError(err);\n },\n },\n chtml: {\n minScale: 1,\n matchFontHeight: false,\n },\n };\n};\n\ninterface IGetPaperColorByQuestion {\n (question: IWorksheetQuestion): TWorksheetQuestionPaperColor;\n}\n\nconst getPaperColorByQuestion: IGetPaperColorByQuestion = question => {\n const { item_type, instructor_stimulus } = question;\n const lowerCaseInstructorStimulus = instructor_stimulus?.toLowerCase();\n\n switch (item_type) {\n case 'overview':\n return 'white';\n case 'learning-we-do':\n case 'learning-your-turn':\n case 'learning-explore':\n if (\n lowerCaseInstructorStimulus === 'instruction' ||\n lowerCaseInstructorStimulus === 'intro' ||\n lowerCaseInstructorStimulus === 'concept-intro'\n ) {\n return 'blue';\n }\n\n if (lowerCaseInstructorStimulus === 'task') {\n return 'green';\n }\n\n return 'yellow';\n case 'practice-basic':\n case 'practice-regular':\n return 'yellow';\n case 'exit-ticket':\n return 'purple';\n case 'advanced-practice':\n return 'orange';\n default:\n if (lowerCaseInstructorStimulus === 'learn') return 'blue';\n\n if (lowerCaseInstructorStimulus === 'try' || lowerCaseInstructorStimulus === 'apply')\n return 'green';\n\n return 'yellow';\n }\n};\n\nconst getQuestionBackgroundImage = (paperColor: TWorksheetQuestionPaperColor) => {\n return `https://cuemath-intel.s3.ap-southeast-1.amazonaws.com/media/math-canvas/paper-${paperColor}.png`;\n};\n\nconst getQuestionBorderColor = (\n paperColor: TWorksheetQuestionPaperColor,\n isActive?: boolean,\n): TColorNames => {\n if (!isActive) {\n return 'GREY_3';\n }\n\n switch (paperColor) {\n case 'orange':\n case 'white':\n return 'ORANGE_2';\n case 'blue':\n return 'BLUE_2';\n case 'green':\n return 'GREEN_2';\n case 'yellow':\n return 'YELLOW_2';\n case 'purple':\n return 'PURPLE_2';\n default:\n return 'GREY_3';\n }\n};\n\nconst getNavigationSectionBackgroundColor = (sectionName?: TSectionName): TColorNames => {\n switch (sectionName) {\n case 'learning':\n return 'BLUE_1';\n case 'practice-basic':\n case 'practice-regular':\n return 'YELLOW_1';\n case 'exit-ticket':\n return 'PURPLE_1';\n case 'advanced':\n return 'ORANGE_1';\n default:\n return 'YELLOW_1';\n }\n};\n\nconst getNavigationSectionName = (sectionName?: TSectionName): string => {\n switch (sectionName) {\n case 'learning':\n return 'Learning';\n case 'practice-basic':\n return 'Basic practice';\n case 'practice-regular':\n return 'Regular practice';\n case 'exit-ticket':\n return 'Mini quiz';\n case 'advanced':\n return 'Advanced work';\n default:\n return '';\n }\n};\n\nconst getNavigationSectionIcon = (sectionName?: TSectionName) => {\n switch (sectionName) {\n case 'learning':\n return Bulb2Icon;\n case 'practice-basic':\n return Edit2Icon;\n case 'practice-regular':\n return EditStarIcon;\n case 'exit-ticket':\n return QuestionLetterIcon;\n case 'advanced':\n return Star2Icon;\n default:\n return Bulb2Icon;\n }\n};\n\nconst isSATAssessmentNode = (nodeType: NODE_TYPES) =>\n nodeType === 'SAT_ENGLISH_ASSESSMENT' || nodeType === 'SAT_MATH_ASSESSMENT';\n\nconst checkIsClozeFormulaResponseInvalid = (response: ILearnosityQuestionResponse) => {\n if (Array.isArray(response.value)) {\n const isInvalid = response.value.some(\n item => typeof item === 'string' && item.length > CLOZE_FORMULA_RESPONSE_LIMIT,\n );\n\n return isInvalid;\n }\n\n return false;\n};\n\nconst getWorksheetNudgeBannerInfo = (\n userType: TUserTypes,\n markedAsCompleted: boolean,\n): ISheetNudgeBannerInfo => {\n const isTeacher = userType === 'TEACHER';\n\n if (markedAsCompleted) {\n return {\n bannerBackgroundColor: 'GREEN_4',\n label: isTeacher\n ? 'This sheet was marked as completed.'\n : 'Marked as completed by the teacher',\n };\n }\n\n return {\n bannerBackgroundColor: 'ORANGE_2',\n label: 'Complete this with your tutor in class',\n };\n};\n\nconst getWorksheetHeaderLayout: IWorksheetHeaderLayoutProps = ({\n isPuzzleWorksheet,\n isTestWorksheet,\n imageHue = 'BLUE',\n}) => {\n if (isPuzzleWorksheet) {\n return {\n bgColor: `${imageHue}_3`,\n borderColor: `${imageHue}_4`,\n textColor: 'BLACK_T_87',\n };\n }\n\n if (isTestWorksheet) {\n return {\n bgColor: 'WHITE_3',\n borderColor: 'WHITE_4',\n textColor: 'BLACK_T_87',\n };\n }\n\n return {\n bgColor: 'BLACK',\n borderColor: 'BLACK_4',\n textColor: 'WHITE',\n };\n};\n\ninterface IGetPuzzleWorksheetBackgroundColor {\n (imageHue?: THueNames): TColorNames;\n}\n\nconst getPuzzleWorksheetBackgroundColor: IGetPuzzleWorksheetBackgroundColor = imageHue => {\n if (!imageHue) return 'BLUE_1';\n\n return `${imageHue}_1`;\n};\n\nexport {\n checkIsClozeFormulaResponseInvalid,\n getInitialQuestionId,\n getInitialResponses,\n getLastUnlockedQuestionIndex,\n getLastAttemptableQuestionIndex,\n getNavigationSectionBackgroundColor,\n getNavigationSectionIcon,\n getNavigationSectionName,\n getPaperColorByQuestion,\n getPuzzleWorksheetBackgroundColor,\n getQuestionBackgroundImage,\n getQuestionBorderColor,\n getQuestionMetadata,\n getQuestionsFromItems,\n getWorksheetDimensions,\n getWorksheetHeaderLayout,\n getWorksheetNudgeBannerInfo,\n isConceptIntroWidget,\n isOkayTypeQuestion,\n isSATAssessmentNode,\n scrollToQuestion,\n setMathJaxConfigInWindow,\n};\n"],"names":["getSectionNameFromItemType","itemType","isConceptIntroWidget","instructorStimulus","lowerCaseInstructorStimulus","getTagsMap","tags","acc","tag","key","value","trimmedKey","trimmedValue","getQuestionsFromItems","items","sectioned","adaptive","item","itemIndex","hasIntroWidget","content","questions","sectionName","prevItem","itemDisplayNumber","orderedQuestionIds","orderedQuestions","responseId","widgetIndex","question","respId","OPTIONAL_ITEM_TYPES","prevItemType","_a","itemTypeDerived","prevItemTypeDerived","finalQuestions","topics","topicsOrder","a","b","aTopic","QUESTION_TAGS","bTopic","aSortKey","bSortKey","_b","topicOrder","questionCode","getInitialQuestionId","initialQuestion","initialResponseId","initialItemIndex","lastUnlockedQuestionIndex","lastAttemptableQuestionIndex","unlockedQuestions","lastUnlockedQuestion","lastAttemptableQuestion","q","getLastAttemptableQuestionIndex","responses","behavior","userType","maximumAttempts","teacherValidationEnabled","validation","navigationMode","questionIndex","qResp","attemptsHistory","validatedByTeacher","assignStatus","lastAttemptScore","unskippedQuestionIndex","getLastUnlockedQuestionIndex","getQuestionMetadata","questionId","isOkayTypeQuestion","getInitialResponses","getWorksheetDimensions","layout","actionBar","QUESTION_WIDTH","SPLIT_QUESTION_WIDTH","ACTION_BAR_HEIGHT","scrollToQuestion","animation","$questionEl","type","options","instructor_stimulus","setMathJaxConfigInWindow","logger","doc","math","err","EVENTS","jax","getPaperColorByQuestion","item_type","getQuestionBackgroundImage","paperColor","getQuestionBorderColor","isActive","getNavigationSectionBackgroundColor","getNavigationSectionName","getNavigationSectionIcon","Bulb2Icon","Edit2Icon","EditStarIcon","QuestionLetterIcon","Star2Icon","checkIsClozeFormulaResponseInvalid","response","CLOZE_FORMULA_RESPONSE_LIMIT","getWorksheetHeaderLayout","isPuzzleWorksheet","isTestWorksheet","imageHue","getPuzzleWorksheetBackgroundColor"],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import r from "styled-components";
2
- import t from "../../../ui/layout/flex-view.js";
3
- const d = r.textarea(({ theme: o }) => {
4
- const { BLACK_75: i, WHITE: p } = o.colors;
1
+ import t from "styled-components";
2
+ import r from "../../../ui/layout/flex-view.js";
3
+ import p from "../../../ui/text/text.js";
4
+ const a = t.textarea(({ theme: o }) => {
5
+ const { BLACK_75: e, WHITE: i } = o.colors;
5
6
  return `
6
7
  width: 350px;
7
8
  height: 100px;
@@ -10,15 +11,15 @@ const d = r.textarea(({ theme: o }) => {
10
11
  font-weight: 400;
11
12
  padding: 10px;
12
13
  cursor: 'text'
13
- border: 1px solid ${i};
14
+ border: 1px solid ${e};
14
15
  border-radius: 3px;
15
- background-color: ${p};
16
+ background-color: ${i};
16
17
  `;
17
- }), x = r.input`
18
+ }), l = t.input`
18
19
  color: transparent;
19
20
  max-width: 100px;
20
21
  display: none;
21
- `, a = r.label`
22
+ `, s = t.label`
22
23
  border: ${"1px solid #8DD5F1"};
23
24
  background: transparent;
24
25
  height: 30px;
@@ -38,28 +39,32 @@ const d = r.textarea(({ theme: o }) => {
38
39
  border: ${"1px solid #1657e4"};
39
40
  color: ${"#8DD5F1"};
40
41
  }
41
- `, s = r(t)`
42
+ `;
43
+ t(p)`
44
+ text-decoration: underline;
45
+ `;
46
+ const g = t(r)`
42
47
  border: 1px solid lightgray;
43
48
  margin: 12px 0;
44
49
  padding: 12px;
45
- `, l = r(t)`
50
+ `, h = t(r)`
46
51
  width: 80px;
47
52
  height: 80px;
48
53
  padding: 3px;
49
54
  margin-right: 10px;
50
55
  margin-bottom: 10px;
51
56
  border: 1px solid #d0d0d0;
52
- `, g = r.img`
57
+ `, c = t.img`
53
58
  width: 72px !important;
54
59
  height: 72px !important;
55
60
  cursor: pointer !important;
56
61
  `;
57
62
  export {
58
- x as FileInput,
59
- a as FileInputLabel,
60
- g as Img,
61
- d as TextArea,
62
- l as Thumbnail,
63
- s as Wrapper
63
+ l as FileInput,
64
+ s as FileInputLabel,
65
+ c as Img,
66
+ a as TextArea,
67
+ h as Thumbnail,
68
+ g as Wrapper
64
69
  };
65
70
  //# sourceMappingURL=subjective-styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subjective-styled.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/subjective-styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\n\nexport const TextArea = styled.textarea(({ theme }) => {\n const { BLACK_75, WHITE } = theme.colors;\n\n return `\n width: 350px;\n height: 100px;\n resize: none;\n font-size: 16px;\n font-weight: 400;\n padding: 10px;\n cursor: 'text'\n border: 1px solid ${BLACK_75};\n border-radius: 3px;\n background-color: ${WHITE};\n`;\n});\n\nexport const FileInput = styled.input`\n color: transparent;\n max-width: 100px;\n display: none;\n`;\n\nexport const FileInputLabel = styled.label`\n border: ${`1px solid #8DD5F1`};\n background: transparent;\n height: 30px;\n border-radius: 4px;\n padding-top: 4px;\n display: block;\n font-size: 14px;\n line-height: 22px;\n font-weight: 700;\n text-align: center;\n font-style: normal;\n color: ${'#8DD5F1'};\n cursor: ${'pointer'};\n width: 110px;\n\n &:hover {\n border: ${'1px solid #1657e4'};\n color: ${'#8DD5F1'};\n }\n`;\n\nexport const Wrapper = styled(FlexView)`\n border: 1px solid lightgray;\n margin: 12px 0;\n padding: 12px;\n`;\n\nexport const Thumbnail = styled(FlexView)`\n width: 80px;\n height: 80px;\n padding: 3px;\n margin-right: 10px;\n margin-bottom: 10px;\n border: 1px solid #d0d0d0;\n`;\n\nexport const Img = styled.img`\n width: 72px !important;\n height: 72px !important;\n cursor: pointer !important;\n`;\n"],"names":["TextArea","styled","theme","BLACK_75","WHITE","FileInput","FileInputLabel","Wrapper","FlexView","Thumbnail","Img"],"mappings":";;AAIO,MAAMA,IAAWC,EAAO,SAAS,CAAC,EAAE,OAAAC,QAAY;AACrD,QAAM,EAAE,UAAAC,GAAU,OAAAC,MAAUF,EAAM;AAE3B,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAQaC,CAAQ;AAAA;AAAA,sBAERC,CAAK;AAAA;AAE3B,CAAC,GAEYC,IAAYJ,EAAO;AAAA;AAAA;AAAA;AAAA,GAMnBK,IAAiBL,EAAO;AAAA,YACzB,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAWpB,SAAS;AAAA,YACR,SAAS;AAAA;AAAA;AAAA;AAAA,cAIP,mBAAmB;AAAA,aACpB,SAAS;AAAA;AAAA,GAITM,IAAUN,EAAOO,CAAQ;AAAA;AAAA;AAAA;AAAA,GAMzBC,IAAYR,EAAOO,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAS3BE,IAAMT,EAAO;AAAA;AAAA;AAAA;AAAA;"}
1
+ {"version":3,"file":"subjective-styled.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/subjective-styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\n\nexport const TextArea = styled.textarea(({ theme }) => {\n const { BLACK_75, WHITE } = theme.colors;\n\n return `\n width: 350px;\n height: 100px;\n resize: none;\n font-size: 16px;\n font-weight: 400;\n padding: 10px;\n cursor: 'text'\n border: 1px solid ${BLACK_75};\n border-radius: 3px;\n background-color: ${WHITE};\n`;\n});\n\nexport const FileInput = styled.input`\n color: transparent;\n max-width: 100px;\n display: none;\n`;\n\nexport const FileInputLabel = styled.label`\n border: ${`1px solid #8DD5F1`};\n background: transparent;\n height: 30px;\n border-radius: 4px;\n padding-top: 4px;\n display: block;\n font-size: 14px;\n line-height: 22px;\n font-weight: 700;\n text-align: center;\n font-style: normal;\n color: ${'#8DD5F1'};\n cursor: ${'pointer'};\n width: 110px;\n\n &:hover {\n border: ${'1px solid #1657e4'};\n color: ${'#8DD5F1'};\n }\n`;\n\nexport const UnderlinedText = styled(Text)`\n text-decoration: underline;\n`;\n\nexport const Wrapper = styled(FlexView)`\n border: 1px solid lightgray;\n margin: 12px 0;\n padding: 12px;\n`;\n\nexport const Thumbnail = styled(FlexView)`\n width: 80px;\n height: 80px;\n padding: 3px;\n margin-right: 10px;\n margin-bottom: 10px;\n border: 1px solid #d0d0d0;\n`;\n\nexport const Img = styled.img`\n width: 72px !important;\n height: 72px !important;\n cursor: pointer !important;\n`;\n"],"names":["TextArea","styled","theme","BLACK_75","WHITE","FileInput","FileInputLabel","Text","Wrapper","FlexView","Thumbnail","Img"],"mappings":";;;AAKO,MAAMA,IAAWC,EAAO,SAAS,CAAC,EAAE,OAAAC,QAAY;AACrD,QAAM,EAAE,UAAAC,GAAU,OAAAC,MAAUF,EAAM;AAE3B,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAQaC,CAAQ;AAAA;AAAA,sBAERC,CAAK;AAAA;AAE3B,CAAC,GAEYC,IAAYJ,EAAO;AAAA;AAAA;AAAA;AAAA,GAMnBK,IAAiBL,EAAO;AAAA,YACzB,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAWpB,SAAS;AAAA,YACR,SAAS;AAAA;AAAA;AAAA;AAAA,cAIP,mBAAmB;AAAA,aACpB,SAAS;AAAA;AAAA;AAIQA,EAAOM,CAAI;AAAA;AAAA;AAI5B,MAAAC,IAAUP,EAAOQ,CAAQ;AAAA;AAAA;AAAA;AAAA,GAMzBC,IAAYT,EAAOQ,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAS3BE,IAAMV,EAAO;AAAA;AAAA;AAAA;AAAA;"}
@@ -1,11 +1,11 @@
1
1
  import i from "styled-components";
2
2
  import { ILLUSTRATIONS as _ } from "../../../../assets/illustrations/illustrations.js";
3
3
  import { getPuzzleCardPattern as m } from "../../../puzzles/utils/puzzle-pattern.js";
4
- import e from "../../../ui/layout/flex-view.js";
5
- import { TOP_NAVIGATION_HEIGHT as g, QUESTIONS_GAP as l } from "../constants.js";
6
- import { getQuestionBackgroundImage as c, getQuestionBorderColor as s, getPuzzleWorksheetBackgroundColor as p } from "../worksheet-helpers.js";
4
+ import o from "../../../ui/layout/flex-view.js";
5
+ import { TOP_NAVIGATION_HEIGHT as g, QUESTIONS_GAP as d } from "../constants.js";
6
+ import { getQuestionBackgroundImage as c, getQuestionBorderColor as s, getPuzzleWorksheetBackgroundColor as l } from "../worksheet-helpers.js";
7
7
  const w = i.div(
8
- ({ $isConceptIntro: t, $isTeacher: r, theme: n, $imageHue: a = "BLUE", $isPuzzle: o }) => `
8
+ ({ $isConceptIntro: t, $isTeacher: r, theme: n, $imageHue: a = "BLUE", $isPuzzle: e }) => `
9
9
  position: relative;
10
10
  z-index: 1;
11
11
  & > div:not(:first-child) {
@@ -18,7 +18,7 @@ const w = i.div(
18
18
  right: 0;
19
19
  bottom: ${r ? 140 : 180}px;
20
20
  ` : ""}
21
- ${o ? `
21
+ ${e ? `
22
22
  width: 420px;
23
23
  min-height: 504px;
24
24
  padding: 20px 24px;
@@ -63,23 +63,23 @@ const w = i.div(
63
63
  }
64
64
  ` : ""}
65
65
  `
66
- ), k = i(e)(
66
+ ), k = i(o)(
67
67
  ({ $topOffset: t }) => `
68
- scroll-margin-top: ${(t ?? 0) + g + l}px;
68
+ scroll-margin-top: ${(t ?? 0) + g + d}px;
69
69
  `
70
- ), x = (t) => t.startsWith("calc(") ? t.replace(")", " - 32px)") : t, R = i(e)(
71
- ({ theme: t, $minHeight: r, $paperColor: n, $isActive: a, $imageHue: o }) => `
70
+ ), x = (t) => t.startsWith("calc(") ? t.replace(")", " - 32px)") : t, R = i(o)(
71
+ ({ theme: t, $minHeight: r, $paperColor: n, $isActive: a, $imageHue: e }) => `
72
72
  position: relative;
73
73
  padding: 15px 15px 55px 15px;
74
74
 
75
75
 
76
76
  min-height: ${typeof r == "number" ? `${r}px` : x(r)};
77
77
  transition: opacity 0.15s;
78
- ${o ? `
79
- border: 1px solid ${t.colors[p(o)]};
78
+ ${e ? `
79
+ border: 1px solid ${t.colors[l(e)]};
80
80
  border-top: none;
81
81
  border-bottom: none;
82
- background-color: ${t.colors[p(o)]};
82
+ background-color: ${t.colors[l(e)]};
83
83
  ` : `
84
84
  border-radius: 12px;
85
85
  background-image: ${n && n !== "white" ? `url(${c(n)})` : "none"};
@@ -1039,11 +1039,11 @@ const w = i.div(
1039
1039
  display: none;
1040
1040
  }
1041
1041
  `
1042
- ), G = i(e)`
1042
+ ), G = i(o)`
1043
1043
  position: relative;
1044
1044
  z-index: 2;
1045
1045
  padding-right: 8px;
1046
- `, L = i(e)(
1046
+ `, L = i(o)(
1047
1047
  ({
1048
1048
  theme: {
1049
1049
  layout: { gutter: t },
@@ -1066,10 +1066,10 @@ const w = i.div(
1066
1066
  border-right: 24px solid transparent;
1067
1067
  }
1068
1068
  `
1069
- ), N = i(e)(
1069
+ ), N = i(o)(
1070
1070
  ({ $topOffset: t }) => `
1071
1071
  position: sticky;
1072
- top: ${t + l / 2}px;
1072
+ top: ${t + d / 2}px;
1073
1073
  z-index: 2;
1074
1074
  `
1075
1075
  ), B = i.div`
@@ -1084,7 +1084,7 @@ const w = i.div(
1084
1084
  width: calc(100% + 30px);
1085
1085
  border-radius: 12px 12px 0 0;
1086
1086
  margin-bottom: 18px;
1087
- `, d = i.div(
1087
+ `, p = i.div(
1088
1088
  ({ theme: { colors: t } }) => `
1089
1089
  color: ${t.BLACK};
1090
1090
  font-size: 16px;
@@ -1134,9 +1134,9 @@ const w = i.div(
1134
1134
  }
1135
1135
  }
1136
1136
  `
1137
- ), U = i(d)`
1137
+ ), U = i(p)`
1138
1138
  margin: 8px 0;
1139
- `, v = i(d)(
1139
+ `, v = p, z = i(p)(
1140
1140
  ({ theme: { colors: t } }) => `
1141
1141
  width: 50%;
1142
1142
  padding-right: 16px;
@@ -1145,7 +1145,7 @@ const w = i.div(
1145
1145
  min-height: 100%;
1146
1146
  align-self: stretch;
1147
1147
  `
1148
- ), z = i(e)(
1148
+ ), O = i(o)(
1149
1149
  ({ $canScribble: t, theme: r }) => `
1150
1150
  position: absolute;
1151
1151
  top: 0;
@@ -1157,8 +1157,8 @@ const w = i.div(
1157
1157
  `
1158
1158
  );
1159
1159
  export {
1160
- z as CueCanvasWrapper,
1161
- d as CustomElement,
1160
+ O as CueCanvasWrapper,
1161
+ p as CustomElement,
1162
1162
  U as Hint,
1163
1163
  G as ItemHeader,
1164
1164
  L as ItemHeaderTag,
@@ -1169,6 +1169,7 @@ export {
1169
1169
  N as QuestionHeaderWrapper,
1170
1170
  B as QuestionValidationAnimationWrapper,
1171
1171
  y as QuestionWrapper,
1172
- v as StimulusReview
1172
+ v as Solution,
1173
+ z as StimulusReview
1173
1174
  };
1174
1175
  //# sourceMappingURL=worksheet-question-styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-question-styled.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\nimport { getPuzzleCardPattern } from '../../../puzzles/utils/puzzle-pattern';\nimport FlexView from '../../../ui/layout/flex-view';\nimport type { THueNames } from '../../../ui/types';\nimport { QUESTIONS_GAP, TOP_NAVIGATION_HEIGHT } from '../constants';\nimport {\n getPuzzleWorksheetBackgroundColor,\n getQuestionBackgroundImage,\n getQuestionBorderColor,\n} from '../worksheet-helpers';\nimport type { TWorksheetQuestionPaperColor } from './worksheet-question-types';\n\nconst LearnosityQuestionContainer = styled.div<{\n $isConceptIntro: boolean;\n $isTeacher: boolean;\n $imageHue?: THueNames;\n $isPuzzle?: boolean;\n}>(\n ({ $isConceptIntro, $isTeacher, theme, $imageHue = 'BLUE', $isPuzzle }) => `\n position: relative;\n z-index: 1;\n & > div:not(:first-child) {\n display: none;\n }\n\n ${\n $isConceptIntro\n ? `\n position: absolute;\n left: 0;\n right: 0;\n bottom: ${$isTeacher ? 140 : 180}px;\n `\n : ''\n }\n ${\n $isPuzzle\n ? `\n width: 420px;\n min-height: 504px;\n padding: 20px 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n margin: 40px auto 0;\n box-shadow: inset 0px 0px 0px 4px ${theme.colors[`${$imageHue}_4`]};\n background: ${theme.colors.WHITE_1};\n \n & * {\n font-family: Athletics-Regular !important;\n }\n\n &::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-image: ${`url(${getPuzzleCardPattern($imageHue)})`};\n background-size: cover;\n opacity: 0.4;\n }\n\n .lrn_stimulus_content {\n display: flex;\n justify-content: center;\n }\n\n .lrn_stimulus_content img {\n width: 270px;\n height: 270px;\n margin-bottom: 0;\n }\n \n .lrn_response_wrapper .lrn_response_math.lrn_response_input, \n .lrn_response_wrapper .lrn_response_math.lrn_response_input p {\n line-height: 1.5 !important;\n }\n `\n : ``\n }\n`,\n);\n\ninterface IQuestionContainerWrapper {\n $topOffset?: number;\n}\n\nconst QuestionContainerWrapper = styled(FlexView)<IQuestionContainerWrapper>(\n ({ $topOffset }) => `\n scroll-margin-top: ${($topOffset ?? 0) + TOP_NAVIGATION_HEIGHT + QUESTIONS_GAP}px;\n`,\n);\n\nconst getMinHeightFromString = (minHeight: string) => {\n if (minHeight.startsWith('calc(')) {\n return minHeight.replace(')', ' - 32px)');\n }\n\n return minHeight;\n};\n\ninterface IQuestionContainerProps {\n $minHeight: string | number;\n $paperColor?: TWorksheetQuestionPaperColor;\n $isActive?: boolean;\n $imageHue?: THueNames;\n}\n\nconst QuestionContainer = styled(FlexView)<IQuestionContainerProps>(\n ({ theme, $minHeight, $paperColor, $isActive, $imageHue }) => `\n position: relative;\n padding: 15px 15px 55px 15px;\n\n \n min-height: ${\n typeof $minHeight === 'number' ? `${$minHeight}px` : getMinHeightFromString($minHeight)\n };\n transition: opacity 0.15s;\n ${\n !$imageHue\n ? `\n border-radius: 12px;\n background-image: ${\n $paperColor && $paperColor !== 'white'\n ? `url(${getQuestionBackgroundImage($paperColor)})`\n : 'none'\n };\n background-repeat: repeat;\n border: 1px solid ${\n $paperColor\n ? theme.colors[getQuestionBorderColor($paperColor, $isActive)]\n : 'transparent'\n };\n `\n : `\n border: 1px solid ${theme.colors[getPuzzleWorksheetBackgroundColor($imageHue)]};\n border-top: none;\n border-bottom: none;\n background-color: ${theme.colors[getPuzzleWorksheetBackgroundColor($imageHue)]};\n `\n }\n ${!$paperColor ? 'padding-right: 0;' : ''}\n`,\n);\n\ninterface IQuestionWrapperProps {\n $dropzoneMinWidth: number;\n $dropzoneMinHeight: number;\n}\n\nconst QuestionWrapper = styled.div<IQuestionWrapperProps>(\n ({ theme: { colors }, $dropzoneMinWidth, $dropzoneMinHeight }) => `\n height: 100%;\n min-height: inherit;\n\n em {\n font-style: italic;\n } \n \n & .lrn_widget {\n font-size: 16px;\n line-height: 1.6em;\n color: ${colors.BLACK};\n font-family: \"Noto Serif\", serif;\n margin-top: 6px;\n padding-top: 0;\n margin-bottom: 16px;\n\n iframe {\n max-width: 100%;\n }\n\n ul, ol {\n list-style-type: initial;\n padding-left: 32px;\n }\n\n ol {\n list-style-type: decimal;\n }\n\n .lrn_response_wrapper {\n margin-top: 0 !important;\n }\n\n .lrn_question {\n margin-bottom: 16px;\n\n .lrn_stimulus {\n line-height: 1.6em;\n\n .lrn_stimulus_content {\n line-height: 1.6em;\n }\n }\n\n & ~ .lrn_response_wrapper {\n margin-top: 16px !important;\n }\n }\n\n .lrn_response_input_wrapper {\n border-color: ${colors.GREY_3};\n }\n\n .lrn_possibilityList {\n background-color: ${colors.REAL_BLACK_10};\n }\n\n .lrn_dropzone {\n margin: 0 !important;\n margin: 0 !important;\n border: 0 !important;\n outline: 1px dashed ${colors.BLACK};\n height: inherit !important;\n ${\n $dropzoneMinWidth > 0\n ? `\n min-width: ${$dropzoneMinWidth}px !important;\n width: ${$dropzoneMinWidth}px !important;\n max-width: ${$dropzoneMinWidth}px !important;\n `\n : ''\n }\n ${\n $dropzoneMinHeight > 0\n ? `\n min-height: ${$dropzoneMinHeight}px !important;\n height: ${$dropzoneMinHeight}px !important;\n `\n : ''\n }\n\n &:not(.lrn_disabled):hover {\n outline: 1px dashed ${colors.BLUE_4};\n }\n\n &.lrn_highlight {\n outline: 1px dashed ${colors.BLUE_4};\n\n &.lrn_over {\n background-color: ${colors.BLUE_1};\n\n & .lrn_draggable {\n opacity: 0.5;\n }\n }\n }\n\n & .lrn_draggable {\n box-shadow: none;\n margin: 0 !important;\n border: 0 !important;\n background-color: ${colors.WHITE} !important;\n\n &:after {\n padding: 0 !important;\n right: 10px !important;\n }\n\n &.lrn_correct:after {\n color: ${colors.GREEN_5} !important;\n }\n\n &.lrn_incorrect:after {\n color: ${colors.ORANGE_5} !important;\n }\n }\n\n &.lrn_correct_marker {\n outline: 2px solid ${colors.GREEN_5} !important;\n }\n\n &.lrn_incorrect_marker {\n outline: 2px solid ${colors.ORANGE_5} !important;\n }\n }\n\n .lrn_draggable {\n margin: 4px !important;\n padding: 8px !important;\n box-shadow: inset 0 0 0 1px ${colors.BLUE_4};\n background-color: ${colors.WHITE} !important;\n cursor: grab;\n color: ${colors.BLACK} !important;\n\n & .lrn_icon {\n display: none;\n }\n\n & .lrn_item {\n margin: 0 !important;\n width: 100%;\n text-align: left !important;\n }\n\n &.lrn_active,\n &:not([disabled]):focus,\n &:not([disabled]):hover {\n box-shadow: inset 0 0 0 2px ${colors.BLUE_4} !important;\n }\n\n &[disabled] {\n inset 0 0 0 1px ${colors.WHITE};\n }\n\n &.gu-mirror {\n font-size: 99%;\n transform: rotate(-6deg);\n }\n }\n\n .lrn-response-validate-wrapper,\n .lrn-response-validation-wrapper {\n margin: 0 !important;\n \n &.lrn_correct {\n border: 2px solid ${colors.GREEN_5} !important;\n border-radius: 4px;\n \n &::after {\n background-color: ${colors.GREEN_5} !important;\n }\n }\n\n &.lrn_incorrect {\n border: 2px solid ${colors.ORANGE_5} !important;\n border-radius: 4px;\n \n &::after {\n background-color: ${colors.ORANGE_5} !important;\n }\n }\n }\n\n .lrn_responseIndex {\n position: absolute !important;\n top: -12px !important;\n left: -9px !important;\n width: 18px !important;\n height: 18px !important;\n border-radius: 9px !important;\n background-color: ${colors.GREY_3} !important;\n font-size: 11px !important;\n font-weight: bold !important;\n line-height: 16px !important;\n padding: 0 !important;\n text-align: center;\n }\n\n .lrn_correctAnswers {\n margin-top: 24px;\n padding: 16px 24px;\n border: 1px solid ${colors.GREY_3};\n border-radius: 12px;\n background-color: transparent;\n\n & > :first-child {\n color: ${colors.BLACK};\n text-transform: capitalize;\n font-family: \"UntitledSans-Medium\";\n font-size: 14px;\n line-height: 20px;\n }\n \n & .lrn_correctAnswerList {\n margin-top: 24px;\n li {\n background-color: ${colors.WHITE};\n padding-left: 8px;\n margin-right: 24px;\n margin-bottom: 24px;\n outline: 1px solid ${colors.GREY_3};\n cursor: auto;\n }\n }\n }\n\n .lrn_classification_table .lrn_dropzone {\n overflow-x: visible !important;\n }\n }\n\n &.attempting .lrn_widget {\n .lrn-response-validate-wrapper,\n .lrn-response-validation-wrapper {\n &.lrn_correct,\n &.lrn_incorrect {\n border-color: transparent !important;\n\n &::after {\n background-color: transparent !important;\n color: transparent !important;\n }\n }\n }\n\n .lrn_dropzone {\n &.lrn_correct_marker,\n &.lrn_incorrect_marker {\n outline-color: ${colors.BLUE_4};\n }\n\n & .lrn_draggable {\n &.lrn_correct:after,\n &.lrn_incorrect:after {\n color: ${colors.BLUE_4} !important;\n }\n }\n }\n }\n \n & .lrn_widget .lrn_textinput {\n display: inline-flex;\n vertical-align: middle;\n padding: 0 !important;\n margin: 0 !important;\n border: none !important;\n\n &::after {\n right: 4px !important;\n padding-right: 0px !important;\n }\n \n & .lrn_math_editable {\n padding-right: 32px;\n \n &.lrn_bordered_mathinput {\n border: none !important;\n outline: 1px solid ${colors.BLACK};\n padding: 3px 24px 3px 8px;\n text-align: left;\n background-color: ${colors.WHITE} !important;\n }\n\n & .lrn_bordered_mathinput {\n min-height: 20px;\n border: 1px solid ${colors.BLACK};\n border-radius: 2px !important;\n background-color: ${colors.WHITE} !important;\n }\n\n &.lrn_bordered_mathinput {\n &.lrn_focused,\n &:not(.lrn_hide_cursor):hover {\n outline: 1px solid ${colors.BLUE_4};\n }\n\n &.lrn_hide_cursor {\n cursor: auto;\n }\n }\n \n &:not(.lrn_hide_cursor) .lrn_bordered_mathinput {\n &.lrn_focused,\n &:hover {\n border: 1px solid ${colors.BLUE_4};\n }\n\n }\n \n &.lrn_hide_cursor .lrn_bordered_mathinput {\n cursor: auto;\n }\n }\n \n & input {\n min-height: 40px;\n padding: 0 32px 0 8px;\n border: none !important;\n background-color: ${colors.WHITE} !important;\n outline: 1px solid ${colors.BLACK};\n border-radius: 4px !important;\n\n &:focus,\n &:not(:disabled):hover {\n outline: 1px solid ${colors.BLUE_4};\n }\n }\n\n &.lrn_correct {\n background-color: ${colors.GREEN_1} !important;\n &::after {\n color: ${colors.GREEN_5};\n }\n & input {\n outline: 2px solid ${colors.GREEN_5};\n }\n & .lrn_bordered_mathinput {\n &:not(.mq-inner-editable) {\n outline: 2px solid ${colors.GREEN_5};\n }\n &.mq-inner-editable {\n border: 1px solid ${colors.GREEN_5};\n }\n }\n }\n \n &.lrn_incorrect {\n background-color: ${colors.ORANGE_1} !important;\n &::after {\n color: ${colors.ORANGE_5};\n }\n & input {\n outline: 2px solid ${colors.ORANGE_5};\n }\n & .lrn_bordered_mathinput {\n &:not(.mq-inner-editable) {\n outline: 2px solid ${colors.ORANGE_5};\n }\n &.mq-inner-editable {\n border: 1px solid ${colors.ORANGE_5};\n }\n }\n }\n }\n\n &.attempting .lrn_widget .lrn_textinput {\n &.lrn_correct,\n &.lrn_incorrect {\n background-color: ${colors.WHITE} !important;\n\n &::after {\n color: ${colors.BLUE_4} !important;\n }\n\n & input {\n outline: 1px solid ${colors.BLUE_4} !important;\n }\n\n & .lrn_bordered_mathinput {\n &:not(.mq-inner-editable) {\n outline: 2px solid ${colors.BLUE_4} !important;\n }\n &.mq-inner-editable {\n border: 1px solid ${colors.BLUE_4} !important;\n }\n }\n }\n }\n\n & .lrn_widget.lrn_mcq .lrn_response {\n & .lrn_mcqgroup {\n overflow-x: visible;\n margin: 0 -8px !important;\n\n & .lrn-mcq-option {\n border: none !important;\n margin-bottom: 12px;\n padding: 0 6px !important;\n background-color: transparent !important;\n\n &:last-child {\n margin-bottom: 0;\n }\n\n & .lrn-label {\n padding: 0;\n background-color: ${colors.GREY_1};\n border-radius: 12px;\n border: 0;\n outline: 1px solid ${colors.GREY_2};\n\n &::before {\n border: 0;\n right: 10px;\n padding: 0;\n font-size: 14px;\n }\n\n & .lrn_choiceLabel {\n border-radius: 12px 0 0 12px;\n border-right: 1px solid ${colors.GREY_2};\n }\n\n & .lrn_contentWrapper {\n padding: 16px 32px 16px 16px;\n }\n }\n\n & input {\n visibility: hidden;\n\n &:not(:disabled) + .lrn-label:hover {\n outline: 1px solid ${colors.BLUE_4};\n }\n\n &:disabled + .lrn-label {\n cursor: not-allowed;\n }\n }\n\n &.lrn_selected .lrn-label {\n outline: 1px solid ${colors.BLUE_4};\n background-color: ${colors.GREY_1};\n }\n\n &.lrn_correct .lrn-label {\n outline: 2px solid ${colors.GREEN_5};\n background-color: ${colors.GREEN_1};\n\n &::before {\n color: ${colors.GREEN_5};\n }\n }\n \n &.lrn_incorrect .lrn-label {\n outline: 2px solid ${colors.ORANGE_5};\n background-color: ${colors.ORANGE_1};\n\n &::before {\n color: ${colors.ORANGE_5};\n }\n }\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_mcq .lrn_response .lrn_mcqgroup .lrn-mcq-option {\n &.lrn_incorrect .lrn-label,\n &.lrn_correct .lrn-label {\n outline: 1px solid ${colors.BLUE_4};\n background-color: ${colors.GREY_1};\n\n &::before {\n color: ${colors.BLUE_4};\n }\n }\n }\n\n & .lrn_widget.lrn_tokenhighlight .lrn_response .lrn_token {\n border: 0 !important;\n border-radius: 0px;\n padding: 0 2px !important;\n outline: none !important;\n margin: 0;\n background-color: transparent !important;\n\n &::after {\n position: absolute !important;\n font-size: 12px;\n line-height: 16px;\n top: -16px !important;\n left: calc(50% - 6px);\n margin: 0 !important;\n }\n\n &.lrn_tokenhighlight_hover,\n &.lrn_tokenhighlight_highlight {\n background-color: ${colors.BLUE_1} !important;\n }\n\n &.lrn_correct {\n background-color: ${colors.GREEN_1} !important;;\n\n &::after {\n color: ${colors.GREEN_5} !important;\n }\n }\n\n &.lrn_incorrect {\n background-color: ${colors.ORANGE_1} !important;;\n\n &::after {\n color: ${colors.ORANGE_5} !important;\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_tokenhighlight .lrn_response .lrn_token {\n &.lrn_correct,\n &.lrn_incorrect {\n background-color: ${colors.BLUE_1} !important;\n\n &::after {\n color: ${colors.BLUE_4} !important;\n }\n }\n }\n\n & .lrn_widget.lrn_numberline {\n .lrn_incorrect.lrn_btn_arrow {\n background-color: ${colors.ORANGE_1};\n border: 1px solid ${colors.ORANGE_5};\n\n &::before {\n color: ${colors.ORANGE_5};\n }\n &::after {\n border-color: ${colors.ORANGE_5} transparent transparent;\n }\n }\n\n .lrn_correct.lrn_btn_arrow {\n background-color: ${colors.GREEN_1};\n border: 1px solid ${colors.GREEN_5};\n\n &::before {\n color: ${colors.GREEN_5};\n }\n &::after {\n border-color: ${colors.GREEN_5} transparent transparent;\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_numberline {\n .lrn_correct.lrn_btn_arrow,\n .lrn_incorrect.lrn_btn_arrow {\n background-color: ${colors.BLUE_1} !important;\n border: 1px solid ${colors.BLUE_4} !important;\n\n &::before {\n color: ${colors.BLUE_4} !important;\n }\n &::after {\n border-color: ${colors.BLUE_4} transparent transparent !important;\n }\n }\n }\n\n & .lrn_widget .lrn_combobox {\n margin: 0 3px !important;\n\n & .lrn_clozedropdown_answer {\n position: relative !important;\n display: inline-flex !important;\n line-height: 28px !important;\n }\n\n &.lrn_not_attempted .lrn_clozedropdown_answer {\n position: relative !important;\n border: none !important;\n background: transparent !important;\n width: 100px;\n\n &:after {\n content: '';\n position: absolute !important;\n top: -5px;\n left: 0;\n width: 100%;\n height: 28px;\n background-color: ${colors.WHITE};\n outline: 1px solid ${colors.BLACK};\n border-radius: 4px;\n margin: 0 !important;\n }\n }\n \n & .lrn-cloze-select, &:not(.lrn_not_attempted) .lrn_clozedropdown_answer {\n background-color: ${colors.WHITE} !important;\n border: 0 !important;\n padding: 0 32px 0 8px !important;\n outline: 1px solid ${colors.BLACK};\n border-radius: 4px !important;\n min-height: 28px;\n min-width: 100px;\n height: 28px !important;\n\n &:after {\n position: absolute !important;\n right: 10px !important;\n padding: 0px !important;\n margin: 0px !important;\n }\n }\n \n &.lrn_correct .lrn_clozedropdown_answer {\n outline: 2px solid ${colors.GREEN_5};\n &:after {\n color: ${colors.GREEN_5} !important;\n }\n }\n &.lrn_incorrect .lrn_clozedropdown_answer {\n outline: 2px solid ${colors.ORANGE_5};\n &:after {\n color: ${colors.ORANGE_5} !important;\n }\n }\n \n }\n\n &.attempting .lrn_widget .lrn_combobox {\n &.lrn_correct .lrn_clozedropdown_answer,\n &.lrn_incorrect .lrn_clozedropdown_answer {\n outline: 2px solid ${colors.BLUE_4} !important;\n &::after {\n color: ${colors.BLUE_4} !important;\n }\n }\n }\n\n & .lrn_widget.lrn_hotspot .lrn-polygons {\n .lrn-focused polygon {\n outline-color: ${colors.BLUE_4};\n }\n\n .lrn-selected polygon {\n stroke: ${colors.BLUE_4} !important;\n }\n\n .lrn_correct polygon {\n stroke: ${colors.GREEN_5} !important;\n }\n \n .lrn_incorrect polygon {\n stroke: ${colors.ORANGE_5} !important;\n }\n\n .lrn-polygons-labels li {\n &.lrn_valid {\n background: ${colors.GREY_3};\n }\n &.lrn_correct {\n background: ${colors.GREEN_5};\n }\n &.lrn_incorrect {\n background: ${colors.ORANGE_5};\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_hotspot .lrn-polygons {\n .lrn_correct polygon,\n .lrn_incorrect polygon {\n stroke: ${colors.BLUE_4} !important;\n }\n\n .lrn-polygons-labels li {\n &.lrn_correct,\n &.lrn_incorrect {\n background: ${colors.BLUE_4};\n }\n }\n }\n\n & .lrn_widget.lrn_choicematrix {\n .lrn_option {\n &:: before {\n display: none;\n }\n &::after {\n position: absolute !important;\n top: calc(50% - 9px) !important;\n right: 7px !important;\n }\n &.lrn_correct {\n background-color: ${colors.GREEN_1};\n\n &::after {\n color: ${colors.GREEN_5} !important;\n }\n }\n\n &.lrn_incorrect {\n background-color: ${colors.ORANGE_1};\n\n &::after {\n color: ${colors.ORANGE_5} !important;\n }\n }\n }\n\n .lrn_response_input {\n border-width: 2px !important;\n margin: 0 !important;\n\n &.lrn_correct {\n border-color: ${colors.GREEN_5};\n\n &::after {\n background-color: ${colors.GREEN_5};\n }\n }\n\n &.lrn_incorrect {\n border-color: ${colors.ORANGE_5};\n\n &::after {\n background-color: ${colors.ORANGE_5};\n }\n }\n } \n }\n\n &.attempting .lrn_widget.lrn_choicematrix {\n .lrn_option {\n &.lrn_correct,\n &.lrn_incorrect {\n background-color: ${colors.BLUE_1};\n\n &::after {\n color: ${colors.BLUE_4} !important;\n }\n }\n }\n \n .lrn_response_input {\n &.lrn_correct,\n &.lrn_incorrect {\n border-color: ${colors.BLUE_4};\n\n &::after {\n background-color: ${colors.BLUE_4};\n }\n }\n }\n }\n\n .lrn_widget.lrn_classification {\n .lrn_response_container {\n border: 0 !important;\n vertical-align: bottom !important;\n }\n\n .lrn_dropzone {\n display: flex;\n flex-wrap: wrap;\n column-gap: 8px;\n height: unset !important;\n }\n\n .lrn_dropzone .lrn_draggable {\n display: inline-flex;\n align-items: center;\n padding: 8px 30px 8px 8px !important;\n margin-bottom: 4px !important;\n outline: 1px solid ${colors.BLUE_4} !important;\n background-color: transparent !important;\n\n &.lrn_incorrect {\n outline: 1px solid ${colors.ORANGE_5} !important;\n }\n\n &.lrn_correct {\n outline: 1px solid ${colors.GREEN_5} !important;\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_classification {\n .lrn_dropzone .lrn_draggable {\n &.lrn_correct,\n &.lrn_incorrect {\n outline: 1px solid ${colors.BLUE_4} !important;\n }\n }\n }\n\n .lrn_widget.lrn_association {\n .lrn_dropzone .lrn_draggable {\n display: flex;\n align-items: center;\n background-color: transparent !important;\n }\n }\n\n &.attempting .lrn_widget.lrn_association {\n .lrn_dropzone .lrn_draggable {\n background-color: ${colors.WHITE} !important;\n }\n }\n\n .lrn_widget.lrn_clozeassociation {\n .lrn_dropzone .lrn_draggable {\n display: flex;\n align-items: center;\n background-color: transparent !important;\n }\n\n .lrn_response_input {\n padding-bottom: 2px !important;\n }\n }\n \n &.attempting .lrn_widget.lrn_clozeassociation {\n .lrn_dropzone .lrn_draggable {\n background-color: ${colors.WHITE} !important;\n }\n }\n\n .lrn_widget.lrn_drawing {\n .lrn-label span,\n .lrn_toolbar_small_label {\n display: none !important;\n }\n }\n\n &.hidden {\n visibility: hidden;\n }\n\n &.correct-answers-hidden {\n .lrn_correctAnswers {\n display: none !important;\n }\n }\n \n\n &.response-hidden .lrn_response_wrapper {\n display: none;\n }\n \n &.response-code-hidden .lrn_response_wrapper {\n width: 75%;\n margin: 0 auto;\n .lrn_display_correct_answer_enabled {\n >:not(:first-child) {\n display: none;\n }\n \n :first-child {\n font-family: 'UntitledSans-Regular';\n font-size: 16px !important;\n line-height: 24px !important;\n text-align: center;\n text-wrap: balance;\n }\n\n .lrn_textinput {\n display: none !important;\n }\n }\n \n :first-child {\n font-family: 'UntitledSans-Regular';\n font-size: 16px !important;\n line-height: 24px !important;\n text-align: center;\n text-wrap: balance;\n }\n \n .lrn_correctAnswers {\n display: none;\n }\n }\n\n &.lesson-overview {\n .lrn_widget .lrn_question {\n table {\n width: calc(100% - 48px) !important;\n margin-left: 24px !important;\n border: 0px !important;\n \n td {\n border: 0px !important;\n width: 100% !important;\n background-color: transparent !important;\n\n p {\n display: flex !important;\n justify-content: center !important;\n font-family: \"Athletics-Medium\" !important;\n font-size: 28px !important;\n margin-bottom: 32px !important;\n }\n\n ul {\n list-style-type: none;\n padding-left: 0;\n\n li {\n position: relative !important;\n font-family: \"UntitledSans-Regular\" !important;\n font-size: 16px !important;\n margin: 12px 0 !important;\n\n &::before {\n content: \"A\";\n display: inline-block;\n width: 24px;\n height: 24px;\n margin-right: 12px;\n color: transparent;\n background-image: url(${ILLUSTRATIONS.BULLET_YELLOW});\n }\n }\n }\n }\n }\n }\n }\n\n &.concept-intro {\n .lrn_widget .lrn_question {\n .lrn_stimulus {\n display: flex !important;\n justify-content: center !important;\n }\n .lrn_stimulus_content {\n width: 75% !important;\n font-family: \"Athletics-Light\" !important;\n font-size: 48px !important;\n line-height: 52px !important;\n text-align: center;\n text-wrap: balance;\n\n * {\n font-size: 48px !important;\n }\n }\n }\n }\n\n &.system-intro .lrn_widget {\n display: none;\n }\n`,\n);\n\nconst ItemHeader = styled(FlexView)`\n position: relative;\n z-index: 2;\n padding-right: 8px;\n`;\n\nconst ItemHeaderTag = styled(FlexView)(\n ({\n theme: {\n layout: { gutter },\n colors,\n },\n }) => `\n position: relative;\n padding: ${gutter * 1}px ${gutter * 1}px ${gutter * 0.75}px;\n border-top-left-radius: ${gutter * 0.375}px;\n border-top-right-radius: ${gutter * 0.5}px;\n background-color: ${colors.YELLOW_2};\n\n &::after {\n content: '';\n position: absolute;\n top: 0;\n height: 100%;\n left: calc(100% - 1px);\n border-bottom: 44px solid ${colors.YELLOW_2};\n border-right: 24px solid transparent;\n }\n`,\n);\n\ninterface IQuestionHeaderWrapperProps {\n $actionbarHeight: number;\n $topOffset: number;\n}\n\ninterface ICueCanvasWrappperProps {\n $canScribble: boolean;\n}\n\nconst QuestionHeaderWrapper = styled(FlexView)<IQuestionHeaderWrapperProps>(\n ({ $topOffset }) => `\n position: sticky;\n top: ${$topOffset + QUESTIONS_GAP / 2}px;\n z-index: 2;\n`,\n);\n\nconst QuestionValidationAnimationWrapper = styled.div`\n position: absolute;\n top: -16px;\n right: -16px;\n width: 40px;\n height: 40px;\n`;\n\nconst LessonOverviewBanner = styled.img`\n display: block;\n transform: translate(-15px, -15px);\n width: calc(100% + 30px);\n border-radius: 12px 12px 0 0;\n margin-bottom: 18px;\n`;\n\nconst CustomElement = styled.div(\n ({ theme: { colors } }) => `\n color: ${colors.BLACK};\n font-size: 16px;\n line-height: 1.6em;\n font-family: 'Noto Serif', serif;\n\n & > *:not(:last-child) {\n margin-bottom: 1em;\n }\n\n & strong {\n font-weight: bold;\n }\n\n & i {\n font-style: italic;\n }\n\n & ul, ol {\n list-style-type: initial;\n padding-left: 1.5em;\n\n & li:not(:last-child) {\n margin-bottom: 8px;\n }\n }\n\n & ol {\n list-style-type: decimal;\n }\n\n & ul ul {\n list-style-type: circle;\n }\n\n & img {\n max-width: 100%;\n height: inherit;\n }\n\n & table {\n td {\n padding: 8px;\n }\n &:not(.table-no-border) td {\n border: 1px solid ${colors.REAL_BLACK};\n }\n }\n`,\n);\n\nconst Hint = styled(CustomElement)`\n margin: 8px 0;\n`;\n\nconst StimulusReview = styled(CustomElement)(\n ({ theme: { colors } }) => `\n width: 50%;\n padding-right: 16px;\n margin-top: 16px;\n border-right: 1px solid ${colors.GREY_2};\n min-height: 100%;\n align-self: stretch;\n`,\n);\n\nconst CueCanvasWrapper = styled(FlexView)<ICueCanvasWrappperProps>(\n ({ $canScribble, theme }) => `\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: ${$canScribble ? theme.zIndex.CANVAS_SCRIBBLING : 1};\n pointer-events: ${$canScribble ? 'auto' : 'none'};\n`,\n);\n\nexport {\n CueCanvasWrapper,\n CustomElement,\n Hint,\n ItemHeader,\n ItemHeaderTag,\n LearnosityQuestionContainer,\n LessonOverviewBanner,\n QuestionContainer,\n QuestionContainerWrapper,\n QuestionHeaderWrapper,\n QuestionValidationAnimationWrapper,\n QuestionWrapper,\n StimulusReview,\n};\n"],"names":["LearnosityQuestionContainer","styled","$isConceptIntro","$isTeacher","theme","$imageHue","$isPuzzle","getPuzzleCardPattern","QuestionContainerWrapper","FlexView","$topOffset","TOP_NAVIGATION_HEIGHT","QUESTIONS_GAP","getMinHeightFromString","minHeight","QuestionContainer","$minHeight","$paperColor","$isActive","getPuzzleWorksheetBackgroundColor","getQuestionBackgroundImage","getQuestionBorderColor","QuestionWrapper","colors","$dropzoneMinWidth","$dropzoneMinHeight","ILLUSTRATIONS","ItemHeader","ItemHeaderTag","gutter","QuestionHeaderWrapper","QuestionValidationAnimationWrapper","LessonOverviewBanner","CustomElement","Hint","StimulusReview","CueCanvasWrapper","$canScribble"],"mappings":"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"}
1
+ {"version":3,"file":"worksheet-question-styled.js","sources":["../../../../../src/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\nimport { getPuzzleCardPattern } from '../../../puzzles/utils/puzzle-pattern';\nimport FlexView from '../../../ui/layout/flex-view';\nimport type { THueNames } from '../../../ui/types';\nimport { QUESTIONS_GAP, TOP_NAVIGATION_HEIGHT } from '../constants';\nimport {\n getPuzzleWorksheetBackgroundColor,\n getQuestionBackgroundImage,\n getQuestionBorderColor,\n} from '../worksheet-helpers';\nimport type { TWorksheetQuestionPaperColor } from './worksheet-question-types';\n\nconst LearnosityQuestionContainer = styled.div<{\n $isConceptIntro: boolean;\n $isTeacher: boolean;\n $imageHue?: THueNames;\n $isPuzzle?: boolean;\n}>(\n ({ $isConceptIntro, $isTeacher, theme, $imageHue = 'BLUE', $isPuzzle }) => `\n position: relative;\n z-index: 1;\n & > div:not(:first-child) {\n display: none;\n }\n\n ${\n $isConceptIntro\n ? `\n position: absolute;\n left: 0;\n right: 0;\n bottom: ${$isTeacher ? 140 : 180}px;\n `\n : ''\n }\n ${\n $isPuzzle\n ? `\n width: 420px;\n min-height: 504px;\n padding: 20px 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n margin: 40px auto 0;\n box-shadow: inset 0px 0px 0px 4px ${theme.colors[`${$imageHue}_4`]};\n background: ${theme.colors.WHITE_1};\n \n & * {\n font-family: Athletics-Regular !important;\n }\n\n &::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-image: ${`url(${getPuzzleCardPattern($imageHue)})`};\n background-size: cover;\n opacity: 0.4;\n }\n\n .lrn_stimulus_content {\n display: flex;\n justify-content: center;\n }\n\n .lrn_stimulus_content img {\n width: 270px;\n height: 270px;\n margin-bottom: 0;\n }\n \n .lrn_response_wrapper .lrn_response_math.lrn_response_input, \n .lrn_response_wrapper .lrn_response_math.lrn_response_input p {\n line-height: 1.5 !important;\n }\n `\n : ``\n }\n`,\n);\n\ninterface IQuestionContainerWrapper {\n $topOffset?: number;\n}\n\nconst QuestionContainerWrapper = styled(FlexView)<IQuestionContainerWrapper>(\n ({ $topOffset }) => `\n scroll-margin-top: ${($topOffset ?? 0) + TOP_NAVIGATION_HEIGHT + QUESTIONS_GAP}px;\n`,\n);\n\nconst getMinHeightFromString = (minHeight: string) => {\n if (minHeight.startsWith('calc(')) {\n return minHeight.replace(')', ' - 32px)');\n }\n\n return minHeight;\n};\n\ninterface IQuestionContainerProps {\n $minHeight: string | number;\n $paperColor?: TWorksheetQuestionPaperColor;\n $isActive?: boolean;\n $imageHue?: THueNames;\n}\n\nconst QuestionContainer = styled(FlexView)<IQuestionContainerProps>(\n ({ theme, $minHeight, $paperColor, $isActive, $imageHue }) => `\n position: relative;\n padding: 15px 15px 55px 15px;\n\n \n min-height: ${\n typeof $minHeight === 'number' ? `${$minHeight}px` : getMinHeightFromString($minHeight)\n };\n transition: opacity 0.15s;\n ${\n !$imageHue\n ? `\n border-radius: 12px;\n background-image: ${\n $paperColor && $paperColor !== 'white'\n ? `url(${getQuestionBackgroundImage($paperColor)})`\n : 'none'\n };\n background-repeat: repeat;\n border: 1px solid ${\n $paperColor\n ? theme.colors[getQuestionBorderColor($paperColor, $isActive)]\n : 'transparent'\n };\n `\n : `\n border: 1px solid ${theme.colors[getPuzzleWorksheetBackgroundColor($imageHue)]};\n border-top: none;\n border-bottom: none;\n background-color: ${theme.colors[getPuzzleWorksheetBackgroundColor($imageHue)]};\n `\n }\n ${!$paperColor ? 'padding-right: 0;' : ''}\n`,\n);\n\ninterface IQuestionWrapperProps {\n $dropzoneMinWidth: number;\n $dropzoneMinHeight: number;\n}\n\nconst QuestionWrapper = styled.div<IQuestionWrapperProps>(\n ({ theme: { colors }, $dropzoneMinWidth, $dropzoneMinHeight }) => `\n height: 100%;\n min-height: inherit;\n\n em {\n font-style: italic;\n } \n \n & .lrn_widget {\n font-size: 16px;\n line-height: 1.6em;\n color: ${colors.BLACK};\n font-family: \"Noto Serif\", serif;\n margin-top: 6px;\n padding-top: 0;\n margin-bottom: 16px;\n\n iframe {\n max-width: 100%;\n }\n\n ul, ol {\n list-style-type: initial;\n padding-left: 32px;\n }\n\n ol {\n list-style-type: decimal;\n }\n\n .lrn_response_wrapper {\n margin-top: 0 !important;\n }\n\n .lrn_question {\n margin-bottom: 16px;\n\n .lrn_stimulus {\n line-height: 1.6em;\n\n .lrn_stimulus_content {\n line-height: 1.6em;\n }\n }\n\n & ~ .lrn_response_wrapper {\n margin-top: 16px !important;\n }\n }\n\n .lrn_response_input_wrapper {\n border-color: ${colors.GREY_3};\n }\n\n .lrn_possibilityList {\n background-color: ${colors.REAL_BLACK_10};\n }\n\n .lrn_dropzone {\n margin: 0 !important;\n margin: 0 !important;\n border: 0 !important;\n outline: 1px dashed ${colors.BLACK};\n height: inherit !important;\n ${\n $dropzoneMinWidth > 0\n ? `\n min-width: ${$dropzoneMinWidth}px !important;\n width: ${$dropzoneMinWidth}px !important;\n max-width: ${$dropzoneMinWidth}px !important;\n `\n : ''\n }\n ${\n $dropzoneMinHeight > 0\n ? `\n min-height: ${$dropzoneMinHeight}px !important;\n height: ${$dropzoneMinHeight}px !important;\n `\n : ''\n }\n\n &:not(.lrn_disabled):hover {\n outline: 1px dashed ${colors.BLUE_4};\n }\n\n &.lrn_highlight {\n outline: 1px dashed ${colors.BLUE_4};\n\n &.lrn_over {\n background-color: ${colors.BLUE_1};\n\n & .lrn_draggable {\n opacity: 0.5;\n }\n }\n }\n\n & .lrn_draggable {\n box-shadow: none;\n margin: 0 !important;\n border: 0 !important;\n background-color: ${colors.WHITE} !important;\n\n &:after {\n padding: 0 !important;\n right: 10px !important;\n }\n\n &.lrn_correct:after {\n color: ${colors.GREEN_5} !important;\n }\n\n &.lrn_incorrect:after {\n color: ${colors.ORANGE_5} !important;\n }\n }\n\n &.lrn_correct_marker {\n outline: 2px solid ${colors.GREEN_5} !important;\n }\n\n &.lrn_incorrect_marker {\n outline: 2px solid ${colors.ORANGE_5} !important;\n }\n }\n\n .lrn_draggable {\n margin: 4px !important;\n padding: 8px !important;\n box-shadow: inset 0 0 0 1px ${colors.BLUE_4};\n background-color: ${colors.WHITE} !important;\n cursor: grab;\n color: ${colors.BLACK} !important;\n\n & .lrn_icon {\n display: none;\n }\n\n & .lrn_item {\n margin: 0 !important;\n width: 100%;\n text-align: left !important;\n }\n\n &.lrn_active,\n &:not([disabled]):focus,\n &:not([disabled]):hover {\n box-shadow: inset 0 0 0 2px ${colors.BLUE_4} !important;\n }\n\n &[disabled] {\n inset 0 0 0 1px ${colors.WHITE};\n }\n\n &.gu-mirror {\n font-size: 99%;\n transform: rotate(-6deg);\n }\n }\n\n .lrn-response-validate-wrapper,\n .lrn-response-validation-wrapper {\n margin: 0 !important;\n \n &.lrn_correct {\n border: 2px solid ${colors.GREEN_5} !important;\n border-radius: 4px;\n \n &::after {\n background-color: ${colors.GREEN_5} !important;\n }\n }\n\n &.lrn_incorrect {\n border: 2px solid ${colors.ORANGE_5} !important;\n border-radius: 4px;\n \n &::after {\n background-color: ${colors.ORANGE_5} !important;\n }\n }\n }\n\n .lrn_responseIndex {\n position: absolute !important;\n top: -12px !important;\n left: -9px !important;\n width: 18px !important;\n height: 18px !important;\n border-radius: 9px !important;\n background-color: ${colors.GREY_3} !important;\n font-size: 11px !important;\n font-weight: bold !important;\n line-height: 16px !important;\n padding: 0 !important;\n text-align: center;\n }\n\n .lrn_correctAnswers {\n margin-top: 24px;\n padding: 16px 24px;\n border: 1px solid ${colors.GREY_3};\n border-radius: 12px;\n background-color: transparent;\n\n & > :first-child {\n color: ${colors.BLACK};\n text-transform: capitalize;\n font-family: \"UntitledSans-Medium\";\n font-size: 14px;\n line-height: 20px;\n }\n \n & .lrn_correctAnswerList {\n margin-top: 24px;\n li {\n background-color: ${colors.WHITE};\n padding-left: 8px;\n margin-right: 24px;\n margin-bottom: 24px;\n outline: 1px solid ${colors.GREY_3};\n cursor: auto;\n }\n }\n }\n\n .lrn_classification_table .lrn_dropzone {\n overflow-x: visible !important;\n }\n }\n\n &.attempting .lrn_widget {\n .lrn-response-validate-wrapper,\n .lrn-response-validation-wrapper {\n &.lrn_correct,\n &.lrn_incorrect {\n border-color: transparent !important;\n\n &::after {\n background-color: transparent !important;\n color: transparent !important;\n }\n }\n }\n\n .lrn_dropzone {\n &.lrn_correct_marker,\n &.lrn_incorrect_marker {\n outline-color: ${colors.BLUE_4};\n }\n\n & .lrn_draggable {\n &.lrn_correct:after,\n &.lrn_incorrect:after {\n color: ${colors.BLUE_4} !important;\n }\n }\n }\n }\n \n & .lrn_widget .lrn_textinput {\n display: inline-flex;\n vertical-align: middle;\n padding: 0 !important;\n margin: 0 !important;\n border: none !important;\n\n &::after {\n right: 4px !important;\n padding-right: 0px !important;\n }\n \n & .lrn_math_editable {\n padding-right: 32px;\n \n &.lrn_bordered_mathinput {\n border: none !important;\n outline: 1px solid ${colors.BLACK};\n padding: 3px 24px 3px 8px;\n text-align: left;\n background-color: ${colors.WHITE} !important;\n }\n\n & .lrn_bordered_mathinput {\n min-height: 20px;\n border: 1px solid ${colors.BLACK};\n border-radius: 2px !important;\n background-color: ${colors.WHITE} !important;\n }\n\n &.lrn_bordered_mathinput {\n &.lrn_focused,\n &:not(.lrn_hide_cursor):hover {\n outline: 1px solid ${colors.BLUE_4};\n }\n\n &.lrn_hide_cursor {\n cursor: auto;\n }\n }\n \n &:not(.lrn_hide_cursor) .lrn_bordered_mathinput {\n &.lrn_focused,\n &:hover {\n border: 1px solid ${colors.BLUE_4};\n }\n\n }\n \n &.lrn_hide_cursor .lrn_bordered_mathinput {\n cursor: auto;\n }\n }\n \n & input {\n min-height: 40px;\n padding: 0 32px 0 8px;\n border: none !important;\n background-color: ${colors.WHITE} !important;\n outline: 1px solid ${colors.BLACK};\n border-radius: 4px !important;\n\n &:focus,\n &:not(:disabled):hover {\n outline: 1px solid ${colors.BLUE_4};\n }\n }\n\n &.lrn_correct {\n background-color: ${colors.GREEN_1} !important;\n &::after {\n color: ${colors.GREEN_5};\n }\n & input {\n outline: 2px solid ${colors.GREEN_5};\n }\n & .lrn_bordered_mathinput {\n &:not(.mq-inner-editable) {\n outline: 2px solid ${colors.GREEN_5};\n }\n &.mq-inner-editable {\n border: 1px solid ${colors.GREEN_5};\n }\n }\n }\n \n &.lrn_incorrect {\n background-color: ${colors.ORANGE_1} !important;\n &::after {\n color: ${colors.ORANGE_5};\n }\n & input {\n outline: 2px solid ${colors.ORANGE_5};\n }\n & .lrn_bordered_mathinput {\n &:not(.mq-inner-editable) {\n outline: 2px solid ${colors.ORANGE_5};\n }\n &.mq-inner-editable {\n border: 1px solid ${colors.ORANGE_5};\n }\n }\n }\n }\n\n &.attempting .lrn_widget .lrn_textinput {\n &.lrn_correct,\n &.lrn_incorrect {\n background-color: ${colors.WHITE} !important;\n\n &::after {\n color: ${colors.BLUE_4} !important;\n }\n\n & input {\n outline: 1px solid ${colors.BLUE_4} !important;\n }\n\n & .lrn_bordered_mathinput {\n &:not(.mq-inner-editable) {\n outline: 2px solid ${colors.BLUE_4} !important;\n }\n &.mq-inner-editable {\n border: 1px solid ${colors.BLUE_4} !important;\n }\n }\n }\n }\n\n & .lrn_widget.lrn_mcq .lrn_response {\n & .lrn_mcqgroup {\n overflow-x: visible;\n margin: 0 -8px !important;\n\n & .lrn-mcq-option {\n border: none !important;\n margin-bottom: 12px;\n padding: 0 6px !important;\n background-color: transparent !important;\n\n &:last-child {\n margin-bottom: 0;\n }\n\n & .lrn-label {\n padding: 0;\n background-color: ${colors.GREY_1};\n border-radius: 12px;\n border: 0;\n outline: 1px solid ${colors.GREY_2};\n\n &::before {\n border: 0;\n right: 10px;\n padding: 0;\n font-size: 14px;\n }\n\n & .lrn_choiceLabel {\n border-radius: 12px 0 0 12px;\n border-right: 1px solid ${colors.GREY_2};\n }\n\n & .lrn_contentWrapper {\n padding: 16px 32px 16px 16px;\n }\n }\n\n & input {\n visibility: hidden;\n\n &:not(:disabled) + .lrn-label:hover {\n outline: 1px solid ${colors.BLUE_4};\n }\n\n &:disabled + .lrn-label {\n cursor: not-allowed;\n }\n }\n\n &.lrn_selected .lrn-label {\n outline: 1px solid ${colors.BLUE_4};\n background-color: ${colors.GREY_1};\n }\n\n &.lrn_correct .lrn-label {\n outline: 2px solid ${colors.GREEN_5};\n background-color: ${colors.GREEN_1};\n\n &::before {\n color: ${colors.GREEN_5};\n }\n }\n \n &.lrn_incorrect .lrn-label {\n outline: 2px solid ${colors.ORANGE_5};\n background-color: ${colors.ORANGE_1};\n\n &::before {\n color: ${colors.ORANGE_5};\n }\n }\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_mcq .lrn_response .lrn_mcqgroup .lrn-mcq-option {\n &.lrn_incorrect .lrn-label,\n &.lrn_correct .lrn-label {\n outline: 1px solid ${colors.BLUE_4};\n background-color: ${colors.GREY_1};\n\n &::before {\n color: ${colors.BLUE_4};\n }\n }\n }\n\n & .lrn_widget.lrn_tokenhighlight .lrn_response .lrn_token {\n border: 0 !important;\n border-radius: 0px;\n padding: 0 2px !important;\n outline: none !important;\n margin: 0;\n background-color: transparent !important;\n\n &::after {\n position: absolute !important;\n font-size: 12px;\n line-height: 16px;\n top: -16px !important;\n left: calc(50% - 6px);\n margin: 0 !important;\n }\n\n &.lrn_tokenhighlight_hover,\n &.lrn_tokenhighlight_highlight {\n background-color: ${colors.BLUE_1} !important;\n }\n\n &.lrn_correct {\n background-color: ${colors.GREEN_1} !important;;\n\n &::after {\n color: ${colors.GREEN_5} !important;\n }\n }\n\n &.lrn_incorrect {\n background-color: ${colors.ORANGE_1} !important;;\n\n &::after {\n color: ${colors.ORANGE_5} !important;\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_tokenhighlight .lrn_response .lrn_token {\n &.lrn_correct,\n &.lrn_incorrect {\n background-color: ${colors.BLUE_1} !important;\n\n &::after {\n color: ${colors.BLUE_4} !important;\n }\n }\n }\n\n & .lrn_widget.lrn_numberline {\n .lrn_incorrect.lrn_btn_arrow {\n background-color: ${colors.ORANGE_1};\n border: 1px solid ${colors.ORANGE_5};\n\n &::before {\n color: ${colors.ORANGE_5};\n }\n &::after {\n border-color: ${colors.ORANGE_5} transparent transparent;\n }\n }\n\n .lrn_correct.lrn_btn_arrow {\n background-color: ${colors.GREEN_1};\n border: 1px solid ${colors.GREEN_5};\n\n &::before {\n color: ${colors.GREEN_5};\n }\n &::after {\n border-color: ${colors.GREEN_5} transparent transparent;\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_numberline {\n .lrn_correct.lrn_btn_arrow,\n .lrn_incorrect.lrn_btn_arrow {\n background-color: ${colors.BLUE_1} !important;\n border: 1px solid ${colors.BLUE_4} !important;\n\n &::before {\n color: ${colors.BLUE_4} !important;\n }\n &::after {\n border-color: ${colors.BLUE_4} transparent transparent !important;\n }\n }\n }\n\n & .lrn_widget .lrn_combobox {\n margin: 0 3px !important;\n\n & .lrn_clozedropdown_answer {\n position: relative !important;\n display: inline-flex !important;\n line-height: 28px !important;\n }\n\n &.lrn_not_attempted .lrn_clozedropdown_answer {\n position: relative !important;\n border: none !important;\n background: transparent !important;\n width: 100px;\n\n &:after {\n content: '';\n position: absolute !important;\n top: -5px;\n left: 0;\n width: 100%;\n height: 28px;\n background-color: ${colors.WHITE};\n outline: 1px solid ${colors.BLACK};\n border-radius: 4px;\n margin: 0 !important;\n }\n }\n \n & .lrn-cloze-select, &:not(.lrn_not_attempted) .lrn_clozedropdown_answer {\n background-color: ${colors.WHITE} !important;\n border: 0 !important;\n padding: 0 32px 0 8px !important;\n outline: 1px solid ${colors.BLACK};\n border-radius: 4px !important;\n min-height: 28px;\n min-width: 100px;\n height: 28px !important;\n\n &:after {\n position: absolute !important;\n right: 10px !important;\n padding: 0px !important;\n margin: 0px !important;\n }\n }\n \n &.lrn_correct .lrn_clozedropdown_answer {\n outline: 2px solid ${colors.GREEN_5};\n &:after {\n color: ${colors.GREEN_5} !important;\n }\n }\n &.lrn_incorrect .lrn_clozedropdown_answer {\n outline: 2px solid ${colors.ORANGE_5};\n &:after {\n color: ${colors.ORANGE_5} !important;\n }\n }\n \n }\n\n &.attempting .lrn_widget .lrn_combobox {\n &.lrn_correct .lrn_clozedropdown_answer,\n &.lrn_incorrect .lrn_clozedropdown_answer {\n outline: 2px solid ${colors.BLUE_4} !important;\n &::after {\n color: ${colors.BLUE_4} !important;\n }\n }\n }\n\n & .lrn_widget.lrn_hotspot .lrn-polygons {\n .lrn-focused polygon {\n outline-color: ${colors.BLUE_4};\n }\n\n .lrn-selected polygon {\n stroke: ${colors.BLUE_4} !important;\n }\n\n .lrn_correct polygon {\n stroke: ${colors.GREEN_5} !important;\n }\n \n .lrn_incorrect polygon {\n stroke: ${colors.ORANGE_5} !important;\n }\n\n .lrn-polygons-labels li {\n &.lrn_valid {\n background: ${colors.GREY_3};\n }\n &.lrn_correct {\n background: ${colors.GREEN_5};\n }\n &.lrn_incorrect {\n background: ${colors.ORANGE_5};\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_hotspot .lrn-polygons {\n .lrn_correct polygon,\n .lrn_incorrect polygon {\n stroke: ${colors.BLUE_4} !important;\n }\n\n .lrn-polygons-labels li {\n &.lrn_correct,\n &.lrn_incorrect {\n background: ${colors.BLUE_4};\n }\n }\n }\n\n & .lrn_widget.lrn_choicematrix {\n .lrn_option {\n &:: before {\n display: none;\n }\n &::after {\n position: absolute !important;\n top: calc(50% - 9px) !important;\n right: 7px !important;\n }\n &.lrn_correct {\n background-color: ${colors.GREEN_1};\n\n &::after {\n color: ${colors.GREEN_5} !important;\n }\n }\n\n &.lrn_incorrect {\n background-color: ${colors.ORANGE_1};\n\n &::after {\n color: ${colors.ORANGE_5} !important;\n }\n }\n }\n\n .lrn_response_input {\n border-width: 2px !important;\n margin: 0 !important;\n\n &.lrn_correct {\n border-color: ${colors.GREEN_5};\n\n &::after {\n background-color: ${colors.GREEN_5};\n }\n }\n\n &.lrn_incorrect {\n border-color: ${colors.ORANGE_5};\n\n &::after {\n background-color: ${colors.ORANGE_5};\n }\n }\n } \n }\n\n &.attempting .lrn_widget.lrn_choicematrix {\n .lrn_option {\n &.lrn_correct,\n &.lrn_incorrect {\n background-color: ${colors.BLUE_1};\n\n &::after {\n color: ${colors.BLUE_4} !important;\n }\n }\n }\n \n .lrn_response_input {\n &.lrn_correct,\n &.lrn_incorrect {\n border-color: ${colors.BLUE_4};\n\n &::after {\n background-color: ${colors.BLUE_4};\n }\n }\n }\n }\n\n .lrn_widget.lrn_classification {\n .lrn_response_container {\n border: 0 !important;\n vertical-align: bottom !important;\n }\n\n .lrn_dropzone {\n display: flex;\n flex-wrap: wrap;\n column-gap: 8px;\n height: unset !important;\n }\n\n .lrn_dropzone .lrn_draggable {\n display: inline-flex;\n align-items: center;\n padding: 8px 30px 8px 8px !important;\n margin-bottom: 4px !important;\n outline: 1px solid ${colors.BLUE_4} !important;\n background-color: transparent !important;\n\n &.lrn_incorrect {\n outline: 1px solid ${colors.ORANGE_5} !important;\n }\n\n &.lrn_correct {\n outline: 1px solid ${colors.GREEN_5} !important;\n }\n }\n }\n\n &.attempting .lrn_widget.lrn_classification {\n .lrn_dropzone .lrn_draggable {\n &.lrn_correct,\n &.lrn_incorrect {\n outline: 1px solid ${colors.BLUE_4} !important;\n }\n }\n }\n\n .lrn_widget.lrn_association {\n .lrn_dropzone .lrn_draggable {\n display: flex;\n align-items: center;\n background-color: transparent !important;\n }\n }\n\n &.attempting .lrn_widget.lrn_association {\n .lrn_dropzone .lrn_draggable {\n background-color: ${colors.WHITE} !important;\n }\n }\n\n .lrn_widget.lrn_clozeassociation {\n .lrn_dropzone .lrn_draggable {\n display: flex;\n align-items: center;\n background-color: transparent !important;\n }\n\n .lrn_response_input {\n padding-bottom: 2px !important;\n }\n }\n \n &.attempting .lrn_widget.lrn_clozeassociation {\n .lrn_dropzone .lrn_draggable {\n background-color: ${colors.WHITE} !important;\n }\n }\n\n .lrn_widget.lrn_drawing {\n .lrn-label span,\n .lrn_toolbar_small_label {\n display: none !important;\n }\n }\n\n &.hidden {\n visibility: hidden;\n }\n\n &.correct-answers-hidden {\n .lrn_correctAnswers {\n display: none !important;\n }\n }\n \n\n &.response-hidden .lrn_response_wrapper {\n display: none;\n }\n \n &.response-code-hidden .lrn_response_wrapper {\n width: 75%;\n margin: 0 auto;\n .lrn_display_correct_answer_enabled {\n >:not(:first-child) {\n display: none;\n }\n \n :first-child {\n font-family: 'UntitledSans-Regular';\n font-size: 16px !important;\n line-height: 24px !important;\n text-align: center;\n text-wrap: balance;\n }\n\n .lrn_textinput {\n display: none !important;\n }\n }\n \n :first-child {\n font-family: 'UntitledSans-Regular';\n font-size: 16px !important;\n line-height: 24px !important;\n text-align: center;\n text-wrap: balance;\n }\n \n .lrn_correctAnswers {\n display: none;\n }\n }\n\n &.lesson-overview {\n .lrn_widget .lrn_question {\n table {\n width: calc(100% - 48px) !important;\n margin-left: 24px !important;\n border: 0px !important;\n \n td {\n border: 0px !important;\n width: 100% !important;\n background-color: transparent !important;\n\n p {\n display: flex !important;\n justify-content: center !important;\n font-family: \"Athletics-Medium\" !important;\n font-size: 28px !important;\n margin-bottom: 32px !important;\n }\n\n ul {\n list-style-type: none;\n padding-left: 0;\n\n li {\n position: relative !important;\n font-family: \"UntitledSans-Regular\" !important;\n font-size: 16px !important;\n margin: 12px 0 !important;\n\n &::before {\n content: \"A\";\n display: inline-block;\n width: 24px;\n height: 24px;\n margin-right: 12px;\n color: transparent;\n background-image: url(${ILLUSTRATIONS.BULLET_YELLOW});\n }\n }\n }\n }\n }\n }\n }\n\n &.concept-intro {\n .lrn_widget .lrn_question {\n .lrn_stimulus {\n display: flex !important;\n justify-content: center !important;\n }\n .lrn_stimulus_content {\n width: 75% !important;\n font-family: \"Athletics-Light\" !important;\n font-size: 48px !important;\n line-height: 52px !important;\n text-align: center;\n text-wrap: balance;\n\n * {\n font-size: 48px !important;\n }\n }\n }\n }\n\n &.system-intro .lrn_widget {\n display: none;\n }\n`,\n);\n\nconst ItemHeader = styled(FlexView)`\n position: relative;\n z-index: 2;\n padding-right: 8px;\n`;\n\nconst ItemHeaderTag = styled(FlexView)(\n ({\n theme: {\n layout: { gutter },\n colors,\n },\n }) => `\n position: relative;\n padding: ${gutter * 1}px ${gutter * 1}px ${gutter * 0.75}px;\n border-top-left-radius: ${gutter * 0.375}px;\n border-top-right-radius: ${gutter * 0.5}px;\n background-color: ${colors.YELLOW_2};\n\n &::after {\n content: '';\n position: absolute;\n top: 0;\n height: 100%;\n left: calc(100% - 1px);\n border-bottom: 44px solid ${colors.YELLOW_2};\n border-right: 24px solid transparent;\n }\n`,\n);\n\ninterface IQuestionHeaderWrapperProps {\n $actionbarHeight: number;\n $topOffset: number;\n}\n\ninterface ICueCanvasWrappperProps {\n $canScribble: boolean;\n}\n\nconst QuestionHeaderWrapper = styled(FlexView)<IQuestionHeaderWrapperProps>(\n ({ $topOffset }) => `\n position: sticky;\n top: ${$topOffset + QUESTIONS_GAP / 2}px;\n z-index: 2;\n`,\n);\n\nconst QuestionValidationAnimationWrapper = styled.div`\n position: absolute;\n top: -16px;\n right: -16px;\n width: 40px;\n height: 40px;\n`;\n\nconst LessonOverviewBanner = styled.img`\n display: block;\n transform: translate(-15px, -15px);\n width: calc(100% + 30px);\n border-radius: 12px 12px 0 0;\n margin-bottom: 18px;\n`;\n\nconst CustomElement = styled.div(\n ({ theme: { colors } }) => `\n color: ${colors.BLACK};\n font-size: 16px;\n line-height: 1.6em;\n font-family: 'Noto Serif', serif;\n\n & > *:not(:last-child) {\n margin-bottom: 1em;\n }\n\n & strong {\n font-weight: bold;\n }\n\n & i {\n font-style: italic;\n }\n\n & ul, ol {\n list-style-type: initial;\n padding-left: 1.5em;\n\n & li:not(:last-child) {\n margin-bottom: 8px;\n }\n }\n\n & ol {\n list-style-type: decimal;\n }\n\n & ul ul {\n list-style-type: circle;\n }\n\n & img {\n max-width: 100%;\n height: inherit;\n }\n\n & table {\n td {\n padding: 8px;\n }\n &:not(.table-no-border) td {\n border: 1px solid ${colors.REAL_BLACK};\n }\n }\n`,\n);\n\nconst Hint = styled(CustomElement)`\n margin: 8px 0;\n`;\n\nconst Solution = CustomElement;\n\nconst StimulusReview = styled(CustomElement)(\n ({ theme: { colors } }) => `\n width: 50%;\n padding-right: 16px;\n margin-top: 16px;\n border-right: 1px solid ${colors.GREY_2};\n min-height: 100%;\n align-self: stretch;\n`,\n);\n\nconst CueCanvasWrapper = styled(FlexView)<ICueCanvasWrappperProps>(\n ({ $canScribble, theme }) => `\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: ${$canScribble ? theme.zIndex.CANVAS_SCRIBBLING : 1};\n pointer-events: ${$canScribble ? 'auto' : 'none'};\n`,\n);\n\nexport {\n CueCanvasWrapper,\n CustomElement,\n Hint,\n ItemHeader,\n ItemHeaderTag,\n LearnosityQuestionContainer,\n LessonOverviewBanner,\n QuestionContainer,\n QuestionContainerWrapper,\n QuestionHeaderWrapper,\n QuestionValidationAnimationWrapper,\n QuestionWrapper,\n Solution,\n StimulusReview,\n};\n"],"names":["LearnosityQuestionContainer","styled","$isConceptIntro","$isTeacher","theme","$imageHue","$isPuzzle","getPuzzleCardPattern","QuestionContainerWrapper","FlexView","$topOffset","TOP_NAVIGATION_HEIGHT","QUESTIONS_GAP","getMinHeightFromString","minHeight","QuestionContainer","$minHeight","$paperColor","$isActive","getPuzzleWorksheetBackgroundColor","getQuestionBackgroundImage","getQuestionBorderColor","QuestionWrapper","colors","$dropzoneMinWidth","$dropzoneMinHeight","ILLUSTRATIONS","ItemHeader","ItemHeaderTag","gutter","QuestionHeaderWrapper","QuestionValidationAnimationWrapper","LessonOverviewBanner","CustomElement","Hint","Solution","StimulusReview","CueCanvasWrapper","$canScribble"],"mappings":"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"}