@citolab/qti-components 7.3.23 → 7.4.1

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 (293) hide show
  1. package/cdn/index.global.js +1 -1
  2. package/cdn/index.js +5485 -1
  3. package/custom-elements.json +29837 -0
  4. package/dist/chunks/chunk-4BDOB6KY.js +365 -0
  5. package/dist/chunks/chunk-4BDOB6KY.js.map +1 -0
  6. package/dist/chunks/{chunk-LF6SO3JU.js → chunk-7RW7LCEJ.js} +459 -587
  7. package/dist/chunks/chunk-7RW7LCEJ.js.map +1 -0
  8. package/dist/chunks/chunk-APBAIN6D.js +2237 -0
  9. package/dist/chunks/chunk-APBAIN6D.js.map +1 -0
  10. package/dist/chunks/{chunk-22IRJWWY.js → chunk-C5RLRG3L.js} +1 -1
  11. package/dist/chunks/chunk-C5RLRG3L.js.map +1 -0
  12. package/dist/chunks/{chunk-AZIKAG7K.js → chunk-DVQQ7I6Y.js} +1 -1
  13. package/dist/chunks/chunk-DVQQ7I6Y.js.map +1 -0
  14. package/dist/chunks/{chunk-QCB6P7DH.js → chunk-GAAFN7QF.js} +1 -1
  15. package/dist/chunks/{chunk-QCB6P7DH.js.map → chunk-GAAFN7QF.js.map} +1 -1
  16. package/dist/chunks/chunk-K47QFOQX.js +175 -0
  17. package/dist/chunks/chunk-K47QFOQX.js.map +1 -0
  18. package/dist/chunks/{chunk-FL72PF4D.js → chunk-SV4K25ZI.js} +2 -2
  19. package/dist/custom-elements.json +29837 -0
  20. package/dist/exports/computed-item.context.d.ts +1 -7
  21. package/dist/exports/computed.context.d.ts +2 -10
  22. package/dist/exports/computed.context.js +1 -1
  23. package/dist/exports/interaction.d.ts +45 -7
  24. package/dist/exports/item.context.d.ts +10 -7
  25. package/dist/exports/qti-assessment-item.context.d.ts +2 -7
  26. package/dist/exports/qti-condition-expression.d.ts +4 -5
  27. package/dist/exports/qti-condition-expression.js +2 -2
  28. package/dist/exports/qti-expression.d.ts +22 -7
  29. package/dist/exports/qti-expression.js +1 -1
  30. package/dist/exports/qti-test.d.ts +10 -38
  31. package/dist/exports/session.context.d.ts +2 -13
  32. package/dist/exports/session.context.js +1 -1
  33. package/dist/exports/test.context.d.ts +2 -7
  34. package/dist/exports/variables.d.ts +1 -7
  35. package/dist/index.d.ts +12 -31
  36. package/dist/index.js +38 -95
  37. package/{cdn/chunks/chunk-5TDBMEY5.js → dist/item.css} +7 -24
  38. package/dist/qti-assessment-item-l-mN3teH.d.ts +105 -0
  39. package/dist/qti-components/index.d.ts +1173 -16
  40. package/dist/qti-components/index.js +6 -5
  41. package/dist/qti-components-jsx.d.ts +4463 -0
  42. package/dist/qti-item/index.d.ts +114 -0
  43. package/dist/qti-item/index.js +19 -0
  44. package/dist/qti-loader/index.d.ts +2 -5
  45. package/dist/qti-loader/index.js +24 -4
  46. package/dist/qti-loader/index.js.map +1 -1
  47. package/dist/qti-modal-feedback-PKbhO-3w.d.ts +30 -0
  48. package/dist/qti-test/index.d.ts +480 -0
  49. package/dist/qti-test/index.js +69 -0
  50. package/dist/{qti-test-feedback-CZsbp6z4.d.ts → qti-test-BwvOhz_-.d.ts} +45 -18
  51. package/dist/variables-BCkyLoXK.d.ts +55 -0
  52. package/dist/vscode.css-custom-data.json +11 -0
  53. package/dist/vscode.html-custom-data.json +1135 -0
  54. package/package.json +74 -116
  55. package/cdn/chunks/chunk-2BSPQRNR.js +0 -6
  56. package/cdn/chunks/chunk-3CVBBZDT.js +0 -17
  57. package/cdn/chunks/chunk-3IBGLVHA.js +0 -1
  58. package/cdn/chunks/chunk-3YQMAZEO.js +0 -29
  59. package/cdn/chunks/chunk-5UQLGV7F.js +0 -5
  60. package/cdn/chunks/chunk-5WLHU3FH.js +0 -8
  61. package/cdn/chunks/chunk-6SGFGN34.js +0 -8
  62. package/cdn/chunks/chunk-6XVY32RS.js +0 -1
  63. package/cdn/chunks/chunk-7ME56ODO.js +0 -1
  64. package/cdn/chunks/chunk-CZDMOYYF.js +0 -1
  65. package/cdn/chunks/chunk-DNBBQ7LY.js +0 -1
  66. package/cdn/chunks/chunk-DP5FVJRS.js +0 -21
  67. package/cdn/chunks/chunk-E6IOJ4MV.js +0 -23
  68. package/cdn/chunks/chunk-G76Y52EL.js +0 -1471
  69. package/cdn/chunks/chunk-HCXHHI6V.js +0 -18
  70. package/cdn/chunks/chunk-HDMF4QZO.js +0 -48
  71. package/cdn/chunks/chunk-HKWYQB5Z.js +0 -37
  72. package/cdn/chunks/chunk-J5P2GBPV.js +0 -1
  73. package/cdn/chunks/chunk-KWPDTFYH.js +0 -1
  74. package/cdn/chunks/chunk-LIUOA3YV.js +0 -1
  75. package/cdn/chunks/chunk-LO2NM3CE.js +0 -1
  76. package/cdn/chunks/chunk-MD33BNWM.js +0 -1
  77. package/cdn/chunks/chunk-MRQ46JRY.js +0 -8
  78. package/cdn/chunks/chunk-NJP4VZB3.js +0 -8
  79. package/cdn/chunks/chunk-O4RAJ3LM.js +0 -25
  80. package/cdn/chunks/chunk-OSLUHYFD.js +0 -8
  81. package/cdn/chunks/chunk-P6SSTAJ2.js +0 -1
  82. package/cdn/chunks/chunk-PP62N3C4.js +0 -8
  83. package/cdn/chunks/chunk-PU7OABT3.js +0 -1
  84. package/cdn/chunks/chunk-PUI3LIFH.js +0 -0
  85. package/cdn/chunks/chunk-QBAXWCYQ.js +0 -5
  86. package/cdn/chunks/chunk-QEFO63QX.js +0 -8
  87. package/cdn/chunks/chunk-QQCGUVEV.js +0 -1
  88. package/cdn/chunks/chunk-QQR6POPY.js +0 -1
  89. package/cdn/chunks/chunk-RGNFAPWY.js +0 -2
  90. package/cdn/chunks/chunk-S5QDLZ6J.js +0 -1
  91. package/cdn/chunks/chunk-SEM2PEP6.js +0 -5
  92. package/cdn/chunks/chunk-SVVO2SFS.js +0 -1
  93. package/cdn/chunks/chunk-TCHROQU3.js +0 -1
  94. package/cdn/chunks/chunk-UMDZKG6K.js +0 -1
  95. package/cdn/chunks/chunk-VEG7LKS3.js +0 -48
  96. package/cdn/chunks/chunk-WCCTDLQ4.js +0 -8
  97. package/cdn/chunks/chunk-X4FA36TC.js +0 -1
  98. package/cdn/chunks/chunk-XJ2CFTZP.js +0 -1
  99. package/cdn/chunks/chunk-XUJ7TXHW.js +0 -1
  100. package/cdn/chunks/chunk-YCBNF5QU.js +0 -17
  101. package/cdn/chunks/chunk-YHLQ2JQ2.js +0 -1
  102. package/cdn/chunks/chunk-ZPCQH3EY.js +0 -10
  103. package/cdn/exports/computed-item.context.js +0 -1
  104. package/cdn/exports/computed.context.js +0 -1
  105. package/cdn/exports/config.context.js +0 -1
  106. package/cdn/exports/expression-result.js +0 -0
  107. package/cdn/exports/interaction.interface.js +0 -0
  108. package/cdn/exports/interaction.js +0 -1
  109. package/cdn/exports/item.context.js +0 -1
  110. package/cdn/exports/qti-assessment-item.context.js +0 -1
  111. package/cdn/exports/qti-condition-expression.js +0 -1
  112. package/cdn/exports/qti-expression.js +0 -1
  113. package/cdn/exports/qti-test.js +0 -0
  114. package/cdn/exports/qti.context.js +0 -1
  115. package/cdn/exports/session.context.js +0 -1
  116. package/cdn/exports/test.context.js +0 -1
  117. package/cdn/exports/variables.js +0 -0
  118. package/cdn/qti-components/index.js +0 -1
  119. package/cdn/qti-item/components/item-container.js +0 -1
  120. package/cdn/qti-item/components/item-correct-response-mode.js +0 -10
  121. package/cdn/qti-item/components/item-show-candidate-correction.js +0 -8
  122. package/cdn/qti-item/components/item-show-correct-response.js +0 -1
  123. package/cdn/qti-item/components/print-item-variables.js +0 -1
  124. package/cdn/qti-item/components/styles.js +0 -1
  125. package/cdn/qti-item/core/index.js +0 -1
  126. package/cdn/qti-loader/index.js +0 -1
  127. package/cdn/qti-test/components/index.js +0 -1
  128. package/cdn/qti-test/components/styles.js +0 -1
  129. package/cdn/qti-test/components/test-check-item.js +0 -1
  130. package/cdn/qti-test/components/test-container.js +0 -1
  131. package/cdn/qti-test/components/test-end-attempt.js +0 -1
  132. package/cdn/qti-test/components/test-item-link.js +0 -1
  133. package/cdn/qti-test/components/test-navigation.js +0 -1
  134. package/cdn/qti-test/components/test-next.js +0 -1
  135. package/cdn/qti-test/components/test-paging-buttons-stamp.js +0 -1
  136. package/cdn/qti-test/components/test-prev.js +0 -1
  137. package/cdn/qti-test/components/test-print-context.js +0 -1
  138. package/cdn/qti-test/components/test-print-item-variables.js +0 -1
  139. package/cdn/qti-test/components/test-scoring-buttons.js +0 -1
  140. package/cdn/qti-test/components/test-scoring-feedback.js +0 -1
  141. package/cdn/qti-test/components/test-section-buttons-stamp.js +0 -1
  142. package/cdn/qti-test/components/test-section-link.js +0 -1
  143. package/cdn/qti-test/components/test-show-correct-response.js +0 -1
  144. package/cdn/qti-test/components/test-stamp.js +0 -1
  145. package/cdn/qti-test/components/test-view-toggle.js +0 -1
  146. package/cdn/qti-test/components/test-view.js +0 -1
  147. package/cdn/qti-test/core/index.js +0 -1
  148. package/cdn/qti-transformers/index.js +0 -1
  149. package/dist/chunks/chunk-22IRJWWY.js.map +0 -1
  150. package/dist/chunks/chunk-36G5MQKR.js +0 -85
  151. package/dist/chunks/chunk-36G5MQKR.js.map +0 -1
  152. package/dist/chunks/chunk-5KCXO2RP.js +0 -36
  153. package/dist/chunks/chunk-5KCXO2RP.js.map +0 -1
  154. package/dist/chunks/chunk-5ZHHNEDA.js +0 -30
  155. package/dist/chunks/chunk-5ZHHNEDA.js.map +0 -1
  156. package/dist/chunks/chunk-7K44TDQO.js +0 -91
  157. package/dist/chunks/chunk-7K44TDQO.js.map +0 -1
  158. package/dist/chunks/chunk-7OMJMXHK.js +0 -50
  159. package/dist/chunks/chunk-7OMJMXHK.js.map +0 -1
  160. package/dist/chunks/chunk-AZIKAG7K.js.map +0 -1
  161. package/dist/chunks/chunk-BLBSZDQ4.js +0 -52
  162. package/dist/chunks/chunk-BLBSZDQ4.js.map +0 -1
  163. package/dist/chunks/chunk-CP34TICQ.js +0 -45
  164. package/dist/chunks/chunk-CP34TICQ.js.map +0 -1
  165. package/dist/chunks/chunk-CTESMSQO.js +0 -56
  166. package/dist/chunks/chunk-CTESMSQO.js.map +0 -1
  167. package/dist/chunks/chunk-DZAMXOSC.js +0 -30
  168. package/dist/chunks/chunk-DZAMXOSC.js.map +0 -1
  169. package/dist/chunks/chunk-E6V3JHVT.js +0 -31
  170. package/dist/chunks/chunk-E6V3JHVT.js.map +0 -1
  171. package/dist/chunks/chunk-EJZQSOHU.js +0 -85
  172. package/dist/chunks/chunk-EJZQSOHU.js.map +0 -1
  173. package/dist/chunks/chunk-EMVOKXSA.js +0 -84
  174. package/dist/chunks/chunk-EMVOKXSA.js.map +0 -1
  175. package/dist/chunks/chunk-ETLOKJAG.js +0 -94
  176. package/dist/chunks/chunk-ETLOKJAG.js.map +0 -1
  177. package/dist/chunks/chunk-GAHXUFMQ.js +0 -93
  178. package/dist/chunks/chunk-GAHXUFMQ.js.map +0 -1
  179. package/dist/chunks/chunk-KG5Z2CKO.js +0 -86
  180. package/dist/chunks/chunk-KG5Z2CKO.js.map +0 -1
  181. package/dist/chunks/chunk-KSXNC564.js +0 -43
  182. package/dist/chunks/chunk-KSXNC564.js.map +0 -1
  183. package/dist/chunks/chunk-LF6SO3JU.js.map +0 -1
  184. package/dist/chunks/chunk-ODHS7HDB.js +0 -94
  185. package/dist/chunks/chunk-ODHS7HDB.js.map +0 -1
  186. package/dist/chunks/chunk-QU7KR7VX.js +0 -367
  187. package/dist/chunks/chunk-QU7KR7VX.js.map +0 -1
  188. package/dist/chunks/chunk-TU6COU44.js +0 -82
  189. package/dist/chunks/chunk-TU6COU44.js.map +0 -1
  190. package/dist/chunks/chunk-TUKEQ36K.js +0 -60
  191. package/dist/chunks/chunk-TUKEQ36K.js.map +0 -1
  192. package/dist/chunks/chunk-TWYN56XO.js +0 -92
  193. package/dist/chunks/chunk-TWYN56XO.js.map +0 -1
  194. package/dist/chunks/chunk-UHQVQBCL.js +0 -89
  195. package/dist/chunks/chunk-UHQVQBCL.js.map +0 -1
  196. package/dist/chunks/chunk-WFFIUFJJ.js +0 -28
  197. package/dist/chunks/chunk-WFFIUFJJ.js.map +0 -1
  198. package/dist/chunks/chunk-WN6TJQI2.js +0 -103
  199. package/dist/chunks/chunk-WN6TJQI2.js.map +0 -1
  200. package/dist/chunks/chunk-WPEFNKMC.js +0 -923
  201. package/dist/chunks/chunk-WPEFNKMC.js.map +0 -1
  202. package/dist/chunks/chunk-YPMZLHGG.js +0 -52
  203. package/dist/chunks/chunk-YPMZLHGG.js.map +0 -1
  204. package/dist/chunks/chunk-YWEWSQJR.js +0 -40
  205. package/dist/chunks/chunk-YWEWSQJR.js.map +0 -1
  206. package/dist/chunks/chunk-ZGSNDSK3.js +0 -1
  207. package/dist/chunks/chunk-ZGSNDSK3.js.map +0 -1
  208. package/dist/qti-item/components/item-container.d.ts +0 -40
  209. package/dist/qti-item/components/item-container.js +0 -11
  210. package/dist/qti-item/components/item-container.js.map +0 -1
  211. package/dist/qti-item/components/item-correct-response-mode.d.ts +0 -17
  212. package/dist/qti-item/components/item-correct-response-mode.js +0 -62
  213. package/dist/qti-item/components/item-correct-response-mode.js.map +0 -1
  214. package/dist/qti-item/components/item-show-candidate-correction.d.ts +0 -34
  215. package/dist/qti-item/components/item-show-candidate-correction.js +0 -88
  216. package/dist/qti-item/components/item-show-candidate-correction.js.map +0 -1
  217. package/dist/qti-item/components/item-show-correct-response.d.ts +0 -33
  218. package/dist/qti-item/components/item-show-correct-response.js +0 -10
  219. package/dist/qti-item/components/item-show-correct-response.js.map +0 -1
  220. package/dist/qti-item/components/print-item-variables.d.ts +0 -23
  221. package/dist/qti-item/components/print-item-variables.js +0 -9
  222. package/dist/qti-item/components/print-item-variables.js.map +0 -1
  223. package/dist/qti-item/components/styles.d.ts +0 -8
  224. package/dist/qti-item/components/styles.js +0 -14
  225. package/dist/qti-item/components/styles.js.map +0 -1
  226. package/dist/qti-item/core/index.d.ts +0 -51
  227. package/dist/qti-item/core/index.js +0 -26
  228. package/dist/qti-response-declaration-DKr08ANy.d.ts +0 -1397
  229. package/dist/qti-test/components/index.d.ts +0 -33
  230. package/dist/qti-test/components/index.js +0 -87
  231. package/dist/qti-test/components/styles.d.ts +0 -8
  232. package/dist/qti-test/components/styles.js +0 -14
  233. package/dist/qti-test/components/styles.js.map +0 -1
  234. package/dist/qti-test/components/test-check-item.d.ts +0 -16
  235. package/dist/qti-test/components/test-check-item.js +0 -9
  236. package/dist/qti-test/components/test-check-item.js.map +0 -1
  237. package/dist/qti-test/components/test-container.d.ts +0 -39
  238. package/dist/qti-test/components/test-container.js +0 -11
  239. package/dist/qti-test/components/test-container.js.map +0 -1
  240. package/dist/qti-test/components/test-end-attempt.d.ts +0 -16
  241. package/dist/qti-test/components/test-end-attempt.js +0 -9
  242. package/dist/qti-test/components/test-end-attempt.js.map +0 -1
  243. package/dist/qti-test/components/test-item-link.d.ts +0 -18
  244. package/dist/qti-test/components/test-item-link.js +0 -9
  245. package/dist/qti-test/components/test-item-link.js.map +0 -1
  246. package/dist/qti-test/components/test-navigation.d.ts +0 -73
  247. package/dist/qti-test/components/test-navigation.js +0 -13
  248. package/dist/qti-test/components/test-navigation.js.map +0 -1
  249. package/dist/qti-test/components/test-next.d.ts +0 -48
  250. package/dist/qti-test/components/test-next.js +0 -12
  251. package/dist/qti-test/components/test-next.js.map +0 -1
  252. package/dist/qti-test/components/test-paging-buttons-stamp.d.ts +0 -23
  253. package/dist/qti-test/components/test-paging-buttons-stamp.js +0 -9
  254. package/dist/qti-test/components/test-paging-buttons-stamp.js.map +0 -1
  255. package/dist/qti-test/components/test-prev.d.ts +0 -46
  256. package/dist/qti-test/components/test-prev.js +0 -12
  257. package/dist/qti-test/components/test-prev.js.map +0 -1
  258. package/dist/qti-test/components/test-print-context.d.ts +0 -25
  259. package/dist/qti-test/components/test-print-context.js +0 -9
  260. package/dist/qti-test/components/test-print-context.js.map +0 -1
  261. package/dist/qti-test/components/test-print-item-variables.d.ts +0 -27
  262. package/dist/qti-test/components/test-print-item-variables.js +0 -9
  263. package/dist/qti-test/components/test-print-item-variables.js.map +0 -1
  264. package/dist/qti-test/components/test-scoring-buttons.d.ts +0 -32
  265. package/dist/qti-test/components/test-scoring-buttons.js +0 -9
  266. package/dist/qti-test/components/test-scoring-buttons.js.map +0 -1
  267. package/dist/qti-test/components/test-scoring-feedback.d.ts +0 -27
  268. package/dist/qti-test/components/test-scoring-feedback.js +0 -9
  269. package/dist/qti-test/components/test-scoring-feedback.js.map +0 -1
  270. package/dist/qti-test/components/test-section-buttons-stamp.d.ts +0 -23
  271. package/dist/qti-test/components/test-section-buttons-stamp.js +0 -9
  272. package/dist/qti-test/components/test-section-buttons-stamp.js.map +0 -1
  273. package/dist/qti-test/components/test-section-link.d.ts +0 -18
  274. package/dist/qti-test/components/test-section-link.js +0 -9
  275. package/dist/qti-test/components/test-section-link.js.map +0 -1
  276. package/dist/qti-test/components/test-show-correct-response.d.ts +0 -39
  277. package/dist/qti-test/components/test-show-correct-response.js +0 -10
  278. package/dist/qti-test/components/test-show-correct-response.js.map +0 -1
  279. package/dist/qti-test/components/test-stamp.d.ts +0 -31
  280. package/dist/qti-test/components/test-stamp.js +0 -9
  281. package/dist/qti-test/components/test-stamp.js.map +0 -1
  282. package/dist/qti-test/components/test-view-toggle.d.ts +0 -19
  283. package/dist/qti-test/components/test-view-toggle.js +0 -9
  284. package/dist/qti-test/components/test-view-toggle.js.map +0 -1
  285. package/dist/qti-test/components/test-view.d.ts +0 -24
  286. package/dist/qti-test/components/test-view.js +0 -10
  287. package/dist/qti-test/components/test-view.js.map +0 -1
  288. package/dist/qti-test/core/index.d.ts +0 -105
  289. package/dist/qti-test/core/index.js +0 -36
  290. package/dist/qti-test/core/index.js.map +0 -1
  291. /package/dist/chunks/{chunk-FL72PF4D.js.map → chunk-SV4K25ZI.js.map} +0 -0
  292. /package/dist/qti-item/{core/index.js.map → index.js.map} +0 -0
  293. /package/dist/qti-test/{components/index.js.map → index.js.map} +0 -0
