@citolab/qti-components 7.0.9 → 7.0.10

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 (344) hide show
  1. package/cdn/chunks/chunk-22SOGZF4.js +1 -0
  2. package/cdn/chunks/chunk-2TYVSDOR.js +10 -0
  3. package/cdn/chunks/chunk-2UE47PDO.js +8 -0
  4. package/cdn/chunks/chunk-3AZDOXQ2.js +1 -0
  5. package/cdn/chunks/chunk-3JYWJ2NK.js +7 -0
  6. package/cdn/chunks/chunk-46LUBNDT.js +1 -0
  7. package/cdn/chunks/chunk-4AQLM6EU.js +1 -0
  8. package/cdn/chunks/chunk-4F3SWHSX.js +3537 -0
  9. package/cdn/chunks/chunk-4JDR4LHD.js +7 -0
  10. package/cdn/chunks/chunk-4PRM73PT.js +3530 -0
  11. package/cdn/chunks/chunk-4PWQZQY3.js +17 -0
  12. package/cdn/chunks/chunk-5A43OJRS.js +24 -0
  13. package/cdn/chunks/chunk-5E2MIJGV.js +0 -0
  14. package/cdn/chunks/chunk-5ETOPNVH.js +1 -0
  15. package/cdn/chunks/chunk-5HNHSP7A.js +3530 -0
  16. package/cdn/chunks/chunk-5JUDXKGO.js +7 -0
  17. package/cdn/chunks/chunk-6A2O5DS7.js +1 -0
  18. package/cdn/chunks/chunk-6FKGN7HB.js +1 -0
  19. package/cdn/chunks/chunk-7AZEP5VB.js +8 -0
  20. package/cdn/chunks/chunk-7CQK5FSF.js +3530 -0
  21. package/cdn/chunks/chunk-APXB6KK5.js +8 -0
  22. package/cdn/chunks/chunk-AV37OE2S.js +1 -0
  23. package/cdn/chunks/chunk-AWIOWT4I.js +1 -0
  24. package/cdn/chunks/chunk-BB6R7AIH.js +8 -0
  25. package/cdn/chunks/chunk-CKOTA237.js +1 -0
  26. package/cdn/chunks/chunk-CZTZFTHC.js +8 -0
  27. package/cdn/chunks/chunk-D3JZV5XV.js +1 -0
  28. package/cdn/chunks/chunk-DI3XOGVR.js +951 -0
  29. package/cdn/chunks/chunk-DSZDMYQL.js +1 -0
  30. package/cdn/chunks/chunk-ELG6OUC7.js +1 -0
  31. package/cdn/chunks/chunk-EQNTO3QG.js +8 -0
  32. package/cdn/chunks/chunk-ESTNU24A.js +1 -0
  33. package/cdn/chunks/chunk-EUHRWJ5R.js +48 -0
  34. package/cdn/chunks/chunk-EVPWT7PO.js +1 -0
  35. package/cdn/chunks/chunk-EXAWEKDS.js +1 -0
  36. package/cdn/chunks/chunk-FCESHSJ3.js +73 -0
  37. package/cdn/chunks/chunk-G457CJP5.js +1 -0
  38. package/cdn/chunks/chunk-GIFBDBLN.js +8 -0
  39. package/cdn/chunks/chunk-GIYY5ZKS.js +939 -0
  40. package/cdn/chunks/chunk-GTFFARVB.js +8 -0
  41. package/cdn/chunks/chunk-GYPMDM7U.js +41 -0
  42. package/cdn/chunks/chunk-HG75NNFK.js +1 -0
  43. package/cdn/chunks/chunk-HV4JN3XB.js +1 -0
  44. package/cdn/chunks/chunk-HXPYDFGQ.js +8 -0
  45. package/cdn/chunks/chunk-IDGQY66Q.js +8 -0
  46. package/cdn/chunks/chunk-J5BEBS4Y.js +1 -0
  47. package/cdn/chunks/chunk-JLT3S3BD.js +1 -0
  48. package/cdn/chunks/chunk-K2TKSKEN.js +1 -0
  49. package/cdn/chunks/chunk-K4LCPCDE.js +1 -0
  50. package/cdn/chunks/chunk-KFA5RO3O.js +1 -0
  51. package/cdn/chunks/chunk-KFLS5ISA.js +1 -0
  52. package/cdn/chunks/chunk-KJEXS4DB.js +1 -0
  53. package/cdn/chunks/chunk-L33RHCU4.js +1 -0
  54. package/cdn/chunks/chunk-LPXDIJR2.js +1 -0
  55. package/cdn/chunks/chunk-LQ3DVN7N.js +1 -0
  56. package/cdn/chunks/chunk-LXNE62HZ.js +1 -0
  57. package/cdn/chunks/chunk-M2YG5XJI.js +8 -0
  58. package/cdn/chunks/chunk-M5OZ7YYR.js +3537 -0
  59. package/cdn/chunks/chunk-MCB43U5P.js +1 -0
  60. package/cdn/chunks/chunk-NFO577XB.js +939 -0
  61. package/cdn/chunks/chunk-NXTUDFAR.js +8 -0
  62. package/cdn/chunks/chunk-PAQSIIBJ.js +939 -0
  63. package/cdn/chunks/chunk-PAWTFMTX.js +8 -0
  64. package/cdn/chunks/chunk-PP4PDVVF.js +1 -0
  65. package/cdn/chunks/chunk-PZ7WEWHR.js +41 -0
  66. package/cdn/chunks/chunk-QEQPGKII.js +939 -0
  67. package/cdn/chunks/chunk-QICNOCJ6.js +1 -0
  68. package/cdn/chunks/chunk-QII27W7O.js +1 -0
  69. package/cdn/chunks/chunk-QYXRVCGM.js +6 -0
  70. package/cdn/chunks/chunk-REVF4YJC.js +8 -0
  71. package/cdn/chunks/chunk-S7SSPYIM.js +1 -0
  72. package/cdn/chunks/chunk-SCAVRW3H.js +1 -0
  73. package/cdn/chunks/chunk-TAJ4OCKW.js +3530 -0
  74. package/cdn/chunks/chunk-TH2YUX3A.js +17 -0
  75. package/cdn/chunks/chunk-TV7GYNJO.js +1 -0
  76. package/cdn/chunks/chunk-UXPSLBXO.js +1 -0
  77. package/cdn/chunks/chunk-VCH5D4D5.js +1 -0
  78. package/cdn/chunks/chunk-VE4IM4WS.js +8 -0
  79. package/cdn/chunks/chunk-VQPS5EII.js +939 -0
  80. package/cdn/chunks/chunk-WIDUHBF5.js +8 -0
  81. package/cdn/chunks/chunk-WTMZDTN4.js +1 -0
  82. package/cdn/chunks/chunk-X6XFTJQH.js +8 -0
  83. package/cdn/chunks/chunk-XEXDWGVU.js +939 -0
  84. package/cdn/chunks/chunk-XHBOTQFL.js +1 -0
  85. package/cdn/chunks/chunk-Y3GKQGXZ.js +8 -0
  86. package/cdn/chunks/chunk-YM6G2V57.js +8 -0
  87. package/cdn/chunks/chunk-YWZPZLWC.js +1 -0
  88. package/cdn/chunks/chunk-YYGAT2GT.js +1 -0
  89. package/cdn/chunks/chunk-Z7NL2OYT.js +1 -0
  90. package/cdn/chunks/chunk-ZCSHWAC6.js +1 -0
  91. package/cdn/chunks/chunk-ZILMGYR5.js +1 -0
  92. package/cdn/chunks/chunk-ZJMQOR5E.js +0 -0
  93. package/cdn/chunks/chunk-ZXVHR32G.js +1 -0
  94. package/cdn/exports/config.context.js +1 -1
  95. package/cdn/exports/interaction.js +1 -1
  96. package/cdn/index.global.js +1 -1
  97. package/cdn/index.js +1 -1
  98. package/cdn/qti-components/index.js +1 -1
  99. package/cdn/qti-item/core/index.js +1 -1
  100. package/cdn/qti-test/components/index.js +1 -1
  101. package/cdn/qti-test/components/test-container.js +1 -1
  102. package/cdn/qti-test/components/test-end-attempt.js +1 -1
  103. package/cdn/qti-test/components/test-item-link.js +1 -1
  104. package/cdn/qti-test/components/test-navigation.js +1 -1
  105. package/cdn/qti-test/components/test-next.js +1 -1
  106. package/cdn/qti-test/components/test-paging-buttons-stamp copy.js +1 -0
  107. package/cdn/qti-test/components/test-paging-buttons-stamp.js +1 -1
  108. package/cdn/qti-test/components/test-paging-buttons-stamp.stories copy.css +1 -0
  109. package/cdn/qti-test/components/test-paging-buttons-stamp.stories copy.js +264 -0
  110. package/cdn/qti-test/components/test-prev.js +1 -1
  111. package/cdn/qti-test/components/test-print-item-variables.js +1 -0
  112. package/cdn/qti-test/components/test-section-buttons-stamp.js +1 -0
  113. package/cdn/qti-test/components/test-section-link.js +1 -0
  114. package/cdn/qti-test/components/test-show-correct-response.js +1 -1
  115. package/cdn/qti-test/core/index.js +1 -1
  116. package/dist/chunks/chunk-25BRPHJE.js +630 -0
  117. package/dist/chunks/chunk-25BRPHJE.js.map +1 -0
  118. package/dist/chunks/chunk-25ZCG5KD.js +6432 -0
  119. package/dist/chunks/chunk-25ZCG5KD.js.map +1 -0
  120. package/dist/chunks/chunk-2Q7RXYGX.js +213 -0
  121. package/dist/chunks/chunk-2Q7RXYGX.js.map +1 -0
  122. package/dist/chunks/chunk-2VA7CRTS.js +30 -0
  123. package/dist/chunks/chunk-2VA7CRTS.js.map +1 -0
  124. package/dist/chunks/chunk-36RGXVXQ.js +3634 -0
  125. package/dist/chunks/chunk-36RGXVXQ.js.map +1 -0
  126. package/dist/chunks/chunk-3F566AXX.js +210 -0
  127. package/dist/chunks/chunk-3F566AXX.js.map +1 -0
  128. package/dist/chunks/chunk-4475MTP7.js +630 -0
  129. package/dist/chunks/chunk-4475MTP7.js.map +1 -0
  130. package/dist/chunks/chunk-4GJ5LAU5.js +631 -0
  131. package/dist/chunks/chunk-4GJ5LAU5.js.map +1 -0
  132. package/dist/chunks/chunk-4HI4Q5TO.js +3641 -0
  133. package/dist/chunks/chunk-4HI4Q5TO.js.map +1 -0
  134. package/dist/chunks/chunk-4L5S7AON.js +621 -0
  135. package/dist/chunks/chunk-4L5S7AON.js.map +1 -0
  136. package/dist/chunks/chunk-52EWQN42.js +634 -0
  137. package/dist/chunks/chunk-52EWQN42.js.map +1 -0
  138. package/dist/chunks/chunk-5BSOZZMV.js +621 -0
  139. package/dist/chunks/chunk-5BSOZZMV.js.map +1 -0
  140. package/dist/chunks/chunk-5DFTIWBN.js +95 -0
  141. package/dist/chunks/chunk-5DFTIWBN.js.map +1 -0
  142. package/dist/chunks/chunk-5DZX4TPP.js +45 -0
  143. package/dist/chunks/chunk-5DZX4TPP.js.map +1 -0
  144. package/dist/chunks/chunk-5FQYXHVK.js +213 -0
  145. package/dist/chunks/chunk-5FQYXHVK.js.map +1 -0
  146. package/dist/chunks/chunk-5JJ7ELEU.js +39 -0
  147. package/dist/chunks/chunk-5JJ7ELEU.js.map +1 -0
  148. package/dist/chunks/chunk-5OMC3DTZ.js +3628 -0
  149. package/dist/chunks/chunk-5OMC3DTZ.js.map +1 -0
  150. package/dist/chunks/chunk-63WMM765.js +30 -0
  151. package/dist/chunks/chunk-63WMM765.js.map +1 -0
  152. package/dist/chunks/chunk-7ABTMTDB.js +86 -0
  153. package/dist/chunks/chunk-7ABTMTDB.js.map +1 -0
  154. package/dist/chunks/chunk-7K6TWSAK.js +626 -0
  155. package/dist/chunks/chunk-7K6TWSAK.js.map +1 -0
  156. package/dist/chunks/chunk-7QZ4E5WZ.js +210 -0
  157. package/dist/chunks/chunk-7QZ4E5WZ.js.map +1 -0
  158. package/dist/chunks/chunk-7RB2AUJE.js +622 -0
  159. package/dist/chunks/chunk-7RB2AUJE.js.map +1 -0
  160. package/dist/chunks/chunk-7WZH7TKG.js +210 -0
  161. package/dist/chunks/chunk-7WZH7TKG.js.map +1 -0
  162. package/dist/chunks/chunk-7YREO7KD.js +214 -0
  163. package/dist/chunks/chunk-7YREO7KD.js.map +1 -0
  164. package/dist/chunks/chunk-AI3BVEE3.js +102 -0
  165. package/dist/chunks/chunk-AI3BVEE3.js.map +1 -0
  166. package/dist/chunks/chunk-AZOWZY7V.js +95 -0
  167. package/dist/chunks/chunk-AZOWZY7V.js.map +1 -0
  168. package/dist/chunks/chunk-AZZW7WYD.js +3634 -0
  169. package/dist/chunks/chunk-AZZW7WYD.js.map +1 -0
  170. package/dist/chunks/chunk-B4YBRGOO.js +72 -0
  171. package/dist/chunks/chunk-B4YBRGOO.js.map +1 -0
  172. package/dist/chunks/chunk-BBFU7KGH.js +6432 -0
  173. package/dist/chunks/chunk-BBFU7KGH.js.map +1 -0
  174. package/dist/chunks/chunk-BCX6AQCQ.js +210 -0
  175. package/dist/chunks/chunk-BCX6AQCQ.js.map +1 -0
  176. package/dist/chunks/chunk-BJHVTP5W.js +95 -0
  177. package/dist/chunks/chunk-BJHVTP5W.js.map +1 -0
  178. package/dist/chunks/chunk-BOMM6A7V.js +19 -0
  179. package/dist/chunks/chunk-BOMM6A7V.js.map +1 -0
  180. package/dist/chunks/chunk-C5Q3SNXK.js +623 -0
  181. package/dist/chunks/chunk-C5Q3SNXK.js.map +1 -0
  182. package/dist/chunks/chunk-CONPNDHF.js +6416 -0
  183. package/dist/chunks/chunk-CONPNDHF.js.map +1 -0
  184. package/dist/chunks/chunk-CP63JV6J.js +56 -0
  185. package/dist/chunks/chunk-CP63JV6J.js.map +1 -0
  186. package/dist/chunks/chunk-DRATSVXW.js +99 -0
  187. package/dist/chunks/chunk-DRATSVXW.js.map +1 -0
  188. package/dist/chunks/chunk-E7UCMQNT.js +98 -0
  189. package/dist/chunks/chunk-E7UCMQNT.js.map +1 -0
  190. package/dist/chunks/chunk-ECTTGUKY.js +72 -0
  191. package/dist/chunks/chunk-ECTTGUKY.js.map +1 -0
  192. package/dist/chunks/chunk-F3JNWOBS.js +630 -0
  193. package/dist/chunks/chunk-F3JNWOBS.js.map +1 -0
  194. package/dist/chunks/chunk-FKOHVQD5.js +565 -0
  195. package/dist/chunks/chunk-FKOHVQD5.js.map +1 -0
  196. package/dist/chunks/chunk-FKYQ474Y.js +634 -0
  197. package/dist/chunks/chunk-FKYQ474Y.js.map +1 -0
  198. package/dist/chunks/chunk-FRNEKC5E.js +211 -0
  199. package/dist/chunks/chunk-FRNEKC5E.js.map +1 -0
  200. package/dist/chunks/chunk-GM2VH33L.js +214 -0
  201. package/dist/chunks/chunk-GM2VH33L.js.map +1 -0
  202. package/dist/chunks/chunk-HRCCW6MA.js +8 -0
  203. package/dist/chunks/chunk-HRCCW6MA.js.map +1 -0
  204. package/dist/chunks/chunk-ILL4KEGU.js +616 -0
  205. package/dist/chunks/chunk-ILL4KEGU.js.map +1 -0
  206. package/dist/chunks/chunk-IPWVQUFB.js +641 -0
  207. package/dist/chunks/chunk-IPWVQUFB.js.map +1 -0
  208. package/dist/chunks/chunk-IQVU7D3B.js +1 -0
  209. package/dist/chunks/chunk-IQVU7D3B.js.map +1 -0
  210. package/dist/chunks/chunk-JCEYFPPV.js +100 -0
  211. package/dist/chunks/chunk-JCEYFPPV.js.map +1 -0
  212. package/dist/chunks/chunk-JMIFSDZ7.js +52 -0
  213. package/dist/chunks/chunk-JMIFSDZ7.js.map +1 -0
  214. package/dist/chunks/chunk-JPATXTKN.js +629 -0
  215. package/dist/chunks/chunk-JPATXTKN.js.map +1 -0
  216. package/dist/chunks/chunk-KB5LRYDB.js +1 -0
  217. package/dist/chunks/chunk-KB5LRYDB.js.map +1 -0
  218. package/dist/chunks/chunk-KEF7X2OE.js +3621 -0
  219. package/dist/chunks/chunk-KEF7X2OE.js.map +1 -0
  220. package/dist/chunks/chunk-L5B7J2ZT.js +43 -0
  221. package/dist/chunks/chunk-L5B7J2ZT.js.map +1 -0
  222. package/dist/chunks/chunk-LU3O7U7W.js +45 -0
  223. package/dist/chunks/chunk-LU3O7U7W.js.map +1 -0
  224. package/dist/chunks/chunk-M3ONQ3OO.js +45 -0
  225. package/dist/chunks/chunk-M3ONQ3OO.js.map +1 -0
  226. package/dist/chunks/chunk-MBF6HEKO.js +39 -0
  227. package/dist/chunks/chunk-MBF6HEKO.js.map +1 -0
  228. package/dist/chunks/chunk-NW6WMWBC.js +94 -0
  229. package/dist/chunks/chunk-NW6WMWBC.js.map +1 -0
  230. package/dist/chunks/chunk-NXSALC5S.js +633 -0
  231. package/dist/chunks/chunk-NXSALC5S.js.map +1 -0
  232. package/dist/chunks/chunk-OTLH5OUZ.js +44 -0
  233. package/dist/chunks/chunk-OTLH5OUZ.js.map +1 -0
  234. package/dist/chunks/chunk-P7CW3RY4.js +6538 -0
  235. package/dist/chunks/chunk-P7CW3RY4.js.map +1 -0
  236. package/dist/chunks/chunk-PWOPGMKY.js +210 -0
  237. package/dist/chunks/chunk-PWOPGMKY.js.map +1 -0
  238. package/dist/chunks/chunk-QC5NBP3D.js +44 -0
  239. package/dist/chunks/chunk-QC5NBP3D.js.map +1 -0
  240. package/dist/chunks/chunk-QHWSY3K6.js +30 -0
  241. package/dist/chunks/chunk-QHWSY3K6.js.map +1 -0
  242. package/dist/chunks/chunk-QL3I5UMG.js +43 -0
  243. package/dist/chunks/chunk-QL3I5UMG.js.map +1 -0
  244. package/dist/chunks/chunk-QV4U5W67.js +43 -0
  245. package/dist/chunks/chunk-QV4U5W67.js.map +1 -0
  246. package/dist/chunks/chunk-R7HYOALH.js +213 -0
  247. package/dist/chunks/chunk-R7HYOALH.js.map +1 -0
  248. package/dist/chunks/chunk-SC5PDBVU.js +629 -0
  249. package/dist/chunks/chunk-SC5PDBVU.js.map +1 -0
  250. package/dist/chunks/chunk-SFRILOXM.js +624 -0
  251. package/dist/chunks/chunk-SFRILOXM.js.map +1 -0
  252. package/dist/chunks/chunk-ST5C4HZG.js +3621 -0
  253. package/dist/chunks/chunk-ST5C4HZG.js.map +1 -0
  254. package/dist/chunks/chunk-T524XBVZ.js +45 -0
  255. package/dist/chunks/chunk-T524XBVZ.js.map +1 -0
  256. package/dist/chunks/chunk-TN5UCQIV.js +614 -0
  257. package/dist/chunks/chunk-TN5UCQIV.js.map +1 -0
  258. package/dist/chunks/chunk-TWGONQQT.js +44 -0
  259. package/dist/chunks/chunk-TWGONQQT.js.map +1 -0
  260. package/dist/chunks/chunk-UDDWTISS.js +615 -0
  261. package/dist/chunks/chunk-UDDWTISS.js.map +1 -0
  262. package/dist/chunks/chunk-URMN5M77.js +36 -0
  263. package/dist/chunks/chunk-URMN5M77.js.map +1 -0
  264. package/dist/chunks/chunk-VPMLJM47.js +621 -0
  265. package/dist/chunks/chunk-VPMLJM47.js.map +1 -0
  266. package/dist/chunks/chunk-WYIX3HQR.js +634 -0
  267. package/dist/chunks/chunk-WYIX3HQR.js.map +1 -0
  268. package/dist/chunks/chunk-XISZU4KI.js +614 -0
  269. package/dist/chunks/chunk-XISZU4KI.js.map +1 -0
  270. package/dist/chunks/chunk-Y32L6VYU.js +91 -0
  271. package/dist/chunks/chunk-Y32L6VYU.js.map +1 -0
  272. package/dist/chunks/chunk-Y35P6GUT.js +99 -0
  273. package/dist/chunks/chunk-Y35P6GUT.js.map +1 -0
  274. package/dist/chunks/chunk-YUWIMPXO.js +75 -0
  275. package/dist/chunks/chunk-YUWIMPXO.js.map +1 -0
  276. package/dist/chunks/chunk-ZJHKJMHR.js +52 -0
  277. package/dist/chunks/chunk-ZJHKJMHR.js.map +1 -0
  278. package/dist/chunks/chunk-ZO73DF5R.js +36 -0
  279. package/dist/chunks/chunk-ZO73DF5R.js.map +1 -0
  280. package/dist/chunks/chunk-ZRA43QD3.js +52 -0
  281. package/dist/chunks/chunk-ZRA43QD3.js.map +1 -0
  282. package/dist/exports/computed.context.d.ts +3 -1
  283. package/dist/exports/computed.context.js +1 -1
  284. package/dist/exports/config.context.d.ts +1 -0
  285. package/dist/exports/config.context.js +4 -3
  286. package/dist/exports/config.context.js.map +1 -1
  287. package/dist/exports/interaction.d.ts +5 -2
  288. package/dist/exports/interaction.js +1 -1
  289. package/dist/exports/item.context.d.ts +1 -1
  290. package/dist/exports/qti-assessment-item.context.d.ts +1 -1
  291. package/dist/exports/qti-condition-expression.d.ts +1 -1
  292. package/dist/exports/qti-expression.d.ts +1 -1
  293. package/dist/exports/session.context.d.ts +3 -3
  294. package/dist/exports/test.context.d.ts +1 -1
  295. package/dist/exports/variables.d.ts +1 -1
  296. package/dist/index.d.ts +9 -6
  297. package/dist/index.js +26 -15
  298. package/dist/item.css +14 -1
  299. package/dist/qti-components/index.d.ts +4 -4
  300. package/dist/qti-components/index.js +2 -2
  301. package/dist/qti-components-jsx.d.ts +82 -36
  302. package/dist/qti-item/core/index.js +1 -1
  303. package/dist/qti-loader/index.d.ts +3 -3
  304. package/dist/qti-response-declaration-BwciEk5R.d.ts +1022 -0
  305. package/dist/qti-response-declaration-CCx746w0.d.ts +1023 -0
  306. package/dist/qti-response-declaration-CRGM9w_b.d.ts +1023 -0
  307. package/dist/qti-response-declaration-CbWRpo5c.d.ts +1033 -0
  308. package/dist/qti-test/components/index.d.ts +10 -8
  309. package/dist/qti-test/components/index.js +22 -11
  310. package/dist/qti-test/components/test-container.js +1 -1
  311. package/dist/qti-test/components/test-end-attempt.d.ts +0 -3
  312. package/dist/qti-test/components/test-end-attempt.js +1 -3
  313. package/dist/qti-test/components/test-item-link.js +1 -1
  314. package/dist/qti-test/components/test-navigation.d.ts +21 -8
  315. package/dist/qti-test/components/test-navigation.js +2 -3
  316. package/dist/qti-test/components/test-next.js +2 -2
  317. package/dist/qti-test/components/test-paging-buttons-stamp copy.js +44 -0
  318. package/dist/qti-test/components/test-paging-buttons-stamp copy.js.map +1 -0
  319. package/dist/qti-test/components/test-paging-buttons-stamp.js +2 -2
  320. package/dist/qti-test/components/test-paging-buttons-stamp.stories copy.css +93 -0
  321. package/dist/qti-test/components/test-paging-buttons-stamp.stories copy.css.map +1 -0
  322. package/dist/qti-test/components/test-paging-buttons-stamp.stories copy.js +9774 -0
  323. package/dist/qti-test/components/test-paging-buttons-stamp.stories copy.js.map +1 -0
  324. package/dist/qti-test/components/test-prev.js +2 -2
  325. package/dist/qti-test/components/test-print-item-variables.d.ts +15 -0
  326. package/dist/qti-test/components/test-print-item-variables.js +9 -0
  327. package/dist/qti-test/components/test-print-item-variables.js.map +1 -0
  328. package/dist/qti-test/components/test-section-buttons-stamp.d.ts +20 -0
  329. package/dist/qti-test/components/test-section-buttons-stamp.js +9 -0
  330. package/dist/qti-test/components/test-section-buttons-stamp.js.map +1 -0
  331. package/dist/qti-test/components/test-section-link.d.ts +18 -0
  332. package/dist/qti-test/components/test-section-link.js +9 -0
  333. package/dist/qti-test/components/test-section-link.js.map +1 -0
  334. package/dist/qti-test/components/test-show-correct-response.d.ts +0 -3
  335. package/dist/qti-test/components/test-show-correct-response.js +1 -3
  336. package/dist/qti-test/core/index.d.ts +5 -5
  337. package/dist/qti-test/core/index.js +1 -1
  338. package/dist/qti-test-part-8W7-lWmu.d.ts +85 -0
  339. package/dist/qti-test-part-BEPYFFNO.d.ts +85 -0
  340. package/dist/qti-test-part-CTzSuEgA.d.ts +85 -0
  341. package/dist/qti-test-part-CcFpkf1G.d.ts +85 -0
  342. package/dist/variables-D70AFbp2.d.ts +47 -0
  343. package/dist/vscode.html-custom-data.json +35 -10
  344. package/package.json +2 -1
