@pie-element/ebsr 11.0.0 → 12.0.1-esmbeta.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 (284) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/configure/CHANGELOG.md +8 -0
  3. package/configure/node_modules/@pie-element/multiple-choice/CHANGELOG.json +1972 -0
  4. package/configure/node_modules/@pie-element/multiple-choice/CHANGELOG.md +4186 -0
  5. package/configure/node_modules/@pie-element/multiple-choice/LICENSE.md +5 -0
  6. package/configure/node_modules/@pie-element/multiple-choice/PRINT.md +35 -0
  7. package/configure/node_modules/@pie-element/multiple-choice/README.md +56 -0
  8. package/configure/node_modules/@pie-element/multiple-choice/choice.png +0 -0
  9. package/configure/node_modules/@pie-element/multiple-choice/configure/CHANGELOG.json +1387 -0
  10. package/configure/node_modules/@pie-element/multiple-choice/configure/CHANGELOG.md +3332 -0
  11. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/defaults.js +202 -0
  12. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/defaults.js.map +1 -0
  13. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/index.js +248 -0
  14. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/index.js.map +1 -0
  15. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/main.js +597 -0
  16. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/main.js.map +1 -0
  17. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/utils.js +18 -0
  18. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/utils.js.map +1 -0
  19. package/configure/node_modules/@pie-element/multiple-choice/configure/package.json +20 -0
  20. package/configure/node_modules/@pie-element/multiple-choice/controller/CHANGELOG.json +527 -0
  21. package/configure/node_modules/@pie-element/multiple-choice/controller/CHANGELOG.md +2297 -0
  22. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/defaults.js +34 -0
  23. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/defaults.js.map +1 -0
  24. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/index.js +346 -0
  25. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/index.js.map +1 -0
  26. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/utils.js +28 -0
  27. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/utils.js.map +1 -0
  28. package/configure/node_modules/@pie-element/multiple-choice/controller/package.json +15 -0
  29. package/configure/node_modules/@pie-element/multiple-choice/docs/config-schema.json +2993 -0
  30. package/configure/node_modules/@pie-element/multiple-choice/docs/config-schema.json.md +2217 -0
  31. package/configure/node_modules/@pie-element/multiple-choice/docs/demo/config.js +8 -0
  32. package/configure/node_modules/@pie-element/multiple-choice/docs/demo/generate.js +61 -0
  33. package/configure/node_modules/@pie-element/multiple-choice/docs/demo/index.html +1 -0
  34. package/configure/node_modules/@pie-element/multiple-choice/docs/demo/session.js +7 -0
  35. package/configure/node_modules/@pie-element/multiple-choice/docs/pie-schema.json +1332 -0
  36. package/configure/node_modules/@pie-element/multiple-choice/docs/pie-schema.json.md +1015 -0
  37. package/configure/node_modules/@pie-element/multiple-choice/esm/configure.css +847 -0
  38. package/configure/node_modules/@pie-element/multiple-choice/esm/configure.js +1218 -0
  39. package/configure/node_modules/@pie-element/multiple-choice/esm/configure.js.map +1 -0
  40. package/configure/node_modules/@pie-element/multiple-choice/esm/controller.css +847 -0
  41. package/configure/node_modules/@pie-element/multiple-choice/esm/controller.js +324 -0
  42. package/configure/node_modules/@pie-element/multiple-choice/esm/controller.js.map +1 -0
  43. package/configure/node_modules/@pie-element/multiple-choice/esm/element.css +847 -0
  44. package/configure/node_modules/@pie-element/multiple-choice/esm/element.js +3287 -0
  45. package/configure/node_modules/@pie-element/multiple-choice/esm/element.js.map +1 -0
  46. package/configure/node_modules/@pie-element/multiple-choice/esm/print.css +847 -0
  47. package/configure/node_modules/@pie-element/multiple-choice/esm/print.js +3017 -0
  48. package/configure/node_modules/@pie-element/multiple-choice/esm/print.js.map +1 -0
  49. package/configure/node_modules/@pie-element/multiple-choice/lib/choice-input.js +427 -0
  50. package/configure/node_modules/@pie-element/multiple-choice/lib/choice-input.js.map +1 -0
  51. package/configure/node_modules/@pie-element/multiple-choice/lib/choice.js +252 -0
  52. package/configure/node_modules/@pie-element/multiple-choice/lib/choice.js.map +1 -0
  53. package/configure/node_modules/@pie-element/multiple-choice/lib/feedback-tick.js +174 -0
  54. package/configure/node_modules/@pie-element/multiple-choice/lib/feedback-tick.js.map +1 -0
  55. package/configure/node_modules/@pie-element/multiple-choice/lib/index.js +388 -0
  56. package/configure/node_modules/@pie-element/multiple-choice/lib/index.js.map +1 -0
  57. package/configure/node_modules/@pie-element/multiple-choice/lib/main.js +108 -0
  58. package/configure/node_modules/@pie-element/multiple-choice/lib/main.js.map +1 -0
  59. package/configure/node_modules/@pie-element/multiple-choice/lib/multiple-choice.js +469 -0
  60. package/configure/node_modules/@pie-element/multiple-choice/lib/multiple-choice.js.map +1 -0
  61. package/configure/node_modules/@pie-element/multiple-choice/lib/print.js +129 -0
  62. package/configure/node_modules/@pie-element/multiple-choice/lib/print.js.map +1 -0
  63. package/configure/node_modules/@pie-element/multiple-choice/lib/session-updater.js +48 -0
  64. package/configure/node_modules/@pie-element/multiple-choice/lib/session-updater.js.map +1 -0
  65. package/configure/node_modules/@pie-element/multiple-choice/module/configure.js +1 -0
  66. package/configure/node_modules/@pie-element/multiple-choice/module/controller.js +3472 -0
  67. package/configure/node_modules/@pie-element/multiple-choice/module/demo.js +86 -0
  68. package/configure/node_modules/@pie-element/multiple-choice/module/element.js +1 -0
  69. package/configure/node_modules/@pie-element/multiple-choice/module/index.html +21 -0
  70. package/configure/node_modules/@pie-element/multiple-choice/module/index.js +2 -0
  71. package/configure/node_modules/@pie-element/multiple-choice/module/manifest.json +10 -0
  72. package/configure/node_modules/@pie-element/multiple-choice/module/print-demo.js +124 -0
  73. package/configure/node_modules/@pie-element/multiple-choice/module/print.html +18 -0
  74. package/configure/node_modules/@pie-element/multiple-choice/module/print.js +1 -0
  75. package/configure/node_modules/@pie-element/multiple-choice/package.json +53 -0
  76. package/configure/node_modules/@pie-lib/correct-answer-toggle/CHANGELOG.json +1 -0
  77. package/configure/node_modules/@pie-lib/correct-answer-toggle/CHANGELOG.md +898 -0
  78. package/configure/node_modules/@pie-lib/correct-answer-toggle/NEXT.CHANGELOG.json +1 -0
  79. package/configure/node_modules/@pie-lib/correct-answer-toggle/esm/index.js +262 -0
  80. package/configure/node_modules/@pie-lib/correct-answer-toggle/esm/index.js.map +1 -0
  81. package/configure/node_modules/@pie-lib/correct-answer-toggle/lib/expander.js +88 -0
  82. package/configure/node_modules/@pie-lib/correct-answer-toggle/lib/expander.js.map +1 -0
  83. package/configure/node_modules/@pie-lib/correct-answer-toggle/lib/index.js +181 -0
  84. package/configure/node_modules/@pie-lib/correct-answer-toggle/lib/index.js.map +1 -0
  85. package/configure/node_modules/@pie-lib/correct-answer-toggle/lib/styles.js +66 -0
  86. package/configure/node_modules/@pie-lib/correct-answer-toggle/lib/styles.js.map +1 -0
  87. package/configure/node_modules/@pie-lib/correct-answer-toggle/package.json +44 -0
  88. package/configure/node_modules/@pie-lib/correct-answer-toggle/src/__tests__/index.test.jsx +99 -0
  89. package/configure/node_modules/@pie-lib/correct-answer-toggle/src/expander.jsx +61 -0
  90. package/configure/node_modules/@pie-lib/correct-answer-toggle/src/index.jsx +98 -0
  91. package/configure/node_modules/@pie-lib/correct-answer-toggle/src/styles.js +61 -0
  92. package/configure/node_modules/@pie-lib/icons/CHANGELOG.json +1 -0
  93. package/configure/node_modules/@pie-lib/icons/CHANGELOG.md +539 -0
  94. package/configure/node_modules/@pie-lib/icons/NEXT.CHANGELOG.json +1 -0
  95. package/configure/node_modules/@pie-lib/icons/esm/index.js +1153 -0
  96. package/configure/node_modules/@pie-lib/icons/esm/index.js.map +1 -0
  97. package/configure/node_modules/@pie-lib/icons/lib/correct-icon.js +89 -0
  98. package/configure/node_modules/@pie-lib/icons/lib/correct-icon.js.map +1 -0
  99. package/configure/node_modules/@pie-lib/icons/lib/correct-response-icon.js +153 -0
  100. package/configure/node_modules/@pie-lib/icons/lib/correct-response-icon.js.map +1 -0
  101. package/configure/node_modules/@pie-lib/icons/lib/icon-base.js +206 -0
  102. package/configure/node_modules/@pie-lib/icons/lib/icon-base.js.map +1 -0
  103. package/configure/node_modules/@pie-lib/icons/lib/icon-root.js +130 -0
  104. package/configure/node_modules/@pie-lib/icons/lib/icon-root.js.map +1 -0
  105. package/configure/node_modules/@pie-lib/icons/lib/incorrect-icon.js +92 -0
  106. package/configure/node_modules/@pie-lib/icons/lib/incorrect-icon.js.map +1 -0
  107. package/configure/node_modules/@pie-lib/icons/lib/index.js +72 -0
  108. package/configure/node_modules/@pie-lib/icons/lib/index.js.map +1 -0
  109. package/configure/node_modules/@pie-lib/icons/lib/instructions-icon.js +229 -0
  110. package/configure/node_modules/@pie-lib/icons/lib/instructions-icon.js.map +1 -0
  111. package/configure/node_modules/@pie-lib/icons/lib/learn-more-icon.js +145 -0
  112. package/configure/node_modules/@pie-lib/icons/lib/learn-more-icon.js.map +1 -0
  113. package/configure/node_modules/@pie-lib/icons/lib/nothing-submitted-icon.js +183 -0
  114. package/configure/node_modules/@pie-lib/icons/lib/nothing-submitted-icon.js.map +1 -0
  115. package/configure/node_modules/@pie-lib/icons/lib/partially-correct-icon.js +82 -0
  116. package/configure/node_modules/@pie-lib/icons/lib/partially-correct-icon.js.map +1 -0
  117. package/configure/node_modules/@pie-lib/icons/lib/show-rationale-icon.js +206 -0
  118. package/configure/node_modules/@pie-lib/icons/lib/show-rationale-icon.js.map +1 -0
  119. package/configure/node_modules/@pie-lib/icons/lib/sized.js +41 -0
  120. package/configure/node_modules/@pie-lib/icons/lib/sized.js.map +1 -0
  121. package/configure/node_modules/@pie-lib/icons/package.json +35 -0
  122. package/configure/node_modules/@pie-lib/icons/src/__tests__/index.test.js +3 -0
  123. package/configure/node_modules/@pie-lib/icons/src/correct-icon.jsx +64 -0
  124. package/configure/node_modules/@pie-lib/icons/src/correct-response-icon.jsx +121 -0
  125. package/configure/node_modules/@pie-lib/icons/src/icon-base.jsx +158 -0
  126. package/configure/node_modules/@pie-lib/icons/src/icon-root.jsx +76 -0
  127. package/configure/node_modules/@pie-lib/icons/src/incorrect-icon.jsx +61 -0
  128. package/configure/node_modules/@pie-lib/icons/src/index.js +19 -0
  129. package/configure/node_modules/@pie-lib/icons/src/instructions-icon.jsx +189 -0
  130. package/configure/node_modules/@pie-lib/icons/src/learn-more-icon.jsx +107 -0
  131. package/configure/node_modules/@pie-lib/icons/src/nothing-submitted-icon.jsx +130 -0
  132. package/configure/node_modules/@pie-lib/icons/src/partially-correct-icon.jsx +49 -0
  133. package/configure/node_modules/@pie-lib/icons/src/show-rationale-icon.jsx +152 -0
  134. package/configure/node_modules/@pie-lib/icons/src/sized.jsx +25 -0
  135. package/configure/node_modules/@pie-lib/math-rendering/CHANGELOG.json +1 -0
  136. package/configure/node_modules/@pie-lib/math-rendering/CHANGELOG.md +775 -0
  137. package/configure/node_modules/@pie-lib/math-rendering/NEXT.CHANGELOG.json +1 -0
  138. package/configure/node_modules/@pie-lib/math-rendering/esm/index.js +690 -0
  139. package/configure/node_modules/@pie-lib/math-rendering/esm/index.js.map +1 -0
  140. package/configure/node_modules/@pie-lib/math-rendering/lib/index.js +38 -0
  141. package/configure/node_modules/@pie-lib/math-rendering/lib/index.js.map +1 -0
  142. package/configure/node_modules/@pie-lib/math-rendering/lib/mml-to-latex.js +15 -0
  143. package/configure/node_modules/@pie-lib/math-rendering/lib/mml-to-latex.js.map +1 -0
  144. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/chtml.js +296 -0
  145. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/chtml.js.map +1 -0
  146. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/index.js +23 -0
  147. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/index.js.map +1 -0
  148. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/mml.js +109 -0
  149. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/mml.js.map +1 -0
  150. package/configure/node_modules/@pie-lib/math-rendering/lib/normalization.js +95 -0
  151. package/configure/node_modules/@pie-lib/math-rendering/lib/normalization.js.map +1 -0
  152. package/configure/node_modules/@pie-lib/math-rendering/lib/render-math.js +438 -0
  153. package/configure/node_modules/@pie-lib/math-rendering/lib/render-math.js.map +1 -0
  154. package/configure/node_modules/@pie-lib/math-rendering/package.json +28 -0
  155. package/configure/node_modules/@pie-lib/math-rendering/src/__tests__/mml-to-latex.test.js +14 -0
  156. package/configure/node_modules/@pie-lib/math-rendering/src/__tests__/normalization.test.js +50 -0
  157. package/configure/node_modules/@pie-lib/math-rendering/src/__tests__/render-math.test.js +155 -0
  158. package/configure/node_modules/@pie-lib/math-rendering/src/index.js +5 -0
  159. package/configure/node_modules/@pie-lib/math-rendering/src/mml-to-latex.js +2 -0
  160. package/configure/node_modules/@pie-lib/math-rendering/src/mstack/__tests__/__snapshots__/chtml.test.js.snap +9 -0
  161. package/configure/node_modules/@pie-lib/math-rendering/src/mstack/__tests__/chtml.test.js +104 -0
  162. package/configure/node_modules/@pie-lib/math-rendering/src/mstack/chtml.js +220 -0
  163. package/configure/node_modules/@pie-lib/math-rendering/src/mstack/index.js +13 -0
  164. package/configure/node_modules/@pie-lib/math-rendering/src/mstack/mml.js +24 -0
  165. package/configure/node_modules/@pie-lib/math-rendering/src/normalization.js +69 -0
  166. package/configure/node_modules/@pie-lib/math-rendering/src/render-math.js +387 -0
  167. package/configure/node_modules/@pie-lib/render-ui/CHANGELOG.json +1 -0
  168. package/configure/node_modules/@pie-lib/render-ui/CHANGELOG.md +1026 -0
  169. package/configure/node_modules/@pie-lib/render-ui/NEXT.CHANGELOG.json +1 -0
  170. package/configure/node_modules/@pie-lib/render-ui/esm/index.js +1616 -0
  171. package/configure/node_modules/@pie-lib/render-ui/esm/index.js.map +1 -0
  172. package/configure/node_modules/@pie-lib/render-ui/lib/append-css-rules.js +88 -0
  173. package/configure/node_modules/@pie-lib/render-ui/lib/append-css-rules.js.map +1 -0
  174. package/configure/node_modules/@pie-lib/render-ui/lib/assets/enableAudioAutoplayImage.js +9 -0
  175. package/configure/node_modules/@pie-lib/render-ui/lib/assets/enableAudioAutoplayImage.js.map +1 -0
  176. package/configure/node_modules/@pie-lib/render-ui/lib/collapsible/index.js +135 -0
  177. package/configure/node_modules/@pie-lib/render-ui/lib/collapsible/index.js.map +1 -0
  178. package/configure/node_modules/@pie-lib/render-ui/lib/color.js +344 -0
  179. package/configure/node_modules/@pie-lib/render-ui/lib/color.js.map +1 -0
  180. package/configure/node_modules/@pie-lib/render-ui/lib/feedback.js +150 -0
  181. package/configure/node_modules/@pie-lib/render-ui/lib/feedback.js.map +1 -0
  182. package/configure/node_modules/@pie-lib/render-ui/lib/has-media.js +27 -0
  183. package/configure/node_modules/@pie-lib/render-ui/lib/has-media.js.map +1 -0
  184. package/configure/node_modules/@pie-lib/render-ui/lib/has-text.js +28 -0
  185. package/configure/node_modules/@pie-lib/render-ui/lib/has-text.js.map +1 -0
  186. package/configure/node_modules/@pie-lib/render-ui/lib/html-and-math.js +74 -0
  187. package/configure/node_modules/@pie-lib/render-ui/lib/html-and-math.js.map +1 -0
  188. package/configure/node_modules/@pie-lib/render-ui/lib/index.js +136 -0
  189. package/configure/node_modules/@pie-lib/render-ui/lib/index.js.map +1 -0
  190. package/configure/node_modules/@pie-lib/render-ui/lib/input-container.js +60 -0
  191. package/configure/node_modules/@pie-lib/render-ui/lib/input-container.js.map +1 -0
  192. package/configure/node_modules/@pie-lib/render-ui/lib/preview-layout.js +145 -0
  193. package/configure/node_modules/@pie-lib/render-ui/lib/preview-layout.js.map +1 -0
  194. package/configure/node_modules/@pie-lib/render-ui/lib/preview-prompt.js +321 -0
  195. package/configure/node_modules/@pie-lib/render-ui/lib/preview-prompt.js.map +1 -0
  196. package/configure/node_modules/@pie-lib/render-ui/lib/purpose.js +28 -0
  197. package/configure/node_modules/@pie-lib/render-ui/lib/purpose.js.map +1 -0
  198. package/configure/node_modules/@pie-lib/render-ui/lib/readable.js +28 -0
  199. package/configure/node_modules/@pie-lib/render-ui/lib/readable.js.map +1 -0
  200. package/configure/node_modules/@pie-lib/render-ui/lib/response-indicators.js +151 -0
  201. package/configure/node_modules/@pie-lib/render-ui/lib/response-indicators.js.map +1 -0
  202. package/configure/node_modules/@pie-lib/render-ui/lib/ui-layout.js +122 -0
  203. package/configure/node_modules/@pie-lib/render-ui/lib/ui-layout.js.map +1 -0
  204. package/configure/node_modules/@pie-lib/render-ui/lib/withUndoReset.js +181 -0
  205. package/configure/node_modules/@pie-lib/render-ui/lib/withUndoReset.js.map +1 -0
  206. package/configure/node_modules/@pie-lib/render-ui/package.json +40 -0
  207. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/__snapshots__/html-and-math.test.js.snap +11 -0
  208. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/__snapshots__/preview-prompt.test.jsx.snap +37 -0
  209. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/__snapshots__/purpose.test.jsx.snap +42 -0
  210. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/__snapshots__/readable.test.jsx.snap +64 -0
  211. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/__snapshots__/response-indicators.test.jsx.snap +27 -0
  212. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/color.test.js +12 -0
  213. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/has-media.test.js +20 -0
  214. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/has-text.test.js +21 -0
  215. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/html-and-math.test.js +24 -0
  216. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/preview-prompt.test.jsx +56 -0
  217. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/purpose.test.jsx +47 -0
  218. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/readable.test.jsx +64 -0
  219. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/response-indicators.test.jsx +16 -0
  220. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/ui-layout.test.jsx +34 -0
  221. package/configure/node_modules/@pie-lib/render-ui/src/__tests__/withUndoReset.test.jsx +254 -0
  222. package/configure/node_modules/@pie-lib/render-ui/src/append-css-rules.js +51 -0
  223. package/configure/node_modules/@pie-lib/render-ui/src/assets/enableAudioAutoplayImage.js +1 -0
  224. package/configure/node_modules/@pie-lib/render-ui/src/collapsible/__tests__/__snapshots__/index.test.jsx.snap +18 -0
  225. package/configure/node_modules/@pie-lib/render-ui/src/collapsible/__tests__/index.test.jsx +13 -0
  226. package/configure/node_modules/@pie-lib/render-ui/src/collapsible/index.jsx +64 -0
  227. package/configure/node_modules/@pie-lib/render-ui/src/color.js +121 -0
  228. package/configure/node_modules/@pie-lib/render-ui/src/feedback.jsx +99 -0
  229. package/configure/node_modules/@pie-lib/render-ui/src/has-media.js +16 -0
  230. package/configure/node_modules/@pie-lib/render-ui/src/has-text.js +18 -0
  231. package/configure/node_modules/@pie-lib/render-ui/src/html-and-math.js +21 -0
  232. package/configure/node_modules/@pie-lib/render-ui/src/index.js +35 -0
  233. package/configure/node_modules/@pie-lib/render-ui/src/input-container.jsx +41 -0
  234. package/configure/node_modules/@pie-lib/render-ui/src/preview-layout.jsx +95 -0
  235. package/configure/node_modules/@pie-lib/render-ui/src/preview-prompt.jsx +254 -0
  236. package/configure/node_modules/@pie-lib/render-ui/src/purpose.jsx +17 -0
  237. package/configure/node_modules/@pie-lib/render-ui/src/readable.jsx +19 -0
  238. package/configure/node_modules/@pie-lib/render-ui/src/response-indicators.jsx +89 -0
  239. package/configure/node_modules/@pie-lib/render-ui/src/ui-layout.jsx +66 -0
  240. package/configure/node_modules/@pie-lib/render-ui/src/withUndoReset.jsx +116 -0
  241. package/configure/node_modules/@pie-lib/test-utils/CHANGELOG.json +1 -0
  242. package/configure/node_modules/@pie-lib/test-utils/CHANGELOG.md +410 -0
  243. package/configure/node_modules/@pie-lib/test-utils/NEXT.CHANGELOG.json +1 -0
  244. package/configure/node_modules/@pie-lib/test-utils/esm/index.js +39 -0
  245. package/configure/node_modules/@pie-lib/test-utils/esm/index.js.map +1 -0
  246. package/configure/node_modules/@pie-lib/test-utils/lib/index.js +40 -0
  247. package/configure/node_modules/@pie-lib/test-utils/lib/index.js.map +1 -0
  248. package/configure/node_modules/@pie-lib/test-utils/package.json +25 -0
  249. package/configure/node_modules/@pie-lib/test-utils/src/__tests__/index.test.js +45 -0
  250. package/configure/node_modules/@pie-lib/test-utils/src/index.js +18 -0
  251. package/configure/node_modules/@pie-lib/translator/CHANGELOG.json +1 -0
  252. package/configure/node_modules/@pie-lib/translator/CHANGELOG.md +282 -0
  253. package/configure/node_modules/@pie-lib/translator/NEXT.CHANGELOG.json +1 -0
  254. package/configure/node_modules/@pie-lib/translator/esm/index.js +257 -0
  255. package/configure/node_modules/@pie-lib/translator/esm/index.js.map +1 -0
  256. package/configure/node_modules/@pie-lib/translator/lib/en.js +102 -0
  257. package/configure/node_modules/@pie-lib/translator/lib/en.js.map +1 -0
  258. package/configure/node_modules/@pie-lib/translator/lib/es.js +102 -0
  259. package/configure/node_modules/@pie-lib/translator/lib/es.js.map +1 -0
  260. package/configure/node_modules/@pie-lib/translator/lib/index.js +69 -0
  261. package/configure/node_modules/@pie-lib/translator/lib/index.js.map +1 -0
  262. package/configure/node_modules/@pie-lib/translator/package.json +25 -0
  263. package/configure/node_modules/@pie-lib/translator/src/en.js +99 -0
  264. package/configure/node_modules/@pie-lib/translator/src/es.js +99 -0
  265. package/configure/node_modules/@pie-lib/translator/src/index.js +43 -0
  266. package/configure/package.json +3 -3
  267. package/controller/CHANGELOG.md +8 -0
  268. package/controller/package.json +3 -3
  269. package/esm/configure.js +40550 -0
  270. package/esm/configure.js.map +1 -0
  271. package/esm/controller.js +3358 -0
  272. package/esm/controller.js.map +1 -0
  273. package/esm/element.js +2203 -0
  274. package/esm/element.js.map +1 -0
  275. package/esm/package.json +4 -0
  276. package/esm/print.js +4090 -0
  277. package/esm/print.js.map +1 -0
  278. package/module/controller.js +4973 -2252
  279. package/module/element.js +1 -1
  280. package/module/index.html +1 -1
  281. package/module/manifest.json +1 -1
  282. package/module/print.html +1 -1
  283. package/module/print.js +1 -1
  284. package/package.json +24 -6
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/print.js"],"names":["log","preparePrintModel","model","opts","instr","role","prompt","promptEnabled","undefined","teacherInstructions","teacherInstructionsEnabled","showTeacherInstructions","alwaysShowCorrect","mode","disabled","animationsDisabled","lockChoiceOrder","choicesLayout","choices","map","c","rationale","rationaleEnabled","hideTick","feedback","keyMode","choicePrefix","MultipleChoicePrint","_options","_model","_session","_rerender","printModel","element","React","createElement","Main","session","ReactDOM","render","leading","trailing","o","s","HTMLElement"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport debounce from 'lodash/debounce';\nimport cloneDeep from 'lodash/cloneDeep';\nimport Main from './main';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport debug from 'debug';\n\nconst log = debug('pie-element:multiple-choice:print');\n\n/**\n * Live in same package as main element - so we can access some of the shared comps!\n *\n * - update pslb to build print if src/print.js is there\n * - update demo el\n * - get configure/controller building\n */\n\nconst preparePrintModel = (model, opts) => {\n const instr = opts.role === 'instructor';\n\n model.prompt = model.promptEnabled !== false ? model.prompt : undefined;\n model.teacherInstructions =\n instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;\n model.showTeacherInstructions = instr;\n model.alwaysShowCorrect = instr;\n model.mode = instr ? 'evaluate' : model.mode;\n\n model.disabled = true;\n model.animationsDisabled = true;\n model.lockChoiceOrder = true;\n model.choicesLayout = model.choicesLayout || 'vertical';\n\n const choices = cloneDeep(model.choices);\n\n model.choices = choices.map((c) => {\n c.rationale = instr && model.rationaleEnabled !== false ? c.rationale : undefined;\n c.hideTick = instr;\n c.feedback = undefined;\n return c;\n });\n\n model.keyMode = model.choicePrefix || 'letters';\n\n return model;\n};\n\nexport default class MultipleChoicePrint extends HTMLElement {\n constructor() {\n super();\n this._options = null;\n this._model = null;\n this._session = [];\n this._rerender = debounce(\n () => {\n if (this._model && this._session) {\n const printModel = preparePrintModel(this._model, this._options);\n\n const element =\n this._options &&\n React.createElement(Main, {\n model: printModel,\n session: {},\n });\n\n ReactDOM.render(element, this, () => {\n log('render complete - render math');\n renderMath(this);\n });\n } else {\n log('skip');\n }\n },\n 50,\n { leading: false, trailing: true },\n );\n }\n set options(o) {\n this._options = o;\n }\n\n set model(s) {\n this._model = s;\n this._rerender();\n }\n\n connectedCallback() {}\n}\n"],"file":"print.js"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.updateSessionMetadata = updateSessionMetadata;
9
+ exports.updateSessionValue = updateSessionValue;
10
+
11
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
12
+
13
+ function updateSessionValue(session, choiceMode, data) {
14
+ session.value = session.value || [];
15
+
16
+ if (choiceMode === 'checkbox') {
17
+ if (data.selected) {
18
+ session.value = Array.from(new Set([].concat((0, _toConsumableArray2["default"])(session.value), [data.value])));
19
+ } else {
20
+ session.value = session.value.filter(function (v) {
21
+ return v !== data.value;
22
+ });
23
+ }
24
+ }
25
+
26
+ if (choiceMode === 'radio') {
27
+ if (data.selected) {
28
+ session.value = [data.value];
29
+ } else {
30
+ session.value = [];
31
+ }
32
+ } //update session value metadata
33
+
34
+
35
+ session.selector = data.selector; //the input method used to select the choice (e.g. mouse, keyboard)
36
+ }
37
+
38
+ function updateSessionMetadata(session, metadata) {
39
+ session.audioStartTime = session.audioStartTime || metadata.audioStartTime; //timestamp when auto-played audio started playing
40
+
41
+ session.audioEndTime = session.audioEndTime || metadata.audioEndTime; //timestamp when auto-played audio completed playing
42
+
43
+ if (!session.waitTime && session.audioStartTime && session.audioEndTime) {
44
+ // waitTime is elapsed time the user waited for auto-played audio to finish
45
+ session.waitTime = session.audioEndTime - session.audioStartTime;
46
+ }
47
+ }
48
+ //# sourceMappingURL=session-updater.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/session-updater.js"],"names":["updateSessionValue","session","choiceMode","data","value","selected","Array","from","Set","filter","v","selector","updateSessionMetadata","metadata","audioStartTime","audioEndTime","waitTime"],"mappings":";;;;;;;;;;;;AAAO,SAASA,kBAAT,CAA4BC,OAA5B,EAAqCC,UAArC,EAAiDC,IAAjD,EAAuD;AAC5DF,EAAAA,OAAO,CAACG,KAAR,GAAgBH,OAAO,CAACG,KAAR,IAAiB,EAAjC;;AACA,MAAIF,UAAU,KAAK,UAAnB,EAA+B;AAC7B,QAAIC,IAAI,CAACE,QAAT,EAAmB;AACjBJ,MAAAA,OAAO,CAACG,KAAR,GAAgBE,KAAK,CAACC,IAAN,CAAW,IAAIC,GAAJ,+CAAYP,OAAO,CAACG,KAApB,IAA2BD,IAAI,CAACC,KAAhC,GAAX,CAAhB;AACD,KAFD,MAEO;AACLH,MAAAA,OAAO,CAACG,KAAR,GAAgBH,OAAO,CAACG,KAAR,CAAcK,MAAd,CAAqB,UAAAC,CAAC;AAAA,eAAIA,CAAC,KAAKP,IAAI,CAACC,KAAf;AAAA,OAAtB,CAAhB;AACD;AACF;;AAED,MAAIF,UAAU,KAAK,OAAnB,EAA4B;AAC1B,QAAIC,IAAI,CAACE,QAAT,EAAmB;AACjBJ,MAAAA,OAAO,CAACG,KAAR,GAAgB,CAACD,IAAI,CAACC,KAAN,CAAhB;AACD,KAFD,MAEO;AACLH,MAAAA,OAAO,CAACG,KAAR,GAAgB,EAAhB;AACD;AACF,GAhB2D,CAkB5D;;;AACAH,EAAAA,OAAO,CAACU,QAAR,GAAmBR,IAAI,CAACQ,QAAxB,CAnB4D,CAmB1B;AACnC;;AAEM,SAASC,qBAAT,CAA+BX,OAA/B,EAAwCY,QAAxC,EAAkD;AACvDZ,EAAAA,OAAO,CAACa,cAAR,GAAyBb,OAAO,CAACa,cAAR,IAA0BD,QAAQ,CAACC,cAA5D,CADuD,CACqB;;AAC5Eb,EAAAA,OAAO,CAACc,YAAR,GAAuBd,OAAO,CAACc,YAAR,IAAwBF,QAAQ,CAACE,YAAxD,CAFuD,CAEe;;AAEtE,MAAG,CAACd,OAAO,CAACe,QAAT,IAAqBf,OAAO,CAACa,cAA7B,IAA+Cb,OAAO,CAACc,YAA1D,EAAwE;AACtE;AACAd,IAAAA,OAAO,CAACe,QAAR,GAAoBf,OAAO,CAACc,YAAR,GAAuBd,OAAO,CAACa,cAAnD;AACD;AACF","sourcesContent":["export function updateSessionValue(session, choiceMode, data) {\n session.value = session.value || [];\n if (choiceMode === 'checkbox') {\n if (data.selected) {\n session.value = Array.from(new Set([...session.value, data.value]));\n } else {\n session.value = session.value.filter(v => v !== data.value);\n }\n }\n\n if (choiceMode === 'radio') {\n if (data.selected) {\n session.value = [data.value];\n } else {\n session.value = [];\n }\n }\n \n //update session value metadata\n session.selector = data.selector; //the input method used to select the choice (e.g. mouse, keyboard)\n}\n\nexport function updateSessionMetadata(session, metadata) {\n session.audioStartTime = session.audioStartTime || metadata.audioStartTime; //timestamp when auto-played audio started playing\n session.audioEndTime = session.audioEndTime || metadata.audioEndTime; //timestamp when auto-played audio completed playing\n \n if(!session.waitTime && session.audioStartTime && session.audioEndTime) {\n // waitTime is elapsed time the user waited for auto-played audio to finish\n session.waitTime = (session.audioEndTime - session.audioStartTime);\n }\n}\n"],"file":"session-updater.js"}
@@ -0,0 +1 @@
1
+ import{_dll_react as e,_dll_prop_types as t,_dll_material_ui__core_styles as o,_dll_material_ui__core as i,_dll_material_ui__icons as n,_dll_lodash as a,_dll_pie_lib__render_ui as s,_dll_debug as l,_dll_react_dom as r}from"../../../@pie-lib/shared-module@^1.14.0/module/index.js";import{_dll_pie_lib__config_ui as c}from"../../../@pie-lib/config-module@^2.19.0/module/index.js";import{_dll_pie_lib__editable_html as d}from"../../../@pie-lib/editable-html-module@^5.6.0/module/index.js";var h={};Object.defineProperty(h,"__esModule",{value:!0});class u extends CustomEvent{constructor(e,t=!1){super(u.TYPE,{bubbles:!0,detail:{update:e,reset:t}}),this.update=e,this.reset=t}}u.TYPE="model.updated";var p=h.ModelUpdatedEvent=u;class g extends CustomEvent{constructor(e,t){super(g.TYPE,{bubbles:!0,detail:{src:e,done:t}}),this.src=e,this.done=t}}g.TYPE="delete.image";var m=h.DeleteImageEvent=g;class b extends CustomEvent{constructor(e){super(b.TYPE,{bubbles:!0,detail:e}),this.handler=e}}b.TYPE="insert.image";var C=h.InsertImageEvent=b;class _ extends CustomEvent{constructor(e,t){super(_.TYPE,{bubbles:!0,detail:{src:e,done:t}}),this.src=e,this.done=t}}_.TYPE="delete.sound";var f=h.DeleteSoundEvent=_;class E extends CustomEvent{constructor(e){super(E.TYPE,{bubbles:!0,detail:e}),this.handler=e}}E.TYPE="insert.sound";var v=h.InsertSoundEvent=E;const S=e,x=t,{color:y}=s,{withStyles:I}=o,{Button:A}=i,{Tooltip:M}=i,{Typography:P}=i,{Info:T}=n,{merge:w}=a,k=d,{AlertDialog:L}=c,{InputContainer:O}=c,{ChoiceConfiguration:R}=c,{settings:N}=c,{layout:D}=c,{choiceUtils:q}=c;function H(e){let t,o=e[0],i=1;for(;i<e.length;){const n=e[i],a=e[i+1];if(i+=2,("optionalAccess"===n||"optionalCall"===n)&&null==o)return;"access"===n||"optionalAccess"===n?(t=o,o=a(o)):"call"!==n&&"optionalCall"!==n||(o=a(((...e)=>o.call(t,...e))),t=void 0)}return o}const{Panel:B,toggle:W,radio:z,dropdown:Y}=N,j=e=>({promptHolder:{width:"100%",paddingTop:2*e.spacing.unit,marginBottom:2*e.spacing.unit},rationaleHolder:{flex:1,marginTop:1.5*e.spacing.unit,paddingTop:2*e.spacing.unit,marginLeft:3.5*e.spacing.unit},choiceConfigurationHolder:{display:"flex",flexDirection:"column",marginBottom:e.spacing.unit},choiceConfiguration:{width:"100%"},switchElement:{justifyContent:"space-between",margin:0},addButton:{marginTop:e.spacing.unit,float:"right"},disableButton:{cursor:"not-allowed",pointerEvents:"all",backgroundColor:y.disabled(),"&:hover":{backgroundColor:y.disabled()},"&:focus":{backgroundColor:y.disabled()}},flexContainer:{display:"flex",alignItems:"center"},titleText:{fontSize:e.typography.fontSize+2,marginRight:e.spacing.unit},tooltip:{fontSize:e.typography.fontSize-2,whiteSpace:"pre",maxWidth:"500px"},errorText:{fontSize:e.typography.fontSize-2,color:e.palette.error.main,paddingTop:e.spacing.unit}}),$=I(j)((e=>{const{classes:t,model:o,configuration:i,onPromptChanged:n,onChoiceChanged:a,onRemoveChoice:s,onAddChoice:l,imageSupport:r,uploadSoundSupport:c,onChangeModel:d,onConfigurationChanged:h,onTeacherInstructionsChanged:u}=e,{addChoiceButton:p={},contentDimensions:g={},feedback:m={},deleteChoice:b={},choiceMode:C={},choicePrefix:_={},partialScoring:f={},lockChoiceOrder:E={},teacherInstructions:v={},studentInstructions:x={},rationale:y={},scoringType:I={},sequentialChoiceLabels:w={},settingsPanelDisabled:L,choicesLayout:N,spellCheck:q={},gridColumns:j,maxImageWidth:$={},maxImageHeight:U={},prompt:F={},withRubric:G={},mathMlOptions:V={},language:J={},languageChoices:K={}}=i||{};let{maxAnswerChoices:Q}=i||{};const{limitChoicesNumber:X,teacherInstructionsEnabled:Z,rationaleEnabled:ee,feedbackEnabled:te,promptEnabled:oe,spellCheckEnabled:ie,choices:ne,errors:ae,toolbarEditorPosition:se,extraCSSRules:le}=o||{},{answerChoices:re,choices:ce,correctResponse:de,prompt:he,rationale:ue,teacherInstructions:pe}=ae||{},ge=H([ne,"optionalAccess",e=>e.length])?Array.from({length:ne.length},((e,t)=>`${t+1}`)):[],{baseInputConfiguration:me={}}=i,be={position:"top"===se?"top":"bottom"};X&&(Q=9);const Ce=(e={})=>({...me,...e}),_e=(e=>{const{minAnswerChoices:t,maxAnswerChoices:o}=e;return`Validation requirements:\nThere should be at least ${t} `+(o?`and at most ${o} `:"")+"answer choices defined.\nEvery answer choice should be non-blank and unique.\nA correct answer must be defined."})(i),fe=$&&$.prompt,Ee=U&&U.prompt,ve=Q&&H([ne,"optionalAccess",e=>e.length])>=Q?`Only ${Q} allowed maximum`:"",Se={choiceMode:C.settings&&z(C.label,["checkbox","radio"]),"sequentialChoiceLabels.enabled":w.settings&&W(w.label,!0),choicePrefix:_.settings&&z(_.label,["numbers","letters"]),partialScoring:f.settings&&W(f.label),lockChoiceOrder:E.settings&&W(E.label),feedbackEnabled:m.settings&&W(m.label),choicesLayout:N.settings&&Y(N.label,["vertical","grid","horizontal"]),gridColumns:N.settings&&"grid"===o.choicesLayout&&ge.length>0&&Y(j.label,ge),"language.enabled":J.settings&&W(J.label,!0),language:J.settings&&J.enabled&&Y(K.label,K.options)},xe={teacherInstructionsEnabled:v.settings&&W(v.label),studentInstructionsEnabled:x.settings&&W(x.label),promptEnabled:F.settings&&W(F.label),rationaleEnabled:y.settings&&W(y.label),spellCheckEnabled:q.settings&&W(q.label),scoringType:I.settings&&z(I.label,["auto","rubric"]),rubricEnabled:H([G,"optionalAccess",e=>e.settings])&&W(H([G,"optionalAccess",e=>e.label]))};return S.createElement(D.ConfigLayout,{dimensions:g,hideSettings:L,extraCSSRules:le,settings:S.createElement(B,{model:o,onChangeModel:d,configuration:i,onChangeConfiguration:h,groups:{Settings:Se,Properties:xe}})},Z&&S.createElement(O,{label:v.label,className:t.promptHolder},S.createElement(k,{className:t.prompt,markup:o.teacherInstructions||"",onChange:u,imageSupport:r,nonEmpty:!1,error:pe,toolbarOpts:be,pluginProps:Ce(H([i,"optionalAccess",e=>e.teacherInstructions,"optionalAccess",e=>e.inputConfiguration])),spellCheck:ie,maxImageWidth:$&&$.teacherInstructions||fe,maxImageHeight:U&&U.teacherInstructions||Ee,uploadSoundSupport:c,languageCharactersProps:[{language:"spanish"},{language:"special"}],mathMlOptions:V}),pe&&S.createElement("div",{className:t.errorText},pe)),oe&&S.createElement(O,{label:F.label,className:t.promptHolder},S.createElement(k,{className:t.prompt,markup:o.prompt,onChange:n,imageSupport:r,nonEmpty:!1,disableUnderline:!0,error:he,toolbarOpts:be,pluginProps:Ce(H([i,"optionalAccess",e=>e.prompt,"optionalAccess",e=>e.inputConfiguration])),spellCheck:ie,maxImageWidth:$&&$.prompt,maxImageHeight:U&&U.prompt,uploadSoundSupport:c,languageCharactersProps:[{language:"spanish"},{language:"special"}],mathMlOptions:V}),he&&S.createElement("div",{className:t.errorText},he)),S.createElement("div",{className:t.flexContainer},S.createElement(P,{className:t.titleText,component:"div"},"Choices"),S.createElement(M,{classes:{tooltip:t.tooltip},disableFocusListener:!0,disableTouchListener:!0,placement:"right",title:_e},S.createElement(T,{fontSize:"small",color:"primary"}))),ne.map(((e,n)=>S.createElement("div",{key:`choice-${n}`,className:t.choiceConfigurationHolder},S.createElement(R,{key:n,index:n+1,useLetterOrdering:"letters"===o.choicePrefix,className:t.choiceConfiguration,mode:o.choiceMode,data:e,defaultFeedback:{},imageSupport:r,disableImageAlignmentButtons:!0,onDelete:()=>s(n),onChange:e=>a(n,e),allowFeedBack:te,allowDelete:b.settings,noLabels:!0,pluginOpts:Ce(H([i,"optionalAccess",e=>e.choices,"optionalAccess",e=>e.inputConfiguration])),toolbarOpts:be,spellCheck:ie,error:H([ce,"optionalAccess",t=>t[e.value]])||null,noCorrectAnswerError:de,maxImageWidth:$&&$.choices||fe,maxImageHeight:U&&U.choices||Ee,uploadSoundSupport:c,mathMlOptions:V}),ee&&S.createElement(O,{key:`rationale-${n}`,label:y.label,className:t.rationaleHolder},S.createElement(k,{className:t.rationale,markup:e.rationale||"",onChange:t=>a(n,{...e,rationale:t}),imageSupport:r,error:H([ue,"optionalAccess",t=>t[e.value]])||null,toolbarOpts:be,pluginProps:Ce(H([i,"optionalAccess",e=>e.rationale,"optionalAccess",e=>e.inputConfiguration])),spellCheck:ie,maxImageWidth:$&&$.rationale||fe,maxImageHeight:U&&U.rationale||Ee,uploadSoundSupport:c,languageCharactersProps:[{language:"spanish"},{language:"special"}],mathMlOptions:V}),H([ue,"optionalAccess",t=>t[e.value]])&&S.createElement("div",{className:t.errorText},H([ue,"optionalAccess",t=>t[e.value]])))))),de&&S.createElement("div",{className:t.errorText},de),re&&S.createElement("div",{className:t.errorText},re),p.settings&&S.createElement(M,{title:ve,classes:{tooltip:t.tooltip}},S.createElement(A,{classes:{root:Q&&H([ne,"optionalAccess",e=>e.length])>=Q&&t.disableButton},className:t.addButton,variant:"contained",color:"primary",onClick:l},p.label)))}));class U extends S.Component{constructor(...e){super(...e),U.prototype.__init.call(this),U.prototype.__init2.call(this),U.prototype.__init3.call(this),U.prototype.__init4.call(this),U.prototype.__init5.call(this),U.prototype.__init6.call(this),U.prototype.__init7.call(this)}static __initStatic(){this.propTypes={model:x.object.isRequired,configuration:x.object.isRequired,disableSidePanel:x.bool,onModelChanged:x.func.isRequired,onConfigurationChanged:x.func.isRequired,classes:x.object.isRequired,imageSupport:x.shape({add:x.func.isRequired,delete:x.func.isRequired})}}__init(){this.state={showWarning:!1}}__init2(){this.onRemoveChoice=e=>{const{model:t,configuration:o,onModelChanged:i}=this.props,{minAnswerChoices:n}=o||{};n&&t.choices.length===n?this.setState({showWarning:!0}):(t.choices.splice(e,1),i(t))}}__init3(){this.onAddChoice=()=>{const{model:e,configuration:t,onModelChanged:o}=this.props;let{maxAnswerChoices:i}=t||{};const{limitChoicesNumber:n}=e||{};n&&(i=9),i&&e.choices.length>=i||(e.choices.push({label:"",value:q.firstAvailableIndex(e.choices.map((e=>e.value)),0),feedback:{type:"none"}}),o(e))}}__init4(){this.onChoiceChanged=(e,t)=>{const{model:o,onModelChanged:i}=this.props;t.correct&&"radio"===o.choiceMode&&(o.choices=o.choices.map((e=>w({},e,{correct:!1})))),o.choices.splice(e,1,t),i(o)}}__init5(){this.onPromptChanged=e=>{this.props.onModelChanged({...this.props.model,prompt:e})}}__init6(){this.onTeacherInstructionsChanged=e=>{this.props.onModelChanged({...this.props.model,teacherInstructions:e})}}__init7(){this.onModelChanged=(e,t)=>{const{onModelChanged:o}=this.props;if("choiceMode"===t){if("radio"===e.choiceMode){let t=!1;e.choices=e.choices.map((e=>t?(e.correct=!1,e):(e.correct&&(t=!0),e)))}o(e,!0)}else o(e)}}render(){const{configuration:{minAnswerChoices:e}={}}=this.props,{showWarning:t}=this.state;return S.createElement(S.Fragment,null,S.createElement(L,{open:t,title:"Warning",text:`There can't be less than ${e||0} choices.`,onConfirm:()=>this.setState({showWarning:!1})}),S.createElement($,{...this.props,onChangeModel:this.onModelChanged,onRemoveChoice:this.onRemoveChoice,onChoiceChanged:this.onChoiceChanged,onAddChoice:this.onAddChoice,onPromptChanged:this.onPromptChanged,onTeacherInstructionsChanged:this.onTeacherInstructionsChanged}))}}U.__initStatic();const F=I(j)(U);var G={choiceMode:"checkbox",choicePrefix:"letters",choices:[],choicesLayout:"vertical",feedbackEnabled:!1,gridColumns:2,lockChoiceOrder:!0,partialScoring:!0,prompt:"",promptEnabled:!0,rationale:"",rationaleEnabled:!0,scoringType:"auto",studentInstructionsEnabled:!0,teacherInstructions:"",teacherInstructionsEnabled:!0,toolbarEditorPosition:"bottom",selectedAnswerBackgroundColor:"initial",keyboardEventsEnabled:!1},V={baseInputConfiguration:{audio:{disabled:!1},video:{disabled:!1},image:{disabled:!1},textAlign:{disabled:!0},showParagraphs:{disabled:!1},separateParagraphs:{disabled:!0}},choices:{inputConfiguration:{audio:{disabled:!1},video:{disabled:!1},image:{disabled:!1}}},spellCheck:{label:"Spellcheck",settings:!1,enabled:!0},choicesLayout:{settings:!1,label:"Choices Layout"},gridColumns:{label:"Grid columns"},answerChoiceCount:0,addChoiceButton:{settings:!0,label:"Add a Choice"},choiceMode:{settings:!0,label:"Response Type"},choicePrefix:{settings:!0,label:"Choice Labels"},deleteChoice:{settings:!0},feedback:{settings:!0,label:"Feedback"},prompt:{settings:!0,label:"Prompt",inputConfiguration:{audio:{disabled:!1},video:{disabled:!1},image:{disabled:!1}},required:!1},lockChoiceOrder:{settings:!0,label:"Lock Choice Order"},partialScoring:{settings:!1,label:"Allow Partial Scoring"},rationale:{settings:!0,label:"Rationale",inputConfiguration:{audio:{disabled:!0},video:{disabled:!0},image:{disabled:!1}},required:!1},scoringType:{settings:!1,label:"Scoring Type"},studentInstructions:{settings:!1,label:"Student Instructions"},teacherInstructions:{settings:!0,label:"Teacher Instructions",inputConfiguration:{audio:{disabled:!1},video:{disabled:!1},image:{disabled:!1}},required:!1},toolbarEditorPosition:{settings:!1,label:"Toolbar Editor Position"},minAnswerChoices:2,maxAnswerChoices:5,maxImageWidth:{teacherInstructions:300,prompt:300,rationale:636,choices:900},maxImageHeight:{teacherInstructions:300,prompt:300,rationale:300,choices:300},withRubric:{settings:!1,label:"Add Rubric"},mathMlOptions:{mmlOutput:!1,mmlEditing:!1},language:{settings:!1,label:"Specify Language",enabled:!1},languageChoices:{label:"Language Choices",options:[]}};const J=e,K=r,Q=l,{defaults:X}=a,{choiceUtils:Z}=c;function ee(e){let t,o=e[0],i=1;for(;i<e.length;){const n=e[i],a=e[i+1];if(i+=2,("optionalAccess"===n||"optionalCall"===n)&&null==o)return;"access"===n||"optionalAccess"===n?(t=o,o=a(o)):"call"!==n&&"optionalCall"!==n||(o=a(((...e)=>o.call(t,...e))),t=void 0)}return o}const te=Q("multiple-choice:configure"),oe=(e,t=0)=>{if(!e||0===e.length){let e=[];for(let o=0;o<t;o++)e.push({value:`${o}`,label:"",feedback:{type:"none",value:""}});return e}return e},ie=(e,t)=>{const o=X(e,V);return{configuration:o,model:{...t,choices:oe(t&&t.choices||[],o&&o.answerChoiceCount)}}};class ne extends HTMLElement{static __initStatic(){this.createDefaultModel=(e={})=>{const t=Z.normalizeChoices({...G,...e,choices:oe(e&&e.choices||[])});return t.choicesLayout=e.choicesLayout||!1===e.verticalMode&&"horizontal"||G.choicesLayout,t}}constructor(){super(),this._model=ne.createDefaultModel(),this._configuration=V,this.onModelChanged=this.onModelChanged.bind(this),this.onConfigurationChanged=this.onConfigurationChanged.bind(this)}set model(e){this._model=ne.createDefaultModel(e),this._render()}set configuration(e){const t=ie(e,this._model);this.onModelChanged(t.model);const o={...V,...t.configuration};this._configuration=o,ee([o,"optionalAccess",e=>e.language,"optionalAccess",e=>e.enabled])?ee([o,"optionalAccess",e=>e.languageChoices,"optionalAccess",e=>e.options,"optionalAccess",e=>e.length])&&(this._model.language=ee([o,"optionalAccess",e=>e.languageChoices,"access",e=>e.options,"access",e=>e[0],"access",e=>e.value])):o.language.settings&&this._model.language?(this._configuration.language.enabled=!0,this._configuration.languageChoices.options&&this._configuration.languageChoices.options.length||(this._configuration.languageChoices.options=[]),this._configuration.languageChoices.options.find((e=>e.value===this._model.language))||this._configuration.languageChoices.options.push({value:this._model.language,label:this._model.language})):delete this._model.language,this._render()}set disableSidePanel(e){this._disableSidePanel=e,this._render()}dispatchModelUpdated(e){const t=!!e;this.dispatchEvent(new p(this._model,t))}onModelChanged(e,t){this._model=e,this._render(),this.dispatchModelUpdated(t)}onConfigurationChanged(e){this._configuration=ie(e,this._model).configuration,this._model&&this.onModelChanged(this._model),this._render()}insertImage(e){this.dispatchEvent(new C(e))}onDeleteImage(e,t){this.dispatchEvent(new m(e,t))}insertSound(e){this.dispatchEvent(new v(e))}onDeleteSound(e,t){this.dispatchEvent(new f(e,t))}_render(){te("_render");let e=J.createElement(F,{model:this._model,configuration:this._configuration,onModelChanged:this.onModelChanged,onConfigurationChanged:this.onConfigurationChanged,disableSidePanel:this._disableSidePanel,imageSupport:{add:this.insertImage.bind(this),delete:this.onDeleteImage.bind(this)},uploadSoundSupport:{add:this.insertSound.bind(this),delete:this.onDeleteSound.bind(this)}});K.render(e,this)}}ne.__initStatic();export{ne as default};