@citolab/qti-components 7.3.19 → 7.3.21

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 (556) hide show
  1. package/cdn/chunks/chunk-26QYN3JJ.js +1482 -0
  2. package/cdn/chunks/chunk-2BSPQRNR.js +6 -0
  3. package/cdn/chunks/chunk-2IJBTWWT.js +2 -0
  4. package/cdn/chunks/chunk-2N2XIR3B.js +5 -0
  5. package/cdn/chunks/chunk-2PXIZTCM.js +1 -0
  6. package/cdn/chunks/chunk-3BPUHYAN.js +1 -0
  7. package/cdn/chunks/chunk-3CVBBZDT.js +17 -0
  8. package/cdn/chunks/chunk-3H3ITD2Q.js +5 -0
  9. package/cdn/chunks/chunk-3IBGLVHA.js +1 -0
  10. package/cdn/chunks/chunk-3PVCPEFY.js +5 -0
  11. package/cdn/chunks/chunk-3WY3AI3D.js +1482 -0
  12. package/cdn/chunks/chunk-3YF52BZZ.js +41 -0
  13. package/cdn/chunks/chunk-3ZFHDJHW.js +3636 -0
  14. package/cdn/chunks/chunk-426N5A5I.js +1 -0
  15. package/cdn/chunks/chunk-453G3A34.js +8 -0
  16. package/cdn/chunks/chunk-4AGE7DVK.js +48 -0
  17. package/cdn/chunks/chunk-4DXCBZFR.js +3698 -0
  18. package/cdn/chunks/chunk-4FBS7ODL.js +6 -0
  19. package/cdn/chunks/chunk-4IWCVQQJ.js +8 -0
  20. package/cdn/chunks/chunk-4YPL4JG2.js +1 -0
  21. package/cdn/chunks/chunk-522JFYKC.js +6 -0
  22. package/cdn/chunks/chunk-5ICSVSCW.js +1482 -0
  23. package/cdn/chunks/chunk-5L5JXKEA.js +1 -0
  24. package/cdn/chunks/chunk-5TEGKCEI.js +48 -0
  25. package/cdn/chunks/chunk-5WLHU3FH.js +8 -0
  26. package/cdn/chunks/chunk-5WPKWVLA.js +1 -0
  27. package/cdn/chunks/chunk-63C5YDWF.js +1482 -0
  28. package/cdn/chunks/chunk-6ELXCFB2.js +1 -0
  29. package/cdn/chunks/chunk-6FSYASNZ.js +1 -0
  30. package/cdn/chunks/chunk-6H26KONO.js +1482 -0
  31. package/cdn/chunks/chunk-6OUX6PKB.js +5 -0
  32. package/cdn/chunks/chunk-6Q3S6QYF.js +1471 -0
  33. package/cdn/chunks/chunk-6SGFGN34.js +8 -0
  34. package/cdn/chunks/chunk-6XVY32RS.js +1 -0
  35. package/cdn/chunks/chunk-6ZE2IMSJ.js +1471 -0
  36. package/cdn/chunks/chunk-73RDXCTO.js +1 -0
  37. package/cdn/chunks/chunk-73YTM4JU.js +8 -0
  38. package/cdn/chunks/chunk-74FJHIJ5.js +8 -0
  39. package/cdn/chunks/chunk-77U2O27N.js +1 -0
  40. package/cdn/chunks/chunk-7AX6K3VW.js +1 -0
  41. package/cdn/chunks/chunk-7LCGB3GF.js +6 -0
  42. package/cdn/chunks/chunk-7NHDLON4.js +5 -0
  43. package/cdn/chunks/chunk-A57EJSRU.js +1 -0
  44. package/cdn/chunks/chunk-AAZIKH5Z.js +3650 -0
  45. package/cdn/chunks/chunk-AMJIIPBQ.js +48 -0
  46. package/cdn/chunks/chunk-ARUVWWSO.js +5 -0
  47. package/cdn/chunks/chunk-BGFVQO5N.js +8 -0
  48. package/cdn/chunks/chunk-BGWSUBMK.js +1482 -0
  49. package/cdn/chunks/chunk-BRXZ5HLX.js +8 -0
  50. package/cdn/chunks/chunk-BSBPPIVO.js +5 -0
  51. package/cdn/chunks/chunk-BUGBHX3F.js +5 -0
  52. package/cdn/chunks/chunk-BURSTFDF.js +2 -0
  53. package/cdn/chunks/chunk-BXEEPJPF.js +48 -0
  54. package/cdn/chunks/chunk-BXTNMGCF.js +1 -0
  55. package/cdn/chunks/chunk-C25DJHRW.js +5 -0
  56. package/cdn/chunks/chunk-C3XRHLQX.js +1 -0
  57. package/cdn/chunks/chunk-C7AO3IVZ.js +48 -0
  58. package/cdn/chunks/chunk-CGI4LREF.js +1 -0
  59. package/cdn/chunks/chunk-CLAUENYE.js +8 -0
  60. package/cdn/chunks/chunk-CTNAGYH7.js +1 -0
  61. package/cdn/chunks/chunk-DD55IQIL.js +6 -0
  62. package/cdn/chunks/chunk-DESMFZJW.js +5 -0
  63. package/cdn/chunks/chunk-DHNKVZRG.js +1 -0
  64. package/cdn/chunks/chunk-DNBBQ7LY.js +1 -0
  65. package/cdn/chunks/chunk-DP5FVJRS.js +21 -0
  66. package/cdn/chunks/chunk-DXF4ZBJ2.js +1 -0
  67. package/cdn/chunks/chunk-E2UBGM45.js +1 -0
  68. package/cdn/chunks/chunk-E46BCOOW.js +1 -0
  69. package/cdn/chunks/chunk-EGFC4XQG.js +5 -0
  70. package/cdn/chunks/chunk-EINATJIA.js +1 -0
  71. package/cdn/chunks/chunk-EQ4LUVQK.js +8 -0
  72. package/cdn/chunks/chunk-EXMUQYL6.js +5 -0
  73. package/cdn/chunks/chunk-EXVHRHST.js +8 -0
  74. package/cdn/chunks/chunk-FC7HXYUV.js +8 -0
  75. package/cdn/chunks/chunk-FDV6POVV.js +6 -0
  76. package/cdn/chunks/chunk-FEJUVLN4.js +6 -0
  77. package/cdn/chunks/chunk-FLQBFTRW.js +37 -0
  78. package/cdn/chunks/chunk-FOE7HRKJ.js +10 -0
  79. package/cdn/chunks/chunk-FUGKKQ6E.js +1 -0
  80. package/cdn/chunks/chunk-FWFPMNDO.js +5 -0
  81. package/cdn/chunks/chunk-FYXNIYGH.js +1 -0
  82. package/cdn/chunks/chunk-G2DN6BDN.js +8 -0
  83. package/cdn/chunks/chunk-GBAAEAYK.js +5 -0
  84. package/cdn/chunks/chunk-GDRPZEZJ.js +5 -0
  85. package/cdn/chunks/chunk-GFO3YUEH.js +1 -0
  86. package/cdn/chunks/chunk-GFXQHIPI.js +1482 -0
  87. package/cdn/chunks/chunk-GY74IPZ2.js +8 -0
  88. package/cdn/chunks/chunk-HA6MFZZU.js +48 -0
  89. package/cdn/chunks/chunk-HAE5ZHID.js +1 -0
  90. package/cdn/chunks/chunk-HCXHHI6V.js +18 -0
  91. package/cdn/chunks/chunk-HDMF4QZO.js +48 -0
  92. package/cdn/chunks/chunk-HHALXPVF.js +5 -0
  93. package/cdn/chunks/chunk-HKUIQBCM.js +1 -0
  94. package/cdn/chunks/chunk-HKWYQB5Z.js +37 -0
  95. package/cdn/chunks/chunk-HO6JOQX4.js +25 -0
  96. package/cdn/chunks/chunk-HPX7CBTS.js +1 -0
  97. package/cdn/chunks/chunk-HTH5YCZO.js +8 -0
  98. package/cdn/chunks/chunk-I3PDGPL6.js +48 -0
  99. package/cdn/chunks/chunk-I4G5VXGD.js +5 -0
  100. package/cdn/chunks/chunk-IHVTWACH.js +8 -0
  101. package/cdn/chunks/chunk-IJBHBPIR.js +1 -0
  102. package/cdn/chunks/chunk-ILEDSBLL.js +8 -0
  103. package/cdn/chunks/chunk-IPISUVWE.js +8 -0
  104. package/cdn/chunks/chunk-IYZLVTNL.js +5 -0
  105. package/cdn/chunks/chunk-J3NAMJRF.js +55 -0
  106. package/cdn/chunks/chunk-J5P2GBPV.js +1 -0
  107. package/cdn/chunks/chunk-JHMA3APO.js +3638 -0
  108. package/cdn/chunks/chunk-JJNOTSC4.js +5 -0
  109. package/cdn/chunks/chunk-JVPQQZNX.js +5 -0
  110. package/cdn/chunks/chunk-JYF2SOPC.js +6 -0
  111. package/cdn/chunks/chunk-K42MGICV.js +1 -0
  112. package/cdn/chunks/chunk-K7NB4LHE.js +1 -0
  113. package/cdn/chunks/chunk-KASON6Y7.js +17 -0
  114. package/cdn/chunks/chunk-KKQK6WIG.js +1 -0
  115. package/cdn/chunks/chunk-KP6MWEDW.js +5 -0
  116. package/cdn/chunks/chunk-KWDCU3P6.js +1482 -0
  117. package/cdn/chunks/chunk-KY3OKCFK.js +8 -0
  118. package/cdn/chunks/chunk-LBMZYOKF.js +8 -0
  119. package/cdn/chunks/chunk-LC7KE332.js +1 -0
  120. package/cdn/chunks/chunk-LIUOA3YV.js +1 -0
  121. package/cdn/chunks/chunk-LO2NM3CE.js +1 -0
  122. package/cdn/chunks/chunk-LO4MJ72X.js +8 -0
  123. package/cdn/chunks/chunk-LRGALTZX.js +1 -0
  124. package/cdn/chunks/chunk-LRIOWAOJ.js +8 -0
  125. package/cdn/chunks/chunk-LS3OPHR4.js +8 -0
  126. package/cdn/chunks/chunk-LVKOQVTZ.js +17 -0
  127. package/cdn/chunks/chunk-M4VO4BD3.js +1471 -0
  128. package/cdn/chunks/chunk-M53CKFQE.js +5 -0
  129. package/cdn/chunks/chunk-M5UOISZJ.js +1482 -0
  130. package/cdn/chunks/chunk-MAPVFADC.js +5 -0
  131. package/cdn/chunks/chunk-MD33BNWM.js +1 -0
  132. package/cdn/chunks/chunk-MICRS5DH.js +8 -0
  133. package/cdn/chunks/chunk-MLEUGPRW.js +8 -0
  134. package/cdn/chunks/chunk-MM76ZODZ.js +8 -0
  135. package/cdn/chunks/chunk-MQVMYZ75.js +1 -0
  136. package/cdn/chunks/chunk-MRQ46JRY.js +8 -0
  137. package/cdn/chunks/chunk-MSOBQUON.js +10 -0
  138. package/cdn/chunks/chunk-MVGI4SNI.js +17 -0
  139. package/cdn/chunks/chunk-MYXD4BOJ.js +2 -0
  140. package/cdn/chunks/chunk-MZRZP33C.js +1 -0
  141. package/cdn/chunks/chunk-NDMZ2RAB.js +48 -0
  142. package/cdn/chunks/chunk-NHHA3O6Y.js +1 -0
  143. package/cdn/chunks/chunk-NJ3OVLBF.js +1 -0
  144. package/cdn/chunks/chunk-NJP4VZB3.js +8 -0
  145. package/cdn/chunks/chunk-NO3TZB6T.js +5 -0
  146. package/cdn/chunks/chunk-NRY6IJSD.js +5 -0
  147. package/cdn/chunks/chunk-NVZTYSGS.js +1 -0
  148. package/cdn/chunks/chunk-NXQQIB7Y.js +5 -0
  149. package/cdn/chunks/chunk-O4RAJ3LM.js +25 -0
  150. package/cdn/chunks/chunk-OENDUEU2.js +5 -0
  151. package/cdn/chunks/chunk-OEZI5WCY.js +18 -0
  152. package/cdn/chunks/chunk-ON6ISIIV.js +1 -0
  153. package/cdn/chunks/chunk-OOEY4RSQ.js +1 -0
  154. package/cdn/chunks/chunk-OR67S36X.js +5 -0
  155. package/cdn/chunks/chunk-OSLUHYFD.js +8 -0
  156. package/cdn/chunks/chunk-OUQFWBVG.js +8 -0
  157. package/cdn/chunks/chunk-P6L4B5GC.js +1 -0
  158. package/cdn/chunks/chunk-PF74FX32.js +1 -0
  159. package/cdn/chunks/chunk-PFCJVHJ3.js +10 -0
  160. package/cdn/chunks/chunk-PMYTST5N.js +17 -0
  161. package/cdn/chunks/chunk-PP62N3C4.js +8 -0
  162. package/cdn/chunks/chunk-PPSGCGRR.js +8 -0
  163. package/cdn/chunks/chunk-PQLJWD6V.js +21 -0
  164. package/cdn/chunks/chunk-PTQFS3S5.js +2 -0
  165. package/cdn/chunks/chunk-PU7OABT3.js +1 -0
  166. package/cdn/chunks/chunk-Q2CKZUYX.js +1 -0
  167. package/cdn/chunks/chunk-Q4EENVQD.js +1 -0
  168. package/cdn/chunks/chunk-Q64V7VQU.js +1 -0
  169. package/cdn/chunks/chunk-QCDT25GU.js +8 -0
  170. package/cdn/chunks/chunk-QEFO63QX.js +8 -0
  171. package/cdn/chunks/chunk-QIZBL4QP.js +1 -0
  172. package/cdn/chunks/chunk-QYCLNTAQ.js +1 -0
  173. package/cdn/chunks/chunk-RGNFAPWY.js +2 -0
  174. package/cdn/chunks/chunk-RHEBGA4B.js +1 -0
  175. package/cdn/chunks/chunk-RQSAQ6H4.js +1 -0
  176. package/cdn/chunks/chunk-RTVTE2XY.js +1482 -0
  177. package/cdn/chunks/chunk-S5QDLZ6J.js +1 -0
  178. package/cdn/chunks/chunk-SBACDLL6.js +73 -0
  179. package/cdn/chunks/chunk-SBWSYKE5.js +5 -0
  180. package/cdn/chunks/chunk-SVWD3DJK.js +1 -0
  181. package/cdn/chunks/chunk-SXRIA7VB.js +8 -0
  182. package/cdn/chunks/chunk-SYTQX5DA.js +1 -0
  183. package/cdn/chunks/chunk-TLK5RNXE.js +1 -0
  184. package/cdn/chunks/chunk-TOK64KBR.js +5 -0
  185. package/cdn/chunks/chunk-TR7WXOQR.js +1 -0
  186. package/cdn/chunks/chunk-UMDZKG6K.js +1 -0
  187. package/cdn/chunks/chunk-UNK5GKOK.js +5 -0
  188. package/cdn/chunks/chunk-V2AJKKRF.js +1470 -0
  189. package/cdn/chunks/chunk-V3EJROZX.js +3649 -0
  190. package/cdn/chunks/chunk-VEG7LKS3.js +48 -0
  191. package/cdn/chunks/chunk-VNZCEVYY.js +24 -0
  192. package/cdn/chunks/chunk-VQ2JX2OE.js +5 -0
  193. package/cdn/chunks/chunk-VUJWHOI6.js +1482 -0
  194. package/cdn/chunks/chunk-W73FT5JE.js +48 -0
  195. package/cdn/chunks/chunk-W7O6UFTQ.js +5 -0
  196. package/cdn/chunks/chunk-WCCTDLQ4.js +8 -0
  197. package/cdn/chunks/chunk-WOKUXDJR.js +8 -0
  198. package/cdn/chunks/chunk-WPXZSIUM.js +5 -0
  199. package/cdn/chunks/chunk-WTUHCDEZ.js +10 -0
  200. package/cdn/chunks/chunk-WV5B4HNF.js +1471 -0
  201. package/cdn/chunks/chunk-WWMMW7RJ.js +1 -0
  202. package/cdn/chunks/chunk-X3JAXGAZ.js +8 -0
  203. package/cdn/chunks/chunk-X4FA36TC.js +1 -0
  204. package/cdn/chunks/chunk-XA25EXKN.js +1 -0
  205. package/cdn/chunks/chunk-XBLYTLX6.js +5 -0
  206. package/cdn/chunks/chunk-XH36X5UJ.js +1482 -0
  207. package/cdn/chunks/chunk-XJ2CFTZP.js +1 -0
  208. package/cdn/chunks/chunk-XJWUPDZ4.js +10 -0
  209. package/cdn/chunks/chunk-XMKJLLUL.js +1 -0
  210. package/cdn/chunks/chunk-XMS6AFBV.js +5 -0
  211. package/cdn/chunks/chunk-XSVPZFGN.js +1 -0
  212. package/cdn/chunks/chunk-XYWB7S55.js +1482 -0
  213. package/cdn/chunks/chunk-Y2P4IF3E.js +1 -0
  214. package/cdn/chunks/chunk-Y3BICHQ5.js +6 -0
  215. package/cdn/chunks/chunk-YCBNF5QU.js +17 -0
  216. package/cdn/chunks/chunk-YEGYR7SL.js +5 -0
  217. package/cdn/chunks/chunk-YEK2E3FB.js +8 -0
  218. package/cdn/chunks/chunk-YHLQ2JQ2.js +1 -0
  219. package/cdn/chunks/chunk-YIRZSKIP.js +2 -0
  220. package/cdn/chunks/chunk-YM5QNYGZ.js +5 -0
  221. package/cdn/chunks/chunk-YOTJAW26.js +6 -0
  222. package/cdn/chunks/chunk-Z7KIJX7V.js +1482 -0
  223. package/cdn/chunks/chunk-ZCQFKXZ3.js +48 -0
  224. package/cdn/chunks/chunk-ZKOKGZBL.js +5 -0
  225. package/cdn/chunks/chunk-ZO5G6CHW.js +1470 -0
  226. package/cdn/chunks/chunk-ZPCQH3EY.js +10 -0
  227. package/cdn/chunks/chunk-ZUQ72RIQ.js +8 -0
  228. package/cdn/chunks/chunk-ZZNCHSYH.js +5 -0
  229. package/cdn/exports/computed-item.context.js +1 -1
  230. package/cdn/exports/computed.context.js +1 -1
  231. package/cdn/exports/config.context.js +1 -1
  232. package/cdn/exports/interaction.js +1 -1
  233. package/cdn/exports/item.context.js +1 -1
  234. package/cdn/exports/qti-assessment-item.context.js +1 -1
  235. package/cdn/exports/qti-condition-expression.js +1 -1
  236. package/cdn/exports/qti-expression.js +1 -1
  237. package/cdn/exports/qti.context.js +1 -0
  238. package/cdn/exports/session.context.js +1 -1
  239. package/cdn/exports/test.context.js +1 -1
  240. package/cdn/index.global.js +1 -1
  241. package/cdn/index.js +1 -1
  242. package/cdn/qti-components/index.js +1 -1
  243. package/cdn/qti-item/components/item-container.js +1 -1
  244. package/cdn/qti-item/components/item-correct-response-mode.js +10 -0
  245. package/cdn/qti-item/components/item-show-candidate-correction.js +8 -0
  246. package/cdn/qti-item/components/item-show-correct-response.js +1 -1
  247. package/cdn/qti-item/components/print-item-variables.js +1 -1
  248. package/cdn/qti-item/components/styles.js +1 -1
  249. package/cdn/qti-item/core/index.js +1 -1
  250. package/cdn/qti-loader/index.js +1 -1
  251. package/cdn/qti-test/components/index.js +1 -1
  252. package/cdn/qti-test/components/styles.js +1 -1
  253. package/cdn/qti-test/components/test-check-item.js +1 -1
  254. package/cdn/qti-test/components/test-container.js +1 -1
  255. package/cdn/qti-test/components/test-end-attempt.js +1 -1
  256. package/cdn/qti-test/components/test-item-link.js +1 -1
  257. package/cdn/qti-test/components/test-navigation.js +1 -1
  258. package/cdn/qti-test/components/test-next.js +1 -1
  259. package/cdn/qti-test/components/test-paging-buttons-stamp.js +1 -1
  260. package/cdn/qti-test/components/test-prev.js +1 -1
  261. package/cdn/qti-test/components/test-print-context.js +1 -1
  262. package/cdn/qti-test/components/test-print-item-variables.js +1 -1
  263. package/cdn/qti-test/components/test-scoring-buttons.js +1 -1
  264. package/cdn/qti-test/components/test-scoring-feedback.js +1 -1
  265. package/cdn/qti-test/components/test-section-buttons-stamp.js +1 -1
  266. package/cdn/qti-test/components/test-section-link.js +1 -1
  267. package/cdn/qti-test/components/test-show-correct-response.js +1 -1
  268. package/cdn/qti-test/components/test-stamp.js +1 -1
  269. package/cdn/qti-test/components/test-view-toggle.js +1 -1
  270. package/cdn/qti-test/components/test-view.js +1 -1
  271. package/cdn/qti-test/core/index.js +1 -1
  272. package/cdn/qti-transformers/index.js +1 -1
  273. package/dist/chunks/chunk-32TQEF77.js +142 -0
  274. package/dist/chunks/chunk-32TQEF77.js.map +1 -0
  275. package/dist/chunks/chunk-34THNRGC.js +8093 -0
  276. package/dist/chunks/chunk-34THNRGC.js.map +1 -0
  277. package/dist/chunks/chunk-3JJM4BKK.js +367 -0
  278. package/dist/chunks/chunk-3JJM4BKK.js.map +1 -0
  279. package/dist/chunks/chunk-3LX4O663.js +3688 -0
  280. package/dist/chunks/chunk-3LX4O663.js.map +1 -0
  281. package/dist/chunks/chunk-3O3BVPXQ.js +8655 -0
  282. package/dist/chunks/chunk-3O3BVPXQ.js.map +1 -0
  283. package/dist/chunks/chunk-3SABVS4P.js +19 -0
  284. package/dist/chunks/chunk-3SABVS4P.js.map +1 -0
  285. package/dist/chunks/chunk-4A6SHFWN.js +8093 -0
  286. package/dist/chunks/chunk-4A6SHFWN.js.map +1 -0
  287. package/dist/chunks/chunk-4D3G23AV.js +94 -0
  288. package/dist/chunks/chunk-4D3G23AV.js.map +1 -0
  289. package/dist/chunks/chunk-4PG2PZHY.js +8924 -0
  290. package/dist/chunks/chunk-4PG2PZHY.js.map +1 -0
  291. package/dist/chunks/chunk-55C6NAK5.js +142 -0
  292. package/dist/chunks/chunk-55C6NAK5.js.map +1 -0
  293. package/dist/chunks/chunk-565QP4OA.js +94 -0
  294. package/dist/chunks/chunk-565QP4OA.js.map +1 -0
  295. package/dist/chunks/chunk-5MAENJ2J.js +913 -0
  296. package/dist/chunks/chunk-5MAENJ2J.js.map +1 -0
  297. package/dist/chunks/chunk-5P64MALP.js +3640 -0
  298. package/dist/chunks/chunk-5P64MALP.js.map +1 -0
  299. package/dist/chunks/chunk-65YQSKWV.js +94 -0
  300. package/dist/chunks/chunk-65YQSKWV.js.map +1 -0
  301. package/dist/chunks/chunk-6EQ4U5EP.js +142 -0
  302. package/dist/chunks/chunk-6EQ4U5EP.js.map +1 -0
  303. package/dist/chunks/chunk-6NLDLAQA.js +367 -0
  304. package/dist/chunks/chunk-6NLDLAQA.js.map +1 -0
  305. package/dist/chunks/chunk-6OB2U3VU.js +287 -0
  306. package/dist/chunks/chunk-6OB2U3VU.js.map +1 -0
  307. package/dist/chunks/chunk-7XIK3UQX.js +3628 -0
  308. package/dist/chunks/chunk-7XIK3UQX.js.map +1 -0
  309. package/dist/chunks/chunk-7Z7KA2QQ.js +142 -0
  310. package/dist/chunks/chunk-7Z7KA2QQ.js.map +1 -0
  311. package/dist/chunks/chunk-ARBFS6D6.js +8924 -0
  312. package/dist/chunks/chunk-ARBFS6D6.js.map +1 -0
  313. package/dist/chunks/chunk-AVMYQQT2.js +94 -0
  314. package/dist/chunks/chunk-AVMYQQT2.js.map +1 -0
  315. package/dist/chunks/chunk-B2IUQFUU.js +913 -0
  316. package/dist/chunks/chunk-B2IUQFUU.js.map +1 -0
  317. package/dist/chunks/chunk-B2O3YM5H.js +8093 -0
  318. package/dist/chunks/chunk-B2O3YM5H.js.map +1 -0
  319. package/dist/chunks/chunk-D2VLZ4I5.js +8755 -0
  320. package/dist/chunks/chunk-D2VLZ4I5.js.map +1 -0
  321. package/dist/chunks/chunk-DDSFGYAK.js +913 -0
  322. package/dist/chunks/chunk-DDSFGYAK.js.map +1 -0
  323. package/dist/chunks/chunk-DJUWVE3Q.js +8655 -0
  324. package/dist/chunks/chunk-DJUWVE3Q.js.map +1 -0
  325. package/dist/chunks/chunk-DPJNXSTI.js +19 -0
  326. package/dist/chunks/chunk-DPJNXSTI.js.map +1 -0
  327. package/dist/chunks/chunk-E7DT7SMT.js +8655 -0
  328. package/dist/chunks/chunk-E7DT7SMT.js.map +1 -0
  329. package/dist/chunks/chunk-EB3ZESWL.js +367 -0
  330. package/dist/chunks/chunk-EB3ZESWL.js.map +1 -0
  331. package/dist/chunks/chunk-EBODGAT7.js +113 -0
  332. package/dist/chunks/chunk-EBODGAT7.js.map +1 -0
  333. package/dist/chunks/chunk-EMOJR4QG.js +913 -0
  334. package/dist/chunks/chunk-EMOJR4QG.js.map +1 -0
  335. package/dist/chunks/chunk-ERYHQVOT.js +8 -0
  336. package/dist/chunks/chunk-ERYHQVOT.js.map +1 -0
  337. package/dist/chunks/chunk-F6RSPPVW.js +94 -0
  338. package/dist/chunks/chunk-F6RSPPVW.js.map +1 -0
  339. package/dist/chunks/chunk-FL72PF4D.js +19 -0
  340. package/dist/chunks/chunk-FL72PF4D.js.map +1 -0
  341. package/dist/chunks/chunk-GFCOR6TX.js +146 -0
  342. package/dist/chunks/chunk-GFCOR6TX.js.map +1 -0
  343. package/dist/chunks/chunk-GMXDW4I3.js +913 -0
  344. package/dist/chunks/chunk-GMXDW4I3.js.map +1 -0
  345. package/dist/chunks/chunk-GQUBYVP3.js +913 -0
  346. package/dist/chunks/chunk-GQUBYVP3.js.map +1 -0
  347. package/dist/chunks/chunk-H6KHXSIO.js +8 -0
  348. package/dist/chunks/chunk-H6KHXSIO.js.map +1 -0
  349. package/dist/chunks/chunk-HEP5QRPW.js +94 -0
  350. package/dist/chunks/chunk-HEP5QRPW.js.map +1 -0
  351. package/dist/chunks/chunk-HFAUM56X.js +208 -0
  352. package/dist/chunks/chunk-HFAUM56X.js.map +1 -0
  353. package/dist/chunks/chunk-HYMSLOZ7.js +103 -0
  354. package/dist/chunks/chunk-HYMSLOZ7.js.map +1 -0
  355. package/dist/chunks/chunk-IAEGLQ4C.js +144 -0
  356. package/dist/chunks/chunk-IAEGLQ4C.js.map +1 -0
  357. package/dist/chunks/chunk-J2HZTWER.js +8093 -0
  358. package/dist/chunks/chunk-J2HZTWER.js.map +1 -0
  359. package/dist/chunks/chunk-JARLFKS7.js +913 -0
  360. package/dist/chunks/chunk-JARLFKS7.js.map +1 -0
  361. package/dist/chunks/chunk-JATNQ3KB.js +913 -0
  362. package/dist/chunks/chunk-JATNQ3KB.js.map +1 -0
  363. package/dist/chunks/chunk-JOASLKRQ.js +914 -0
  364. package/dist/chunks/chunk-JOASLKRQ.js.map +1 -0
  365. package/dist/chunks/chunk-K4QJBUIX.js +367 -0
  366. package/dist/chunks/chunk-K4QJBUIX.js.map +1 -0
  367. package/dist/chunks/chunk-KCTFNJO4.js +8748 -0
  368. package/dist/chunks/chunk-KCTFNJO4.js.map +1 -0
  369. package/dist/chunks/chunk-KJQYKXDV.js +173 -0
  370. package/dist/chunks/chunk-KJQYKXDV.js.map +1 -0
  371. package/dist/chunks/chunk-KXVYWSJU.js +8068 -0
  372. package/dist/chunks/chunk-KXVYWSJU.js.map +1 -0
  373. package/dist/chunks/chunk-KYN4AAHS.js +8839 -0
  374. package/dist/chunks/chunk-KYN4AAHS.js.map +1 -0
  375. package/dist/chunks/chunk-LUZGWGSR.js +913 -0
  376. package/dist/chunks/chunk-LUZGWGSR.js.map +1 -0
  377. package/dist/chunks/chunk-MI7IF36Z.js +367 -0
  378. package/dist/chunks/chunk-MI7IF36Z.js.map +1 -0
  379. package/dist/chunks/chunk-MLRMRXGZ.js +367 -0
  380. package/dist/chunks/chunk-MLRMRXGZ.js.map +1 -0
  381. package/dist/chunks/chunk-MOBVIJE2.js +913 -0
  382. package/dist/chunks/chunk-MOBVIJE2.js.map +1 -0
  383. package/dist/chunks/chunk-MOIHNOX3.js +94 -0
  384. package/dist/chunks/chunk-MOIHNOX3.js.map +1 -0
  385. package/dist/chunks/chunk-NJ5O743W.js +311 -0
  386. package/dist/chunks/chunk-NJ5O743W.js.map +1 -0
  387. package/dist/chunks/chunk-NMQ4USN7.js +913 -0
  388. package/dist/chunks/chunk-NMQ4USN7.js.map +1 -0
  389. package/dist/chunks/chunk-NRKCQIQS.js +8 -0
  390. package/dist/chunks/chunk-NRKCQIQS.js.map +1 -0
  391. package/dist/chunks/chunk-NRNSOUTF.js +913 -0
  392. package/dist/chunks/chunk-NRNSOUTF.js.map +1 -0
  393. package/dist/chunks/chunk-OBAABB63.js +8093 -0
  394. package/dist/chunks/chunk-OBAABB63.js.map +1 -0
  395. package/dist/chunks/chunk-OREGQJ7H.js +19 -0
  396. package/dist/chunks/chunk-OREGQJ7H.js.map +1 -0
  397. package/dist/chunks/chunk-P2PRB5IZ.js +94 -0
  398. package/dist/chunks/chunk-P2PRB5IZ.js.map +1 -0
  399. package/dist/chunks/chunk-PF5X3SZR.js +94 -0
  400. package/dist/chunks/chunk-PF5X3SZR.js.map +1 -0
  401. package/dist/chunks/chunk-QCB6P7DH.js +146 -0
  402. package/dist/chunks/chunk-QCB6P7DH.js.map +1 -0
  403. package/dist/chunks/chunk-QU7KR7VX.js +367 -0
  404. package/dist/chunks/chunk-QU7KR7VX.js.map +1 -0
  405. package/dist/chunks/chunk-RJZ4D6XM.js +88 -0
  406. package/dist/chunks/chunk-RJZ4D6XM.js.map +1 -0
  407. package/dist/chunks/chunk-RTSIFU3A.js +8924 -0
  408. package/dist/chunks/chunk-RTSIFU3A.js.map +1 -0
  409. package/dist/chunks/chunk-S72IAWSO.js +8770 -0
  410. package/dist/chunks/chunk-S72IAWSO.js.map +1 -0
  411. package/dist/chunks/chunk-SDN2PXF7.js +94 -0
  412. package/dist/chunks/chunk-SDN2PXF7.js.map +1 -0
  413. package/dist/chunks/chunk-SRJF5RCP.js +8772 -0
  414. package/dist/chunks/chunk-SRJF5RCP.js.map +1 -0
  415. package/dist/chunks/chunk-SZ3DDAJ7.js +142 -0
  416. package/dist/chunks/chunk-SZ3DDAJ7.js.map +1 -0
  417. package/dist/chunks/chunk-SZTQ6IWR.js +8835 -0
  418. package/dist/chunks/chunk-SZTQ6IWR.js.map +1 -0
  419. package/dist/chunks/chunk-TBHIUG43.js +19 -0
  420. package/dist/chunks/chunk-TBHIUG43.js.map +1 -0
  421. package/dist/chunks/chunk-TDIRV53C.js +3626 -0
  422. package/dist/chunks/chunk-TDIRV53C.js.map +1 -0
  423. package/dist/chunks/chunk-TJNZKBEN.js +88 -0
  424. package/dist/chunks/chunk-TJNZKBEN.js.map +1 -0
  425. package/dist/chunks/chunk-UHQVQBCL.js +89 -0
  426. package/dist/chunks/chunk-UHQVQBCL.js.map +1 -0
  427. package/dist/chunks/chunk-UUM4KYBV.js +914 -0
  428. package/dist/chunks/chunk-UUM4KYBV.js.map +1 -0
  429. package/dist/chunks/chunk-V4L4ONOK.js +914 -0
  430. package/dist/chunks/chunk-V4L4ONOK.js.map +1 -0
  431. package/dist/chunks/chunk-V7ACRMW7.js +914 -0
  432. package/dist/chunks/chunk-V7ACRMW7.js.map +1 -0
  433. package/dist/chunks/chunk-V7DSDBTC.js +142 -0
  434. package/dist/chunks/chunk-V7DSDBTC.js.map +1 -0
  435. package/dist/chunks/chunk-VCFCYQB4.js +315 -0
  436. package/dist/chunks/chunk-VCFCYQB4.js.map +1 -0
  437. package/dist/chunks/chunk-WEKBCXNI.js +8839 -0
  438. package/dist/chunks/chunk-WEKBCXNI.js.map +1 -0
  439. package/dist/chunks/chunk-WN6TJQI2.js +103 -0
  440. package/dist/chunks/chunk-WN6TJQI2.js.map +1 -0
  441. package/dist/chunks/chunk-WUSKUUQL.js +3639 -0
  442. package/dist/chunks/chunk-WUSKUUQL.js.map +1 -0
  443. package/dist/chunks/chunk-WVB7FS2F.js +913 -0
  444. package/dist/chunks/chunk-WVB7FS2F.js.map +1 -0
  445. package/dist/chunks/chunk-WY5BKP4C.js +19 -0
  446. package/dist/chunks/chunk-WY5BKP4C.js.map +1 -0
  447. package/dist/chunks/chunk-XFJJETQG.js +913 -0
  448. package/dist/chunks/chunk-XFJJETQG.js.map +1 -0
  449. package/dist/chunks/chunk-XM2JOPVU.js +914 -0
  450. package/dist/chunks/chunk-XM2JOPVU.js.map +1 -0
  451. package/dist/chunks/chunk-XNMAPACM.js +19 -0
  452. package/dist/chunks/chunk-XNMAPACM.js.map +1 -0
  453. package/dist/chunks/chunk-Y2DMMGRW.js +8657 -0
  454. package/dist/chunks/chunk-Y2DMMGRW.js.map +1 -0
  455. package/dist/chunks/chunk-Y4DXEVZM.js +8770 -0
  456. package/dist/chunks/chunk-Y4DXEVZM.js.map +1 -0
  457. package/dist/chunks/chunk-Y4VJXTG5.js +8754 -0
  458. package/dist/chunks/chunk-Y4VJXTG5.js.map +1 -0
  459. package/dist/chunks/chunk-YFTXNRNZ.js +913 -0
  460. package/dist/chunks/chunk-YFTXNRNZ.js.map +1 -0
  461. package/dist/chunks/chunk-YRVKKM47.js +365 -0
  462. package/dist/chunks/chunk-YRVKKM47.js.map +1 -0
  463. package/dist/chunks/chunk-YWEWSQJR.js +40 -0
  464. package/dist/chunks/chunk-YWEWSQJR.js.map +1 -0
  465. package/dist/chunks/chunk-Z3PFCZLH.js +913 -0
  466. package/dist/chunks/chunk-Z3PFCZLH.js.map +1 -0
  467. package/dist/chunks/chunk-ZB27F2HA.js +366 -0
  468. package/dist/chunks/chunk-ZB27F2HA.js.map +1 -0
  469. package/dist/chunks/chunk-ZZIDNW4D.js +914 -0
  470. package/dist/chunks/chunk-ZZIDNW4D.js.map +1 -0
  471. package/dist/exports/computed-item.context.d.ts +3 -1
  472. package/dist/exports/computed.context.d.ts +4 -2
  473. package/dist/exports/config.context.d.ts +4 -1
  474. package/dist/exports/config.context.js +1 -1
  475. package/dist/exports/expression-result.d.ts +2 -2
  476. package/dist/exports/interaction.d.ts +3 -1
  477. package/dist/exports/interaction.js +5 -1
  478. package/dist/exports/item.context.d.ts +3 -1
  479. package/dist/exports/qti-assessment-item.context.d.ts +3 -1
  480. package/dist/exports/qti-condition-expression.d.ts +3 -1
  481. package/dist/exports/qti-condition-expression.js +3 -2
  482. package/dist/exports/qti-expression.d.ts +3 -1
  483. package/dist/exports/qti-expression.js +2 -1
  484. package/dist/exports/qti-test.d.ts +5 -3
  485. package/dist/exports/qti.context.d.ts +14 -0
  486. package/dist/exports/qti.context.js +8 -0
  487. package/dist/exports/qti.context.js.map +1 -0
  488. package/dist/exports/session.context.d.ts +4 -2
  489. package/dist/exports/test.context.d.ts +3 -1
  490. package/dist/exports/variables.d.ts +3 -1
  491. package/dist/index.d.ts +5 -4
  492. package/dist/index.js +75 -55
  493. package/dist/item.css +90 -18
  494. package/dist/qti-components/index.d.ts +159 -5
  495. package/dist/qti-components/index.js +28 -6
  496. package/dist/qti-components-jsx.d.ts +3787 -1466
  497. package/dist/qti-item/components/item-container.js +2 -2
  498. package/dist/qti-item/components/item-correct-response-mode.d.ts +17 -0
  499. package/dist/qti-item/components/item-correct-response-mode.js +62 -0
  500. package/dist/qti-item/components/item-correct-response-mode.js.map +1 -0
  501. package/dist/qti-item/components/item-show-candidate-correction.d.ts +34 -0
  502. package/dist/qti-item/components/item-show-candidate-correction.js +88 -0
  503. package/dist/qti-item/components/item-show-candidate-correction.js.map +1 -0
  504. package/dist/qti-item/components/item-show-correct-response.d.ts +3 -1
  505. package/dist/qti-item/components/item-show-correct-response.js +1 -1
  506. package/dist/qti-item/components/print-item-variables.d.ts +3 -1
  507. package/dist/qti-item/core/index.d.ts +10 -3
  508. package/dist/qti-item/core/index.js +8 -7
  509. package/dist/qti-loader/index.d.ts +3 -1
  510. package/dist/qti-response-declaration-B7a6N0wt.d.ts +1380 -0
  511. package/dist/qti-response-declaration-BKOw2_Pl.d.ts +1378 -0
  512. package/dist/qti-response-declaration-BTiPhwZv.d.ts +1370 -0
  513. package/dist/qti-response-declaration-Bthfzhwd.d.ts +1385 -0
  514. package/dist/qti-response-declaration-CNP03Vcb.d.ts +1386 -0
  515. package/dist/qti-response-declaration-CTRNB113.d.ts +1385 -0
  516. package/dist/qti-response-declaration-Cbj7E4ND.d.ts +1372 -0
  517. package/dist/qti-response-declaration-DKr08ANy.d.ts +1397 -0
  518. package/dist/qti-response-declaration-DRNG6zLy.d.ts +1370 -0
  519. package/dist/qti-response-declaration-DuRT3sKx.d.ts +1380 -0
  520. package/dist/qti-response-declaration-Dz6D30cF.d.ts +1397 -0
  521. package/dist/qti-response-declaration-GPP3SVur.d.ts +1372 -0
  522. package/dist/qti-response-declaration-d_tAAEFq.d.ts +1378 -0
  523. package/dist/qti-response-declaration-xVcD4HvN.d.ts +1386 -0
  524. package/dist/qti-test/components/index.d.ts +4 -3
  525. package/dist/qti-test/components/index.js +32 -32
  526. package/dist/qti-test/components/test-container.js +2 -2
  527. package/dist/qti-test/components/test-navigation.d.ts +16 -3
  528. package/dist/qti-test/components/test-navigation.js +3 -2
  529. package/dist/qti-test/components/test-next.d.ts +4 -2
  530. package/dist/qti-test/components/test-next.js +1 -2
  531. package/dist/qti-test/components/test-prev.d.ts +4 -2
  532. package/dist/qti-test/components/test-prev.js +1 -2
  533. package/dist/qti-test/components/test-print-context.d.ts +4 -2
  534. package/dist/qti-test/components/test-print-item-variables.d.ts +4 -2
  535. package/dist/qti-test/components/test-scoring-buttons.d.ts +4 -2
  536. package/dist/qti-test/components/test-scoring-feedback.d.ts +4 -2
  537. package/dist/qti-test/components/test-show-correct-response.d.ts +4 -2
  538. package/dist/qti-test/components/test-view.js +2 -2
  539. package/dist/qti-test/core/index.d.ts +5 -3
  540. package/dist/qti-test/core/index.js +10 -9
  541. package/dist/qti-test-feedback-B0W2B5wQ.d.ts +91 -0
  542. package/dist/qti-test-feedback-B1kTnqnI.d.ts +91 -0
  543. package/dist/qti-test-feedback-BAUInn-q.d.ts +91 -0
  544. package/dist/qti-test-feedback-BWerRaNG.d.ts +91 -0
  545. package/dist/qti-test-feedback-BXdbgpY8.d.ts +91 -0
  546. package/dist/qti-test-feedback-Bbt2VWE1.d.ts +91 -0
  547. package/dist/qti-test-feedback-Bskvq3FE.d.ts +91 -0
  548. package/dist/qti-test-feedback-C-PQYZWl.d.ts +91 -0
  549. package/dist/qti-test-feedback-CZsbp6z4.d.ts +91 -0
  550. package/dist/qti-test-feedback-CuTA6S46.d.ts +91 -0
  551. package/dist/qti-test-feedback-DUxJARNH.d.ts +91 -0
  552. package/dist/qti-test-feedback-SkEfQjOR.d.ts +91 -0
  553. package/dist/qti-test-feedback-dSr4W5Ft.d.ts +91 -0
  554. package/dist/qti-test-feedback-jBGxkr5n.d.ts +91 -0
  555. package/dist/vscode.html-custom-data.json +163 -39
  556. package/package.json +62 -65