@@ -0,0 +1,114 @@
1
+ import * as lit_html from 'lit-html';
2
+ import * as lit from 'lit';
3
+ import { LitElement } from 'lit';
4
+ import { ComputedItemContext } from '../exports/computed-item.context.js';
5
+ import { ConfigContext } from '../exports/config.context.js';
6
+ import '../variables-BCkyLoXK.js';
7
+ import '../exports/expression-result.js';
8
+
9
+ /**
10
+ * `<item-container>` is a custom element designed for hosting the qti-assessment-item.
11
+ * The `qti-assessment-item` will be placed inside the shadow DOM of this element.
12
+ * The element loads the item from the provided URL and renders it inside the shadow DOM.
13
+ *
14
+ * ### Styling
15
+ * Add a class to the element for styling.
16
+ *
17
+ * ```html
18
+ * <qti-item>
19
+ * <item-container class="m-4 bg-white" item-url="./path/to/item.xml"></item-container>
20
+ * </qti-item>
21
+ * ```
22
+ */
23
+ declare class ItemContainer extends LitElement {
24
+ /** URL of the item to load */
25
+ itemURL: string;
26
+ /** A parsed HTML document */
27
+ itemDoc: DocumentFragment;
28
+ /** The raw XML string */
29
+ itemXML: string;
30
+ /** Template content if provided */
31
+ private templateContent;
32
+ protected handleItemURLChange(): Promise<void>;
33
+ protected handleItemXMLChange(): void;
34
+ connectedCallback(): Promise<void>;
35
+ private initializeTemplateContent;
36
+ private applyStyles;
37
+ render(): lit_html.TemplateResult<1>;
38
+ }
39
+ declare global {
40
+ interface HTMLElementTagNameMap {
41
+ 'item-container': ItemContainer;
42
+ }
43
+ }
44
+
45
+ declare class PrintItemVariables extends LitElement {
46
+ protected computedContext?: ComputedItemContext;
47
+ static styles: lit.CSSResult;
48
+ render(): lit_html.TemplateResult<1>;
49
+ }
50
+ declare global {
51
+ interface HTMLElementTagNameMap {
52
+ 'print-item-variables': PrintItemVariables;
53
+ }
54
+ }
55
+
56
+ declare class ItemShowCorrectResponse extends LitElement {
57
+ computedContext?: ComputedItemContext;
58
+ static styles: lit.CSSResult;
59
+ shown: boolean;
60
+ disabled: boolean;
61
+ showCorrectText: string;
62
+ hideCorrectText: string;
63
+ noCorrectResponseText: string;
64
+ private _hasCorrectResponse;
65
+ private _previousActiveItem;
66
+ updated(): void;
67
+ private _toggleState;
68
+ private _getDisplayedText;
69
+ render(): lit_html.TemplateResult<1>;
70
+ }
71
+ declare global {
72
+ interface HTMLElementTagNameMap {
73
+ 'item-show-correct-response': ItemShowCorrectResponse;
74
+ }
75
+ }
76
+
77
+ /**
78
+ * `<qti-item>` is a custom element designed for rendering a single `qti-assessment-item`.
79
+ * It can also host some functionalities to interact with the item like scoring, showing feedback, etc.
80
+ * Placing a mandatory `<item-container>` inside '<qti-item>' will load or parse the item and render it.
81
+ * See `<item-container>` for more details.
82
+ *
83
+ * ```html
84
+ * <qti-item>
85
+ * <item-container class="m-4 bg-white" item-url="./path/to/item.xml"></item-container>
86
+ * </qti-item>
87
+ * ```
88
+ */
89
+ declare class QtiItem extends LitElement {
90
+ computedContext: ComputedItemContext;
91
+ private _qtiAssessmentItem?;
92
+ configContext: ConfigContext;
93
+ private _onItemContextChanged;
94
+ private _onAssessmentItemConnected;
95
+ private _onHandleShowCorrectResponse;
96
+ private _onHandleShowCandidateCorrection;
97
+ private _onHandleSwitchCorrectResponseMode;
98
+ constructor();
99
+ private _handleItemContextChanged;
100
+ private _handleAssessmentItemConnected;
101
+ private _handleShowCorrectResponse;
102
+ private _handleShowCandidateCorrection;
103
+ private _handleSwitchCorrectResponseMode;
104
+ private _updateItemVariablesInTestContext;
105
+ render(): lit_html.TemplateResult<1>;
106
+ disconnectedCallback(): void;
107
+ }
108
+ declare global {
109
+ interface HTMLElementTagNameMap {
110
+ 'qti-item': QtiItem;
111
+ }
112
+ }
113
+
114
+ export { ItemContainer, ItemShowCorrectResponse, PrintItemVariables, QtiItem };
@@ -0,0 +1,19 @@
1
+ import {
2
+ ItemContainer,
3
+ ItemShowCorrectResponse,
4
+ PrintItemVariables,
5
+ QtiItem
6
+ } from "../chunks/chunk-4BDOB6KY.js";
7
+ import "../chunks/chunk-LSEB52SP.js";
8
+ import "../chunks/chunk-ELDMXTUQ.js";
9
+ import "../chunks/chunk-WFUXZ4UT.js";
10
+ import "../chunks/chunk-4OGJBG35.js";
11
+ import "../chunks/chunk-ERYHQVOT.js";
12
+ import "../chunks/chunk-H2JE6IVU.js";
13
+ export {
14
+ ItemContainer,
15
+ ItemShowCorrectResponse,
16
+ PrintItemVariables,
17
+ QtiItem
18
+ };
19
+ //# sourceMappingURL=index.js.map
@@ -1,11 +1,8 @@
1
- import { Q as QtiAssessmentItem } from '../qti-response-declaration-DKr08ANy.js';
1
+ import { Q as QtiAssessmentItem } from '../qti-assessment-item-l-mN3teH.js';
2
2
  import 'lit-html';
