@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,641 @@
1
+ import {
2
+ sessionContext
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 as html2 } from "lit";
16
+ import { customElement as customElement2 } 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
+ import { html, LitElement } from "lit";
66
+ import { customElement, state } from "lit/decorators.js";
67
+ import { consume } from "@lit/context";
68
+
69
+ // dist/chunks/chunk-QTH3WLGY.js
70
+ import { createContext } from "@lit/context";
71
+ var sessionContext2 = createContext(Symbol("testContext"));
72
+
73
+ // src/lib/qti-test/core/mixins/test-navigation.mixin.ts
74
+ var TestNavigationMixin = (superClass) => {
75
+ class TestNavigationClass extends superClass {
76
+ constructor(...args) {
77
+ super(...args);
78
+ this.addEventListener(
79
+ "qti-request-navigation",
80
+ ({ detail }) => {
81
+ if (!detail?.id) return;
82
+ this._clearLoadedItems();
83
+ if (detail.type === "item") {
84
+ this._loadSingleItem(detail.id);
85
+ } else if (detail.type === "section") {
86
+ this._loadSectionItems(detail.id);
87
+ }
88
+ }
89
+ );
90
+ this.addEventListener("qti-assessment-test-connected", (e) => {
91
+ this._testElement = e.detail;
92
+ const navId = this.sessionContext?.navItemId || this.sessionContext?.navSectionId;
93
+ if (!navId) {
94
+ const defaultElement = this._testElement.querySelector(
95
+ "qti-assessment-item-ref, qti-assessment-section"
96
+ );
97
+ const id = defaultElement?.identifier;
98
+ const type = defaultElement?.tagName.toLowerCase().includes("section") ? "section" : "item";
99
+ if (id) {
100
+ this.dispatchEvent(
101
+ new CustomEvent("qti-request-navigation", {
102
+ detail: { type, id },
103
+ bubbles: true,
104
+ composed: true
105
+ })
106
+ );
107
+ }
108
+ }
109
+ });
110
+ }
111
+ _loadSingleItem(navItemId) {
112
+ return new Promise((resolve, reject) => {
113
+ const itemRefEl = this._testElement?.querySelector(
114
+ `qti-assessment-item-ref[identifier="${navItemId}"]`
115
+ );
116
+ if (!itemRefEl) {
117
+ console.warn(`Item with identifier "${navItemId}" not found.`);
118
+ return reject(new Error(`Item not found: ${navItemId}`));
119
+ }
120
+ const href = itemRefEl.href;
121
+ const navPartId = itemRefEl.closest("qti-test-part")?.identifier;
122
+ const navSectionId = itemRefEl.closest("qti-assessment-section")?.identifier;
123
+ this.sessionContext = { ...this.sessionContext, navPartId, navSectionId, navItemId, navItemLoading: true };
124
+ const promise = this._loadItemRequest(href, false);
125
+ promise?.then((doc) => {
126
+ itemRefEl.xmlDoc = doc;
127
+ requestAnimationFrame(
128
+ () => this.dispatchEvent(
129
+ new CustomEvent("qti-test-connected", {
130
+ detail: [{ identifier: navItemId, element: itemRefEl }],
131
+ bubbles: true,
132
+ composed: true
133
+ })
134
+ )
135
+ );
136
+ this.sessionContext = { ...this.sessionContext, navItemLoading: false };
137
+ resolve();
138
+ }).catch((error) => {
139
+ console.error("Failed to load item:", error);
140
+ reject(error);
141
+ });
142
+ });
143
+ }
144
+ _loadSectionItems(navSectionId) {
145
+ const sectionRefEl = this._testElement?.querySelector(
146
+ `qti-assessment-section[identifier="${navSectionId}"]`
147
+ );
148
+ if (!sectionRefEl) {
149
+ console.warn(`Section with identifier "${navSectionId}" not found.`);
150
+ return;
151
+ }
152
+ const itemRefEls = this._testElement?.querySelectorAll(
153
+ `qti-assessment-section[identifier="${navSectionId}"] > qti-assessment-item-ref`
154
+ );
155
+ const navPartId = sectionRefEl.closest("qti-test-part")?.identifier;
156
+ this.sessionContext = { ...this.sessionContext, navPartId, navSectionId, navItemId: null };
157
+ const items = Array.from(itemRefEls || []).map((itemRef) => itemRef.identifier);
158
+ const promises = items.map((itemId) => this._loadSingleItem(itemId));
159
+ Promise.all(promises).then((results) => {
160
+ console.info("All items in section loaded successfully.");
161
+ }).catch((error) => {
162
+ console.error("One or more items failed to load:", error);
163
+ });
164
+ }
165
+ _clearLoadedItems() {
166
+ const itemRefEls = this._testElement?.querySelectorAll(
167
+ `qti-assessment-test qti-assessment-item-ref`
168
+ );
169
+ Array.from(itemRefEls || []).forEach((itemElement) => {
170
+ itemElement.xmlDoc = null;
171
+ });
172
+ }
173
+ _loadItemRequest(href, cancelPreviousRequest = true) {
174
+ const event = new CustomEvent("qti-load-item-request", {
175
+ bubbles: true,
176
+ composed: true,
177
+ detail: {
178
+ href,
179
+ promise: null,
180
+ cancelPreviousRequest
181
+ }
182
+ });
183
+ this.dispatchEvent(event);
184
+ return event.detail.promise;
185
+ }
186
+ }
187
+ __decorateClass([
188
+ state(),
189
+ consume({ context: sessionContext2, subscribe: true })
190
+ ], TestNavigationClass.prototype, "sessionContext", 2);
191
+ return TestNavigationClass;
192
+ };
193
+ var TestNavigation = class extends TestNavigationMixin(LitElement) {
194
+ render() {
195
+ return html`<slot></slot>`;
196
+ }
197
+ };
198
+ TestNavigation = __decorateClass([
199
+ customElement("test-navigation")
200
+ ], TestNavigation);
201
+
202
+ // src/lib/qti-test/core/mixins/test-view.mixin.ts
203
+ var TestViewMixin = (superClass) => {
204
+ class TestViewClass extends superClass {
205
+ constructor(...args) {
206
+ super(...args);
207
+ this.sessionContext = { ...this.sessionContext, view: "candidate" };
208
+ this.addEventListener("on-test-switch-view", (e) => {
209
+ this.sessionContext = { ...this.sessionContext, view: e.detail };
210
+ this._updateElementView();
211
+ });
212
+ this.addEventListener("qti-assessment-test-connected", () => {
213
+ this._updateElementView();
214
+ });
215
+ this.addEventListener("qti-assessment-item-connected", (e) => {
216
+ this._updateElementView();
217
+ this._setCorrectResponseVisibility(e.detail);
218
+ });
219
+ }
220
+ willUpdate(changedProperties) {
221
+ super.willUpdate(changedProperties);
222
+ if (changedProperties.has("sessionContext")) {
223
+ this._updateElementView();
224
+ }
225
+ }
226
+ // Method to handle view updates for elements based on the current context view
227
+ _updateElementView() {
228
+ if (this.testElement && this.testElement) {
229
+ const viewElements = Array.from(this.testElement.querySelectorAll("[view]"));
230
+ viewElements.forEach((element) => {
231
+ element.classList.toggle("show", element.getAttribute("view") === this.sessionContext.view);
232
+ });
233
+ const assessmentItem = this.testElement.querySelector(
234
+ `qti-assessment-item[identifier="${this.sessionContext.navItemId}"]`
235
+ );
236
+ if (assessmentItem) {
237
+ assessmentItem.showCorrectResponse(this.sessionContext.view === "scorer");
238
+ }
239
+ }
240
+ }
241
+ // Event handler for connected QTI assessment items
242
+ _setCorrectResponseVisibility(assessmentItem) {
243
+ assessmentItem.showCorrectResponse(this.sessionContext.view === "scorer");
244
+ }
245
+ }
246
+ return TestViewClass;
247
+ };
248
+
249
+ // src/lib/qti-test/core/test-base.ts
250
+ import { provide } from "@lit/context";
251
+ import { LitElement as LitElement2 } from "lit";
252
+ import { state as state2 } from "lit/decorators.js";
253
+ var TestBase = class extends LitElement2 {
254
+ constructor() {
255
+ super();
256
+ this.testContext = { items: [], testOutcomeVariables: [] };
257
+ this.sessionContext = {};
258
+ /**
259
+ * Updates the variables of an assessment item in the test context.
260
+ * - Matches the assessment item with the corresponding test context item.
261
+ * - If the item is not found, logs a warning.
262
+ * - Updates variables in the test context if exactly one variable exists.
263
+ * - Otherwise, syncs the assessment item's variables with the test context.
264
+ *
265
+ * @param assessmentItem - The assessment item to update.
266
+ */
267
+ this._updateItemInTestContext = (assessmentItem) => {
268
+ const { identifier, variables } = assessmentItem;
269
+ const itemContext = this.testContext.items.find((i) => i?.identifier === identifier);
270
+ if (!itemContext) {
271
+ console.warn(`Item IDs between assessment.xml and item.xml should match: ${identifier} is not found!`);
272
+ return;
273
+ }
274
+ if (itemContext.variables?.length === 1) {
275
+ this._updateItemVariablesInTestContext(identifier, variables);
276
+ } else {
277
+ assessmentItem.variables = [...itemContext.variables || []];
278
+ }
279
+ };
280
+ this.addEventListener("qti-assessment-test-connected", (e) => {
281
+ if (this.testContext && this.testContext.items.length > 0) return;
282
+ this.testElement = e.detail;
283
+ const items = Array.from(this.testElement.querySelectorAll("qti-assessment-item-ref")).map((itemRef) => {
284
+ return {
285
+ href: itemRef.href,
286
+ identifier: itemRef.identifier,
287
+ category: itemRef.category,
288
+ variables: [
289
+ {
290
+ identifier: "completionStatus",
291
+ value: "not_attempted",
292
+ type: "outcome"
293
+ }
294
+ ]
295
+ };
296
+ });
297
+ this.testContext = { ...this.testContext, items };
298
+ });
299
+ this.addEventListener("qti-assessment-item-connected", (e) => {
300
+ this._updateItemInTestContext(e.detail);
301
+ });
302
+ this.addEventListener("qti-outcome-changed", (e) => {
303
+ const assessmentitem = e.composedPath()[0];
304
+ this._updateItemVariablesInTestContext(assessmentitem.identifier, assessmentitem.variables);
305
+ });
306
+ }
307
+ // get testContext(): TestContext {
308
+ // return this._testContext;
309
+ // }
310
+ // // /* restores the context by updating existing items and adding new items from the "contextToRestore" parameter into the "this._context.items" array. */
311
+ // set testContext(testContext: TestContext) {
312
+ // if (this._testContext.items.length > 0) {
313
+ // console.warn(
314
+ // 'testContext already set and can not be overwritten. Set the testContext before loading the assessment test'
315
+ // );
316
+ // return;
317
+ // }
318
+ // if (testContext === null || testContext === undefined) return;
319
+ // this._testContext = { ...testContext }; // Clone the context to avoid modifying the original object
320
+ // // // append the items that are not yet in the context and replace the ones that are
321
+ // testContext.items?.forEach(itemContext => {
322
+ // const existingItemContext = this._testContext.items.find(i => i.identifier === itemContext.identifier);
323
+ // if (existingItemContext) {
324
+ // existingItemContext.variables = itemContext.variables;
325
+ // } else {
326
+ // this._testContext.items.push(itemContext);
327
+ // }
328
+ // });
329
+ // }
330
+ _updateItemVariablesInTestContext(identifier, variables) {
331
+ this.testContext = {
332
+ ...this.testContext,
333
+ // Spread existing test context properties
334
+ items: this.testContext.items.map((itemContext) => {
335
+ if (itemContext.identifier !== identifier) {
336
+ return itemContext;
337
+ }
338
+ return {
339
+ ...itemContext,
340
+ // Keep other properties of the item context
341
+ variables: variables.map((variable) => {
342
+ const matchingVariable = itemContext.variables.find((v) => v.identifier === variable.identifier);
343
+ return matchingVariable ? { ...matchingVariable, ...variable } : variable;
344
+ })
345
+ };
346
+ })
347
+ };
348
+ }
349
+ };
350
+ __decorateClass([
351
+ state2(),
352
+ provide({ context: testContext })
353
+ ], TestBase.prototype, "testContext", 2);
354
+ __decorateClass([
355
+ state2(),
356
+ provide({ context: sessionContext })
357
+ ], TestBase.prototype, "sessionContext", 2);
358
+
359
+ // src/lib/qti-test/core/mixins/test-processing.mixin.ts
360
+ var TestProcessingMixin = (superClass) => {
361
+ class TestProcessingElement extends superClass {
362
+ constructor(...args) {
363
+ super(...args);
364
+ this.addEventListener("qti-register-variable", (e) => {
365
+ this.testContext = {
366
+ ...this.testContext,
367
+ testOutcomeVariables: [...this.testContext.testOutcomeVariables || [], e.detail.variable]
368
+ };
369
+ e.stopPropagation();
370
+ });
371
+ this.addEventListener(
372
+ "qti-set-outcome-value",
373
+ (e) => {
374
+ const { outcomeIdentifier, value } = e.detail;
375
+ this.updateOutcomeVariable(outcomeIdentifier, value);
376
+ e.stopPropagation();
377
+ }
378
+ );
379
+ }
380
+ outcomeProcessing() {
381
+ const outcomeProcessor = this.querySelector("qti-outcome-processing");
382
+ if (!outcomeProcessor) return false;
383
+ outcomeProcessor?.process();
384
+ return true;
385
+ }
386
+ /* --------------------------- ENABLED WHEN UNIT TESTING OUTCOME PROCESSING ------------------------------------ */
387
+ updateOutcomeVariable(identifier, value) {
388
+ const outcomeVariable = this.getOutcome(identifier);
389
+ if (!outcomeVariable) {
390
+ console.warn(`Can not set qti-outcome-identifier: ${identifier}, it is not available`);
391
+ return;
392
+ }
393
+ this.testContext = {
394
+ ...this.testContext,
395
+ testOutcomeVariables: this.testContext.testOutcomeVariables?.map((v) => {
396
+ if (v.identifier !== identifier) {
397
+ return v;
398
+ }
399
+ return {
400
+ ...v,
401
+ value: outcomeVariable.cardinality === "single" ? value : [...v.value, value]
402
+ };
403
+ })
404
+ };
405
+ }
406
+ getOutcome(identifier) {
407
+ return this.getVariable(identifier);
408
+ }
409
+ getVariable(identifier) {
410
+ return this.testContext.testOutcomeVariables?.find((v) => v.identifier === identifier) || null;
411
+ }
412
+ /* --------------------------- ENABLED WHEN UNIT TESTING OUTCOME PROCESSING ------------------------------------ */
413
+ }
414
+ return TestProcessingElement;
415
+ };
416
+
417
+ // src/lib/qti-test/core/qti-test.ts
418
+ var QtiTest = class extends TestLoaderMixin(TestNavigationMixin(TestViewMixin(TestProcessingMixin(TestBase)))) {
419
+ // export class QtiTest extends TestLoaderMixin(TestNavigationMixin(TestViewMixin(TestBase))) {
420
+ /**
421
+ * Renders the component's template.
422
+ * Provides a default `<slot>` for content projection.
423
+ */
424
+ async connectedCallback() {
425
+ super.connectedCallback();
426
+ await this.updateComplete;
427
+ this.dispatchEvent(new CustomEvent("qti-test-connected", { detail: this }));
428
+ }
429
+ render() {
430
+ return html2`<slot></slot>`;
431
+ }
432
+ };
433
+ QtiTest = __decorateClass([
434
+ customElement2("qti-test")
435
+ ], QtiTest);
436
+
437
+ // src/lib/qti-test/core/qti-assessment-test/qti-assessment-item-ref.ts
438
+ import { consume as consume2 } from "@lit/context";
439
+ import { html as html3, LitElement as LitElement3 } from "lit";
440
+ import { property as property2 } from "lit/decorators.js";
441
+ var stringToBooleanConverter = {
442
+ fromAttribute(value) {
443
+ return value === "true";
444
+ },
445
+ toAttribute(value) {
446
+ return value ? "true" : "false";
447
+ }
448
+ };
449
+ var QtiAssessmentItemRef = class extends LitElement3 {
450
+ constructor() {
451
+ super(...arguments);
452
+ this.weigths = /* @__PURE__ */ new Map();
453
+ }
454
+ // the XMLDocument
455
+ createRenderRoot() {
456
+ return this;
457
+ }
458
+ get assessmentItem() {
459
+ return this.renderRoot?.querySelector("qti-assessment-item");
460
+ }
461
+ async connectedCallback() {
462
+ super.connectedCallback();
463
+ await this.updateComplete;
464
+ this.dispatchEvent(
465
+ new CustomEvent("qti-assessment-item-ref-connected", {
466
+ bubbles: true,
467
+ composed: true,
468
+ detail: { identifier: this.identifier, href: this.href, category: this.category }
469
+ })
470
+ );
471
+ }
472
+ render() {
473
+ return html3`${this.xmlDoc}`;
474
+ }
475
+ };
476
+ __decorateClass([
477
+ property2({ type: String })
478
+ ], QtiAssessmentItemRef.prototype, "category", 2);
479
+ __decorateClass([
480
+ property2({ type: String })
481
+ ], QtiAssessmentItemRef.prototype, "identifier", 2);
482
+ __decorateClass([
483
+ property2({ type: Boolean, converter: stringToBooleanConverter })
484
+ ], QtiAssessmentItemRef.prototype, "required", 2);
485
+ __decorateClass([
486
+ property2({ type: Boolean, converter: stringToBooleanConverter })
487
+ ], QtiAssessmentItemRef.prototype, "fixed", 2);
488
+ __decorateClass([
489
+ property2({ type: String })
490
+ ], QtiAssessmentItemRef.prototype, "href", 2);
491
+ __decorateClass([
492
+ consume2({ context: testContext, subscribe: true })
493
+ ], QtiAssessmentItemRef.prototype, "_testContext", 2);
494
+ __decorateClass([
495
+ property2({ type: Object, attribute: false })
496
+ ], QtiAssessmentItemRef.prototype, "xmlDoc", 2);
497
+ if (!customElements.get("qti-assessment-item-ref")) {
498
+ customElements.define("qti-assessment-item-ref", QtiAssessmentItemRef);
499
+ }
500
+
501
+ // src/lib/qti-test/core/qti-assessment-test/qti-assessment-section.ts
502
+ import { consume as consume3 } from "@lit/context";
503
+ import { html as html4, LitElement as LitElement4 } from "lit";
504
+ import { property as property3 } from "lit/decorators.js";
505
+ var stringToBooleanConverter2 = {
506
+ fromAttribute(value) {
507
+ return value === "true";
508
+ },
509
+ toAttribute(value) {
510
+ return value ? "true" : "false";
511
+ }
512
+ };
513
+ var QtiAssessmentSection = class extends LitElement4 {
514
+ async connectedCallback() {
515
+ super.connectedCallback();
516
+ await this.updateComplete;
517
+ this.dispatchEvent(
518
+ new Event("qti-assessment-section-connected", {
519
+ bubbles: true,
520
+ composed: true
521
+ })
522
+ );
523
+ }
524
+ render() {
525
+ return html4`<slot name="qti-rubric-block"></slot><slot></slot>`;
526
+ }
527
+ };
528
+ __decorateClass([
529
+ property3({ type: String })
530
+ ], QtiAssessmentSection.prototype, "identifier", 2);
531
+ __decorateClass([
532
+ property3({ type: String })
533
+ ], QtiAssessmentSection.prototype, "required", 2);
534
+ __decorateClass([
535
+ property3({ type: Boolean, converter: stringToBooleanConverter2 })
536
+ ], QtiAssessmentSection.prototype, "fixed", 2);
537
+ __decorateClass([
538
+ property3({ type: String })
539
+ ], QtiAssessmentSection.prototype, "title", 2);
540
+ __decorateClass([
541
+ property3({ type: Boolean, converter: stringToBooleanConverter2 })
542
+ ], QtiAssessmentSection.prototype, "visible", 2);
543
+ __decorateClass([
544
+ property3({ type: Boolean, converter: stringToBooleanConverter2, attribute: "keep-together" })
545
+ ], QtiAssessmentSection.prototype, "keepTogether", 2);
546
+ __decorateClass([
547
+ consume3({ context: testContext, subscribe: true })
548
+ ], QtiAssessmentSection.prototype, "_testContext", 2);
549
+ if (!customElements.get("qti-assessment-section")) {
550
+ customElements.define("qti-assessment-section", QtiAssessmentSection);
551
+ }
552
+
553
+ // src/lib/qti-test/core/qti-assessment-test/qti-assessment-test.ts
554
+ import { consume as consume4 } from "@lit/context";
555
+ import { html as html5, LitElement as LitElement5 } from "lit";
556
+ import { customElement as customElement3, property as property4 } from "lit/decorators.js";
557
+ var QtiAssessmentTest = class extends LitElement5 {
558
+ async connectedCallback() {
559
+ super.connectedCallback();
560
+ await this.updateComplete;
561
+ this.dispatchEvent(
562
+ new CustomEvent("qti-assessment-test-connected", {
563
+ detail: this,
564
+ bubbles: true,
565
+ composed: true
566
+ })
567
+ );
568
+ }
569
+ render() {
570
+ return html5` <slot></slot>`;
571
+ }
572
+ };
573
+ __decorateClass([
574
+ property4({ type: String })
575
+ ], QtiAssessmentTest.prototype, "identifier", 2);
576
+ __decorateClass([
577
+ property4({ type: String })
578
+ ], QtiAssessmentTest.prototype, "title", 2);
579
+ __decorateClass([
580
+ consume4({ context: testContext, subscribe: true })
581
+ ], QtiAssessmentTest.prototype, "_testContext", 2);
582
+ QtiAssessmentTest = __decorateClass([
583
+ customElement3("qti-assessment-test")
584
+ ], QtiAssessmentTest);
585
+
586
+ // src/lib/qti-test/core/qti-assessment-test/qti-test-part.ts
587
+ import { html as html6, LitElement as LitElement6 } from "lit";
588
+ import { customElement as customElement4, property as property5 } from "lit/decorators.js";
589
+ var QtiTestPart = class extends LitElement6 {
590
+ constructor() {
591
+ super(...arguments);
592
+ this.identifier = "";
593
+ this.title = "";
594
+ this.class = "";
595
+ this.NavigationMode = "nonlinear";
596
+ this.submissionMode = "individual";
597
+ }
598
+ async connectedCallback() {
599
+ super.connectedCallback();
600
+ await this.updateComplete;
601
+ this.dispatchEvent(
602
+ new Event("qti-test-part-connected", {
603
+ bubbles: true,
604
+ composed: true
605
+ })
606
+ );
607
+ }
608
+ render() {
609
+ return html6` <slot></slot>`;
610
+ }
611
+ };
612
+ __decorateClass([
613
+ property5({ type: String })
614
+ ], QtiTestPart.prototype, "identifier", 2);
615
+ __decorateClass([
616
+ property5({ type: String })
617
+ ], QtiTestPart.prototype, "title", 2);
618
+ __decorateClass([
619
+ property5({ type: String })
620
+ ], QtiTestPart.prototype, "class", 2);
621
+ __decorateClass([
622
+ property5({ type: String, attribute: "navigation-mode" })
623
+ ], QtiTestPart.prototype, "NavigationMode", 2);
624
+ __decorateClass([
625
+ property5({ type: String, attribute: "submission-mode" })
626
+ ], QtiTestPart.prototype, "submissionMode", 2);
627
+ QtiTestPart = __decorateClass([
628
+ customElement4("qti-test-part")
629
+ ], QtiTestPart);
630
+ if (!customElements.get("qti-test-part")) {
631
+ customElements.define("qti-test-part", QtiTestPart);
632
+ }
633
+
634
+ export {
635
+ QtiTest,
636
+ QtiAssessmentItemRef,
637
+ QtiAssessmentSection,
638
+ QtiAssessmentTest,
639
+ QtiTestPart
640
+ };
641
+ //# sourceMappingURL=chunk-IPWVQUFB.js.map