@@ -0,0 +1,173 @@
1
+ import {
2
+ configContext
3
+ } from "./chunk-NRKCQIQS.js";
4
+ import {
5
+ __decorateClass
6
+ } from "./chunk-H2JE6IVU.js";
7
+
8
+ // src/lib/exports/interaction.ts
9
+ import { property, state } from "lit/decorators.js";
10
+ import { LitElement } from "lit";
11
+ import { consume } from "@lit/context";
12
+ var Interaction = class extends LitElement {
13
+ constructor() {
14
+ super();
15
+ this.disabled = false;
16
+ this.readonly = false;
17
+ this._isCorrect = null;
18
+ this._internals = this.attachInternals();
19
+ }
20
+ static {
21
+ this.formAssociated = true;
22
+ }
23
+ get isFullCorrectResponse() {
24
+ return this._isFullCorrectResponse;
25
+ }
26
+ set isFullCorrectResponse(val) {
27
+ this._isFullCorrectResponse = val;
28
+ }
29
+ get correctResponse() {
30
+ return this._correctResponse;
31
+ }
32
+ set correctResponse(val) {
33
+ this._correctResponse = val;
34
+ }
35
+ get isCorrect() {
36
+ return this._isCorrect;
37
+ }
38
+ set isCorrect(val) {
39
+ this._isCorrect = val;
40
+ }
41
+ toggleCorrectResponse(responseVariable, show) {
42
+ const correctResponseMode = this?.configContext?.correctResponseMode || "internal";
43
+ if (correctResponseMode === "full") {
44
+ this.toggleFullCorrectResponse(responseVariable, show);
45
+ } else {
46
+ this.toggleInternalCorrectResponse(responseVariable, show);
47
+ }
48
+ }
49
+ async toggleFullCorrectResponse(responseVariable, show) {
50
+ const nextSibling = this.nextElementSibling;
51
+ const nextSiblingIsFullCorrectResponse = nextSibling?.classList.contains("full-correct-response");
52
+ const isCorrect = responseVariable.correctResponse === responseVariable.value;
53
+ if (!show || isCorrect) {
54
+ if (!nextSiblingIsFullCorrectResponse) {
55
+ return;
56
+ }
57
+ this.parentElement?.removeChild(nextSibling);
58
+ }
59
+ if (nextSiblingIsFullCorrectResponse) {
60
+ return;
61
+ }
62
+ if (isCorrect) {
63
+ return;
64
+ }
65
+ const clone = this.cloneNode(true);
66
+ clone.isFullCorrectResponse = true;
67
+ clone.disabled = true;
68
+ const containerDiv = document.createElement("div");
69
+ containerDiv.classList.add("full-correct-response");
70
+ containerDiv.role = "full-correct-response";
71
+ containerDiv.appendChild(clone);
72
+ clone.setAttribute("response-identifier", this.responseIdentifier + "_cr");
73
+ this.parentElement?.insertBefore(containerDiv, this.nextElementSibling);
74
+ await clone.updateComplete;
75
+ clone.response = Array.isArray(responseVariable.correctResponse) ? [...responseVariable.correctResponse] : responseVariable.correctResponse;
76
+ const responseVariableClone = { ...responseVariable };
77
+ responseVariableClone.value = responseVariable.correctResponse;
78
+ clone.toggleCandidateCorrection(responseVariableClone, true);
79
+ }
80
+ toggleInternalCorrectResponse(responseVariable, show) {
81
+ this.correctResponse = show ? responseVariable?.correctResponse : responseVariable?.cardinality === "single" ? "" : [];
82
+ }
83
+ toggleCandidateCorrection(responseVariable, show) {
84
+ this.isCorrect = show ? responseVariable.correctResponse === responseVariable.value : null;
85
+ this._internals.states.delete("candidate-correct");
86
+ this._internals.states.delete("candidate-incorrect");
87
+ if (this.isCorrect === true) {
88
+ this._internals.states.add("candidate-correct");
89
+ }
90
+ if (this.isCorrect === false) {
91
+ this._internals.states.add("candidate-incorrect");
92
+ }
93
+ }
94
+ get value() {
95
+ return JSON.stringify(this.response);
96
+ }
97
+ set value(val) {
98
+ this.response = val ? JSON.parse(val) : null;
99
+ }
100
+ reportValidity() {
101
+ return this._internals.reportValidity();
102
+ }
103
+ reset() {
104
+ this.response = null;
105
+ }
106
+ // attributeChangedCallback(name: string, _old: string | null, value: string | null): void {
107
+ // super.attributeChangedCallback(name, _old, value);
108
+ // // changing attributes in lit is not a thing, they are defined in the QTI XML and will never change
109
+ // // except in storybook where we can change the value of the attribute
110
+ // // this can make the internal state out of sync with the attribute
111
+ // // so we reset the value to null to force the internal state to be reset
112
+ // const attributeNamesToExclude = ['style', 'class'];
113
+ // if (!attributeNamesToExclude.includes(name)) {
114
+ // this.reset();
115
+ // }
116
+ // }
117
+ connectedCallback() {
118
+ super.connectedCallback();
119
+ if (this.isFullCorrectResponse) {
120
+ return;
121
+ }
122
+ this.dispatchEvent(
123
+ new CustomEvent("qti-register-interaction", {
124
+ bubbles: true,
125
+ composed: true,
126
+ cancelable: false,
127
+ detail: {
128
+ interactionElement: this,
129
+ responseIdentifier: this.responseIdentifier
130
+ }
131
+ })
132
+ );
133
+ }
134
+ saveResponse(value) {
135
+ this.dispatchEvent(
136
+ new CustomEvent("qti-interaction-response", {
137
+ bubbles: true,
138
+ composed: true,
139
+ cancelable: false,
140
+ detail: {
141
+ responseIdentifier: this.responseIdentifier,
142
+ response: Array.isArray(value) ? [...value] : value
143
+ }
144
+ })
145
+ );
146
+ }
147
+ };
148
+ __decorateClass([
149
+ consume({ context: configContext, subscribe: true })
150
+ ], Interaction.prototype, "configContext", 2);
151
+ __decorateClass([
152
+ property({ type: String, attribute: "response-identifier" })
153
+ ], Interaction.prototype, "responseIdentifier", 2);
154
+ __decorateClass([
155
+ property({ reflect: true, type: Boolean })
156
+ ], Interaction.prototype, "disabled", 2);
157
+ __decorateClass([
158
+ property({ reflect: true, type: Boolean })
159
+ ], Interaction.prototype, "readonly", 2);
160
+ __decorateClass([
161
+ state()
162
+ ], Interaction.prototype, "_isFullCorrectResponse", 2);
163
+ __decorateClass([
164
+ state()
165
+ ], Interaction.prototype, "_correctResponse", 2);
166
+ __decorateClass([
167
+ state()
168
+ ], Interaction.prototype, "_isCorrect", 2);
169
+
170
+ export {
171
+ Interaction
172
+ };
173
+ //# sourceMappingURL=chunk-KJQYKXDV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/exports/interaction.ts"],"sourcesContent":["import { property, state } from 'lit/decorators.js';\nimport { LitElement } from 'lit';\nimport { consume } from '@lit/context';\n\nimport { configContext } from './config.context.ts';\n\nimport type { ConfigContext } from './config.context.ts';\nimport type { ResponseVariable } from './variables';\nimport type { IInteraction } from './interaction.interface';\n\nexport abstract class Interaction extends LitElement implements IInteraction {\n\n @consume({ context: configContext, subscribe: true })\n private configContext: ConfigContext;\n\n static formAssociated = true;\n protected _internals: ElementInternals;\n\n @property({ type: String, attribute: 'response-identifier' }) responseIdentifier;\n\n @property({ reflect: true, type: Boolean }) disabled = false;\n\n @property({ reflect: true, type: Boolean }) readonly = false;\n\n @state()\n protected _isFullCorrectResponse: boolean;\n\n get isFullCorrectResponse(): Readonly<boolean> {\n return this._isFullCorrectResponse;\n }\n\n set isFullCorrectResponse(val: Readonly<boolean>) {\n this._isFullCorrectResponse = val as boolean;\n }\n\n /* PK: Correct response */\n @state()\n protected _correctResponse: string | string[];\n\n get correctResponse(): Readonly<string | string[]> {\n return this._correctResponse;\n }\n\n set correctResponse(val: Readonly<string | string[]>) {\n this._correctResponse = val as string | string[];\n }\n\n @state()\n protected _isCorrect: boolean | null = null;\n\n get isCorrect(): Readonly<boolean | null> {\n return this._isCorrect;\n }\n\n set isCorrect(val: Readonly<boolean | null>) {\n this._isCorrect = val as boolean;\n }\n\n public toggleCorrectResponse(responseVariable: ResponseVariable, show: boolean) {\n const correctResponseMode = this?.configContext?.correctResponseMode || 'internal'\n\n if (correctResponseMode === 'full') {\n this.toggleFullCorrectResponse(responseVariable, show);\n } else {\n this.toggleInternalCorrectResponse(responseVariable, show);\n }\n }\n\n protected async toggleFullCorrectResponse(responseVariable: ResponseVariable, show: boolean) {\n const nextSibling = this.nextElementSibling;\n const nextSiblingIsFullCorrectResponse = nextSibling?.classList.contains('full-correct-response');\n\n const isCorrect = responseVariable.correctResponse === responseVariable.value;\n\n if (!show || isCorrect) { // Don't show with the correct answer responded\n if (!nextSiblingIsFullCorrectResponse) {\n return;\n }\n // Remove cloned interaction\n this.parentElement?.removeChild(nextSibling);\n }\n\n if (nextSiblingIsFullCorrectResponse) {\n return; // Already exists\n }\n\n if (isCorrect) {\n return;\n }\n\n // Add a clone of interaction with the correct response\n const clone = this.cloneNode(true) as Interaction;\n clone.isFullCorrectResponse = true;\n clone.disabled = true;\n\n const containerDiv = document.createElement('div');\n containerDiv.classList.add('full-correct-response');\n containerDiv.role = 'full-correct-response';\n containerDiv.appendChild(clone);\n clone.setAttribute('response-identifier', this.responseIdentifier + '_cr');\n\n this.parentElement?.insertBefore(containerDiv, this.nextElementSibling);\n await clone.updateComplete;\n\n clone.response = Array.isArray(responseVariable.correctResponse)\n ? [...responseVariable.correctResponse] as string[]\n : responseVariable.correctResponse as string;\n\n const responseVariableClone = { ...responseVariable };\n responseVariableClone.value = responseVariable.correctResponse;\n clone.toggleCandidateCorrection(responseVariableClone, true);\n }\n\n protected toggleInternalCorrectResponse(responseVariable: ResponseVariable, show: boolean) {\n this.correctResponse = show\n ? responseVariable?.correctResponse\n : responseVariable?.cardinality === 'single'\n ? ''\n : [];\n }\n\n public toggleCandidateCorrection(responseVariable: ResponseVariable, show: boolean) {\n this.isCorrect = show\n ? responseVariable.correctResponse === responseVariable.value\n : null;\n\n this._internals.states.delete('candidate-correct');\n this._internals.states.delete('candidate-incorrect');\n\n if (this.isCorrect === true) {\n this._internals.states.add('candidate-correct');\n }\n if (this.isCorrect === false) {\n this._internals.states.add('candidate-incorrect');\n }\n }\n\n constructor() {\n super();\n this._internals = this.attachInternals();\n }\n\n abstract validate(): boolean;\n\n get value(): string | null {\n return JSON.stringify(this.response);\n }\n\n set value(val: string | null) {\n this.response = val ? JSON.parse(val) : null;\n }\n\n abstract get response(): string | string[] | null;\n abstract set response(val: string | string[] | null);\n\n public reportValidity(): boolean {\n return this._internals.reportValidity();\n }\n\n public reset(): void {\n this.response = null;\n }\n\n // attributeChangedCallback(name: string, _old: string | null, value: string | null): void {\n // super.attributeChangedCallback(name, _old, value);\n // // changing attributes in lit is not a thing, they are defined in the QTI XML and will never change\n // // except in storybook where we can change the value of the attribute\n // // this can make the internal state out of sync with the attribute\n // // so we reset the value to null to force the internal state to be reset\n // const attributeNamesToExclude = ['style', 'class'];\n // if (!attributeNamesToExclude.includes(name)) {\n // this.reset();\n // }\n // }\n\n public override connectedCallback() {\n super.connectedCallback();\n\n if (this.isFullCorrectResponse) {\n return;\n }\n\n this.dispatchEvent(\n new CustomEvent('qti-register-interaction', {\n bubbles: true,\n composed: true,\n cancelable: false,\n detail: {\n interactionElement: this,\n responseIdentifier: this.responseIdentifier\n }\n })\n );\n }\n\n public saveResponse(value: string | string[]) {\n this.dispatchEvent(\n new CustomEvent('qti-interaction-response', {\n bubbles: true,\n composed: true,\n cancelable: false,\n detail: {\n responseIdentifier: this.responseIdentifier,\n response: Array.isArray(value) ? [...value] : value\n }\n })\n );\n }\n}\n"],"mappings":"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","names":[]}