3
3
  import 'lit';
4
4
  import '../exports/expression-result.js';
5
- import '../exports/interaction.interface.js';
6
- import '../exports/config.context.js';
7
- import 'lit-html/directives/ref.js';
8
- import '../exports/qti.context.js';
5
+ import '../variables-BCkyLoXK.js';
9
6
 
10
7
  type ManifestInfo = {
11
8
  testIdentifier: string;
@@ -1,9 +1,29 @@
1
1
  import {
2
- getItemByUri,
3
- getManifestInfo
4
- } from "../chunks/chunk-E6V3JHVT.js";
5
- import "../chunks/chunk-WFUXZ4UT.js";
2
+ qtiTransformItem,
3
+ qtiTransformManifest,
4
+ qtiTransformTest
5
+ } from "../chunks/chunk-WFUXZ4UT.js";
6
6
  import "../chunks/chunk-H2JE6IVU.js";
7
+
8
+ // src/lib/qti-loader/qti-loader.ts
9
+ var getManifestInfo = async (manifestURL) => {
10
+ const baseURI = manifestURL.substring(0, manifestURL.lastIndexOf("/"));
11
+ const test = await qtiTransformManifest().load(`${manifestURL}`).then((api) => api.assessmentTest());
12
+ const testHTMLDoc = await qtiTransformTest().load(`${baseURI}/${test.href}`).then((api) => api.htmlDoc());
13
+ const items = await qtiTransformTest().load(`${baseURI}/${test.href}`).then((api) => api.items());
14
+ const testURL = `${baseURI}/${test.href}`;
15
+ const testURI = `${baseURI}/${test.href.substring(0, test.href.lastIndexOf("/"))}`;
16
+ return {
17
+ testHTMLDoc,
18
+ testURI,
19
+ testURL,
20
+ items,
21
+ testIdentifier: test.identifier
22
+ };
23
+ };
24
+ var getItemByUri = async (itemUri) => {
25
+ return qtiTransformItem().load(itemUri).promise.then((api) => api.htmlDoc().firstElementChild);
26
+ };
7
27
  export {
8
28
  getItemByUri,
9
29
  getManifestInfo
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"sources":["../../src/lib/qti-loader/qti-loader.ts"],"sourcesContent":["import { qtiTransformItem, qtiTransformTest } from '../qti-transformers';\nimport { qtiTransformManifest } from '../qti-transformers/qti-transform-manifest';\n\nimport type { QtiAssessmentItem } from '../qti-components/qti-assessment-item/qti-assessment-item';\n\nexport type ManifestInfo = {\n testIdentifier: string;\n testHTMLDoc: DocumentFragment;\n testURI: string;\n testURL: string;\n items: {\n identifier: string;\n href: string;\n category: string;\n }[];\n};\n\n// Utility function to ensure package URIs end with a '/'\n// const normalizeUri = (uri: string) => (uri.endsWith('/') ? uri : `${uri}/`);\n\n// Fetches assessment data from the manifest\nexport const getManifestInfo = async (manifestURL: string): Promise<ManifestInfo> => {\n const baseURI = manifestURL.substring(0, manifestURL.lastIndexOf('/'));\n\n const test = await qtiTransformManifest()\n .load(`${manifestURL}`)\n .then(api => api.assessmentTest());\n\n const testHTMLDoc = await qtiTransformTest()\n .load(`${baseURI}/${test.href}`)\n .then(api => api.htmlDoc());\n\n const items = await qtiTransformTest()\n .load(`${baseURI}/${test.href}`)\n .then(api => api.items());\n\n const testURL = `${baseURI}/${test.href}`;\n const testURI = `${baseURI}/${test.href.substring(0, test.href.lastIndexOf('/'))}`;\n\n return {\n testHTMLDoc,\n testURI,\n testURL,\n items,\n testIdentifier: test.identifier\n };\n};\n\n// Fetches a single item by URI\nexport const getItemByUri = async (itemUri: string): Promise<QtiAssessmentItem> => {\n return qtiTransformItem()\n .load(itemUri)\n .promise.then(api => api.htmlDoc().firstElementChild as QtiAssessmentItem);\n};\n"],"mappings":";;;;;;;;AAqBO,IAAM,kBAAkB,OAAO,gBAA+C;AACnF,QAAM,UAAU,YAAY,UAAU,GAAG,YAAY,YAAY,GAAG,CAAC;AAErE,QAAM,OAAO,MAAM,qBAAqB,EACrC,KAAK,GAAG,WAAW,EAAE,EACrB,KAAK,SAAO,IAAI,eAAe,CAAC;AAEnC,QAAM,cAAc,MAAM,iBAAiB,EACxC,KAAK,GAAG,OAAO,IAAI,KAAK,IAAI,EAAE,EAC9B,KAAK,SAAO,IAAI,QAAQ,CAAC;AAE5B,QAAM,QAAQ,MAAM,iBAAiB,EAClC,KAAK,GAAG,OAAO,IAAI,KAAK,IAAI,EAAE,EAC9B,KAAK,SAAO,IAAI,MAAM,CAAC;AAE1B,QAAM,UAAU,GAAG,OAAO,IAAI,KAAK,IAAI;AACvC,QAAM,UAAU,GAAG,OAAO,IAAI,KAAK,KAAK,UAAU,GAAG,KAAK,KAAK,YAAY,GAAG,CAAC,CAAC;AAEhF,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,gBAAgB,KAAK;AAAA,EACvB;AACF;AAGO,IAAM,eAAe,OAAO,YAAgD;AACjF,SAAO,iBAAiB,EACrB,KAAK,OAAO,EACZ,QAAQ,KAAK,SAAO,IAAI,QAAQ,EAAE,iBAAsC;AAC7E;","names":[]}
@@ -0,0 +1,30 @@
1
+ import * as lit_html from 'lit-html';
2
+ import * as lit from 'lit';
3
+ import { LitElement } from 'lit';
4
+
5
+ declare abstract class QtiFeedback extends LitElement {
6
+ protected showHide: string;
7
+ outcomeIdentifier: string;
8
+ protected identifier: string;
9
+ showStatus: string;
10
+ private _context?;
11
+ connectedCallback(): void;
12
+ checkShowFeedback(outcomeIdentifier: string): void;
13
+ private showFeedback;
14
+ }
15
+
16
+ declare class QtiModalFeedback extends QtiFeedback {
17
+ static styles: lit.CSSResult;
18
+ render(): lit_html.TemplateResult<1>;
19
+ openFeedback(): void;
20
+ closeFeedback(): void;
21
+ connectedCallback(): void;
22
+ protected updated(changedProperties: Map<string | number | symbol, unknown>): void;
23
+ }
24
+ declare global {
25
+ interface HTMLElementTagNameMap {
26
+ 'qti-modal-feedback': QtiModalFeedback;
27
+ }
28
+ }
29
+
30
+ export { QtiModalFeedback as Q, QtiFeedback as a };
@@ -0,0 +1,480 @@
1
+ import * as lit_html from 'lit-html';
2
+ import { e as VariableValue, O as OutcomeVariable, V as VariableDeclaration } from '../variables-BCkyLoXK.js';
3
+ import * as lit from 'lit';
4
+ import { LitElement, PropertyValues, nothing } from 'lit';
5
+ import { SessionContext } from '../exports/session.context.js';
6
+ import { b as QtiAssessmentTest, I as IQtiTest } from '../qti-test-BwvOhz_-.js';
7
+ export { Q as QtiAssessmentItemRef, a as QtiAssessmentSection, d as QtiTestFeedback, c as QtiTestPart } from '../qti-test-BwvOhz_-.js';
8
+ import { TestContext } from '../exports/test.context.js';
9
+ export { INITIAL_TEST_CONTEXT, testContext } from '../exports/test.context.js';
10
+ import { QtiContext } from '../exports/qti.context.js';
11
+ import { ComputedContext, ComputedItem } from '../exports/computed.context.js';
12
+ import { ConfigContext } from '../exports/config.context.js';
13
+ import { TemplateFunction } from '@heximal/templates';
14
+ import { ViewMode } from 'storybook/internal/types';
15
+ import '../exports/expression-result.js';
16
+ import '../qti-transform-item-C9WtMeDR.js';
17
+ import '../qti-assessment-item-l-mN3teH.js';
18
+ import '../qti-modal-feedback-PKbhO-3w.js';
19
+ import '../exports/item.context.js';
20
+ import '../exports/computed-item.context.js';
21
+
22
+ declare abstract class TestBase extends LitElement {
23
+ testContext: Readonly<TestContext>;
24
+ sessionContext: Readonly<SessionContext>;
25
+ protected _testElement: QtiAssessmentTest;
26
+ updateItemVariables(itemRefID: string, variables: VariableValue<string | string[] | null>[]): void;
27
+ constructor();
28
+ private _updateItemVariablesInTestContext;
29
+ /**
30
+ * Updates the variables of an assessment item in the test context.
31
+ * - Matches the assessment item with the corresponding test context item.
32
+ * - If the item is not found, logs a warning.
33
+ * - Updates variables in the test context if exactly one variable exists.
34
+ * - Otherwise, syncs the assessment item's variables with the test context.
35
+ *
36
+ * @param assessmentItem - The assessment item to update.
37
+ */
38
+ private _updateItemInTestContext;
39
+ }
40
+
41
+ declare const QtiTest_base: (abstract new (...args: any[]) => {}) & (abstract new (...args: any[]) => {}) & (abstract new (...args: any[]) => {
42
+ updateOutcomeVariable(identifier: string, value: string | string[] | undefined): void;
43
+ getOutcome(identifier: string): Readonly<OutcomeVariable>;
44
+ getVariable(identifier: string): Readonly<VariableDeclaration<string | string[] | null>>;
45
+ outcomeProcessing(): boolean;
46
+ }) & typeof TestBase;
47
+ /**
48
+ * `<qti-test>` is a custom element designed for rendering and interacting with QTI (Question and Test Interoperability) tests.
49
+ *
50
+ * This component leverages several mixins to provide functionality for loading, navigating, processing, and displaying QTI test assessments.
51
+ *
52
+ * ### Example Usage
53
+ *
54
+ * Minimal example including navigation:
55
+ *
56
+ * ```html
57
+ * <qti-test>
58
+ * <test-navigation>
59
+ * <test-container test-url="./path/to/assessment.xml"></test-container>
60
+ * <nav class="flex">
61
+ * <test-prev></test-prev>
62
+ * <test-next></test-next>
63
+ * </nav>
64
+ * </test-navigation>
65
+ * </qti-test>
66
+ * ```
67
+ *
68
+ * Use the following file structure
69
+ * A qti-test loads a QTI3.0 assessmenttest.xml file from a package folder.
70
+ *
71
+ * ```plaintext
72
+ * Root/
73
+ * ├── index.html
74
+ * └── /assets/api/examples/
75
+ * ├── assessmenttest.xml
76
+ * └── imsmanifest.xml
77
+ *
78
+ * ```
79
+ *
80
+ * ### Test components
81
+ *
82
+ * Use test components inside the qti-test component for added functionality.
83
+ * ### Test next
84
+ * `<test-next> | TestNext`
85
+ *
86
+ * ### Test prev
87
+ *
88
+ * `<test-prev> | TestPrev`
89
+ * ### Test components
90
+ *
91
+ * You can use normal class names to style the elements.
92
+ * And you can use the `test-prev` and `test-next` elements to navigate through the test.
93
+ *
94
+ */
95
+ declare class QtiTest extends QtiTest_base implements IQtiTest {
96
+ /**
97
+ * Renders the component's template.
98
+ * Provides a default `<slot>` for content projection.
99
+ */
100
+ connectedCallback(): Promise<void>;
101
+ render(): lit_html.TemplateResult<1>;
102
+ }
103
+ declare global {
104
+ interface HTMLElementTagNameMap {
105
+ 'qti-test': QtiTest;
106
+ }
107
+ }
108
+
109
+ type CustomEventMap = {
110
+ 'test-end-attempt': CustomEvent;
111
+ 'test-show-correct-response': CustomEvent<{
112
+ value: boolean;
113
+ }>;
114
+ };
115
+ declare global {
116
+ interface GlobalEventHandlersEventMap extends CustomEventMap {
117
+ }
118
+ }
119
+ declare class TestNavigation extends LitElement {
120
+ identifier: any;
121
+ initContext: {
122
+ identifier: string;
123
+ [key: string]: any;
124
+ }[];
125
+ qtiContext: QtiContext;
126
+ configContext: ConfigContext;
127
+ protected _testContext?: TestContext;
128
+ protected _sessionContext?: SessionContext;
129
+ protected computedContext: ComputedContext;
130
+ autoScoreItems: boolean;
131
+ private _testElement;
132
+ constructor();
133
+ /**
134
+ * Handles the 'test-end-attempt' event.
135
+ * @private
136
+ * @listens TestNavigation#test-end-attempt
137
+ * @param {CustomEvent} event - The custom event object.
138
+ */
139
+ private _handleTestEndAttempt;
140
+ /**
141
+ * Handles the 'test-show-correct-response' event.
142
+ * @private
143
+ * @listens TestNavigation#test-show-correct-response
144
+ * @param {CustomEvent} event - The custom event object.
145
+ */
146
+ private _handleTestShowCorrectResponse;
147
+ /**
148
+ * Handles the 'test-show-candidate-correction' event.
149
+ * @private
150
+ * @listens TestNavigation#test-show-candidate-correction
151
+ * @param {CustomEvent} event - The custom event object.
152
+ */
153
+ private _handleTestShowCandidateCorrection;
154
+ private _handleTestUpdateOutcomeVariable;
155
+ private _handleInteractionChanged;
156
+ render(): lit_html.TemplateResult<1>;
157
+ private _handleTestConnected;
158
+ /**
159
+ * Extract default values from a qti-context-declaration element
160
+ */
161
+ private _extractDefaultValues;
162
+ private _handleItemConnected;
163
+ protected willUpdate(_changedProperties: PropertyValues): void;
164
+ }
165
+
166
+ /**
167
+ * Represents a custom element for navigating to the next test item.
168
+ *
169
+ * @remarks
170
+ * This element provides functionality for navigating to the next test item.
171
+ *
172
+ * @example
173
+ * ```html
174
+ * <test-next></test-next>
175
+ * ```
176
+ */
177
+ declare class TestNext extends LitElement {
178
+ _internalDisabled: boolean;
179
+ protected computedContext: ComputedContext;
180
+ sectionItems: ComputedItem[];
181
+ itemIndex: number;
182
+ _handleTestElementChange(_oldValue: ComputedContext, newValue: ComputedContext): void;
183
+ static styles: lit.CSSResult;
184
+ private _internals;
185
+ constructor();
186
+ connectedCallback(): void;
187
+ willUpdate(_changedProperties: Map<string | number | symbol, unknown>): void;
188
+ checkDisabled(): void;
189
+ protected _requestItem(identifier: string): void;
190
+ render(): lit_html.TemplateResult<1>;
191
+ }
192
+ declare global {
193
+ interface HTMLElementTagNameMap {
194
+ 'test-next': TestNext;
195
+ }
196
+ }
197
+
198
+ /**
199
+ * Represents a custom element for navigating to the previous test item.
200
+ *
201
+ * @remarks
202
+ * This element provides functionality for navigating to the previous test item.
203
+ *
204
+ * @example
205
+ * ```html
206
+ * <test-prev></test-prev>
207
+ * ```
208
+ */
209
+ declare class TestPrev extends LitElement {
210
+ _internalDisabled: boolean;
211
+ private computedContext;
212
+ sectionItems: ComputedItem[];
213
+ itemIndex: number;
214
+ _handleTestElementChange(_oldValue: ComputedContext, newValue: ComputedContext): void;
215
+ static styles: lit.CSSResult;
216
+ constructor();
217
+ willUpdate(_changedProperties: Map<string | number | symbol, unknown>): void;
218
+ checkDisabled(): void;
219
+ protected _requestItem(identifier: string): void;
220
+ render(): lit_html.TemplateResult<1>;
221
+ }
222
+ declare global {
223
+ interface HTMLElementTagNameMap {
224
+ 'test-previous': TestPrev;
225
+ }
226
+ }
227
+
228
+ declare class TestView extends LitElement {
229
+ static DEFAULT_VIEW_OPTIONS: string[];
230
+ private sessionContext;
231
+ /** label accompanying the select view dropdown */
232
+ label: string;
233
+ /** The options to display in the dropdown, default: ['author', 'candidate', 'proctor', 'scorer', 'testConstructor', 'tutor'] */
234
+ viewOptions: any;
235
+ protected _handleViewOptionsChange: () => void;
236
+ connectedCallback(): void;
237
+ private _viewOptions;
238
+ private updateViewOptions;
239
+ protected _switchView(view: string): void;
240
+ render(): lit_html.TemplateResult<1>;
241
+ }
242
+ declare global {
243
+ interface HTMLElementTagNameMap {
244
+ 'test-view': TestView;
245
+ }
246
+ }
247
+
248
+ declare class TestItemLink extends LitElement {
249
+ static styles: lit.CSSResult;
250
+ private itemId;
251
+ constructor();
252
+ protected _requestItem(identifier: string): void;
253
+ render(): lit_html.TemplateResult<1>;
254
+ }
255
+ declare global {
256
+ interface HTMLElementTagNameMap {
257
+ 'test-item-link': TestItemLink;
258
+ }
259
+ }
260
+
261
+ declare class TestEndAttempt extends LitElement {
262
+ static styles: lit.CSSResult;
263
+ constructor();
264
+ render(): lit_html.TemplateResult<1>;
265
+ }
266
+ declare global {
267
+ interface HTMLElementTagNameMap {
268
+ 'test-end-attempt': TestEndAttempt;
269
+ }
270
+ }
271
+
272
+ /**
273
+ * @deprecated test-show-correct-response is deprecated and will be removed in the future.
274
+ */
275
+ declare class TestShowCorrectResponse extends LitElement {
276
+ computedContext?: ComputedContext;
277
+ static styles: lit.CSSResult;
278
+ shown: boolean;
279
+ disabled: boolean;
280
+ showCorrectText: string;
281
+ hideCorrectText: string;
282
+ noCorrectResponseText: string;
283
+ private _previousActiveItem?;
284
+ willUpdate(_changedProperties: Map<string | number | symbol, unknown>): void;
285
+ private _toggleState;
286
+ private _getDisplayedText;
287
+ render(): lit_html.TemplateResult<1>;
288
+ }
289
+ declare global {
290
+ interface HTMLElementTagNameMap {
291
+ 'test-show-correct-response': TestShowCorrectResponse;
292
+ }
293
+ }
294
+
295
+ /**
296
+ * @deprecated test-paging-buttons-stamp is deprecated and will be removed in the future.
297
+ */
298
+ declare class TestPagingButtonsStamp extends LitElement {
299
+ private computedContext;
300
+ myTemplate: TemplateFunction;
301
+ private _internals;
302
+ protected createRenderRoot(): HTMLElement | DocumentFragment;
303
+ constructor();
304
+ connectedCallback(): void;
305
+ render(): lit_html.TemplateResult<1>;
306
+ }
307
+ declare global {
308
+ interface HTMLElementTagNameMap {
309
+ 'test-paging-buttons-stamp': TestPagingButtonsStamp;
310
+ }
311
+ }
312
+
313
+ /**
314
+ * `<test-container>` is a custom element designed for hosting the qti-assessment-item.
315
+ * The `qti-assessment-test` will be placed inside the shadow DOM of this element.
316
+ * The element loads the test from the provided URL and renders it inside the shadow DOM.
317
+ *
318
+ * ```html
319
+ * <qti-test>
320
+ * <test-navigation>
321
+ * <test-container class="m-4 bg-white" test-url="./path/to/assessmenttest.xml"></test-container>
322
+ * </test-navigation>
323
+ * </qti-test>
324
+ * ```
325
+ */
326
+ declare class TestContainer extends LitElement {
327
+ /** URL of the item to load */
328
+ testURL: string;
329
+ /** A parsed HTML document */
330
+ testDoc: DocumentFragment;
331
+ /** The raw XML string */
332
+ testXML: string;
333
+ /** Template content if provided */
334
+ private templateContent;
335
+ protected handleTestURLChange(): Promise<void>;
336
+ protected handleTestXMLChange(): void;
337
+ connectedCallback(): Promise<void>;
338
+ private initializeTemplateContent;
339
+ private applyStyles;
340
+ render(): lit_html.TemplateResult<1>;
341
+ }
342
+ declare global {
343
+ interface HTMLElementTagNameMap {
344
+ 'test-container': TestContainer;
345
+ }
346
+ }
347
+
348
+ declare class TestPrintVariables extends LitElement {
349
+ computedContext?: ComputedContext;
350
+ static styles: lit.CSSResult;
351
+ render(): lit_html.TemplateResult<1>;
352
+ }
353
+ declare global {
354
+ interface HTMLElementTagNameMap {
355
+ 'test-print-item-variables': TestPrintVariables;
356
+ }
357
+ }
358
+
359
+ /**
360
+ * @deprecated test-section-buttons-stamp is deprecated and will be removed in the future.
361
+ */
362
+ declare class TestSectionButtonsStamp extends LitElement {
363
+ private computedContext;
364
+ myTemplate: TemplateFunction;
365
+ private _internals;
366
+ protected createRenderRoot(): HTMLElement | DocumentFragment;
367
+ constructor();
368
+ connectedCallback(): void;
369
+ render(): lit_html.TemplateResult<1>;
370
+ }
371
+ declare global {
372
+ interface HTMLElementTagNameMap {
373
+ 'test-section-buttons-stamp': TestSectionButtonsStamp;
374
+ }
375
+ }
376
+
377
+ declare class TestSectionLink extends LitElement {
378
+ static styles: lit.CSSResult;
379
+ private sectionId;
380
+ private _requestItem;
381
+ constructor();
382
+ render(): lit_html.TemplateResult<1>;
383
+ }
384
+ declare global {
385
+ interface HTMLElementTagNameMap {
386
+ 'test-section-link': TestSectionLink;
387
+ }
388
+ }
389
+
390
+ declare class TestPrintContext extends LitElement {
391
+ computedContext?: ComputedContext;
392
+ render(): lit_html.TemplateResult<1>;
393
+ }
394
+ declare global {
395
+ interface HTMLElementTagNameMap {
396
+ 'test-print-context': TestPrintContext;
397
+ }
398
+ }
399
+
400
+ /**
401
+ * A custom web component that renders a test stamp using the Lit framework.
402
+ * This component is deprecated and will be removed in the future.
403
+ * @customElement
404
+ * @extends {LitElement}
405
+ */
406
+ declare class TestStamp extends LitElement {
407
+ /**
408
+ * Indicates whether the component is in debug mode.
409
+ * When set to `true`, the available objects and properties (i.e.: stampContext) is displayed.
410
+ */
411
+ debug: boolean;
412
+ private computedContext;
413
+ private stampContext;
414
+ myTemplate: TemplateFunction;
415
+ protected createRenderRoot(): HTMLElement | DocumentFragment;
416
+ connectedCallback(): void;
417
+ protected willUpdate(_changedProperties: PropertyValues): void;
418
+ render(): lit_html.TemplateResult<1>;
419
+ }
420
+ declare global {
421
+ interface HTMLElementTagNameMap {
422
+ 'test-stamp': TestStamp;
423
+ }
424
+ }
425
+
426
+ declare class TestScoringButtons extends LitElement {
427
+ view: string;
428
+ disabled: boolean;
429
+ myTemplate: TemplateFunction | null;
430
+ protected createRenderRoot(): HTMLElement | DocumentFragment;
431
+ connectedCallback(): void;
432
+ protected computedContext?: ComputedContext;
433
+ private _changeOutcomeScore;
434
+ render(): lit_html.TemplateResult<1> | typeof nothing;
435
+ constructor();
436
+ }
437
+ declare global {
438
+ interface HTMLElementTagNameMap {
439
+ 'test-scoring-buttons': TestScoringButtons;
440
+ }
441
+ }
442
+
443
+ declare class TestViewToggle extends LitElement {
444
+ myTemplate: any;
445
+ protected createRenderRoot(): HTMLElement | DocumentFragment;
446
+ private sessionContext;
447
+ connectedCallback(): void;
448
+ _switchView(view: string): void;
449
+ protected firstUpdated(_changedProperties: PropertyValues): void;
450
+ render(): lit_html.TemplateResult<1>;
451
+ }
452
+ declare global {
453
+ interface HTMLElementTagNameMap {
454
+ 'test-view-toggle': TestViewToggle;
455
+ }
456
+ }
457
+
458
+ declare class TestScoringFeedback extends LitElement {
459
+ protected computedContext?: ComputedContext;
460
+ view: ViewMode;
461
+ render(): lit_html.TemplateResult<1>;
462
+ }
463
+ declare global {
464
+ interface HTMLElementTagNameMap {
465
+ 'test-scoring-feedback': TestScoringFeedback;
466
+ }
467
+ }
468
+
469
+ declare class TestCheckItem extends LitElement {
470
+ static styles: lit.CSSResult;
471
+ constructor();
472
+ render(): lit_html.TemplateResult<1>;
473
+ }
474
+ declare global {
475
+ interface HTMLElementTagNameMap {
476
+ 'test-check-item': TestCheckItem;
477
+ }
478
+ }
479
+
480
+ export { QtiAssessmentTest, QtiTest, TestCheckItem, TestContainer, TestContext, TestEndAttempt, TestItemLink, TestNavigation, TestNext, TestPagingButtonsStamp, TestPrev, TestPrintContext, TestPrintVariables, TestScoringButtons, TestScoringFeedback, TestSectionButtonsStamp, TestSectionLink, TestShowCorrectResponse, TestStamp, TestView, TestViewToggle };