@digabi/exam-engine-core 16.1.4 → 16.2.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 (449) hide show
  1. package/dist/__tests__/AnsweringInstructions.test.js +9 -9
  2. package/dist/__tests__/AnsweringInstructions.test.js.map +1 -1
  3. package/dist/__tests__/results/AnnotationList.test.js +1 -0
  4. package/dist/__tests__/results/AnnotationList.test.js.map +1 -1
  5. package/dist/__tests__/results/ResultsExamQuestionAutoScore.test.js +1 -0
  6. package/dist/__tests__/results/ResultsExamQuestionAutoScore.test.js.map +1 -1
  7. package/dist/__tests__/results/ResultsExamQuestionManualScore.test.js +1 -0
  8. package/dist/__tests__/results/ResultsExamQuestionManualScore.test.js.map +1 -1
  9. package/dist/__tests__/tsconfig.tsbuildinfo +1 -1
  10. package/dist/__tests__/validateAnswers.test.js +52 -13
  11. package/dist/__tests__/validateAnswers.test.js.map +1 -1
  12. package/dist/components/AnswerToolbar.d.ts +7 -5
  13. package/dist/components/AnswerToolbar.d.ts.map +1 -1
  14. package/dist/components/AnswerToolbar.js +19 -6
  15. package/dist/components/AnswerToolbar.js.map +1 -1
  16. package/dist/components/AnsweringInstructions.d.ts +2 -2
  17. package/dist/components/AnsweringInstructions.d.ts.map +1 -1
  18. package/dist/components/AnsweringInstructions.js +2 -2
  19. package/dist/components/AnsweringInstructions.js.map +1 -1
  20. package/dist/components/SectionElement.d.ts.map +1 -1
  21. package/dist/components/SectionElement.js.map +1 -1
  22. package/dist/components/context/CommonExamContext.d.ts +1 -1
  23. package/dist/components/context/CommonExamContext.d.ts.map +1 -1
  24. package/dist/components/context/CommonExamContext.js +1 -1
  25. package/dist/components/context/CommonExamContext.js.map +1 -1
  26. package/dist/components/context/QuestionContext.d.ts +1 -0
  27. package/dist/components/context/QuestionContext.d.ts.map +1 -1
  28. package/dist/components/context/QuestionContext.js +8 -1
  29. package/dist/components/context/QuestionContext.js.map +1 -1
  30. package/dist/components/exam/ChoiceAnswer.d.ts.map +1 -1
  31. package/dist/components/exam/ChoiceAnswer.js +5 -8
  32. package/dist/components/exam/ChoiceAnswer.js.map +1 -1
  33. package/dist/components/exam/DropdownAnswer.d.ts.map +1 -1
  34. package/dist/components/exam/DropdownAnswer.js +2 -3
  35. package/dist/components/exam/DropdownAnswer.js.map +1 -1
  36. package/dist/components/exam/Hints.d.ts.map +1 -1
  37. package/dist/components/exam/Hints.js +2 -2
  38. package/dist/components/exam/Hints.js.map +1 -1
  39. package/dist/components/exam/QuestionInstruction.d.ts.map +1 -1
  40. package/dist/components/exam/QuestionInstruction.js +3 -1
  41. package/dist/components/exam/QuestionInstruction.js.map +1 -1
  42. package/dist/components/exam/QuestionTitle.d.ts.map +1 -1
  43. package/dist/components/exam/QuestionTitle.js +4 -2
  44. package/dist/components/exam/QuestionTitle.js.map +1 -1
  45. package/dist/components/exam/RichTextAnswer.d.ts +5 -2
  46. package/dist/components/exam/RichTextAnswer.d.ts.map +1 -1
  47. package/dist/components/exam/RichTextAnswer.js +2 -2
  48. package/dist/components/exam/RichTextAnswer.js.map +1 -1
  49. package/dist/components/exam/Section.d.ts.map +1 -1
  50. package/dist/components/exam/Section.js +11 -1
  51. package/dist/components/exam/Section.js.map +1 -1
  52. package/dist/components/exam/SectionTitle.js +3 -3
  53. package/dist/components/exam/SectionTitle.js.map +1 -1
  54. package/dist/components/exam/TextAnswer.d.ts.map +1 -1
  55. package/dist/components/exam/TextAnswer.js +13 -3
  56. package/dist/components/exam/TextAnswer.js.map +1 -1
  57. package/dist/components/exam/internal/ErrorIndicator.d.ts.map +1 -1
  58. package/dist/components/exam/internal/ErrorIndicator.js +29 -13
  59. package/dist/components/exam/internal/ErrorIndicator.js.map +1 -1
  60. package/dist/components/exam/internal/TextAnswerInput.d.ts +8 -4
  61. package/dist/components/exam/internal/TextAnswerInput.d.ts.map +1 -1
  62. package/dist/components/exam/internal/TextAnswerInput.js +23 -14
  63. package/dist/components/exam/internal/TextAnswerInput.js.map +1 -1
  64. package/dist/components/grading-instructions/AutogradedAnswer.d.ts.map +1 -1
  65. package/dist/components/grading-instructions/AutogradedAnswer.js +3 -0
  66. package/dist/components/grading-instructions/AutogradedAnswer.js.map +1 -1
  67. package/dist/components/grading-instructions/GradingInstructions.d.ts.map +1 -1
  68. package/dist/components/grading-instructions/GradingInstructions.js +3 -2
  69. package/dist/components/grading-instructions/GradingInstructions.js.map +1 -1
  70. package/dist/components/grading-instructions/RecordingTitle.d.ts +5 -0
  71. package/dist/components/grading-instructions/RecordingTitle.d.ts.map +1 -0
  72. package/dist/components/grading-instructions/RecordingTitle.js +11 -0
  73. package/dist/components/grading-instructions/RecordingTitle.js.map +1 -0
  74. package/dist/components/grading-instructions/SectionTitle.js +2 -2
  75. package/dist/components/grading-instructions/SectionTitle.js.map +1 -1
  76. package/dist/components/results/QuestionTitle.js +1 -1
  77. package/dist/components/results/QuestionTitle.js.map +1 -1
  78. package/dist/components/results/TextAnswer.d.ts.map +1 -1
  79. package/dist/components/results/TextAnswer.js +3 -0
  80. package/dist/components/results/TextAnswer.js.map +1 -1
  81. package/dist/components/shared/AnswerLengthInfo.d.ts +7 -0
  82. package/dist/components/shared/AnswerLengthInfo.d.ts.map +1 -0
  83. package/dist/components/shared/AnswerLengthInfo.js +11 -0
  84. package/dist/components/shared/AnswerLengthInfo.js.map +1 -0
  85. package/dist/components/shared/ImageTitle.d.ts +5 -0
  86. package/dist/components/shared/ImageTitle.d.ts.map +1 -0
  87. package/dist/components/shared/ImageTitle.js +7 -0
  88. package/dist/components/shared/ImageTitle.js.map +1 -0
  89. package/dist/components/shared/TableOfContents.js +3 -3
  90. package/dist/components/shared/TableOfContents.js.map +1 -1
  91. package/dist/components/shared/internal/RestrictedAudioPlayer.d.ts.map +1 -1
  92. package/dist/components/shared/internal/RestrictedAudioPlayer.js +8 -5
  93. package/dist/components/shared/internal/RestrictedAudioPlayer.js.map +1 -1
  94. package/dist/i18n/GC.js +1 -1
  95. package/dist/i18n/GC.js.map +1 -1
  96. package/dist/i18n/fi-FI.d.ts +4 -3
  97. package/dist/i18n/fi-FI.d.ts.map +1 -1
  98. package/dist/i18n/fi-FI.js +4 -3
  99. package/dist/i18n/fi-FI.js.map +1 -1
  100. package/dist/i18n/index.d.ts +10 -3
  101. package/dist/i18n/index.d.ts.map +1 -1
  102. package/dist/i18n/sv-FI.d.ts.map +1 -1
  103. package/dist/i18n/sv-FI.js +4 -3
  104. package/dist/i18n/sv-FI.js.map +1 -1
  105. package/dist/ids.d.ts +2 -0
  106. package/dist/ids.d.ts.map +1 -1
  107. package/dist/ids.js +2 -0
  108. package/dist/ids.js.map +1 -1
  109. package/dist/main-bundle.js +16 -8
  110. package/dist/main.css +1 -1
  111. package/dist/parser/parseExamStructure.d.ts +3 -1
  112. package/dist/parser/parseExamStructure.d.ts.map +1 -1
  113. package/dist/parser/parseExamStructure.js +1 -0
  114. package/dist/parser/parseExamStructure.js.map +1 -1
  115. package/dist/store/answers/reducer.d.ts +3 -4
  116. package/dist/store/answers/reducer.d.ts.map +1 -1
  117. package/dist/store/answers/reducer.js +3 -3
  118. package/dist/store/answers/reducer.js.map +1 -1
  119. package/dist/store/index.js +1 -1
  120. package/dist/store/index.js.map +1 -1
  121. package/dist/validateAnswers.d.ts +8 -1
  122. package/dist/validateAnswers.d.ts.map +1 -1
  123. package/dist/validateAnswers.js +35 -2
  124. package/dist/validateAnswers.js.map +1 -1
  125. package/package.json +4 -4
  126. package/dist/components/AttachmentContext.d.ts +0 -14
  127. package/dist/components/AttachmentContext.d.ts.map +0 -1
  128. package/dist/components/AttachmentContext.js +0 -12
  129. package/dist/components/AttachmentContext.js.map +0 -1
  130. package/dist/components/AttachmentLink.d.ts +0 -5
  131. package/dist/components/AttachmentLink.d.ts.map +0 -1
  132. package/dist/components/AttachmentLink.js +0 -28
  133. package/dist/components/AttachmentLink.js.map +0 -1
  134. package/dist/components/AttachmentLinkAnchor.d.ts +0 -7
  135. package/dist/components/AttachmentLinkAnchor.d.ts.map +0 -1
  136. package/dist/components/AttachmentLinkAnchor.js +0 -4
  137. package/dist/components/AttachmentLinkAnchor.js.map +0 -1
  138. package/dist/components/AttachmentLinks.d.ts +0 -5
  139. package/dist/components/AttachmentLinks.d.ts.map +0 -1
  140. package/dist/components/AttachmentLinks.js +0 -62
  141. package/dist/components/AttachmentLinks.js.map +0 -1
  142. package/dist/components/Attachments.d.ts +0 -6
  143. package/dist/components/Attachments.d.ts.map +0 -1
  144. package/dist/components/Attachments.js +0 -55
  145. package/dist/components/Attachments.js.map +0 -1
  146. package/dist/components/AttachmentsAttachment.d.ts +0 -5
  147. package/dist/components/AttachmentsAttachment.d.ts.map +0 -1
  148. package/dist/components/AttachmentsAttachment.js +0 -8
  149. package/dist/components/AttachmentsAttachment.js.map +0 -1
  150. package/dist/components/AttachmentsAttachmentTitle.d.ts +0 -6
  151. package/dist/components/AttachmentsAttachmentTitle.d.ts.map +0 -1
  152. package/dist/components/AttachmentsAttachmentTitle.js +0 -12
  153. package/dist/components/AttachmentsAttachmentTitle.js.map +0 -1
  154. package/dist/components/AttachmentsExternalMaterial.d.ts +0 -9
  155. package/dist/components/AttachmentsExternalMaterial.d.ts.map +0 -1
  156. package/dist/components/AttachmentsExternalMaterial.js +0 -40
  157. package/dist/components/AttachmentsExternalMaterial.js.map +0 -1
  158. package/dist/components/AttachmentsQuestion.d.ts +0 -5
  159. package/dist/components/AttachmentsQuestion.d.ts.map +0 -1
  160. package/dist/components/AttachmentsQuestion.js +0 -17
  161. package/dist/components/AttachmentsQuestion.js.map +0 -1
  162. package/dist/components/AttachmentsQuestionTitle.d.ts +0 -6
  163. package/dist/components/AttachmentsQuestionTitle.d.ts.map +0 -1
  164. package/dist/components/AttachmentsQuestionTitle.js +0 -13
  165. package/dist/components/AttachmentsQuestionTitle.js.map +0 -1
  166. package/dist/components/Audio.d.ts +0 -6
  167. package/dist/components/Audio.d.ts.map +0 -1
  168. package/dist/components/Audio.js +0 -31
  169. package/dist/components/Audio.js.map +0 -1
  170. package/dist/components/AudioGroup.d.ts +0 -6
  171. package/dist/components/AudioGroup.d.ts.map +0 -1
  172. package/dist/components/AudioGroup.js +0 -9
  173. package/dist/components/AudioGroup.js.map +0 -1
  174. package/dist/components/AudioPlaybackError.d.ts +0 -7
  175. package/dist/components/AudioPlaybackError.d.ts.map +0 -1
  176. package/dist/components/AudioPlaybackError.js +0 -13
  177. package/dist/components/AudioPlaybackError.js.map +0 -1
  178. package/dist/components/AudioTest.d.ts +0 -6
  179. package/dist/components/AudioTest.d.ts.map +0 -1
  180. package/dist/components/AudioTest.js +0 -29
  181. package/dist/components/AudioTest.js.map +0 -1
  182. package/dist/components/ChoiceAnswer.d.ts +0 -12
  183. package/dist/components/ChoiceAnswer.d.ts.map +0 -1
  184. package/dist/components/ChoiceAnswer.js +0 -62
  185. package/dist/components/ChoiceAnswer.js.map +0 -1
  186. package/dist/components/CommonExamContext.d.ts +0 -19
  187. package/dist/components/CommonExamContext.d.ts.map +0 -1
  188. package/dist/components/CommonExamContext.js +0 -25
  189. package/dist/components/CommonExamContext.js.map +0 -1
  190. package/dist/components/DropdownAnswer.d.ts +0 -12
  191. package/dist/components/DropdownAnswer.d.ts.map +0 -1
  192. package/dist/components/DropdownAnswer.js +0 -100
  193. package/dist/components/DropdownAnswer.js.map +0 -1
  194. package/dist/components/ErrorIndicator.d.ts +0 -4
  195. package/dist/components/ErrorIndicator.d.ts.map +0 -1
  196. package/dist/components/ErrorIndicator.js +0 -43
  197. package/dist/components/ErrorIndicator.js.map +0 -1
  198. package/dist/components/Exam.d.ts +0 -32
  199. package/dist/components/Exam.d.ts.map +0 -1
  200. package/dist/components/Exam.js +0 -103
  201. package/dist/components/Exam.js.map +0 -1
  202. package/dist/components/ExamAttachment.d.ts +0 -5
  203. package/dist/components/ExamAttachment.d.ts.map +0 -1
  204. package/dist/components/ExamAttachment.js +0 -8
  205. package/dist/components/ExamAttachment.js.map +0 -1
  206. package/dist/components/ExamContext.d.ts +0 -10
  207. package/dist/components/ExamContext.d.ts.map +0 -1
  208. package/dist/components/ExamContext.js +0 -11
  209. package/dist/components/ExamContext.js.map +0 -1
  210. package/dist/components/ExamFooter.d.ts +0 -6
  211. package/dist/components/ExamFooter.d.ts.map +0 -1
  212. package/dist/components/ExamFooter.js +0 -7
  213. package/dist/components/ExamFooter.js.map +0 -1
  214. package/dist/components/ExamInstruction.d.ts +0 -6
  215. package/dist/components/ExamInstruction.d.ts.map +0 -1
  216. package/dist/components/ExamInstruction.js +0 -6
  217. package/dist/components/ExamInstruction.js.map +0 -1
  218. package/dist/components/ExamQuestion.d.ts +0 -5
  219. package/dist/components/ExamQuestion.d.ts.map +0 -1
  220. package/dist/components/ExamQuestion.js +0 -16
  221. package/dist/components/ExamQuestion.js.map +0 -1
  222. package/dist/components/ExamQuestionInstruction.d.ts +0 -6
  223. package/dist/components/ExamQuestionInstruction.d.ts.map +0 -1
  224. package/dist/components/ExamQuestionInstruction.js +0 -6
  225. package/dist/components/ExamQuestionInstruction.js.map +0 -1
  226. package/dist/components/ExamQuestionTitle.d.ts +0 -5
  227. package/dist/components/ExamQuestionTitle.d.ts.map +0 -1
  228. package/dist/components/ExamQuestionTitle.js +0 -24
  229. package/dist/components/ExamQuestionTitle.js.map +0 -1
  230. package/dist/components/ExamSection.d.ts +0 -5
  231. package/dist/components/ExamSection.d.ts.map +0 -1
  232. package/dist/components/ExamSection.js +0 -31
  233. package/dist/components/ExamSection.js.map +0 -1
  234. package/dist/components/ExamSectionTitle.d.ts +0 -6
  235. package/dist/components/ExamSectionTitle.d.ts.map +0 -1
  236. package/dist/components/ExamSectionTitle.js +0 -22
  237. package/dist/components/ExamSectionTitle.js.map +0 -1
  238. package/dist/components/ExternalMaterialList.d.ts +0 -10
  239. package/dist/components/ExternalMaterialList.d.ts.map +0 -1
  240. package/dist/components/ExternalMaterialList.js +0 -33
  241. package/dist/components/ExternalMaterialList.js.map +0 -1
  242. package/dist/components/File.d.ts +0 -6
  243. package/dist/components/File.d.ts.map +0 -1
  244. package/dist/components/File.js +0 -15
  245. package/dist/components/File.js.map +0 -1
  246. package/dist/components/Formula.d.ts +0 -6
  247. package/dist/components/Formula.d.ts.map +0 -1
  248. package/dist/components/Formula.js +0 -13
  249. package/dist/components/Formula.js.map +0 -1
  250. package/dist/components/Hints.d.ts +0 -5
  251. package/dist/components/Hints.d.ts.map +0 -1
  252. package/dist/components/Hints.js +0 -30
  253. package/dist/components/Hints.js.map +0 -1
  254. package/dist/components/Image.d.ts +0 -6
  255. package/dist/components/Image.d.ts.map +0 -1
  256. package/dist/components/Image.js +0 -28
  257. package/dist/components/Image.js.map +0 -1
  258. package/dist/components/ImageOverlay.d.ts +0 -6
  259. package/dist/components/ImageOverlay.d.ts.map +0 -1
  260. package/dist/components/ImageOverlay.js +0 -44
  261. package/dist/components/ImageOverlay.js.map +0 -1
  262. package/dist/components/ProgressBar.d.ts +0 -7
  263. package/dist/components/ProgressBar.d.ts.map +0 -1
  264. package/dist/components/ProgressBar.js +0 -19
  265. package/dist/components/ProgressBar.js.map +0 -1
  266. package/dist/components/QuestionContext.d.ts +0 -14
  267. package/dist/components/QuestionContext.d.ts.map +0 -1
  268. package/dist/components/QuestionContext.js +0 -20
  269. package/dist/components/QuestionContext.js.map +0 -1
  270. package/dist/components/Reference.d.ts +0 -6
  271. package/dist/components/Reference.d.ts.map +0 -1
  272. package/dist/components/Reference.js +0 -71
  273. package/dist/components/Reference.js.map +0 -1
  274. package/dist/components/References.d.ts +0 -6
  275. package/dist/components/References.d.ts.map +0 -1
  276. package/dist/components/References.js +0 -25
  277. package/dist/components/References.js.map +0 -1
  278. package/dist/components/ResponsiveMediaContainer.d.ts +0 -18
  279. package/dist/components/ResponsiveMediaContainer.d.ts.map +0 -1
  280. package/dist/components/ResponsiveMediaContainer.js +0 -21
  281. package/dist/components/ResponsiveMediaContainer.js.map +0 -1
  282. package/dist/components/RestrictedAudioPlayer.d.ts +0 -12
  283. package/dist/components/RestrictedAudioPlayer.d.ts.map +0 -1
  284. package/dist/components/RestrictedAudioPlayer.js +0 -32
  285. package/dist/components/RestrictedAudioPlayer.js.map +0 -1
  286. package/dist/components/RichTextAnswer.d.ts +0 -33
  287. package/dist/components/RichTextAnswer.d.ts.map +0 -1
  288. package/dist/components/RichTextAnswer.js +0 -61
  289. package/dist/components/RichTextAnswer.js.map +0 -1
  290. package/dist/components/SaveIndicator.d.ts +0 -5
  291. package/dist/components/SaveIndicator.d.ts.map +0 -1
  292. package/dist/components/SaveIndicator.js +0 -16
  293. package/dist/components/SaveIndicator.js.map +0 -1
  294. package/dist/components/Score.d.ts +0 -8
  295. package/dist/components/Score.d.ts.map +0 -1
  296. package/dist/components/Score.js +0 -13
  297. package/dist/components/Score.js.map +0 -1
  298. package/dist/components/Section.d.ts +0 -4
  299. package/dist/components/Section.d.ts.map +0 -1
  300. package/dist/components/Section.js +0 -8
  301. package/dist/components/Section.js.map +0 -1
  302. package/dist/components/SectionContext.d.ts +0 -13
  303. package/dist/components/SectionContext.d.ts.map +0 -1
  304. package/dist/components/SectionContext.js +0 -21
  305. package/dist/components/SectionContext.js.map +0 -1
  306. package/dist/components/SectionInstruction.d.ts +0 -6
  307. package/dist/components/SectionInstruction.d.ts.map +0 -1
  308. package/dist/components/SectionInstruction.js +0 -6
  309. package/dist/components/SectionInstruction.js.map +0 -1
  310. package/dist/components/TableOfContents.d.ts +0 -13
  311. package/dist/components/TableOfContents.d.ts.map +0 -1
  312. package/dist/components/TableOfContents.js +0 -66
  313. package/dist/components/TableOfContents.js.map +0 -1
  314. package/dist/components/TextAnswer.d.ts +0 -6
  315. package/dist/components/TextAnswer.d.ts.map +0 -1
  316. package/dist/components/TextAnswer.js +0 -17
  317. package/dist/components/TextAnswer.js.map +0 -1
  318. package/dist/components/TextAnswerInput.d.ts +0 -36
  319. package/dist/components/TextAnswerInput.d.ts.map +0 -1
  320. package/dist/components/TextAnswerInput.js +0 -145
  321. package/dist/components/TextAnswerInput.js.map +0 -1
  322. package/dist/components/Video.d.ts +0 -6
  323. package/dist/components/Video.d.ts.map +0 -1
  324. package/dist/components/Video.js +0 -15
  325. package/dist/components/Video.js.map +0 -1
  326. package/dist/components/exam/TableOfContents.d.ts +0 -13
  327. package/dist/components/exam/TableOfContents.d.ts.map +0 -1
  328. package/dist/components/exam/TableOfContents.js +0 -66
  329. package/dist/components/exam/TableOfContents.js.map +0 -1
  330. package/dist/components/grading-instruction/AnswerGradingInstruction.d.ts +0 -5
  331. package/dist/components/grading-instruction/AnswerGradingInstruction.d.ts.map +0 -1
  332. package/dist/components/grading-instruction/AnswerGradingInstruction.js +0 -6
  333. package/dist/components/grading-instruction/AnswerGradingInstruction.js.map +0 -1
  334. package/dist/components/grading-instruction/Audio.d.ts +0 -5
  335. package/dist/components/grading-instruction/Audio.d.ts.map +0 -1
  336. package/dist/components/grading-instruction/Audio.js +0 -6
  337. package/dist/components/grading-instruction/Audio.js.map +0 -1
  338. package/dist/components/grading-instruction/AudioTitle.d.ts +0 -5
  339. package/dist/components/grading-instruction/AudioTitle.d.ts.map +0 -1
  340. package/dist/components/grading-instruction/AudioTitle.js +0 -10
  341. package/dist/components/grading-instruction/AudioTitle.js.map +0 -1
  342. package/dist/components/grading-instruction/AutogradedAnswer.d.ts +0 -5
  343. package/dist/components/grading-instruction/AutogradedAnswer.d.ts.map +0 -1
  344. package/dist/components/grading-instruction/AutogradedAnswer.js +0 -31
  345. package/dist/components/grading-instruction/AutogradedAnswer.js.map +0 -1
  346. package/dist/components/grading-instruction/AutogradedAnswerOption.d.ts +0 -5
  347. package/dist/components/grading-instruction/AutogradedAnswerOption.d.ts.map +0 -1
  348. package/dist/components/grading-instruction/AutogradedAnswerOption.js +0 -14
  349. package/dist/components/grading-instruction/AutogradedAnswerOption.js.map +0 -1
  350. package/dist/components/grading-instruction/ExamGradingInstruction.d.ts +0 -5
  351. package/dist/components/grading-instruction/ExamGradingInstruction.d.ts.map +0 -1
  352. package/dist/components/grading-instruction/ExamGradingInstruction.js +0 -6
  353. package/dist/components/grading-instruction/ExamGradingInstruction.js.map +0 -1
  354. package/dist/components/grading-instruction/GradingInstruction.d.ts +0 -5
  355. package/dist/components/grading-instruction/GradingInstruction.d.ts.map +0 -1
  356. package/dist/components/grading-instruction/GradingInstruction.js +0 -85
  357. package/dist/components/grading-instruction/GradingInstruction.js.map +0 -1
  358. package/dist/components/grading-instruction/Question.d.ts +0 -5
  359. package/dist/components/grading-instruction/Question.d.ts.map +0 -1
  360. package/dist/components/grading-instruction/Question.js +0 -12
  361. package/dist/components/grading-instruction/Question.js.map +0 -1
  362. package/dist/components/grading-instruction/QuestionTitle.d.ts +0 -5
  363. package/dist/components/grading-instruction/QuestionTitle.d.ts.map +0 -1
  364. package/dist/components/grading-instruction/QuestionTitle.js +0 -19
  365. package/dist/components/grading-instruction/QuestionTitle.js.map +0 -1
  366. package/dist/components/grading-instruction/Section.d.ts +0 -5
  367. package/dist/components/grading-instruction/Section.d.ts.map +0 -1
  368. package/dist/components/grading-instruction/Section.js +0 -10
  369. package/dist/components/grading-instruction/Section.js.map +0 -1
  370. package/dist/components/grading-instruction/SectionTitle.d.ts +0 -5
  371. package/dist/components/grading-instruction/SectionTitle.d.ts.map +0 -1
  372. package/dist/components/grading-instruction/SectionTitle.js +0 -16
  373. package/dist/components/grading-instruction/SectionTitle.js.map +0 -1
  374. package/dist/components/results/AnnotationList.d.ts +0 -5
  375. package/dist/components/results/AnnotationList.d.ts.map +0 -1
  376. package/dist/components/results/AnnotationList.js +0 -43
  377. package/dist/components/results/AnnotationList.js.map +0 -1
  378. package/dist/components/results/GradingStructure.d.ts +0 -5
  379. package/dist/components/results/GradingStructure.d.ts.map +0 -1
  380. package/dist/components/results/GradingStructure.js +0 -21
  381. package/dist/components/results/GradingStructure.js.map +0 -1
  382. package/dist/components/results/Hvp.d.ts +0 -15
  383. package/dist/components/results/Hvp.d.ts.map +0 -1
  384. package/dist/components/results/Hvp.js +0 -73
  385. package/dist/components/results/Hvp.js.map +0 -1
  386. package/dist/components/results/HvpTextAnswer.d.ts +0 -6
  387. package/dist/components/results/HvpTextAnswer.d.ts.map +0 -1
  388. package/dist/components/results/HvpTextAnswer.js +0 -51
  389. package/dist/components/results/HvpTextAnswer.js.map +0 -1
  390. package/dist/components/results/ResultsChoiceAnswer.d.ts +0 -6
  391. package/dist/components/results/ResultsChoiceAnswer.d.ts.map +0 -1
  392. package/dist/components/results/ResultsChoiceAnswer.js +0 -57
  393. package/dist/components/results/ResultsChoiceAnswer.js.map +0 -1
  394. package/dist/components/results/ResultsContext.d.ts +0 -18
  395. package/dist/components/results/ResultsContext.d.ts.map +0 -1
  396. package/dist/components/results/ResultsContext.js +0 -68
  397. package/dist/components/results/ResultsContext.js.map +0 -1
  398. package/dist/components/results/ResultsDropdownAnswer.d.ts +0 -6
  399. package/dist/components/results/ResultsDropdownAnswer.d.ts.map +0 -1
  400. package/dist/components/results/ResultsDropdownAnswer.js +0 -43
  401. package/dist/components/results/ResultsDropdownAnswer.js.map +0 -1
  402. package/dist/components/results/ResultsExamQuestion.d.ts +0 -5
  403. package/dist/components/results/ResultsExamQuestion.d.ts.map +0 -1
  404. package/dist/components/results/ResultsExamQuestion.js +0 -23
  405. package/dist/components/results/ResultsExamQuestion.js.map +0 -1
  406. package/dist/components/results/ResultsExamQuestionAutoScore.d.ts +0 -10
  407. package/dist/components/results/ResultsExamQuestionAutoScore.d.ts.map +0 -1
  408. package/dist/components/results/ResultsExamQuestionAutoScore.js +0 -17
  409. package/dist/components/results/ResultsExamQuestionAutoScore.js.map +0 -1
  410. package/dist/components/results/ResultsExamQuestionManualScore.d.ts +0 -12
  411. package/dist/components/results/ResultsExamQuestionManualScore.d.ts.map +0 -1
  412. package/dist/components/results/ResultsExamQuestionManualScore.js +0 -61
  413. package/dist/components/results/ResultsExamQuestionManualScore.js.map +0 -1
  414. package/dist/components/results/ResultsExamQuestionScoresContainer.d.ts +0 -10
  415. package/dist/components/results/ResultsExamQuestionScoresContainer.d.ts.map +0 -1
  416. package/dist/components/results/ResultsExamQuestionScoresContainer.js +0 -12
  417. package/dist/components/results/ResultsExamQuestionScoresContainer.js.map +0 -1
  418. package/dist/components/results/ResultsExamQuestionTitle.d.ts +0 -6
  419. package/dist/components/results/ResultsExamQuestionTitle.d.ts.map +0 -1
  420. package/dist/components/results/ResultsExamQuestionTitle.js +0 -21
  421. package/dist/components/results/ResultsExamQuestionTitle.js.map +0 -1
  422. package/dist/components/results/ResultsExamSection.d.ts +0 -5
  423. package/dist/components/results/ResultsExamSection.d.ts.map +0 -1
  424. package/dist/components/results/ResultsExamSection.js +0 -18
  425. package/dist/components/results/ResultsExamSection.js.map +0 -1
  426. package/dist/components/results/ResultsMultiLineAnswer.d.ts +0 -8
  427. package/dist/components/results/ResultsMultiLineAnswer.d.ts.map +0 -1
  428. package/dist/components/results/ResultsMultiLineAnswer.js +0 -19
  429. package/dist/components/results/ResultsMultiLineAnswer.js.map +0 -1
  430. package/dist/components/results/ResultsScoredTextAnswer.d.ts +0 -6
  431. package/dist/components/results/ResultsScoredTextAnswer.d.ts.map +0 -1
  432. package/dist/components/results/ResultsScoredTextAnswer.js +0 -22
  433. package/dist/components/results/ResultsScoredTextAnswer.js.map +0 -1
  434. package/dist/components/results/ResultsSingleLineAnswer.d.ts +0 -12
  435. package/dist/components/results/ResultsSingleLineAnswer.d.ts.map +0 -1
  436. package/dist/components/results/ResultsSingleLineAnswer.js +0 -23
  437. package/dist/components/results/ResultsSingleLineAnswer.js.map +0 -1
  438. package/dist/components/results/ResultsTextAnswer.d.ts +0 -6
  439. package/dist/components/results/ResultsTextAnswer.d.ts.map +0 -1
  440. package/dist/components/results/ResultsTextAnswer.js +0 -50
  441. package/dist/components/results/ResultsTextAnswer.js.map +0 -1
  442. package/dist/components/results/helpers.d.ts +0 -9
  443. package/dist/components/results/helpers.d.ts.map +0 -1
  444. package/dist/components/results/helpers.js +0 -11
  445. package/dist/components/results/helpers.js.map +0 -1
  446. package/dist/components/withContext.d.ts +0 -3
  447. package/dist/components/withContext.d.ts.map +0 -1
  448. package/dist/components/withContext.js +0 -12
  449. package/dist/components/withContext.js.map +0 -1