@@ -0,0 +1,616 @@
1
+ import {
2
+ sessionContext as sessionContext2
3
+ } from "./chunk-QTH3WLGY.js";
4
+ import {
5
+ testContext
6
+ } from "./chunk-ODLYMQOS.js";
7
+ import {
8
+ qtiTransformItem
9
+ } from "./chunk-XDMSEAYC.js";
10
+ import {
11
+ __decorateClass
12
+ } from "./chunk-H2JE6IVU.js";
13
+
14
+ // src/lib/qti-test/core/qti-test.ts
15
+ import { html } from "lit";
16
+ import { customElement } from "lit/decorators.js";
17
+
18
+ // src/lib/qti-test/core/mixins/test-loader.mixin.ts
19
+ import { property } from "lit/decorators.js";
20
+ var setSessionData = (key, value) => sessionStorage.setItem(key, JSON.stringify(value));
21
+ var getSessionData = (key) => sessionStorage.getItem(key) ? JSON.parse(sessionStorage.getItem(key)) : null;
22
+ var TestLoaderMixin = (superClass) => {
23
+ class TestLoaderClass extends superClass {
24
+ constructor(...args) {
25
+ super(...args);
26
+ this.autoStoreRestoreContext = null;
27
+ this.navItemId = null;
28
+ this.addEventListener("qti-load-item-request", ({ detail }) => {
29
+ detail.promise = (async () => {
30
+ const api = await qtiTransformItem().load(`${detail.href}`, detail.cancelPreviousRequest);
31
+ return api.htmlDoc();
32
+ })();
33
+ });
34
+ }
35
+ async connectedCallback() {
36
+ super.connectedCallback();
37
+ if (this.navItemId) {
38
+ this.sessionContext = { ...this.sessionContext, navItemId: this.navItemId };
39
+ }
40
+ if (this.autoStoreRestoreContext) {
41
+ const testContext2 = getSessionData(this.autoStoreRestoreContext);
42
+ if (testContext2) {
43
+ this.testContext = testContext2;
44
+ }
45
+ }
46
+ }
47
+ updated(changedProperties) {
48
+ if (changedProperties.has("testContext")) {
49
+ if (this.autoStoreRestoreContext) {
50
+ setSessionData(this.autoStoreRestoreContext, this.testContext);
51
+ }
52
+ }
53
+ }
54
+ }
55
+ __decorateClass([
56
+ property({ type: String, attribute: "auto-store-restore" })
57
+ ], TestLoaderClass.prototype, "autoStoreRestoreContext", 2);
58
+ __decorateClass([
59
+ property({ type: String, attribute: "nav-item-id" })
60
+ ], TestLoaderClass.prototype, "navItemId", 2);
61
+ return TestLoaderClass;
62
+ };
63
+
64
+ // src/lib/qti-test/core/mixins/test-navigation.mixin.ts
65
+ var TestNavigationMixin = (superClass) => {
66
+ class TestNavigationClass extends superClass {
67
+ constructor(...args) {
68
+ super(...args);
69
+ this.addEventListener(
70
+ "qti-request-navigation",
71
+ ({ detail }) => {
72
+ if (!detail?.id) return;
73
+ this._clearLoadedItems();
74
+ if (detail.type === "item") {
75
+ this._loadSingleItem(detail.id);
76
+ } else if (detail.type === "section") {
77
+ this._loadSectionItems(detail.id);
78
+ }
79
+ }
80
+ );
81
+ this.addEventListener("qti-assessment-test-connected", (e) => {
82
+ this._testElement = e.detail;
83
+ const navId = this.sessionContext?.navItemId || this.sessionContext?.navSectionId;
84
+ if (!navId) {
85
+ const defaultElement = this._testElement.querySelector(
86
+ "qti-assessment-item-ref, qti-assessment-section"
87
+ );
88
+ const id = defaultElement?.identifier;
89
+ const type = defaultElement?.tagName.toLowerCase().includes("section") ? "section" : "item";
90
+ if (id) {
91
+ this.dispatchEvent(
92
+ new CustomEvent("qti-request-navigation", {
93
+ detail: { type, id },
94
+ bubbles: true,
95
+ composed: true
96
+ })
97
+ );
98
+ }
99
+ }
100
+ });
101
+ }
102
+ _loadSingleItem(navItemId) {
103
+ const itemRefEl = this._testElement?.querySelector(
104
+ `qti-assessment-item-ref[identifier="${navItemId}"]`
105
+ );
106
+ if (!itemRefEl) return;
107
+ const href = itemRefEl.href;
108
+ const navPartId = itemRefEl.closest("qti-test-part")?.identifier;
109
+ const navSectionId = itemRefEl.closest("qti-assessment-section")?.identifier;
110
+ this.sessionContext = { ...this.sessionContext, navPartId, navSectionId, navItemId, navItemLoading: true };
111
+ const promise = this._loadItemRequest(href, false);
112
+ promise?.then((doc) => {
113
+ itemRefEl.xmlDoc = doc;
114
+ requestAnimationFrame(
115
+ () => this.dispatchEvent(new CustomEvent("qti-item-connected", { bubbles: true, composed: true }))
116
+ );
117
+ this.sessionContext = { ...this.sessionContext, navItemLoading: false };
118
+ }).catch((error) => console.error("Failed to load item:", error));
119
+ }
120
+ _loadSectionItems(navSectionId) {
121
+ const sectionRefEl = this._testElement?.querySelector(
122
+ `qti-assessment-section[identifier="${navSectionId}"]`
123
+ );
124
+ if (!sectionRefEl) return;
125
+ const itemRefEls = this._testElement?.querySelectorAll(
126
+ `qti-assessment-section[identifier="${navSectionId}"] > qti-assessment-item-ref`
127
+ );
128
+ const navPartId = sectionRefEl.closest("qti-test-part")?.identifier;
129
+ this.sessionContext = { ...this.sessionContext, navPartId, navSectionId, navItemId: null };
130
+ const items = Array.from(itemRefEls || []).map((itemRef) => ({
131
+ identifier: itemRef.identifier,
132
+ href: itemRef.href,
133
+ element: itemRef
134
+ }));
135
+ const promises = items.map(
136
+ (item) => this._loadItemRequest(item.href, false).then((doc) => {
137
+ item.element.xmlDoc = doc;
138
+ }).catch((error) => console.error("Failed to load item:", error))
139
+ );
140
+ Promise.all(promises).then((results) => {
141
+ requestAnimationFrame(
142
+ () => this.dispatchEvent(
143
+ new CustomEvent("qti-test-connected", { detail: results, bubbles: true, composed: true })
144
+ )
145
+ );
146
+ }).catch((error) => console.error("One or more promises failed:", error));
147
+ }
148
+ _clearLoadedItems() {
149
+ const itemRefEls = this._testElement?.querySelectorAll(
150
+ `qti-assessment-test qti-assessment-item-ref`
151
+ );
152
+ Array.from(itemRefEls || []).forEach((itemElement) => {
153
+ itemElement.xmlDoc = null;
154
+ });
155
+ }
156
+ _loadItemRequest(href, cancelPreviousRequest = true) {
157
+ const event = new CustomEvent("qti-load-item-request", {
158
+ bubbles: true,
159
+ composed: true,
160
+ detail: {
161
+ href,
162
+ promise: null,
163
+ cancelPreviousRequest
164
+ }
165
+ });
166
+ this.dispatchEvent(event);
167
+ return event.detail.promise;
168
+ }
169
+ }
170
+ __decorateClass([
171
+ state(),
172
+ consume({ context: sessionContext, subscribe: true })
173
+ ], TestNavigationClass.prototype, "sessionContext", 2);
174
+ return TestNavigationClass;
175
+ };
176
+
177
+ // src/lib/qti-test/core/mixins/test-view.mixin.ts
178
+ var TestViewMixin = (superClass) => {
179
+ class TestViewClass extends superClass {
180
+ constructor(...args) {
181
+ super(...args);
182
+ this.sessionContext = { ...this.sessionContext, view: "candidate" };
183
+ this.addEventListener("on-test-switch-view", (e) => {
184
+ this.sessionContext = { ...this.sessionContext, view: e.detail };
185
+ this._updateElementView();
186
+ });
187
+ this.addEventListener("qti-assessment-test-connected", () => {
188
+ this._updateElementView();
189
+ });
190
+ this.addEventListener("qti-assessment-item-connected", (e) => {
191
+ this._updateElementView();
192
+ this._setCorrectResponseVisibility(e.detail);
193
+ });
194
+ }
195
+ willUpdate(changedProperties) {
196
+ super.willUpdate(changedProperties);
197
+ if (changedProperties.has("sessionContext")) {
198
+ this._updateElementView();
199
+ }
200
+ }
201
+ // Method to handle view updates for elements based on the current context view
202
+ _updateElementView() {
203
+ if (this.testElement && this.testElement) {
204
+ const viewElements = Array.from(this.testElement.querySelectorAll("[view]"));
205
+ viewElements.forEach((element) => {
206
+ element.classList.toggle("show", element.getAttribute("view") === this.sessionContext.view);
207
+ });
208
+ const assessmentItem = this.testElement.querySelector(
209
+ `qti-assessment-item[identifier="${this.sessionContext.navItemId}"]`
210
+ );
211
+ if (assessmentItem) {
212
+ assessmentItem.showCorrectResponse(this.sessionContext.view === "scorer");
213
+ }
214
+ }
215
+ }
216
+ // Event handler for connected QTI assessment items
217
+ _setCorrectResponseVisibility(assessmentItem) {
218
+ assessmentItem.showCorrectResponse(this.sessionContext.view === "scorer");
219
+ }
220
+ }
221
+ return TestViewClass;
222
+ };
223
+
224
+ // src/lib/qti-test/core/test-base.ts
225
+ import { provide } from "@lit/context";
226
+ import { LitElement } from "lit";
227
+ import { state as state2 } from "lit/decorators.js";
228
+ var TestBase = class extends LitElement {
229
+ constructor() {
230
+ super();
231
+ this.testContext = { items: [], testOutcomeVariables: [] };
232
+ this.sessionContext = {};
233
+ /**
234
+ * Updates the variables of an assessment item in the test context.
235
+ * - Matches the assessment item with the corresponding test context item.
236
+ * - If the item is not found, logs a warning.
237
+ * - Updates variables in the test context if exactly one variable exists.
238
+ * - Otherwise, syncs the assessment item's variables with the test context.
239
+ *
240
+ * @param assessmentItem - The assessment item to update.
241
+ */
242
+ this._updateItemInTestContext = (assessmentItem) => {
243
+ const { identifier, variables } = assessmentItem;
244
+ const itemContext = this.testContext.items.find((i) => i?.identifier === identifier);
245
+ if (!itemContext) {
246
+ console.warn(`Item IDs between assessment.xml and item.xml should match: ${identifier} is not found!`);
247
+ return;
248
+ }
249
+ if (itemContext.variables?.length === 1) {
250
+ this._updateItemVariablesInTestContext(identifier, variables);
251
+ } else {
252
+ assessmentItem.variables = [...itemContext.variables || []];
253
+ }
254
+ };
255
+ this.addEventListener("qti-assessment-test-connected", (e) => {
256
+ if (this.testContext && this.testContext.items.length > 0) return;
257
+ this.testElement = e.detail;
258
+ const items = Array.from(this.testElement.querySelectorAll("qti-assessment-item-ref")).map((itemRef) => {
259
+ return {
260
+ href: itemRef.href,
261
+ identifier: itemRef.identifier,
262
+ category: itemRef.category,
263
+ variables: [
264
+ {
265
+ identifier: "completionStatus",
266
+ value: "not_attempted",
267
+ type: "outcome"
268
+ }
269
+ ]
270
+ };
271
+ });
272
+ this.testContext = { ...this.testContext, items };
273
+ });
274
+ this.addEventListener("qti-assessment-item-connected", (e) => {
275
+ this._updateItemInTestContext(e.detail);
276
+ });
277
+ this.addEventListener("qti-outcome-changed", (e) => {
278
+ const assessmentitem = e.composedPath()[0];
279
+ this._updateItemVariablesInTestContext(assessmentitem.identifier, assessmentitem.variables);
280
+ });
281
+ }
282
+ // get testContext(): TestContext {
283
+ // return this._testContext;
284
+ // }
285
+ // // /* restores the context by updating existing items and adding new items from the "contextToRestore" parameter into the "this._context.items" array. */
286
+ // set testContext(testContext: TestContext) {
287
+ // if (this._testContext.items.length > 0) {
288
+ // console.warn(
289
+ // 'testContext already set and can not be overwritten. Set the testContext before loading the assessment test'
290
+ // );
291
+ // return;
292
+ // }
293
+ // if (testContext === null || testContext === undefined) return;
294
+ // this._testContext = { ...testContext }; // Clone the context to avoid modifying the original object
295
+ // // // append the items that are not yet in the context and replace the ones that are
296
+ // testContext.items?.forEach(itemContext => {
297
+ // const existingItemContext = this._testContext.items.find(i => i.identifier === itemContext.identifier);
298
+ // if (existingItemContext) {
299
+ // existingItemContext.variables = itemContext.variables;
300
+ // } else {
301
+ // this._testContext.items.push(itemContext);
302
+ // }
303
+ // });
304
+ // }
305
+ _updateItemVariablesInTestContext(identifier, variables) {
306
+ this.testContext = {
307
+ ...this.testContext,
308
+ // Spread existing test context properties
309
+ items: this.testContext.items.map((itemContext) => {
310
+ if (itemContext.identifier !== identifier) {
311
+ return itemContext;
312
+ }
313
+ return {
314
+ ...itemContext,
315
+ // Keep other properties of the item context
316
+ variables: variables.map((variable) => {
317
+ const matchingVariable = itemContext.variables.find((v) => v.identifier === variable.identifier);
318
+ return matchingVariable ? { ...matchingVariable, ...variable } : variable;
319
+ })
320
+ };
321
+ })
322
+ };
323
+ }
324
+ };
325
+ __decorateClass([
326
+ state2(),
327
+ provide({ context: testContext })
328
+ ], TestBase.prototype, "testContext", 2);
329
+ __decorateClass([
330
+ state2(),
331
+ provide({ context: sessionContext2 })
332
+ ], TestBase.prototype, "sessionContext", 2);
333
+
334
+ // src/lib/qti-test/core/mixins/test-processing.mixin.ts
335
+ var TestProcessingMixin = (superClass) => {
336
+ class TestProcessingElement extends superClass {
337
+ constructor(...args) {
338
+ super(...args);
339
+ this.addEventListener("qti-register-variable", (e) => {
340
+ this.testContext = {
341
+ ...this.testContext,
342
+ testOutcomeVariables: [...this.testContext.testOutcomeVariables || [], e.detail.variable]
343
+ };
344
+ e.stopPropagation();
345
+ });
346
+ this.addEventListener(
347
+ "qti-set-outcome-value",
348
+ (e) => {
349
+ const { outcomeIdentifier, value } = e.detail;
350
+ this.updateOutcomeVariable(outcomeIdentifier, value);
351
+ e.stopPropagation();
352
+ }
353
+ );
354
+ }
355
+ outcomeProcessing() {
356
+ const outcomeProcessor = this.querySelector("qti-outcome-processing");
357
+ if (!outcomeProcessor) return false;
358
+ outcomeProcessor?.process();
359
+ return true;
360
+ }
361
+ /* --------------------------- ENABLED WHEN UNIT TESTING OUTCOME PROCESSING ------------------------------------ */
362
+ updateOutcomeVariable(identifier, value) {
363
+ const outcomeVariable = this.getOutcome(identifier);
364
+ if (!outcomeVariable) {
365
+ console.warn(`Can not set qti-outcome-identifier: ${identifier}, it is not available`);
366
+ return;
367
+ }
368
+ this.testContext = {
369
+ ...this.testContext,
370
+ testOutcomeVariables: this.testContext.testOutcomeVariables?.map((v) => {
371
+ if (v.identifier !== identifier) {
372
+ return v;
373
+ }
374
+ return {
375
+ ...v,
376
+ value: outcomeVariable.cardinality === "single" ? value : [...v.value, value]
377
+ };
378
+ })
379
+ };
380
+ }
381
+ getOutcome(identifier) {
382
+ return this.getVariable(identifier);
383
+ }
384
+ getVariable(identifier) {
385
+ return this.testContext.testOutcomeVariables?.find((v) => v.identifier === identifier) || null;
386
+ }
387
+ /* --------------------------- ENABLED WHEN UNIT TESTING OUTCOME PROCESSING ------------------------------------ */
388
+ }
389
+ return TestProcessingElement;
390
+ };
391
+
392
+ // src/lib/qti-test/core/qti-test.ts
393
+ var QtiTest = class extends TestLoaderMixin(TestNavigationMixin(TestViewMixin(TestProcessingMixin(TestBase)))) {
394
+ // export class QtiTest extends TestLoaderMixin(TestNavigationMixin(TestViewMixin(TestBase))) {
395
+ /**
396
+ * Renders the component's template.
397
+ * Provides a default `<slot>` for content projection.
398
+ */
399
+ async connectedCallback() {
400
+ super.connectedCallback();
401
+ await this.updateComplete;
402
+ this.dispatchEvent(new CustomEvent("qti-test-connected", { detail: this }));
403
+ }
404
+ render() {
405
+ return html`<slot></slot>`;
406
+ }
407
+ };
408
+ QtiTest = __decorateClass([
409
+ customElement("qti-test")
410
+ ], QtiTest);
411
+
412
+ // src/lib/qti-test/core/qti-assessment-test/qti-assessment-item-ref.ts
413
+ import { consume as consume2 } from "@lit/context";
414
+ import { html as html2, LitElement as LitElement2 } from "lit";
415
+ import { property as property2 } from "lit/decorators.js";
416
+ var stringToBooleanConverter = {
417
+ fromAttribute(value) {
418
+ return value === "true";
419
+ },
420
+ toAttribute(value) {
421
+ return value ? "true" : "false";
422
+ }
423
+ };
424
+ var QtiAssessmentItemRef = class extends LitElement2 {
425
+ constructor() {
426
+ super(...arguments);
427
+ this.weigths = /* @__PURE__ */ new Map();
428
+ }
429
+ // the XMLDocument
430
+ createRenderRoot() {
431
+ return this;
432
+ }
433
+ get assessmentItem() {
434
+ return this.renderRoot?.querySelector("qti-assessment-item");
435
+ }
436
+ async connectedCallback() {
437
+ super.connectedCallback();
438
+ await this.updateComplete;
439
+ this.dispatchEvent(
440
+ new CustomEvent("qti-assessment-item-ref-connected", {
441
+ bubbles: true,
442
+ composed: true,
443
+ detail: { identifier: this.identifier, href: this.href, category: this.category }
444
+ })
445
+ );
446
+ }
447
+ render() {
448
+ return html2`${this.xmlDoc}`;
449
+ }
450
+ };
451
+ __decorateClass([
452
+ property2({ type: String })
453
+ ], QtiAssessmentItemRef.prototype, "category", 2);
454
+ __decorateClass([
455
+ property2({ type: String })
456
+ ], QtiAssessmentItemRef.prototype, "identifier", 2);
457
+ __decorateClass([
458
+ property2({ type: Boolean, converter: stringToBooleanConverter })
459
+ ], QtiAssessmentItemRef.prototype, "required", 2);
460
+ __decorateClass([
461
+ property2({ type: Boolean, converter: stringToBooleanConverter })
462
+ ], QtiAssessmentItemRef.prototype, "fixed", 2);
463
+ __decorateClass([
464
+ property2({ type: String })
465
+ ], QtiAssessmentItemRef.prototype, "href", 2);
466
+ __decorateClass([
467
+ consume2({ context: testContext, subscribe: true })
468
+ ], QtiAssessmentItemRef.prototype, "_testContext", 2);
469
+ __decorateClass([
470
+ property2({ type: Object, attribute: false })
471
+ ], QtiAssessmentItemRef.prototype, "xmlDoc", 2);
472
+ if (!customElements.get("qti-assessment-item-ref")) {
473
+ customElements.define("qti-assessment-item-ref", QtiAssessmentItemRef);
474
+ }
475
+
476
+ // src/lib/qti-test/core/qti-assessment-test/qti-assessment-section.ts
477
+ import { consume as consume3 } from "@lit/context";
478
+ import { html as html3, LitElement as LitElement3 } from "lit";
479
+ import { property as property3 } from "lit/decorators.js";
480
+ var stringToBooleanConverter2 = {
481
+ fromAttribute(value) {
482
+ return value === "true";
483
+ },
484
+ toAttribute(value) {
485
+ return value ? "true" : "false";
486
+ }
487
+ };
488
+ var QtiAssessmentSection = class extends LitElement3 {
489
+ async connectedCallback() {
490
+ super.connectedCallback();
491
+ await this.updateComplete;
492
+ this.dispatchEvent(
493
+ new Event("qti-assessment-section-connected", {
494
+ bubbles: true,
495
+ composed: true
496
+ })
497
+ );
498
+ }
499
+ render() {
500
+ return html3`<slot name="qti-rubric-block"></slot><slot></slot>`;
501
+ }
502
+ };
503
+ __decorateClass([
504
+ property3({ type: String })
505
+ ], QtiAssessmentSection.prototype, "identifier", 2);
506
+ __decorateClass([
507
+ property3({ type: String })
508
+ ], QtiAssessmentSection.prototype, "required", 2);
509
+ __decorateClass([
510
+ property3({ type: Boolean, converter: stringToBooleanConverter2 })
511
+ ], QtiAssessmentSection.prototype, "fixed", 2);
512
+ __decorateClass([
513
+ property3({ type: String })
514
+ ], QtiAssessmentSection.prototype, "title", 2);
515
+ __decorateClass([
516
+ property3({ type: Boolean, converter: stringToBooleanConverter2 })
517
+ ], QtiAssessmentSection.prototype, "visible", 2);
518
+ __decorateClass([
519
+ property3({ type: Boolean, converter: stringToBooleanConverter2, attribute: "keep-together" })
520
+ ], QtiAssessmentSection.prototype, "keepTogether", 2);
521
+ __decorateClass([
522
+ consume3({ context: testContext, subscribe: true })
523
+ ], QtiAssessmentSection.prototype, "_testContext", 2);
524
+ if (!customElements.get("qti-assessment-section")) {
525
+ customElements.define("qti-assessment-section", QtiAssessmentSection);
526
+ }
527
+
528
+ // src/lib/qti-test/core/qti-assessment-test/qti-assessment-test.ts
529
+ import { consume as consume4 } from "@lit/context";
530
+ import { html as html4, LitElement as LitElement4 } from "lit";
531
+ import { customElement as customElement2, property as property4 } from "lit/decorators.js";
532
+ var QtiAssessmentTest = class extends LitElement4 {
533
+ async connectedCallback() {
534
+ super.connectedCallback();
535
+ await this.updateComplete;
536
+ this.dispatchEvent(
537
+ new CustomEvent("qti-assessment-test-connected", {
538
+ detail: this,
539
+ bubbles: true,
540
+ composed: true
541
+ })
542
+ );
543
+ }
544
+ render() {
545
+ return html4` <slot></slot>`;
546
+ }
547
+ };
548
+ __decorateClass([
549
+ property4({ type: String })
550
+ ], QtiAssessmentTest.prototype, "identifier", 2);
551
+ __decorateClass([
552
+ property4({ type: String })
553
+ ], QtiAssessmentTest.prototype, "title", 2);
554
+ __decorateClass([
555
+ consume4({ context: testContext, subscribe: true })
556
+ ], QtiAssessmentTest.prototype, "_testContext", 2);
557
+ QtiAssessmentTest = __decorateClass([
558
+ customElement2("qti-assessment-test")
559
+ ], QtiAssessmentTest);
560
+
561
+ // src/lib/qti-test/core/qti-assessment-test/qti-test-part.ts
562
+ import { html as html5, LitElement as LitElement5 } from "lit";
563
+ import { customElement as customElement3, property as property5 } from "lit/decorators.js";
564
+ var QtiTestPart = class extends LitElement5 {
565
+ constructor() {
566
+ super(...arguments);
567
+ this.identifier = "";
568
+ this.title = "";
569
+ this.class = "";
570
+ this.NavigationMode = "nonlinear";
571
+ this.submissionMode = "individual";
572
+ }
573
+ async connectedCallback() {
574
+ super.connectedCallback();
575
+ await this.updateComplete;
576
+ this.dispatchEvent(
577
+ new Event("qti-test-part-connected", {
578
+ bubbles: true,
579
+ composed: true
580
+ })
581
+ );
582
+ }
583
+ render() {
584
+ return html5` <slot></slot>`;
585
+ }
586
+ };
587
+ __decorateClass([
588
+ property5({ type: String })
589
+ ], QtiTestPart.prototype, "identifier", 2);
590
+ __decorateClass([
591
+ property5({ type: String })
592
+ ], QtiTestPart.prototype, "title", 2);
593
+ __decorateClass([
594
+ property5({ type: String })
595
+ ], QtiTestPart.prototype, "class", 2);
596
+ __decorateClass([
597
+ property5({ type: String, attribute: "navigation-mode" })
598
+ ], QtiTestPart.prototype, "NavigationMode", 2);
599
+ __decorateClass([
600
+ property5({ type: String, attribute: "submission-mode" })
601
+ ], QtiTestPart.prototype, "submissionMode", 2);
602
+ QtiTestPart = __decorateClass([
603
+ customElement3("qti-test-part")
604
+ ], QtiTestPart);
605
+ if (!customElements.get("qti-test-part")) {
606
+ customElements.define("qti-test-part", QtiTestPart);
607
+ }
608
+
609
+ export {
610
+ QtiTest,
611
+ QtiAssessmentItemRef,
612
+ QtiAssessmentSection,
613
+ QtiAssessmentTest,
614
+ QtiTestPart
615
+ };
616
+ //# sourceMappingURL=chunk-ILL4KEGU.js.map