@@ -36,8 +36,8 @@ beforeAll(async () => {
36
36
  sections: [
37
37
  {
38
38
  questions: [
39
- (0, exam_engine_generator_1.question)([(0, exam_engine_generator_1.textAnswer)()]),
40
- (0, exam_engine_generator_1.question)({ questions: [(0, exam_engine_generator_1.question)([(0, exam_engine_generator_1.textAnswer)()]), (0, exam_engine_generator_1.question)([(0, exam_engine_generator_1.textAnswer)()])] }),
39
+ (0, exam_engine_generator_1.question)([(0, exam_engine_generator_1.textAnswer)({ maxLength: 3 })]),
40
+ (0, exam_engine_generator_1.question)({ questions: [(0, exam_engine_generator_1.question)([(0, exam_engine_generator_1.textAnswer)({ maxLength: 3 })]), (0, exam_engine_generator_1.question)([(0, exam_engine_generator_1.textAnswer)()])] }),
41
41
  ],
42
42
  },
43
43
  {
@@ -55,7 +55,35 @@ beforeAll(async () => {
55
55
  examStructure = (0, parseExamStructure_1.parseExamStructure)((0, parseExam_1.default)(masteringResult.xml));
56
56
  gradingStructure = masteringResult.gradingStructure;
57
57
  });
58
- describe('validateAnswers.ts', () => {
58
+ describe('Answer length validation', () => {
59
+ it('returns an error if answer is too long', () => {
60
+ expect((0, validateAnswers_1.validateAnswers)(examStructure, answerQuestionsWithText('too long', '1'))).toEqual([
61
+ {
62
+ displayNumber: '1',
63
+ type: 'AnswerTooLong',
64
+ characterCount: 8,
65
+ },
66
+ ]);
67
+ });
68
+ it('returns multiple errors if multiple answers are too long', () => {
69
+ expect((0, validateAnswers_1.validateAnswers)(examStructure, answerQuestionsWithText('too long', '1', '2.1'))).toEqual([
70
+ {
71
+ displayNumber: '1',
72
+ type: 'AnswerTooLong',
73
+ characterCount: 8,
74
+ },
75
+ {
76
+ displayNumber: '2.1',
77
+ type: 'AnswerTooLong',
78
+ characterCount: 8,
79
+ },
80
+ ]);
81
+ });
82
+ it('does not return errors if answer is short enough', () => {
83
+ expect((0, validateAnswers_1.validateAnswers)(examStructure, answerQuestionsWithText('ok', '1'))).toEqual([]);
84
+ });
85
+ });
86
+ describe('Extra answers validation', () => {
59
87
  it('returns an empty array if answer combinations are valid, nonempty if invalid', () => {
60
88
  const allAnswerCombinations = subsets(['1', '2.1', '2.2', '3', '4.1', '4.2']);
61
89
  const validAnswerCombinations = [
@@ -103,7 +131,8 @@ describe('validateAnswers.ts', () => {
103
131
  displayNumber: '4',
104
132
  maxAnswers: 1,
105
133
  minAnswers: undefined,
106
- type: 'question',
134
+ elementType: 'question',
135
+ type: 'ExtraAnswer',
107
136
  },
108
137
  ]);
109
138
  });
@@ -114,7 +143,8 @@ describe('validateAnswers.ts', () => {
114
143
  displayNumber: '2',
115
144
  maxAnswers: 1,
116
145
  minAnswers: 0,
117
- type: 'section',
146
+ elementType: 'section',
147
+ type: 'ExtraAnswer',
118
148
  },
119
149
  ]);
120
150
  });
@@ -125,7 +155,8 @@ describe('validateAnswers.ts', () => {
125
155
  displayNumber: '',
126
156
  maxAnswers: 2,
127
157
  minAnswers: undefined,
128
- type: 'exam',
158
+ elementType: 'exam',
159
+ type: 'ExtraAnswer',
129
160
  },
130
161
  ]);
131
162
  });
@@ -136,14 +167,16 @@ describe('validateAnswers.ts', () => {
136
167
  displayNumber: '',
137
168
  maxAnswers: 2,
138
169
  minAnswers: undefined,
139
- type: 'exam',
170
+ elementType: 'exam',
171
+ type: 'ExtraAnswer',
140
172
  },
141
173
  {
142
174
  childQuestions: ['3', '4'],
143
175
  displayNumber: '2',
144
176
  maxAnswers: 1,
145
177
  minAnswers: 0,
146
- type: 'section',
178
+ elementType: 'section',
179
+ type: 'ExtraAnswer',
147
180
  },
148
181
  ]);
149
182
  });
@@ -154,32 +187,38 @@ describe('validateAnswers.ts', () => {
154
187
  displayNumber: '',
155
188
  maxAnswers: 2,
156
189
  minAnswers: undefined,
157
- type: 'exam',
190
+ elementType: 'exam',
191
+ type: 'ExtraAnswer',
158
192
  },
159
193
  {
160
194
  childQuestions: ['3', '4'],
161
195
  displayNumber: '2',
162
196
  maxAnswers: 1,
163
197
  minAnswers: 0,
164
- type: 'section',
198
+ elementType: 'section',
199
+ type: 'ExtraAnswer',
165
200
  },
166
201
  {
167
202
  childQuestions: ['4.1', '4.2'],
168
203
  displayNumber: '4',
169
204
  maxAnswers: 1,
170
205
  minAnswers: undefined,
171
- type: 'question',
206
+ elementType: 'question',
207
+ type: 'ExtraAnswer',
172
208
  },
173
209
  ]);
174
210
  });
175
211
  });
176
212
  const answerQuestions = (...displayNumbers) => {
213
+ return answerQuestionsWithText('foo', ...displayNumbers);
214
+ };
215
+ const answerQuestionsWithText = (text, ...displayNumbers) => {
177
216
  const findQuestionId = (displayNumber) => gradingStructure.questions.find((q) => q.displayNumber === displayNumber).id;
178
217
  const createAnswer = (questionId) => ({
179
218
  questionId,
180
219
  type: 'text',
181
- value: 'foo',
182
- characterCount: 3,
220
+ value: text,
221
+ characterCount: text.length,
183
222
  });
184
223
  const questionIds = displayNumbers.map(findQuestionId);
185
224
  const answers = questionIds.map(createAnswer);
@@ -1 +1 @@
1
- {"version":3,"file":"validateAnswers.test.js","sourceRoot":"","sources":["../../__tests__/validateAnswers.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateAnswers.test.js","sourceRoot":"","sources":["../../__tests__/validateAnswers.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAAwD;AACxD,wEAA+C;AAC/C,yEAAkF;AAClF,yEAAkF;AAClF,yEAA0D;AAE1D,0CAA2B;AAE3B,IAAI,aAA0B,CAAA;AAC9B,IAAI,gBAAkC,CAAA;AAEtC,SAAS,CAAC,KAAK,IAAI,EAAE;IACnB,MAAM,IAAI,GAAG,IAAA,oCAAY,EAAC;QACxB,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE;YACR;gBACE,SAAS,EAAE;oBACT,IAAA,gCAAQ,EAAC,CAAC,IAAA,kCAAU,EAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACxC,IAAA,gCAAQ,EAAC,EAAE,SAAS,EAAE,CAAC,IAAA,gCAAQ,EAAC,CAAC,IAAA,kCAAU,EAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAA,gCAAQ,EAAC,CAAC,IAAA,kCAAU,GAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC9F;aACF;YACD;gBACE,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE;oBACT,IAAA,gCAAQ,EAAC,CAAC,IAAA,kCAAU,GAAE,CAAC,CAAC;oBACxB,IAAA,gCAAQ,EAAC,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,IAAA,gCAAQ,EAAC,CAAC,IAAA,kCAAU,GAAE,CAAC,CAAC,EAAE,IAAA,gCAAQ,EAAC,CAAC,IAAA,kCAAU,GAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7F;aACF;SACF;KACF,CAAC,CAAA;IACF,MAAM,CAAC,eAAe,CAAC,GAAG,MAAM,IAAA,kCAAU,EACxC,IAAI,EACJ,GAAG,EAAE,CAAC,EAAE,EACR,GAAG,EAAE;QACH,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1B,CAAC,CACF,CAAA;IACD,aAAa,GAAG,IAAA,uCAAkB,EAAC,IAAA,mBAAS,EAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IAClE,gBAAgB,GAAG,eAAe,CAAC,gBAAgB,CAAA;AACrD,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,uBAAuB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACvF;gBACE,aAAa,EAAE,GAAG;gBAClB,IAAI,EAAE,eAAe;gBACrB,cAAc,EAAE,CAAC;aAClB;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,uBAAuB,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC9F;gBACE,aAAa,EAAE,GAAG;gBAClB,IAAI,EAAE,eAAe;gBACrB,cAAc,EAAE,CAAC;aAClB;YACD;gBACE,aAAa,EAAE,KAAK;gBACpB,IAAI,EAAE,eAAe;gBACrB,cAAc,EAAE,CAAC;aAClB;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,uBAAuB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACxF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,qBAAqB,GAAG,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;QAC7E,MAAM,uBAAuB,GAAG;YAC9B,aAAa;YACb,EAAE;YACF,0BAA0B;YAC1B,CAAC,GAAG,CAAC;YACL,CAAC,KAAK,CAAC;YACP,CAAC,KAAK,CAAC;YACP,CAAC,KAAK,EAAE,KAAK,CAAC;YACd,0BAA0B;YAC1B,CAAC,GAAG,CAAC;YACL,CAAC,KAAK,CAAC;YACP,CAAC,KAAK,CAAC;YACP,2BAA2B;YAC3B,CAAC,GAAG,EAAE,KAAK,CAAC;YACZ,CAAC,GAAG,EAAE,KAAK,CAAC;YACZ,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC;YACnB,4BAA4B;YAC5B,CAAC,GAAG,EAAE,GAAG,CAAC;YACV,CAAC,KAAK,EAAE,GAAG,CAAC;YACZ,CAAC,KAAK,EAAE,GAAG,CAAC;YACZ,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;YACnB,CAAC,GAAG,EAAE,KAAK,CAAC;YACZ,CAAC,KAAK,EAAE,KAAK,CAAC;YACd,CAAC,KAAK,EAAE,KAAK,CAAC;YACd,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;YACrB,CAAC,GAAG,EAAE,KAAK,CAAC;YACZ,CAAC,KAAK,EAAE,KAAK,CAAC;YACd,CAAC,KAAK,EAAE,KAAK,CAAC;YACd,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;SACtB,CAAA;QACD,MAAM,yBAAyB,GAAG,CAAC,CAAC,cAAc,CAAC,qBAAqB,EAAE,uBAAuB,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;QAE7G,KAAK,MAAM,SAAS,IAAI,uBAAuB,EAAE;YAC/C,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;SAClF;QAED,KAAK,MAAM,SAAS,IAAI,yBAAyB,EAAE;YACjD,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;SACtF;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC5E;gBACE,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;gBAC9B,aAAa,EAAE,GAAG;gBAClB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,aAAa;aACpB;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1E;gBACE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;gBAC1B,aAAa,EAAE,GAAG;gBAClB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,aAAa;aACpB;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/E;gBACE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;gBAC1B,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,aAAa;aACpB;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/E;gBACE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;gBAC1B,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,aAAa;aACpB;YACD;gBACE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;gBAC1B,aAAa,EAAE,GAAG;gBAClB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,aAAa;aACpB;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;QAClF,MAAM,CAAC,IAAA,iCAAe,EAAC,aAAa,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACtF;gBACE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;gBAC1B,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,aAAa;aACpB;YACD;gBACE,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;gBAC1B,aAAa,EAAE,GAAG;gBAClB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,aAAa;aACpB;YACD;gBACE,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;gBAC9B,aAAa,EAAE,GAAG;gBAClB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,aAAa;aACpB;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,MAAM,eAAe,GAAG,CAAC,GAAG,cAAwB,EAA8B,EAAE;IAClF,OAAO,uBAAuB,CAAC,KAAK,EAAE,GAAG,cAAc,CAAC,CAAA;AAC1D,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,CAAC,IAAY,EAAE,GAAG,cAAwB,EAA8B,EAAE;IACxG,MAAM,cAAc,GAAG,CAAC,aAAqB,EAAE,EAAE,CAC/C,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,aAAa,CAAE,CAAC,EAAE,CAAA;IAE/E,MAAM,YAAY,GAAG,CAAC,UAAkB,EAAc,EAAE,CAAC,CAAC;QACxD,UAAU;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,IAAI;QACX,cAAc,EAAE,IAAI,CAAC,MAAM;KAC5B,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAE7C,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;AAC1C,CAAC,CAAA;AAED,MAAM,OAAO,GAAG,CAAI,KAAU,EAAS,EAAE,CACvC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAU,CAAC,CAAA"}
@@ -1,16 +1,18 @@
1
1
  import React from 'react';
2
- import { ExamAnswer } from '..';
2
+ import { TextAnswer, RichTextAnswer } from '..';
3
3
  import * as actions from '../store/answers/actions';
4
- import { AnswerError } from './exam/RichTextAnswer';
4
+ import { AnswerTooLong } from '../validateAnswers';
5
+ import { ScreenshotError } from './exam/RichTextAnswer';
5
6
  interface AnswerToolbarProps {
6
- answer?: ExamAnswer;
7
- error?: AnswerError | null;
7
+ answer?: TextAnswer | RichTextAnswer;
8
+ screenshotError?: ScreenshotError;
9
+ validationError?: AnswerTooLong;
8
10
  element: Element;
9
11
  selectAnswerVersion?: typeof actions.selectAnswerVersion;
10
12
  showAnswerHistory?: boolean;
11
13
  supportsAnswerHistory?: boolean;
12
14
  }
13
- declare function AnswerToolbar({ answer, element, error, selectAnswerVersion, showAnswerHistory, supportsAnswerHistory, }: AnswerToolbarProps): JSX.Element;
15
+ declare function AnswerToolbar({ answer, element, screenshotError, validationError, selectAnswerVersion, showAnswerHistory, supportsAnswerHistory, }: AnswerToolbarProps): JSX.Element;
14
16
  declare const _default: React.MemoExoticComponent<typeof AnswerToolbar>;
15
17
  export default _default;
16
18
  //# sourceMappingURL=AnswerToolbar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AnswerToolbar.d.ts","sourceRoot":"","sources":["../../src/components/AnswerToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAG/B,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD,UAAU,kBAAkB;IAC1B,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,mBAAmB,CAAC,EAAE,OAAO,OAAO,CAAC,mBAAmB,CAAA;IACxD,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC;AAED,iBAAS,aAAa,CAAC,EACrB,MAAM,EACN,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,iBAAyB,EACzB,qBAA6B,GAC9B,EAAE,kBAAkB,eAwCpB;;AAED,wBAAwC"}
1
+ {"version":3,"file":"AnswerToolbar.d.ts","sourceRoot":"","sources":["../../src/components/AnswerToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,IAAI,CAAA;AAG/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,UAAU,kBAAkB;IAC1B,MAAM,CAAC,EAAE,UAAU,GAAG,cAAc,CAAA;IACpC,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,eAAe,CAAC,EAAE,aAAa,CAAA;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,mBAAmB,CAAC,EAAE,OAAO,OAAO,CAAC,mBAAmB,CAAA;IACxD,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC;AAED,iBAAS,aAAa,CAAC,EACrB,MAAM,EACN,OAAO,EACP,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,iBAAyB,EACzB,qBAA6B,GAC9B,EAAE,kBAAkB,eAoDpB;;AAED,wBAAwC"}
@@ -1,13 +1,26 @@
1
1
  import React from 'react';
2
- import { findChildElement, NBSP, queryAncestors } from '../dom-utils';
2
+ import classNames from 'classnames';
3
+ import { findChildElement, getNumericAttribute, NBSP, queryAncestors } from '../dom-utils';
3
4
  import { useExamTranslation } from '../i18n';
4
- function AnswerToolbar({ answer, element, error, selectAnswerVersion, showAnswerHistory = false, supportsAnswerHistory = false, }) {
5
+ function AnswerToolbar({ answer, element, screenshotError, validationError, selectAnswerVersion, showAnswerHistory = false, supportsAnswerHistory = false, }) {
5
6
  const { t } = useExamTranslation();
7
+ const answerLength = answer === null || answer === void 0 ? void 0 : answer.characterCount;
8
+ const maxLength = getNumericAttribute(element, 'max-length');
6
9
  return (React.createElement("div", { className: "answer-toolbar e-font-size-xs e-color-darkgrey e-columns e-mrg-b-2" },
7
- React.createElement("div", { className: "answer-toolbar__answer-length e-column e-column--narrow" }, answer && (answer.type === 'text' || answer.type === 'richText')
8
- ? t('answer-length', { count: answer.characterCount })
9
- : NBSP),
10
- React.createElement("div", { className: "answer-toolbar__errors e-column e-column--auto e-text-center" }, error && React.createElement("span", { role: "alert" }, t(`answer-errors.${error.key}`, error.options))),
10
+ React.createElement("div", { className: classNames('answer-toolbar__answer-length e-column', { 'e-color-error': validationError != null }) },
11
+ answer != null
12
+ ? t(maxLength != null ? 'answer-length-with-max-length' : 'answer-length', {
13
+ count: answerLength,
14
+ maxLength: maxLength,
15
+ })
16
+ : NBSP,
17
+ screenshotError ? (React.createElement("span", { className: "e-color-error", role: "alert" },
18
+ ' ',
19
+ t(`answer-errors.${screenshotError.key}`, screenshotError.options))) : validationError ? (
20
+ // We don't use an alert role here because ErrorIndicator already displays the same error message wrapped in an alert role
21
+ React.createElement("span", null,
22
+ " ",
23
+ t(`answer-errors.answer-too-long`, { count: validationError.characterCount }))) : null),
11
24
  React.createElement("div", { className: "answer-toolbar__history e-column e-column--narrow e-text-right" }, supportsAnswerHistory && (React.createElement("div", { className: "answer-toolbar__select-previous-version" }, showAnswerHistory && answer != null ? (React.createElement("button", { className: "answer-toolbar__previous-versions e-link-button e-font-size-xs", onClick: () => {
12
25
  // This is kind of hacky. We need to render the question title in the answer history modal,
13
26
  // but the current element we're at is text-answer. So we have to find the containing question
@@ -1 +1 @@
1
- {"version":3,"file":"AnswerToolbar.js","sourceRoot":"","sources":["../../src/components/AnswerToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAa5C,SAAS,aAAa,CAAC,EACrB,MAAM,EACN,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,iBAAiB,GAAG,KAAK,EACzB,qBAAqB,GAAG,KAAK,GACV;IACnB,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAElC,OAAO,CACL,6BAAK,SAAS,EAAC,oEAAoE;QACjF,6BAAK,SAAS,EAAC,yDAAyD,IACrE,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC;YAC/D,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC;YACtD,CAAC,CAAC,IAAI,CACJ;QACN,6BAAK,SAAS,EAAC,8DAA8D,IAC1E,KAAK,IAAI,8BAAM,IAAI,EAAC,OAAO,IAAE,CAAC,CAAC,iBAAiB,KAAK,CAAC,GAAG,EAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAQ,CACzF;QACN,6BAAK,SAAS,EAAC,gEAAgE,IAC5E,qBAAqB,IAAI,CACxB,6BAAK,SAAS,EAAC,yCAAyC,IACrD,iBAAiB,IAAI,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CACrC,gCACE,SAAS,EAAC,gEAAgE,EAC1E,OAAO,EAAE,GAAG,EAAE;gBACZ,2FAA2F;gBAC3F,8FAA8F;gBAC9F,qGAAqG;gBACrG,IAAI,mBAAmB,EAAE;oBACvB,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAE,UAAU,CAAE,CAAA;oBACrD,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,CAAE,CAAA;oBACnE,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,WAAY,CAAC,CAAA;iBACnE;YACH,CAAC,IAEA,CAAC,CAAC,0BAA0B,CAAC,CACvB,CACV,CAAC,CAAC,CAAC,CACF,IAAI,CACL,CACG,CACP,CACG,CACF,CACP,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA"}
1
+ {"version":3,"file":"AnswerToolbar.js","sourceRoot":"","sources":["../../src/components/AnswerToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAe5C,SAAS,aAAa,CAAC,EACrB,MAAM,EACN,OAAO,EACP,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAAG,KAAK,EACzB,qBAAqB,GAAG,KAAK,GACV;IACnB,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAClC,MAAM,YAAY,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,cAAc,CAAA;IAC3C,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IAC5D,OAAO,CACL,6BAAK,SAAS,EAAC,oEAAoE;QACjF,6BACE,SAAS,EAAE,UAAU,CAAC,wCAAwC,EAAE,EAAE,eAAe,EAAE,eAAe,IAAI,IAAI,EAAE,CAAC;YAE5G,MAAM,IAAI,IAAI;gBACb,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,eAAe,EAAE;oBACvE,KAAK,EAAE,YAAY;oBACnB,SAAS,EAAE,SAAS;iBACrB,CAAC;gBACJ,CAAC,CAAC,IAAI;YACP,eAAe,CAAC,CAAC,CAAC,CACjB,8BAAM,SAAS,EAAC,eAAe,EAAC,IAAI,EAAC,OAAO;gBACzC,GAAG;gBACH,CAAC,CAAC,iBAAiB,eAAe,CAAC,GAAG,EAAW,EAAE,eAAe,CAAC,OAAO,CAAC,CACvE,CACR,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;YACpB,0HAA0H;YAC1H;;gBAAQ,CAAC,CAAC,+BAA+B,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,cAAc,EAAE,CAAC,CAAQ,CAC9F,CAAC,CAAC,CAAC,IAAI,CACJ;QACN,6BAAK,SAAS,EAAC,gEAAgE,IAC5E,qBAAqB,IAAI,CACxB,6BAAK,SAAS,EAAC,yCAAyC,IACrD,iBAAiB,IAAI,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CACrC,gCACE,SAAS,EAAC,gEAAgE,EAC1E,OAAO,EAAE,GAAG,EAAE;gBACZ,2FAA2F;gBAC3F,8FAA8F;gBAC9F,qGAAqG;gBACrG,IAAI,mBAAmB,EAAE;oBACvB,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAE,UAAU,CAAE,CAAA;oBACrD,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,CAAE,CAAA;oBACnE,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,WAAY,CAAC,CAAA;iBACnE;YACH,CAAC,IAEA,CAAC,CAAC,0BAA0B,CAAC,CACvB,CACV,CAAC,CAAC,CAAC,CACF,IAAI,CACL,CACG,CACP,CACG,CACF,CACP,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA"}
@@ -3,10 +3,10 @@ export interface AnsweringInstructionProps {
3
3
  maxAnswers: number;
4
4
  /** Child questions as either raw Elements from the XML or just display numbers. */
5
5
  childQuestions: (string | Element)[];
6
- type: 'exam' | 'question' | 'section' | 'toc-section';
6
+ elementType: 'exam' | 'question' | 'section' | 'toc-section';
7
7
  minAnswers?: number;
8
8
  }
9
- declare function AnsweringInstructions({ maxAnswers, minAnswers, type, childQuestions }: AnsweringInstructionProps): JSX.Element;
9
+ declare function AnsweringInstructions({ maxAnswers, minAnswers, elementType, childQuestions }: AnsweringInstructionProps): JSX.Element;
10
10
  declare const _default: React.MemoExoticComponent<typeof AnsweringInstructions>;
11
11
  export default _default;
12
12
  //# sourceMappingURL=AnsweringInstructions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AnsweringInstructions.d.ts","sourceRoot":"","sources":["../../src/components/AnsweringInstructions.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,mFAAmF;IACnF,cAAc,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAA;IACpC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,CAAA;IACrD,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,iBAAS,qBAAqB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,yBAAyB,eAiBzG;;AAgBD,wBAAgD"}
1
+ {"version":3,"file":"AnsweringInstructions.d.ts","sourceRoot":"","sources":["../../src/components/AnsweringInstructions.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,mFAAmF;IACnF,cAAc,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAA;IACpC,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,CAAA;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,iBAAS,qBAAqB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE,yBAAyB,eAiBhH;;AAgBD,wBAAgD"}
@@ -1,10 +1,10 @@
1
1
  import * as _ from 'lodash-es';
2
2
  import React from 'react';
3
3
  import { useExamTranslation } from '../i18n';
4
- function AnsweringInstructions({ maxAnswers, minAnswers, type, childQuestions }) {
4
+ function AnsweringInstructions({ maxAnswers, minAnswers, elementType, childQuestions }) {
5
5
  const childDisplayNumbers = childQuestions.map((question) => _.isString(question) ? question : question.getAttribute('display-number'));
6
6
  const { t } = useExamTranslation();
7
- const possibleTranslationStrings = cartesian([childDisplayNumbers.length, '*'], [maxAnswers, '*'], [minAnswers != null ? minAnswers : maxAnswers, '*']).map(([childQuestionCount, maxAnswerCount, minAnswerCount]) => `answering-instructions.${type}_${childQuestionCount}_${minAnswerCount}_${maxAnswerCount}`);
7
+ const possibleTranslationStrings = cartesian([childDisplayNumbers.length, '*'], [maxAnswers, '*'], [minAnswers != null ? minAnswers : maxAnswers, '*']).map(([childQuestionCount, maxAnswerCount, minAnswerCount]) => `answering-instructions.${elementType}_${childQuestionCount}_${minAnswerCount}_${maxAnswerCount}`);
8
8
  const answerCount = [minAnswers, maxAnswers];
9
9
  const questions = [_.first(childDisplayNumbers), _.last(childDisplayNumbers)];
10
10
  return React.createElement(React.Fragment, null, t(possibleTranslationStrings, { answerCount, questions }));
@@ -1 +1 @@
1
- {"version":3,"file":"AnsweringInstructions.js","sourceRoot":"","sources":["../../src/components/AnsweringInstructions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,WAAW,CAAA;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAS5C,SAAS,qBAAqB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAA6B;IACxG,MAAM,mBAAmB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC1D,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAE,CAC3E,CAAA;IAED,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAClC,MAAM,0BAA0B,GAAU,SAAS,CACjD,CAAC,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,EACjC,CAAC,UAAU,EAAE,GAAG,CAAC,EACjB,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,CACpD,CAAC,GAAG,CACH,CAAC,CAAC,kBAAkB,EAAE,cAAc,EAAE,cAAc,CAAC,EAAE,EAAE,CACvD,0BAA0B,IAAI,IAAI,kBAAkB,IAAI,cAAc,IAAI,cAAc,EAAE,CAC7F,CAAA;IACD,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;IAC5C,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAE,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAE,CAAC,CAAA;IAC/E,OAAO,0CAAG,CAAC,CAAC,0BAA0B,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAI,CAAA;AACzE,CAAC;AAED,SAAS,SAAS,CAAU,EAAgB,EAAE,EAAgB,EAAE,EAAgB;IAC9E,MAAM,MAAM,GAAgB,EAAE,CAAA;IAE9B,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;QAClB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;YAClB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;gBAClB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;aACvB;SACF;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA"}
1
+ {"version":3,"file":"AnsweringInstructions.js","sourceRoot":"","sources":["../../src/components/AnsweringInstructions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,WAAW,CAAA;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAS5C,SAAS,qBAAqB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAA6B;IAC/G,MAAM,mBAAmB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC1D,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAE,CAC3E,CAAA;IAED,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAClC,MAAM,0BAA0B,GAAU,SAAS,CACjD,CAAC,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,EACjC,CAAC,UAAU,EAAE,GAAG,CAAC,EACjB,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,CACpD,CAAC,GAAG,CACH,CAAC,CAAC,kBAAkB,EAAE,cAAc,EAAE,cAAc,CAAC,EAAE,EAAE,CACvD,0BAA0B,WAAW,IAAI,kBAAkB,IAAI,cAAc,IAAI,cAAc,EAAE,CACpG,CAAA;IACD,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;IAC5C,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAE,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAE,CAAC,CAAA;IAC/E,OAAO,0CAAG,CAAC,CAAC,0BAA0B,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAI,CAAA;AACzE,CAAC;AAED,SAAS,SAAS,CAAU,EAAgB,EAAE,EAAgB,EAAE,EAAgB;IAC9E,MAAM,MAAM,GAAgB,EAAE,CAAA;IAE9B,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;QAClB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;YAClB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;gBAClB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;aACvB;SACF;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"SectionElement.d.ts","sourceRoot":"","sources":["../../src/components/SectionElement.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAIlH,CAAA;AAEH,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"SectionElement.d.ts","sourceRoot":"","sources":["../../src/components/SectionElement.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,iBAAiB,CAC3C,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAIxE,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"SectionElement.js","sourceRoot":"","sources":["../../src/components/SectionElement.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,cAAc,GAClB,CAAC,KAAK,EAAE,EAAE;IACR,MAAM,SAAS,GAAG,UAAU,CAAC,wCAAwC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACvF,OAAO,oCAAa,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAG,KAAK,CAAC,QAAQ,CAAW,CAAA;AACzE,CAAC,CAAA;AAEH,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"SectionElement.js","sourceRoot":"","sources":["../../src/components/SectionElement.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,cAAc,GAEhB,CAAC,KAAK,EAAE,EAAE;IACZ,MAAM,SAAS,GAAG,UAAU,CAAC,wCAAwC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACvF,OAAO,oCAAa,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAG,KAAK,CAAC,QAAQ,CAAW,CAAA;AACzE,CAAC,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -12,7 +12,7 @@ export interface CommonExamContext {
12
12
  subjectLanguage: string;
13
13
  maxAnswers?: number;
14
14
  maxScore?: number;
15
- numberOfSections: number;
15
+ sections: Element[];
16
16
  resolveAttachment: (filename: string) => string;
17
17
  root: Element;
18
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CommonExamContext.d.ts","sourceRoot":"","sources":["../../../src/components/context/CommonExamContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAA;IACtB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,iBAAiB,EAAE,IAAI,CAAC,cAAc,CAAA;IACtC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAA;IAChB,+FAA+F;IAC/F,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IAC/C,IAAI,EAAE,OAAO,CAAA;CACd;AAED,eAAO,MAAM,iBAAiB,kCAA+C,CAAA;AAE7E,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,eAAe,EAC7D,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAChC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAsBxB"}
1
+ {"version":3,"file":"CommonExamContext.d.ts","sourceRoot":"","sources":["../../../src/components/context/CommonExamContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAA;IACtB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,iBAAiB,EAAE,IAAI,CAAC,cAAc,CAAA;IACtC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAA;IAChB,+FAA+F;IAC/F,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IAC/C,IAAI,EAAE,OAAO,CAAA;CACd;AAED,eAAO,MAAM,iBAAiB,kCAA+C,CAAA;AAE7E,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,eAAe,EAC7D,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAChC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAsBxB"}
@@ -18,7 +18,7 @@ export function withCommonExamContext(Component) {
18
18
  subjectLanguage,
19
19
  maxAnswers: getNumericAttribute(root, 'max-answers'),
20
20
  maxScore: getNumericAttribute(root, 'max-score'),
21
- numberOfSections: queryAll(root, 'section').length,
21
+ sections: queryAll(root, 'section'),
22
22
  resolveAttachment,
23
23
  root,
24
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"CommonExamContext.js","sourceRoot":"","sources":["../../../src/components/context/CommonExamContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAmB3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAC,EAAuB,CAAC,CAAA;AAE7E,MAAM,UAAU,qBAAqB,CACnC,SAAiC;IAEjC,OAAO,WAAW,CAAuB,iBAAiB,EAAE,CAAC,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,EAAE,EAAE,EAAE;QACzG,MAAM,IAAI,GAAG,GAAG,CAAC,eAAe,CAAA;QAChC,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5C,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,WAAW,CAAE,CAAA;QACjD,MAAM,eAAe,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,QAAQ,CAAA;QAE9D,OAAO;YACL,cAAc;YACd,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YACjD,iBAAiB,EAAE,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACxE,OAAO,EAAE,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC;YACvC,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC;YACzC,QAAQ;YACR,eAAe;YACf,UAAU,EAAE,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC;YACpD,QAAQ,EAAE,mBAAmB,CAAC,IAAI,EAAE,WAAW,CAAC;YAChD,gBAAgB,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,MAAM;YAClD,iBAAiB;YACjB,IAAI;SACL,CAAA;IACH,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"CommonExamContext.js","sourceRoot":"","sources":["../../../src/components/context/CommonExamContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAmB3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAC,EAAuB,CAAC,CAAA;AAE7E,MAAM,UAAU,qBAAqB,CACnC,SAAiC;IAEjC,OAAO,WAAW,CAAuB,iBAAiB,EAAE,CAAC,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,EAAE,EAAE,EAAE;QACzG,MAAM,IAAI,GAAG,GAAG,CAAC,eAAe,CAAA;QAChC,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5C,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,WAAW,CAAE,CAAA;QACjD,MAAM,eAAe,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,QAAQ,CAAA;QAE9D,OAAO;YACL,cAAc;YACd,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YACjD,iBAAiB,EAAE,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACxE,OAAO,EAAE,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC;YACvC,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC;YACzC,QAAQ;YACR,eAAe;YACf,UAAU,EAAE,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC;YACpD,QAAQ,EAAE,mBAAmB,CAAC,IAAI,EAAE,WAAW,CAAC;YAChD,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;YACnC,iBAAiB;YACjB,IAAI;SACL,CAAA;IACH,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;AACf,CAAC"}
@@ -8,6 +8,7 @@ export interface QuestionContext {
8
8
  maxScore: number;
9
9
  level: number;
10
10
  childQuestions: Element[];
11
+ questionLabelIds: string;
11
12
  }
12
13
  export declare const QuestionContext: React.Context<QuestionContext>;
13
14
  export declare const withQuestionContext: (Component: React.ComponentType<ExamComponentProps>) => React.ComponentType<ExamComponentProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"QuestionContext.d.ts","sourceRoot":"","sources":["../../../src/components/context/QuestionContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAEjE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,EAAE,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,OAAO,EAAE,CAAA;CAC1B;AAED,eAAO,MAAM,eAAe,gCAA8D,CAAA;AAE1F,eAAO,MAAM,mBAAmB,iGAe9B,CAAA"}
1
+ {"version":3,"file":"QuestionContext.d.ts","sourceRoot":"","sources":["../../../src/components/context/QuestionContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAGjE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,EAAE,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,OAAO,EAAE,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,eAAO,MAAM,eAAe,gCAA8D,CAAA;AAE1F,eAAO,MAAM,mBAAmB,iGAsB9B,CAAA"}
@@ -1,20 +1,27 @@
1
1
  import React from 'react';
2
2
  import { findChildElement, getNumericAttribute, parentElements, queryAll } from '../../dom-utils';
3
3
  import { withContext } from './withContext';
4
+ import { questionInstructionId, questionTitleId } from '../../ids';
4
5
  export const QuestionContext = React.createContext({});
5
6
  export const withQuestionContext = withContext(QuestionContext, ({ element }) => {
6
7
  const childQuestions = queryAll(element, 'question', false);
7
8
  const answers = childQuestions.length
8
9
  ? []
9
10
  : queryAll(element, ['text-answer', 'scored-text-answer', 'dropdown-answer', 'choice-answer'], false);
11
+ const questionInstructions = queryAll(element, 'question-instruction', false);
12
+ const displayNumber = element.getAttribute('display-number');
13
+ const questionLabelIds = questionInstructions.length > 0
14
+ ? questionInstructions.map(questionInstructionId).join(' ')
15
+ : questionTitleId(displayNumber);
10
16
  return {
11
17
  answers,
12
- displayNumber: element.getAttribute('display-number'),
18
+ displayNumber,
13
19
  hasExternalMaterial: findChildElement(element, 'external-material') != null,
14
20
  maxAnswers: getNumericAttribute(element, 'max-answers'),
15
21
  maxScore: getNumericAttribute(element, 'max-score'),
16
22
  level: parentElements(element, 'question').length,
17
23
  childQuestions,
24
+ questionLabelIds,
18
25
  };
19
26
  });
20
27
  //# sourceMappingURL=QuestionContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QuestionContext.js","sourceRoot":"","sources":["../../../src/components/context/QuestionContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAa3C,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,aAAa,CAAkB,EAAqB,CAAC,CAAA;AAE1F,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAsC,eAAe,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACnH,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;IAC3D,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM;QACnC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,KAAK,CAAC,CAAA;IAEvG,OAAO;QACL,OAAO;QACP,aAAa,EAAE,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAE;QACtD,mBAAmB,EAAE,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,CAAC,IAAI,IAAI;QAC3E,UAAU,EAAE,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC;QACvD,QAAQ,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAE;QACpD,KAAK,EAAE,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,MAAM;QACjD,cAAc;KACf,CAAA;AACH,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"QuestionContext.js","sourceRoot":"","sources":["../../../src/components/context/QuestionContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAalE,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,aAAa,CAAkB,EAAqB,CAAC,CAAA;AAE1F,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAsC,eAAe,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACnH,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;IAC3D,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM;QACnC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,KAAK,CAAC,CAAA;IACvG,MAAM,oBAAoB,GAAG,QAAQ,CAAC,OAAO,EAAE,sBAAsB,EAAE,KAAK,CAAC,CAAA;IAC7E,MAAM,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAE,CAAA;IAC7D,MAAM,gBAAgB,GACpB,oBAAoB,CAAC,MAAM,GAAG,CAAC;QAC7B,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAC3D,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC,CAAA;IAEpC,OAAO;QACL,OAAO;QACP,aAAa;QACb,mBAAmB,EAAE,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,CAAC,IAAI,IAAI;QAC3E,UAAU,EAAE,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC;QACvD,QAAQ,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAE;QACpD,KAAK,EAAE,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,MAAM;QACjD,cAAc;QACd,gBAAgB;KACjB,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceAnswer.d.ts","sourceRoot":"","sources":["../../../src/components/exam/ChoiceAnswer.tsx"],"names":[],"mappings":";AAKA,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAA;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,YAAY,IAAI,aAAa,EAAc,MAAM,wBAAwB,CAAA;AAmElF,UAAU,iBAAkB,SAAQ,kBAAkB;IACpD,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,UAAU,EAAE,OAAO,OAAO,CAAC,UAAU,CAAA;CACtC;AAED,iBAAS,YAAY,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,iBAAiB,eA+CzF;;AAQD,wBAEgB"}
1
+ {"version":3,"file":"ChoiceAnswer.d.ts","sourceRoot":"","sources":["../../../src/components/exam/ChoiceAnswer.tsx"],"names":[],"mappings":";AAKA,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,YAAY,IAAI,aAAa,EAAc,MAAM,wBAAwB,CAAA;AAoElF,UAAU,iBAAkB,SAAQ,kBAAkB;IACpD,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,UAAU,EAAE,OAAO,OAAO,CAAC,UAAU,CAAA;CACtC;AAED,iBAAS,YAAY,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,iBAAiB,eA4CzF;;AAQD,wBAEgB"}
@@ -1,9 +1,9 @@
1
1
  import classNames from 'classnames';
2
- import React from 'react';
2
+ import React, { useContext } from 'react';
3
3
  import { connect } from 'react-redux';
4
4
  import { getNumericAttribute, mapChildElements, query } from '../../dom-utils';
5
5
  import * as actions from '../../store/answers/actions';
6
- import AnswerToolbar from '../AnswerToolbar';
6
+ import { QuestionContext } from '../context/QuestionContext';
7
7
  function ChoiceAnswerOption({ selected, element, renderChildNodes, questionId, onSelect, direction, value, }) {
8
8
  const className = element.getAttribute('class');
9
9
  const content = (React.createElement("div", { className: classNames('e-choice-answer-option e-column', className, {
@@ -20,6 +20,7 @@ function ChoiceAnswerOption({ selected, element, renderChildNodes, questionId, o
20
20
  content)));
21
21
  }
22
22
  function ChoiceAnswer({ answer, saveAnswer, element, renderChildNodes }) {
23
+ const { questionLabelIds } = useContext(QuestionContext);
23
24
  const questionId = getNumericAttribute(element, 'question-id');
24
25
  const direction = element.getAttribute('direction') || 'vertical';
25
26
  const className = element.getAttribute('class');
@@ -30,7 +31,7 @@ function ChoiceAnswer({ answer, saveAnswer, element, renderChildNodes }) {
30
31
  return (React.createElement(React.Fragment, null,
31
32
  React.createElement("div", { className: classNames('e-choice-answer', className, {
32
33
  'e-columns': direction === 'horizontal',
33
- }), "data-question-id": questionId }, mapChildElements(element, (childElement) => {
34
+ }), "data-question-id": questionId, role: "radiogroup", "aria-labelledby": questionLabelIds }, mapChildElements(element, (childElement) => {
34
35
  const optionId = childElement.getAttribute('option-id');
35
36
  const isNoAnswer = childElement.getAttribute('type') === 'no-answer';
36
37
  const value = isNoAnswer ? '' : optionId;
@@ -45,11 +46,7 @@ function ChoiceAnswer({ answer, saveAnswer, element, renderChildNodes }) {
45
46
  selected,
46
47
  value,
47
48
  } }));
48
- })),
49
- React.createElement(AnswerToolbar, { ...{
50
- answer,
51
- element,
52
- } })));
49
+ }))));
53
50
  }
54
51
  function mapStateToProps(state, { element }) {
55
52
  const questionId = getNumericAttribute(element, 'question-id');
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceAnswer.js","sourceRoot":"","sources":["../../../src/components/exam/ChoiceAnswer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChoiceAnswer.js","sourceRoot":"","sources":["../../../src/components/exam/ChoiceAnswer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownAnswer.d.ts","sourceRoot":"","sources":["../../../src/components/exam/DropdownAnswer.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAMjE,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAA;AACtD,OAAO,EAAE,YAAY,IAAI,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAItE,UAAU,mBAAoB,SAAQ,kBAAkB;IACtD,UAAU,EAAE,OAAO,OAAO,CAAC,UAAU,CAAA;IACrC,MAAM,CAAC,EAAE,aAAa,CAAA;CACvB;AASD,iBAAS,cAAc,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,mBAAmB,eAsH7F;;AAOD,wBAEkB"}
1
+ {"version":3,"file":"DropdownAnswer.d.ts","sourceRoot":"","sources":["../../../src/components/exam/DropdownAnswer.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAMjE,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAA;AACtD,OAAO,EAAE,YAAY,IAAI,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAItE,UAAU,mBAAoB,SAAQ,kBAAkB;IACtD,UAAU,EAAE,OAAO,OAAO,CAAC,UAAU,CAAA;IACrC,MAAM,CAAC,EAAE,aAAa,CAAA;CACvB;AASD,iBAAS,cAAc,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,mBAAmB,eAqH7F;;AAOD,wBAEkB"}
@@ -47,7 +47,7 @@ function DropdownAnswer({ element, renderChildNodes, saveAnswer, answer }) {
47
47
  });
48
48
  }
49
49
  const items = [noAnswer, ...element.children];
50
- const { answers } = useContext(QuestionContext);
50
+ const { answers, questionLabelIds } = useContext(QuestionContext);
51
51
  const { getItemProps, getMenuProps, getToggleButtonProps, highlightedIndex, isOpen, selectedItem } = useSelect({
52
52
  items,
53
53
  itemToString: (item) => (item ? item.textContent : ''),
@@ -65,8 +65,7 @@ function DropdownAnswer({ element, renderChildNodes, saveAnswer, answer }) {
65
65
  'e-dropdown-answer__toggle-button--open': isOpen,
66
66
  }), ...getToggleButtonProps({
67
67
  'aria-describedby': scoreId,
68
- // The label text is inside the button, so we don't want an aria-labelledby attribute.
69
- 'aria-labelledby': undefined,
68
+ 'aria-labelledby': questionLabelIds,
70
69
  }, { suppressRefError: !runningInBrowser }) },
71
70
  React.createElement("span", { className: "e-dropdown-answer__label e-column e-pad-l-1 e-pad-r-4" },
72
71
  React.createElement("span", { className: "e-ellipsis e-block", ref: labelRef }, selectedItem ? (renderChildNodes(selectedItem)) : (React.createElement("span", { "aria-label": t.raw('dropdown-answer.label') }, NBSP)))),
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownAnswer.js","sourceRoot":"","sources":["../../../src/components/exam/DropdownAnswer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DropdownAnswer.js","sourceRoot":"","sources":["../../../src/components/exam/DropdownAnswer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Hints.d.ts","sourceRoot":"","sources":["../../../src/components/exam/Hints.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,kBAAkB,EAAoB,MAAM,8BAA8B,CAAA;AAMnF,QAAA,MAAM,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,CAmBtD,CAAA;AAiCD,eAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"Hints.d.ts","sourceRoot":"","sources":["../../../src/components/exam/Hints.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,kBAAkB,EAAoB,MAAM,8BAA8B,CAAA;AAMnF,QAAA,MAAM,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,CAqBtD,CAAA;AAiCD,eAAe,KAAK,CAAA"}
@@ -6,9 +6,9 @@ import { shortDisplayNumber } from '../../shortDisplayNumber';
6
6
  const Hints = ({ element, renderChildNodes }) => {
7
7
  const focusedQuestionId = useSelector((state) => state.answers.focusedQuestionId);
8
8
  const answersWithHints = queryAll(element, ['text-answer', 'scored-text-answer']).filter((answer) => findChildElement(answer, 'hint') != null);
9
- return (React.createElement("div", { className: "e-columns" },
9
+ return answersWithHints.length > 0 ? (React.createElement("div", { className: "e-columns" },
10
10
  React.createElement("div", { className: "e-column e-column--8" }, renderChildNodes(element)),
11
- React.createElement("div", { className: "e-hints e-column e-column--4", "aria-hidden": "true" }, answersWithHints.map((answer, i) => (React.createElement(Hint, { ...{ answer, focusedQuestionId, renderChildNodes }, key: i }))))));
11
+ React.createElement("div", { className: "e-hints e-column e-column--4", "aria-hidden": "true" }, answersWithHints.map((answer, i) => (React.createElement(Hint, { ...{ answer, focusedQuestionId, renderChildNodes }, key: i })))))) : (React.createElement(React.Fragment, null, "renderChildNodes(element)"));
12
12
  };
13
13
  function Hint({ answer, focusedQuestionId, renderChildNodes, }) {
14
14
  const questionId = getNumericAttribute(answer, 'question-id');
@@ -1 +1 @@
1
- {"version":3,"file":"Hints.js","sourceRoot":"","sources":["../../../src/components/exam/Hints.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAI7D,MAAM,KAAK,GAAgD,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE;IAC3F,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,KAAe,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC3F,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC,CAAC,MAAM,CACtF,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,IAAI,CACrD,CAAA;IAED,OAAO,CACL,6BAAK,SAAS,EAAC,WAAW;QACxB,6BAAK,SAAS,EAAC,sBAAsB,IAAE,gBAAgB,CAAC,OAAO,CAAC,CAAO;QAIvE,6BAAK,SAAS,EAAC,8BAA8B,iBAAa,MAAM,IAC7D,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CACnC,oBAAC,IAAI,OAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,GAAG,EAAE,CAAC,GAAI,CACtE,CAAC,CACE,CACF,CACP,CAAA;AACH,CAAC,CAAA;AAED,SAAS,IAAI,CAAC,EACZ,MAAM,EACN,iBAAiB,EACjB,gBAAgB,GAKjB;IACC,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAE,CAAA;IAC9D,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAE,CAAA;IAC5D,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAE,CAAA;IAE9C,OAAO,CACL,2BACE,SAAS,EAAE,UAAU,CAAC,eAAe,EAAE;YACrC,wBAAwB,EAAE,iBAAiB,KAAK,UAAU;SAC3D,CAAC,EACF,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAc,kCAAkC,UAAU,IAAI,CAAC,CAAA;YACtG,IAAI,QAAQ,EAAE;gBACZ,QAAQ,CAAC,KAAK,EAAE,CAAA;aACjB;QACH,CAAC,sBACiB,UAAU;QAE3B,kBAAkB,CAAC,aAAa,CAAC;;QAAG,gBAAgB,CAAC,IAAI,CAAC,CACzD,CACL,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"Hints.js","sourceRoot":"","sources":["../../../src/components/exam/Hints.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAI7D,MAAM,KAAK,GAAgD,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE;IAC3F,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,KAAe,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC3F,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC,CAAC,MAAM,CACtF,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,IAAI,CACrD,CAAA;IAED,OAAO,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACnC,6BAAK,SAAS,EAAC,WAAW;QACxB,6BAAK,SAAS,EAAC,sBAAsB,IAAE,gBAAgB,CAAC,OAAO,CAAC,CAAO;QAIvE,6BAAK,SAAS,EAAC,8BAA8B,iBAAa,MAAM,IAC7D,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CACnC,oBAAC,IAAI,OAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,GAAG,EAAE,CAAC,GAAI,CACtE,CAAC,CACE,CACF,CACP,CAAC,CAAC,CAAC,CACF,sEAA8B,CAC/B,CAAA;AACH,CAAC,CAAA;AAED,SAAS,IAAI,CAAC,EACZ,MAAM,EACN,iBAAiB,EACjB,gBAAgB,GAKjB;IACC,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAE,CAAA;IAC9D,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAE,CAAA;IAC5D,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAE,CAAA;IAE9C,OAAO,CACL,2BACE,SAAS,EAAE,UAAU,CAAC,eAAe,EAAE;YACrC,wBAAwB,EAAE,iBAAiB,KAAK,UAAU;SAC3D,CAAC,EACF,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAc,kCAAkC,UAAU,IAAI,CAAC,CAAA;YACtG,IAAI,QAAQ,EAAE;gBACZ,QAAQ,CAAC,KAAK,EAAE,CAAA;aACjB;QACH,CAAC,sBACiB,UAAU;QAE3B,kBAAkB,CAAC,aAAa,CAAC;;QAAG,gBAAgB,CAAC,IAAI,CAAC,CACzD,CACL,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"QuestionInstruction.d.ts","sourceRoot":"","sources":["../../../src/components/exam/QuestionInstruction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAEjE,iBAAS,mBAAmB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,kBAAkB,eAE7E;;AAED,wBAA8C"}
1
+ {"version":3,"file":"QuestionInstruction.d.ts","sourceRoot":"","sources":["../../../src/components/exam/QuestionInstruction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAGjE,iBAAS,mBAAmB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,kBAAkB,eAO7E;;AAED,wBAA8C"}
@@ -1,6 +1,8 @@
1
1
  import React from 'react';
2
+ import { questionInstructionId } from '../../ids';
2
3
  function QuestionInstruction({ element, renderChildNodes }) {
3
- return React.createElement("div", { className: "exam-question-instruction e-mrg-b-2" }, renderChildNodes(element));
4
+ const id = questionInstructionId(element);
5
+ return (React.createElement("div", { className: "exam-question-instruction e-mrg-b-2", id: id }, renderChildNodes(element)));
4
6
  }
5
7
  export default React.memo(QuestionInstruction);
6
8
  //# sourceMappingURL=QuestionInstruction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QuestionInstruction.js","sourceRoot":"","sources":["../../../src/components/exam/QuestionInstruction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,SAAS,mBAAmB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAsB;IAC5E,OAAO,6BAAK,SAAS,EAAC,qCAAqC,IAAE,gBAAgB,CAAC,OAAO,CAAC,CAAO,CAAA;AAC/F,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"QuestionInstruction.js","sourceRoot":"","sources":["../../../src/components/exam/QuestionInstruction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAEjD,SAAS,mBAAmB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAsB;IAC5E,MAAM,EAAE,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;IACzC,OAAO,CACL,6BAAK,SAAS,EAAC,qCAAqC,EAAC,EAAE,EAAE,EAAE,IACxD,gBAAgB,CAAC,OAAO,CAAC,CACtB,CACP,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"QuestionTitle.d.ts","sourceRoot":"","sources":["../../../src/components/exam/QuestionTitle.tsx"],"names":[],"mappings":"AACA,OAAO,KAAqB,MAAM,OAAO,CAAA;AAKzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;;AA6BjE,wBAAwC"}
1
+ {"version":3,"file":"QuestionTitle.d.ts","sourceRoot":"","sources":["../../../src/components/exam/QuestionTitle.tsx"],"names":[],"mappings":"AACA,OAAO,KAAqB,MAAM,OAAO,CAAA;AAKzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;;AA+BjE,wBAAwC"}