@cuemath/leap 3.5.46 → 3.5.47-gg10

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 (182) hide show
  1. package/dist/assets/line-icons/icons/bulb.js +10 -10
  2. package/dist/assets/line-icons/icons/bulb.js.map +1 -1
  3. package/dist/assets/line-icons/icons/chevron-up.js +28 -0
  4. package/dist/assets/line-icons/icons/chevron-up.js.map +1 -0
  5. package/dist/assets/line-icons/icons/close.js +28 -0
  6. package/dist/assets/line-icons/icons/close.js.map +1 -0
  7. package/dist/assets/line-icons/icons/cursor2.js +24 -0
  8. package/dist/assets/line-icons/icons/cursor2.js.map +1 -0
  9. package/dist/assets/line-icons/icons/hand.js.map +1 -1
  10. package/dist/assets/line-icons/icons/hints.js +25 -0
  11. package/dist/assets/line-icons/icons/hints.js.map +1 -0
  12. package/dist/assets/line-icons/icons/question-feedback.js +30 -0
  13. package/dist/assets/line-icons/icons/question-feedback.js.map +1 -0
  14. package/dist/assets/line-icons/icons/scribble.js +13 -36
  15. package/dist/assets/line-icons/icons/scribble.js.map +1 -1
  16. package/dist/assets/line-icons/icons/sticker.js +9 -9
  17. package/dist/assets/line-icons/icons/sticker.js.map +1 -1
  18. package/dist/assets/line-icons/icons/teaching-tools.js +40 -0
  19. package/dist/assets/line-icons/icons/teaching-tools.js.map +1 -0
  20. package/dist/assets/line-icons/icons/tval-question.js +32 -0
  21. package/dist/assets/line-icons/icons/tval-question.js.map +1 -0
  22. package/dist/features/circle-games/hooks/use-circle-sounds/constants.js +4 -7
  23. package/dist/features/circle-games/hooks/use-circle-sounds/constants.js.map +1 -1
  24. package/dist/features/circle-games/hooks/use-circle-sounds/helper.js +19 -0
  25. package/dist/features/circle-games/hooks/use-circle-sounds/helper.js.map +1 -0
  26. package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js +110 -51
  27. package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js.map +1 -1
  28. package/dist/features/cue-canvas/sidebar/puzzles/api/get-puzzles.js.map +1 -1
  29. package/dist/features/hooks/use-audio-player.js +54 -0
  30. package/dist/features/hooks/use-audio-player.js.map +1 -0
  31. package/dist/features/journey/hooks/use-home-page-journey/home-page-homeworks-mock.js +6 -6
  32. package/dist/features/journey/hooks/use-home-page-journey/home-page-homeworks-mock.js.map +1 -1
  33. package/dist/features/journey/hooks/use-home-page-journey/recent-chapters-mock.js +2 -2
  34. package/dist/features/journey/hooks/use-home-page-journey/recent-chapters-mock.js.map +1 -1
  35. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js +64 -29
  36. package/dist/features/journey/mocks/chapter-page-journey-mock-data.js.map +1 -1
  37. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.js +9 -9
  38. package/dist/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.js.map +1 -1
  39. package/dist/features/puzzles/app/puzzle-app-view.js +40 -40
  40. package/dist/features/puzzles/app/puzzle-app-view.js.map +1 -1
  41. package/dist/features/ui/tabs/tabs.js +15 -15
  42. package/dist/features/ui/tabs/tabs.js.map +1 -1
  43. package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js +0 -1
  44. package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js.map +1 -1
  45. package/dist/features/worksheet/worksheet/constants.js +12 -13
  46. package/dist/features/worksheet/worksheet/constants.js.map +1 -1
  47. package/dist/features/worksheet/worksheet/hooks/use-create-imperative-handle.js +120 -101
  48. package/dist/features/worksheet/worksheet/hooks/use-create-imperative-handle.js.map +1 -1
  49. package/dist/features/worksheet/worksheet/hooks/use-worksheet-store.js +1 -1
  50. package/dist/features/worksheet/worksheet/hooks/use-worksheet-store.js.map +1 -1
  51. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js +40 -109
  52. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js.map +1 -1
  53. package/dist/features/worksheet/worksheet/worksheet-behavior-helper.js +49 -46
  54. package/dist/features/worksheet/worksheet/worksheet-behavior-helper.js.map +1 -1
  55. package/dist/features/worksheet/worksheet/worksheet-calculator/worksheet-calculator.js +4 -4
  56. package/dist/features/worksheet/worksheet/worksheet-calculator/worksheet-calculator.js.map +1 -1
  57. package/dist/features/worksheet/worksheet/worksheet-helpers.js +127 -274
  58. package/dist/features/worksheet/worksheet/worksheet-helpers.js.map +1 -1
  59. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.js +25 -25
  60. package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.js.map +1 -1
  61. package/dist/features/worksheet/worksheet/worksheet-provider.js +1 -1
  62. package/dist/features/worksheet/worksheet/worksheet-provider.js.map +1 -1
  63. package/dist/features/worksheet/worksheet/worksheet-question/subjective-styled.js +17 -22
  64. package/dist/features/worksheet/worksheet/worksheet-question/subjective-styled.js.map +1 -1
  65. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.js +25 -29
  66. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.js.map +1 -1
  67. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js +319 -259
  68. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js.map +1 -1
  69. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-allow-retry-button-click.js +15 -0
  70. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-allow-retry-button-click.js.map +1 -0
  71. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-back-button-click.js +18 -0
  72. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-back-button-click.js.map +1 -0
  73. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-check-button-click.js +21 -0
  74. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-check-button-click.js.map +1 -0
  75. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-next-button-click.js +19 -0
  76. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-next-button-click.js.map +1 -0
  77. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-ready-button-click.js +34 -0
  78. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-ready-button-click.js.map +1 -0
  79. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-response-change.js +38 -0
  80. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-response-change.js.map +1 -0
  81. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-retry-button-click.js +16 -0
  82. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-retry-button-click.js.map +1 -0
  83. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-skip-button-click.js +35 -0
  84. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-skip-button-click.js.map +1 -0
  85. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-skip-section-button-click.js +12 -0
  86. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-skip-section-button-click.js.map +1 -0
  87. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-start-button-click.js +44 -0
  88. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-start-button-click.js.map +1 -0
  89. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-submit-quiz.js +51 -0
  90. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-submit-quiz.js.map +1 -0
  91. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-validate-button-click.js +19 -0
  92. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-handle-validate-button-click.js.map +1 -0
  93. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-play-validation-audio.js +23 -0
  94. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-play-validation-audio.js.map +1 -0
  95. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-validate-question.js +36 -0
  96. package/dist/features/worksheet/worksheet/worksheet-questions-controller/hooks/use-validate-question.js.map +1 -0
  97. package/dist/features/worksheet/worksheet/worksheet-questions-controller/student/controller-lesson-v3.js +184 -0
  98. package/dist/features/worksheet/worksheet/worksheet-questions-controller/student/controller-lesson-v3.js.map +1 -0
  99. package/dist/features/worksheet/worksheet/worksheet-questions-controller/student/controller-lesson-v3_1.js +258 -0
  100. package/dist/features/worksheet/worksheet/worksheet-questions-controller/student/controller-lesson-v3_1.js.map +1 -0
  101. package/dist/features/worksheet/worksheet/worksheet-questions-controller/student/controller.js +180 -0
  102. package/dist/features/worksheet/worksheet/worksheet-questions-controller/student/controller.js.map +1 -0
  103. package/dist/features/worksheet/worksheet/worksheet-questions-controller/teacher/controller-lesson-v3.js +77 -0
  104. package/dist/features/worksheet/worksheet/worksheet-questions-controller/teacher/controller-lesson-v3.js.map +1 -0
  105. package/dist/features/worksheet/worksheet/worksheet-questions-controller/teacher/controller-lesson-v3_1.js +103 -0
  106. package/dist/features/worksheet/worksheet/worksheet-questions-controller/teacher/controller-lesson-v3_1.js.map +1 -0
  107. package/dist/features/worksheet/worksheet/worksheet-questions-controller/teacher/controller.js +21 -0
  108. package/dist/features/worksheet/worksheet/worksheet-questions-controller/teacher/controller.js.map +1 -0
  109. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller-view.js +22 -0
  110. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller-view.js.map +1 -0
  111. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js +20 -345
  112. package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js.map +1 -1
  113. package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar-styled.js +49 -0
  114. package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar-styled.js.map +1 -0
  115. package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar.js +184 -0
  116. package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar.js.map +1 -0
  117. package/dist/features/worksheet/worksheet/worksheet-questions-tools/scribble-switch.js +65 -0
  118. package/dist/features/worksheet/worksheet/worksheet-questions-tools/scribble-switch.js.map +1 -0
  119. package/dist/features/worksheet/worksheet/worksheet-questions-tools/worksheet-questions-styled.js +9 -0
  120. package/dist/features/worksheet/worksheet/worksheet-questions-tools/worksheet-questions-styled.js.map +1 -0
  121. package/dist/features/worksheet/worksheet/worksheet-questions-tools/worksheet-questions-tools.js +38 -0
  122. package/dist/features/worksheet/worksheet/worksheet-questions-tools/worksheet-questions-tools.js.map +1 -0
  123. package/dist/features/worksheet/worksheet/worksheet-sidebar/navigator.js +33 -20
  124. package/dist/features/worksheet/worksheet/worksheet-sidebar/navigator.js.map +1 -1
  125. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-computed-properties.js +73 -0
  126. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-computed-properties.js.map +1 -0
  127. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-derived-blocker.js +20 -0
  128. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-derived-blocker.js.map +1 -0
  129. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-last-attemptable-question-index.js +69 -0
  130. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-last-attemptable-question-index.js.map +1 -0
  131. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-last-unlocked-question-index.js +18 -0
  132. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-last-unlocked-question-index.js.map +1 -0
  133. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-merged-response-state.js +19 -0
  134. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-merged-response-state.js.map +1 -0
  135. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-questions-from-items.js +138 -0
  136. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-questions-from-items.js.map +1 -0
  137. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-renderable-questions.js +9 -0
  138. package/dist/features/worksheet/worksheet/worksheet-store/helpers/get-renderable-questions.js.map +1 -0
  139. package/dist/features/worksheet/worksheet/worksheet-store/worksheet-store.js +230 -0
  140. package/dist/features/worksheet/worksheet/worksheet-store/worksheet-store.js.map +1 -0
  141. package/dist/features/worksheet/worksheet/worksheet-styled.js +29 -83
  142. package/dist/features/worksheet/worksheet/worksheet-styled.js.map +1 -1
  143. package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js +45 -24
  144. package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js.map +1 -1
  145. package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools-styled.js +19 -0
  146. package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools-styled.js.map +1 -0
  147. package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools.js +66 -0
  148. package/dist/features/worksheet/worksheet/worksheet-teaching-tools/worksheet-teaching-tools.js.map +1 -0
  149. package/dist/features/worksheet/worksheet/worksheet-types.js +3 -2
  150. package/dist/features/worksheet/worksheet/worksheet-types.js.map +1 -1
  151. package/dist/features/worksheet/worksheet/worksheet-view.js +89 -100
  152. package/dist/features/worksheet/worksheet/worksheet-view.js.map +1 -1
  153. package/dist/features/worksheet/worksheet/worksheet.js +126 -117
  154. package/dist/features/worksheet/worksheet/worksheet.js.map +1 -1
  155. package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js +29 -29
  156. package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js.map +1 -1
  157. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js +16 -16
  158. package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js.map +1 -1
  159. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js +24 -24
  160. package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
  161. package/dist/index.d.ts +67 -28
  162. package/dist/index.js +760 -745
  163. package/dist/index.js.map +1 -1
  164. package/dist/types/models/worksheet.js +2 -1
  165. package/dist/types/models/worksheet.js.map +1 -1
  166. package/package.json +2 -2
  167. package/dist/features/hooks/use-audio-player/use-audio-player.js +0 -164
  168. package/dist/features/hooks/use-audio-player/use-audio-player.js.map +0 -1
  169. package/dist/features/worksheet/worksheet/question-tips.js +0 -100
  170. package/dist/features/worksheet/worksheet/question-tips.js.map +0 -1
  171. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js +0 -53
  172. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js.map +0 -1
  173. package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js +0 -195
  174. package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js.map +0 -1
  175. package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js +0 -112
  176. package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js.map +0 -1
  177. package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js +0 -61
  178. package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js.map +0 -1
  179. package/dist/features/worksheet/worksheet/worksheet-sidebar/worksheet-sidebar-styled.js +0 -91
  180. package/dist/features/worksheet/worksheet/worksheet-sidebar/worksheet-sidebar-styled.js.map +0 -1
  181. package/dist/features/worksheet/worksheet/worksheet-store.js +0 -289
  182. package/dist/features/worksheet/worksheet/worksheet-store.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  import { jsxs as h, Fragment as I, jsx as r } from "react/jsx-runtime";
2
- import { memo as w, useState as A, useMemo as a, useCallback as d } from "react";
3
- import N from "../../../../../ui/buttons/button/button.js";
4
- import v from "../../../../../worksheet/worksheet-preview/worksheet-preview.js";
2
+ import { memo as v, useState as w, useMemo as a, useCallback as d } from "react";
3
+ import A from "../../../../../ui/buttons/button/button.js";
4
+ import N from "../../../../../worksheet/worksheet-preview/worksheet-preview.js";
5
5
  import { TESTS_CREATION_ANALYTICS_EVENTS as C } from "../../tests-creation-analytics-events.js";
6
6
  import { ButtonWrapper as E } from "./test-preview-styled.js";
7
- const D = w(function(l) {
8
- const { studentId: m, items: e, testNumber: n, isAssignInProgress: T, onTestStageChange: o, onTestSheetAssign: c } = l, [p, i] = A(!1), t = a(() => e == null ? void 0 : e.map((s) => s.ref), [e]), u = a(
7
+ const O = v(function(l) {
8
+ const { studentId: m, items: e, testNumber: n, isAssignInProgress: T, onTestStageChange: o, onTestSheetAssign: c } = l, [p, i] = w(!1), t = a(() => e == null ? void 0 : e.map((s) => s.ref), [e]), u = a(
9
9
  () => ({
10
10
  step: "preview",
11
11
  items: e,
@@ -22,14 +22,14 @@ const D = w(function(l) {
22
22
  );
23
23
  return !t || t.length === 0 ? null : /* @__PURE__ */ h(I, { children: [
24
24
  /* @__PURE__ */ r(
25
- v,
25
+ N,
26
26
  {
27
27
  activityReference: "test",
28
28
  mode: "preview",
29
29
  nodeType: "DYNAMIC",
30
30
  userType: "STUDENT",
31
31
  studentId: m ?? "student-id",
32
- isLessonV3Enabled: !1,
32
+ activityType: null,
33
33
  worksheetName: "Preview test",
34
34
  items: t,
35
35
  onBackIconClick: f,
@@ -37,7 +37,7 @@ const D = w(function(l) {
37
37
  }
38
38
  ),
39
39
  p && /* @__PURE__ */ r(E, { children: /* @__PURE__ */ r(
40
- N,
40
+ A,
41
41
  {
42
42
  widthX: 6,
43
43
  renderAs: "primary",
@@ -53,6 +53,6 @@ const D = w(function(l) {
53
53
  ] });
54
54
  });
55
55
  export {
56
- D as default
56
+ O as default
57
57
  };
58
58
  //# sourceMappingURL=test-preview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-preview.js","sources":["../../../../../../../src/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.tsx"],"sourcesContent":["import { type FC, memo, useCallback, useMemo, useState } from 'react';\n\nimport Button from '../../../../../ui/buttons/button/button';\nimport PreviewWorksheet from '../../../../../worksheet/worksheet-preview/worksheet-preview';\nimport { TESTS_CREATION_ANALYTICS_EVENTS } from '../../tests-creation-analytics-events';\nimport * as Styled from './test-preview-styled';\nimport type { ITestPreviewProps } from './test-preview-types';\n\nconst TestPreview: FC<ITestPreviewProps> = memo(function TestPreview(props) {\n const { studentId, items, testNumber, isAssignInProgress, onTestStageChange, onTestSheetAssign } =\n props;\n\n const [testPreviewLoaded, setTestPreviewLoaded] = useState(false);\n\n const itemRefs = useMemo(() => items?.map(item => item.ref), [items]);\n const analyticsProps = useMemo(\n () => ({\n step: 'preview',\n items,\n title: `Test ${testNumber}`,\n }),\n [testNumber, items],\n );\n\n const handleOnBack = useCallback(() => {\n onTestStageChange('DIFFICULTY_AND_DURATION_SELECTION');\n }, [onTestStageChange]);\n\n const handleOnPreviewLoad = useCallback(\n (loaded: boolean) => {\n setTestPreviewLoaded(loaded);\n },\n [setTestPreviewLoaded],\n );\n\n if (!itemRefs || itemRefs.length === 0) return null;\n\n return (\n <>\n <PreviewWorksheet\n activityReference=\"test\"\n mode=\"preview\"\n nodeType=\"DYNAMIC\"\n userType=\"STUDENT\"\n studentId={studentId ?? 'student-id'}\n isLessonV3Enabled={false}\n worksheetName=\"Preview test\"\n items={itemRefs}\n onBackIconClick={handleOnBack}\n onWorksheetLoaded={handleOnPreviewLoad}\n />\n\n {testPreviewLoaded && (\n <Styled.ButtonWrapper>\n <Button\n widthX={6}\n renderAs={'primary'}\n size=\"small\"\n shape=\"square\"\n label=\"Assign\"\n analyticsLabel={TESTS_CREATION_ANALYTICS_EVENTS.CUSTOM_TEST_ASSIGNED}\n analyticsProps={analyticsProps}\n onClick={onTestSheetAssign}\n disabled={!!isAssignInProgress}\n />\n </Styled.ButtonWrapper>\n )}\n </>\n );\n});\n\nexport default TestPreview;\n"],"names":["TestPreview","memo","props","studentId","items","testNumber","isAssignInProgress","onTestStageChange","onTestSheetAssign","testPreviewLoaded","setTestPreviewLoaded","useState","itemRefs","useMemo","item","analyticsProps","handleOnBack","useCallback","handleOnPreviewLoad","loaded","jsxs","Fragment","jsx","PreviewWorksheet","Styled.ButtonWrapper","Button","TESTS_CREATION_ANALYTICS_EVENTS"],"mappings":";;;;;;AAQA,MAAMA,IAAqCC,EAAK,SAAqBC,GAAO;AAC1E,QAAM,EAAE,WAAAC,GAAW,OAAAC,GAAO,YAAAC,GAAY,oBAAAC,GAAoB,mBAAAC,GAAmB,mBAAAC,EAC3E,IAAAN,GAEI,CAACO,GAAmBC,CAAoB,IAAIC,EAAS,EAAK,GAE1DC,IAAWC,EAAQ,MAAMT,KAAA,gBAAAA,EAAO,IAAI,CAAQU,MAAAA,EAAK,MAAM,CAACV,CAAK,CAAC,GAC9DW,IAAiBF;AAAA,IACrB,OAAO;AAAA,MACL,MAAM;AAAA,MACN,OAAAT;AAAA,MACA,OAAO,QAAQC,CAAU;AAAA,IAAA;AAAA,IAE3B,CAACA,GAAYD,CAAK;AAAA,EAAA,GAGdY,IAAeC,EAAY,MAAM;AACrC,IAAAV,EAAkB,mCAAmC;AAAA,EAAA,GACpD,CAACA,CAAiB,CAAC,GAEhBW,IAAsBD;AAAA,IAC1B,CAACE,MAAoB;AACnB,MAAAT,EAAqBS,CAAM;AAAA,IAC7B;AAAA,IACA,CAACT,CAAoB;AAAA,EAAA;AAGvB,SAAI,CAACE,KAAYA,EAAS,WAAW,IAAU,OAI3C,gBAAAQ,EAAAC,GAAA,EAAA,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,mBAAkB;AAAA,QAClB,MAAK;AAAA,QACL,UAAS;AAAA,QACT,UAAS;AAAA,QACT,WAAWpB,KAAa;AAAA,QACxB,mBAAmB;AAAA,QACnB,eAAc;AAAA,QACd,OAAOS;AAAA,QACP,iBAAiBI;AAAA,QACjB,mBAAmBE;AAAA,MAAA;AAAA,IACrB;AAAA,IAECT,KACC,gBAAAa,EAACE,GAAA,EACC,UAAA,gBAAAF;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,QAAQ;AAAA,QACR,UAAU;AAAA,QACV,MAAK;AAAA,QACL,OAAM;AAAA,QACN,OAAM;AAAA,QACN,gBAAgBC,EAAgC;AAAA,QAChD,gBAAAX;AAAA,QACA,SAASP;AAAA,QACT,UAAU,CAAC,CAACF;AAAA,MAAA;AAAA,IAAA,GAEhB;AAAA,EAEJ,EAAA,CAAA;AAEJ,CAAC;"}
1
+ {"version":3,"file":"test-preview.js","sources":["../../../../../../../src/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.tsx"],"sourcesContent":["import { type FC, memo, useCallback, useMemo, useState } from 'react';\n\nimport Button from '../../../../../ui/buttons/button/button';\nimport PreviewWorksheet from '../../../../../worksheet/worksheet-preview/worksheet-preview';\nimport { TESTS_CREATION_ANALYTICS_EVENTS } from '../../tests-creation-analytics-events';\nimport * as Styled from './test-preview-styled';\nimport type { ITestPreviewProps } from './test-preview-types';\n\nconst TestPreview: FC<ITestPreviewProps> = memo(function TestPreview(props) {\n const { studentId, items, testNumber, isAssignInProgress, onTestStageChange, onTestSheetAssign } =\n props;\n\n const [testPreviewLoaded, setTestPreviewLoaded] = useState(false);\n\n const itemRefs = useMemo(() => items?.map(item => item.ref), [items]);\n const analyticsProps = useMemo(\n () => ({\n step: 'preview',\n items,\n title: `Test ${testNumber}`,\n }),\n [testNumber, items],\n );\n\n const handleOnBack = useCallback(() => {\n onTestStageChange('DIFFICULTY_AND_DURATION_SELECTION');\n }, [onTestStageChange]);\n\n const handleOnPreviewLoad = useCallback(\n (loaded: boolean) => {\n setTestPreviewLoaded(loaded);\n },\n [setTestPreviewLoaded],\n );\n\n if (!itemRefs || itemRefs.length === 0) return null;\n\n return (\n <>\n <PreviewWorksheet\n activityReference=\"test\"\n mode=\"preview\"\n nodeType=\"DYNAMIC\"\n userType=\"STUDENT\"\n studentId={studentId ?? 'student-id'}\n activityType={null}\n worksheetName=\"Preview test\"\n items={itemRefs}\n onBackIconClick={handleOnBack}\n onWorksheetLoaded={handleOnPreviewLoad}\n />\n\n {testPreviewLoaded && (\n <Styled.ButtonWrapper>\n <Button\n widthX={6}\n renderAs={'primary'}\n size=\"small\"\n shape=\"square\"\n label=\"Assign\"\n analyticsLabel={TESTS_CREATION_ANALYTICS_EVENTS.CUSTOM_TEST_ASSIGNED}\n analyticsProps={analyticsProps}\n onClick={onTestSheetAssign}\n disabled={!!isAssignInProgress}\n />\n </Styled.ButtonWrapper>\n )}\n </>\n );\n});\n\nexport default TestPreview;\n"],"names":["TestPreview","memo","props","studentId","items","testNumber","isAssignInProgress","onTestStageChange","onTestSheetAssign","testPreviewLoaded","setTestPreviewLoaded","useState","itemRefs","useMemo","item","analyticsProps","handleOnBack","useCallback","handleOnPreviewLoad","loaded","jsxs","Fragment","jsx","PreviewWorksheet","Styled.ButtonWrapper","Button","TESTS_CREATION_ANALYTICS_EVENTS"],"mappings":";;;;;;AAQA,MAAMA,IAAqCC,EAAK,SAAqBC,GAAO;AAC1E,QAAM,EAAE,WAAAC,GAAW,OAAAC,GAAO,YAAAC,GAAY,oBAAAC,GAAoB,mBAAAC,GAAmB,mBAAAC,EAC3E,IAAAN,GAEI,CAACO,GAAmBC,CAAoB,IAAIC,EAAS,EAAK,GAE1DC,IAAWC,EAAQ,MAAMT,KAAA,gBAAAA,EAAO,IAAI,CAAQU,MAAAA,EAAK,MAAM,CAACV,CAAK,CAAC,GAC9DW,IAAiBF;AAAA,IACrB,OAAO;AAAA,MACL,MAAM;AAAA,MACN,OAAAT;AAAA,MACA,OAAO,QAAQC,CAAU;AAAA,IAAA;AAAA,IAE3B,CAACA,GAAYD,CAAK;AAAA,EAAA,GAGdY,IAAeC,EAAY,MAAM;AACrC,IAAAV,EAAkB,mCAAmC;AAAA,EAAA,GACpD,CAACA,CAAiB,CAAC,GAEhBW,IAAsBD;AAAA,IAC1B,CAACE,MAAoB;AACnB,MAAAT,EAAqBS,CAAM;AAAA,IAC7B;AAAA,IACA,CAACT,CAAoB;AAAA,EAAA;AAGvB,SAAI,CAACE,KAAYA,EAAS,WAAW,IAAU,OAI3C,gBAAAQ,EAAAC,GAAA,EAAA,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,mBAAkB;AAAA,QAClB,MAAK;AAAA,QACL,UAAS;AAAA,QACT,UAAS;AAAA,QACT,WAAWpB,KAAa;AAAA,QACxB,cAAc;AAAA,QACd,eAAc;AAAA,QACd,OAAOS;AAAA,QACP,iBAAiBI;AAAA,QACjB,mBAAmBE;AAAA,MAAA;AAAA,IACrB;AAAA,IAECT,KACC,gBAAAa,EAACE,GAAA,EACC,UAAA,gBAAAF;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,QAAQ;AAAA,QACR,UAAU;AAAA,QACV,MAAK;AAAA,QACL,OAAM;AAAA,QACN,OAAM;AAAA,QACN,gBAAgBC,EAAgC;AAAA,QAChD,gBAAAX;AAAA,QACA,SAASP;AAAA,QACT,UAAU,CAAC,CAACF;AAAA,MAAA;AAAA,IAAA,GAEhB;AAAA,EAEJ,EAAA,CAAA;AAEJ,CAAC;"}
@@ -1,53 +1,53 @@
1
- import { jsxs as y, jsx as a } from "react/jsx-runtime";
2
- import { memo as A, useRef as S, useCallback as _, useEffect as l, useMemo as $ } from "react";
1
+ import { jsxs as A, jsx as a } from "react/jsx-runtime";
2
+ import { memo as v, useRef as S, useCallback as f, useEffect as l, useMemo as $ } from "react";
3
3
  import H from "../../ui/image/image.js";
4
4
  import M from "../../ui/layout/flex-view.js";
5
5
  import x from "../../ui/separator/separator.js";
6
6
  import d from "../../worksheet/constants/events.js";
7
7
  import N from "../../worksheet/worksheet/hooks/use-learnosity.js";
8
- import Q from "../../worksheet/worksheet/hooks/use-worksheet-data-helper.js";
9
- import { getQuestionsFromItems as V } from "../../worksheet/worksheet/worksheet-helpers.js";
10
- import { PuzzleQuestionWrapper as P, PuzzleContainer as R } from "./puzzle-app-styled.js";
11
- const F = (u) => {
8
+ import P from "../../worksheet/worksheet/hooks/use-worksheet-data-helper.js";
9
+ import { PuzzleQuestionWrapper as Q, PuzzleContainer as R } from "./puzzle-app-styled.js";
10
+ import { getQuestionsFromItems as V } from "../../worksheet/worksheet/worksheet-store/helpers/get-questions-from-items.js";
11
+ const L = (u) => {
12
12
  if (!u) return null;
13
13
  const t = u.match(/<img[^>]+src="([^">]+)"/);
14
14
  return t ? t[1] : null;
15
- }, L = ({
15
+ }, F = ({
16
16
  worksheetData: u,
17
17
  loggerRef: t,
18
- onWorksheetErrored: n,
18
+ onWorksheetErrored: r,
19
19
  imageHue: I,
20
20
  onLoaded: p
21
21
  }) => {
22
- const { signed_request: g, questions_signed_request: w } = u, z = S(null), {
22
+ const { signed_request: E, questions_signed_request: g } = u, w = S(null), {
23
23
  loadingState: i,
24
24
  data: o,
25
- error: f
26
- } = Q({
25
+ error: h
26
+ } = P({
27
27
  attemptId: void 0,
28
- signedRequest: g,
28
+ signedRequest: E,
29
29
  loggerRef: t
30
- }), E = _(
30
+ }), z = f(
31
31
  (s) => {
32
- n({
32
+ r({
33
33
  code: s.code,
34
34
  message: s.detail
35
35
  });
36
36
  },
37
- [n]
38
- ), { learnosity: r } = N(w, E, t);
37
+ [r]
38
+ ), { learnosity: n } = N(g, z, t);
39
39
  l(() => {
40
- i === "error" && n({
41
- message: f ?? "Error loading worksheet"
40
+ i === "error" && r({
41
+ message: h ?? "Error loading worksheet"
42
42
  });
43
- }, [i, n, f]), l(() => {
44
- r && t.current(d.WORKSHEET_V3_LEARNOSITY_INITIALIZED);
45
- }, [r, t]), l(() => {
46
- r && i === "success" && p && (t.current(d.WORKSHEET_V3_READY), p());
47
- }, [r, i, t, p]);
43
+ }, [i, r, h]), l(() => {
44
+ n && t.current(d.WORKSHEET_V3_LEARNOSITY_INITIALIZED);
45
+ }, [n, t]), l(() => {
46
+ n && i === "success" && p && (t.current(d.WORKSHEET_V3_READY), p());
47
+ }, [n, i, t, p]);
48
48
  const m = $(() => i === "success" && (o != null && o.learnosityItems) ? (t.current(d.WORKSHEET_V3_READY), V(o.learnosityItems, {
49
- sectioned: !1,
50
- adaptive: !1
49
+ nodeType: "PUZZLE_CARD",
50
+ activityType: null
51
51
  }).map((e) => ({
52
52
  response_id: e.response_id,
53
53
  type: e.type,
@@ -60,12 +60,12 @@ const F = (u) => {
60
60
  // Add other properties as needed
61
61
  }))) : [], [i, o, t]);
62
62
  l(() => {
63
- if (r && m.length > 0) {
63
+ if (n && m.length > 0) {
64
64
  const c = requestAnimationFrame(() => {
65
65
  try {
66
- r.renderMath("mathjax");
66
+ n.renderMath("mathjax");
67
67
  } catch (e) {
68
- n({
68
+ r({
69
69
  message: `MathJax rendering failed: ${e instanceof Error ? e.message : "Unknown error"}`
70
70
  });
71
71
  }
@@ -74,20 +74,20 @@ const F = (u) => {
74
74
  cancelAnimationFrame(c);
75
75
  };
76
76
  }
77
- }, [r, n, m]);
78
- const T = _((s) => {
79
- const { stimulus: c = "", template: e = "", response_id: v } = s, h = F(c);
80
- return /* @__PURE__ */ y(
77
+ }, [n, r, m]);
78
+ const y = f((s) => {
79
+ const { stimulus: c = "", template: e = "", response_id: T } = s, _ = L(c);
80
+ return /* @__PURE__ */ A(
81
81
  M,
82
82
  {
83
83
  $background: "TRANSPARENT",
84
84
  $alignItems: "center",
85
85
  className: "puzzle-app-view-question-card",
86
86
  children: [
87
- h && /* @__PURE__ */ a(
87
+ _ && /* @__PURE__ */ a(
88
88
  H,
89
89
  {
90
- src: h,
90
+ src: _,
91
91
  alt: "Puzzle illustration",
92
92
  width: 183,
93
93
  height: 183,
@@ -95,26 +95,26 @@ const F = (u) => {
95
95
  }
96
96
  ),
97
97
  /* @__PURE__ */ a(x, { heightX: 1 }),
98
- e && /* @__PURE__ */ a(P, { children: /* @__PURE__ */ a("div", { dangerouslySetInnerHTML: { __html: e } }) })
98
+ e && /* @__PURE__ */ a(Q, { children: /* @__PURE__ */ a("div", { dangerouslySetInnerHTML: { __html: e } }) })
99
99
  ]
100
100
  },
101
- v
101
+ T
102
102
  );
103
103
  }, []);
104
104
  return m.length ? /* @__PURE__ */ a(
105
105
  R,
106
106
  {
107
- ref: z,
107
+ ref: w,
108
108
  $gapX: 1,
109
109
  $gutterX: 1,
110
110
  $imageHue: I,
111
111
  $background: "WHITE_1",
112
112
  className: "puzzle-app-view-container",
113
- children: m.map((s) => /* @__PURE__ */ a("div", { children: T(s) }, `question-${s.response_id}`))
113
+ children: m.map((s) => /* @__PURE__ */ a("div", { children: y(s) }, `question-${s.response_id}`))
114
114
  }
115
115
  ) : null;
116
- }, U = A(L);
116
+ }, Y = v(F);
117
117
  export {
118
- U as default
118
+ Y as default
119
119
  };
120
120
  //# sourceMappingURL=puzzle-app-view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"puzzle-app-view.js","sources":["../../../../src/features/puzzles/app/puzzle-app-view.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, useMemo, useRef, type FC } from 'react';\n\nimport Image from '../../ui/image/image';\nimport FlexView from '../../ui/layout/flex-view';\nimport Separator from '../../ui/separator/separator';\nimport EVENTS from '../../worksheet/constants/events';\nimport useLearnosity from '../../worksheet/worksheet/hooks/use-learnosity';\nimport useWorksheetDataHelper from '../../worksheet/worksheet/hooks/use-worksheet-data-helper';\nimport { getQuestionsFromItems } from '../../worksheet/worksheet/worksheet-helpers';\nimport type {\n ILearnosityError,\n ILearnosityQuestion,\n} from '../../worksheet/worksheet/worksheet-types';\nimport * as Styled from './puzzle-app-styled';\nimport type { IPuzzleAppViewProps } from './puzzle-app-types';\n\nconst extractImageFromHTML = (htmlString: string) => {\n if (!htmlString) return null;\n\n const imgMatch = htmlString.match(/<img[^>]+src=\"([^\">]+)\"/);\n\n return imgMatch ? imgMatch[1] : null;\n};\n\nconst PuzzleAppView: FC<IPuzzleAppViewProps> = ({\n worksheetData,\n loggerRef,\n onWorksheetErrored,\n imageHue,\n onLoaded,\n}) => {\n const { signed_request: itemsSignedRequest, questions_signed_request: questionSignedRequest } =\n worksheetData;\n\n // Ref for the container to trigger MathJax rendering\n const containerRef = useRef<HTMLDivElement>(null);\n\n // Get Learnosity items using the signed_request (not questions_signed_request)\n const {\n loadingState,\n data: learnosityData,\n error: worksheetError,\n } = useWorksheetDataHelper({\n attemptId: undefined,\n signedRequest: itemsSignedRequest,\n loggerRef,\n });\n\n const onLearnosityErrored = useCallback(\n (err: ILearnosityError) => {\n onWorksheetErrored({\n code: err.code,\n message: err.detail,\n });\n },\n [onWorksheetErrored],\n );\n\n // Initialize Learnosity using questions_signed_request (needed for interactive questions)\n const { learnosity } = useLearnosity(questionSignedRequest, onLearnosityErrored, loggerRef);\n\n useEffect(() => {\n if (loadingState === 'error') {\n onWorksheetErrored({\n message: worksheetError ?? 'Error loading worksheet',\n });\n }\n }, [loadingState, onWorksheetErrored, worksheetError]);\n\n // Log when learnosity is ready for future interactive features\n useEffect(() => {\n if (learnosity) {\n loggerRef.current(EVENTS.WORKSHEET_V3_LEARNOSITY_INITIALIZED);\n }\n }, [learnosity, loggerRef]);\n\n useEffect(() => {\n if (learnosity && loadingState === 'success' && onLoaded) {\n loggerRef.current(EVENTS.WORKSHEET_V3_READY);\n onLoaded();\n }\n }, [learnosity, loadingState, loggerRef, onLoaded]);\n\n // Memoize questions processing to prevent re-render loops\n const questions = useMemo(() => {\n // Extract questions from Learnosity items when data is loaded successfully\n if (loadingState === 'success' && learnosityData?.learnosityItems) {\n loggerRef.current(EVENTS.WORKSHEET_V3_READY);\n\n // Convert learnosityItems to questions using the worksheet helper\n const worksheetQuestions = getQuestionsFromItems(learnosityData.learnosityItems, {\n sectioned: false,\n adaptive: false,\n });\n\n // Extract just the Learnosity questions from worksheet questions\n const learnosityQuestions: ILearnosityQuestion[] = worksheetQuestions.map(q => ({\n response_id: q.response_id,\n type: q.type,\n stimulus: q.stimulus,\n template: q.template,\n stimulus_review: q.stimulus_review,\n options: q.options,\n metadata: q.metadata,\n validation: q.validation,\n // Add other properties as needed\n }));\n\n return learnosityQuestions;\n }\n\n return [];\n }, [loadingState, learnosityData, loggerRef]);\n\n // Force MathJax rendering after questions are loaded and rendered\n // Similar to how useLearnosityAppend does it\n useEffect(() => {\n if (learnosity && questions.length > 0) {\n // Use requestAnimationFrame to ensure DOM is updated before rendering math\n const renderMath = () => {\n try {\n learnosity.renderMath('mathjax');\n } catch (error) {\n onWorksheetErrored({\n message: `MathJax rendering failed: ${\n error instanceof Error ? error.message : 'Unknown error'\n }`,\n });\n }\n };\n\n const animationId = requestAnimationFrame(renderMath);\n\n return () => {\n cancelAnimationFrame(animationId);\n };\n }\n }, [learnosity, onWorksheetErrored, questions]);\n\n const renderQuestionContent = useCallback((question: ILearnosityQuestion) => {\n const { stimulus = '', template = '', response_id: responseId } = question;\n const imageUrl = extractImageFromHTML(stimulus);\n\n return (\n <FlexView\n $background=\"TRANSPARENT\"\n key={responseId}\n $alignItems=\"center\"\n className=\"puzzle-app-view-question-card\"\n >\n {/* Main Image or Interactive Content */}\n {imageUrl && (\n <Image\n src={imageUrl}\n alt=\"Puzzle illustration\"\n width={183}\n height={183}\n withLoader={true}\n />\n )}\n\n <Separator heightX={1} />\n\n {/* Question HTML Content */}\n {template && (\n <Styled.PuzzleQuestionWrapper>\n <div dangerouslySetInnerHTML={{ __html: template }} />\n </Styled.PuzzleQuestionWrapper>\n )}\n </FlexView>\n );\n }, []);\n\n if (!questions.length) return null;\n\n return (\n <Styled.PuzzleContainer\n ref={containerRef}\n $gapX={1}\n $gutterX={1}\n $imageHue={imageHue}\n $background=\"WHITE_1\"\n className=\"puzzle-app-view-container\"\n >\n {questions.map(question => (\n <div key={`question-${question.response_id}`}>{renderQuestionContent(question)}</div>\n ))}\n </Styled.PuzzleContainer>\n );\n};\n\nexport default memo(PuzzleAppView);\n"],"names":["extractImageFromHTML","htmlString","imgMatch","PuzzleAppView","worksheetData","loggerRef","onWorksheetErrored","imageHue","onLoaded","itemsSignedRequest","questionSignedRequest","containerRef","useRef","loadingState","learnosityData","worksheetError","useWorksheetDataHelper","onLearnosityErrored","useCallback","err","learnosity","useLearnosity","useEffect","EVENTS","questions","useMemo","getQuestionsFromItems","q","animationId","error","renderQuestionContent","question","stimulus","template","responseId","imageUrl","jsxs","FlexView","jsx","Image","Separator","Styled.PuzzleQuestionWrapper","Styled.PuzzleContainer","PuzzleAppView$1","memo"],"mappings":"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"}
1
+ {"version":3,"file":"puzzle-app-view.js","sources":["../../../../src/features/puzzles/app/puzzle-app-view.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, useMemo, useRef, type FC } from 'react';\n\nimport Image from '../../ui/image/image';\nimport FlexView from '../../ui/layout/flex-view';\nimport Separator from '../../ui/separator/separator';\nimport EVENTS from '../../worksheet/constants/events';\nimport useLearnosity from '../../worksheet/worksheet/hooks/use-learnosity';\nimport useWorksheetDataHelper from '../../worksheet/worksheet/hooks/use-worksheet-data-helper';\nimport type {\n ILearnosityError,\n ILearnosityQuestion,\n} from '../../worksheet/worksheet/worksheet-types';\nimport * as Styled from './puzzle-app-styled';\nimport type { IPuzzleAppViewProps } from './puzzle-app-types';\nimport { getQuestionsFromItems } from '../../worksheet/worksheet/worksheet-store/helpers/get-questions-from-items';\n\nconst extractImageFromHTML = (htmlString: string) => {\n if (!htmlString) return null;\n\n const imgMatch = htmlString.match(/<img[^>]+src=\"([^\">]+)\"/);\n\n return imgMatch ? imgMatch[1] : null;\n};\n\nconst PuzzleAppView: FC<IPuzzleAppViewProps> = ({\n worksheetData,\n loggerRef,\n onWorksheetErrored,\n imageHue,\n onLoaded,\n}) => {\n const { signed_request: itemsSignedRequest, questions_signed_request: questionSignedRequest } =\n worksheetData;\n\n // Ref for the container to trigger MathJax rendering\n const containerRef = useRef<HTMLDivElement>(null);\n\n // Get Learnosity items using the signed_request (not questions_signed_request)\n const {\n loadingState,\n data: learnosityData,\n error: worksheetError,\n } = useWorksheetDataHelper({\n attemptId: undefined,\n signedRequest: itemsSignedRequest,\n loggerRef,\n });\n\n const onLearnosityErrored = useCallback(\n (err: ILearnosityError) => {\n onWorksheetErrored({\n code: err.code,\n message: err.detail,\n });\n },\n [onWorksheetErrored],\n );\n\n // Initialize Learnosity using questions_signed_request (needed for interactive questions)\n const { learnosity } = useLearnosity(questionSignedRequest, onLearnosityErrored, loggerRef);\n\n useEffect(() => {\n if (loadingState === 'error') {\n onWorksheetErrored({\n message: worksheetError ?? 'Error loading worksheet',\n });\n }\n }, [loadingState, onWorksheetErrored, worksheetError]);\n\n // Log when learnosity is ready for future interactive features\n useEffect(() => {\n if (learnosity) {\n loggerRef.current(EVENTS.WORKSHEET_V3_LEARNOSITY_INITIALIZED);\n }\n }, [learnosity, loggerRef]);\n\n useEffect(() => {\n if (learnosity && loadingState === 'success' && onLoaded) {\n loggerRef.current(EVENTS.WORKSHEET_V3_READY);\n onLoaded();\n }\n }, [learnosity, loadingState, loggerRef, onLoaded]);\n\n // Memoize questions processing to prevent re-render loops\n const questions = useMemo(() => {\n // Extract questions from Learnosity items when data is loaded successfully\n if (loadingState === 'success' && learnosityData?.learnosityItems) {\n loggerRef.current(EVENTS.WORKSHEET_V3_READY);\n\n // Convert learnosityItems to questions using the worksheet helper\n const worksheetQuestions = getQuestionsFromItems(learnosityData.learnosityItems, {\n nodeType: 'PUZZLE_CARD',\n activityType: null,\n });\n\n // Extract just the Learnosity questions from worksheet questions\n const learnosityQuestions: ILearnosityQuestion[] = worksheetQuestions.map(q => ({\n response_id: q.response_id,\n type: q.type,\n stimulus: q.stimulus,\n template: q.template,\n stimulus_review: q.stimulus_review,\n options: q.options,\n metadata: q.metadata,\n validation: q.validation,\n // Add other properties as needed\n }));\n\n return learnosityQuestions;\n }\n\n return [];\n }, [loadingState, learnosityData, loggerRef]);\n\n // Force MathJax rendering after questions are loaded and rendered\n // Similar to how useLearnosityAppend does it\n useEffect(() => {\n if (learnosity && questions.length > 0) {\n // Use requestAnimationFrame to ensure DOM is updated before rendering math\n const renderMath = () => {\n try {\n learnosity.renderMath('mathjax');\n } catch (error) {\n onWorksheetErrored({\n message: `MathJax rendering failed: ${\n error instanceof Error ? error.message : 'Unknown error'\n }`,\n });\n }\n };\n\n const animationId = requestAnimationFrame(renderMath);\n\n return () => {\n cancelAnimationFrame(animationId);\n };\n }\n }, [learnosity, onWorksheetErrored, questions]);\n\n const renderQuestionContent = useCallback((question: ILearnosityQuestion) => {\n const { stimulus = '', template = '', response_id: responseId } = question;\n const imageUrl = extractImageFromHTML(stimulus);\n\n return (\n <FlexView\n $background=\"TRANSPARENT\"\n key={responseId}\n $alignItems=\"center\"\n className=\"puzzle-app-view-question-card\"\n >\n {/* Main Image or Interactive Content */}\n {imageUrl && (\n <Image\n src={imageUrl}\n alt=\"Puzzle illustration\"\n width={183}\n height={183}\n withLoader={true}\n />\n )}\n\n <Separator heightX={1} />\n\n {/* Question HTML Content */}\n {template && (\n <Styled.PuzzleQuestionWrapper>\n <div dangerouslySetInnerHTML={{ __html: template }} />\n </Styled.PuzzleQuestionWrapper>\n )}\n </FlexView>\n );\n }, []);\n\n if (!questions.length) return null;\n\n return (\n <Styled.PuzzleContainer\n ref={containerRef}\n $gapX={1}\n $gutterX={1}\n $imageHue={imageHue}\n $background=\"WHITE_1\"\n className=\"puzzle-app-view-container\"\n >\n {questions.map(question => (\n <div key={`question-${question.response_id}`}>{renderQuestionContent(question)}</div>\n ))}\n </Styled.PuzzleContainer>\n );\n};\n\nexport default memo(PuzzleAppView);\n"],"names":["extractImageFromHTML","htmlString","imgMatch","PuzzleAppView","worksheetData","loggerRef","onWorksheetErrored","imageHue","onLoaded","itemsSignedRequest","questionSignedRequest","containerRef","useRef","loadingState","learnosityData","worksheetError","useWorksheetDataHelper","onLearnosityErrored","useCallback","err","learnosity","useLearnosity","useEffect","EVENTS","questions","useMemo","getQuestionsFromItems","q","animationId","error","renderQuestionContent","question","stimulus","template","responseId","imageUrl","jsxs","FlexView","jsx","Image","Separator","Styled.PuzzleQuestionWrapper","Styled.PuzzleContainer","PuzzleAppView$1","memo"],"mappings":"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"}
@@ -1,33 +1,33 @@
1
- import { jsx as r } from "react/jsx-runtime";
1
+ import { jsx as n } from "react/jsx-runtime";
2
2
  import { memo as d } from "react";
3
3
  import { useTheme as f } from "styled-components";
4
4
  import l from "./tab-tem/tab-item.js";
5
5
  import { TabsWrapper as T } from "./tabs-styled.js";
6
- const b = d(function({
7
- selectedTab: i,
8
- onChange: t,
9
- tabs: n,
10
- theme: o = "dark",
6
+ const b = function({
7
+ selectedTab: t,
8
+ onChange: r,
9
+ tabs: i,
10
+ theme: e = "dark",
11
11
  layout: m = "compact",
12
12
  height: s,
13
13
  minWidth: a
14
14
  }) {
15
- const { tabs: c } = f(), p = c[o].underline.inactive;
16
- return /* @__PURE__ */ r(T, { $inactiveUnderlineColor: p, children: n.map((e) => /* @__PURE__ */ r(
15
+ const { tabs: c } = f(), p = c[e].underline.inactive;
16
+ return /* @__PURE__ */ n(T, { $inactiveUnderlineColor: p, children: i.map((o) => /* @__PURE__ */ n(
17
17
  l,
18
18
  {
19
- tab: e,
20
- isSelected: e.id === i,
21
- onChange: t,
22
- theme: o,
19
+ tab: o,
20
+ isSelected: o.id === t,
21
+ onChange: r,
22
+ theme: e,
23
23
  layout: m,
24
24
  height: s,
25
25
  minWidth: a
26
26
  },
27
- e.id
27
+ o.id
28
28
  )) });
29
- }), $ = b;
29
+ }, u = d(b), k = u;
30
30
  export {
31
- $ as default
31
+ k as default
32
32
  };
33
33
  //# sourceMappingURL=tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sources":["../../../../src/features/ui/tabs/tabs.tsx"],"sourcesContent":["import { memo } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport TabItem from './tab-tem/tab-item';\nimport * as Styled from './tabs-styled';\nimport type { ITabsProps } from './tabs-types';\n\nconst Tabs = memo(function Tabs<TId extends string = string>({\n selectedTab,\n onChange,\n tabs,\n theme = 'dark',\n layout = 'compact',\n height,\n minWidth,\n}: ITabsProps<TId>) {\n const { tabs: tabsTheme } = useTheme();\n const themeConfig = tabsTheme[theme];\n const inactiveUnderlineColor = themeConfig.underline.inactive;\n\n return (\n <Styled.TabsWrapper $inactiveUnderlineColor={inactiveUnderlineColor}>\n {tabs.map(tab => (\n <TabItem\n key={tab.id}\n tab={tab}\n isSelected={tab.id === selectedTab}\n onChange={onChange}\n theme={theme}\n layout={layout}\n height={height}\n minWidth={minWidth}\n />\n ))}\n </Styled.TabsWrapper>\n );\n});\n\nexport default Tabs;\n"],"names":["Tabs","memo","selectedTab","onChange","tabs","theme","layout","height","minWidth","tabsTheme","useTheme","inactiveUnderlineColor","jsx","Styled.TabsWrapper","tab","TabItem","Tabs$1"],"mappings":";;;;;AAOA,MAAMA,IAAOC,EAAK,SAA2C;AAAA,EAC3D,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,QAAAC,IAAS;AAAA,EACT,QAAAC;AAAA,EACA,UAAAC;AACF,GAAoB;AAClB,QAAM,EAAE,MAAMC,EAAU,IAAIC,EAAS,GAE/BC,IADcF,EAAUJ,CAAK,EACQ,UAAU;AAGnD,SAAA,gBAAAO,EAACC,GAAA,EAAmB,yBAAyBF,GAC1C,UAAAP,EAAK,IAAI,CACRU,MAAA,gBAAAF;AAAA,IAACG;AAAA,IAAA;AAAA,MAEC,KAAAD;AAAA,MACA,YAAYA,EAAI,OAAOZ;AAAA,MACvB,UAAAC;AAAA,MACA,OAAAE;AAAA,MACA,QAAAC;AAAA,MACA,QAAAC;AAAA,MACA,UAAAC;AAAA,IAAA;AAAA,IAPKM,EAAI;AAAA,EASZ,CAAA,EACH,CAAA;AAEJ,CAAC,GAEDE,IAAehB;"}
1
+ {"version":3,"file":"tabs.js","sources":["../../../../src/features/ui/tabs/tabs.tsx"],"sourcesContent":["import { memo } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport TabItem from './tab-tem/tab-item';\nimport * as Styled from './tabs-styled';\nimport type { ITabsProps } from './tabs-types';\n\nconst TabsComponent = function Tabs<TId extends string = string>({\n selectedTab,\n onChange,\n tabs,\n theme = 'dark',\n layout = 'compact',\n height,\n minWidth,\n}: ITabsProps<TId>) {\n const { tabs: tabsTheme } = useTheme();\n const themeConfig = tabsTheme[theme];\n const inactiveUnderlineColor = themeConfig.underline.inactive;\n\n return (\n <Styled.TabsWrapper $inactiveUnderlineColor={inactiveUnderlineColor}>\n {tabs.map(tab => (\n <TabItem\n key={tab.id}\n tab={tab}\n isSelected={tab.id === selectedTab}\n onChange={onChange}\n theme={theme}\n layout={layout}\n height={height}\n minWidth={minWidth}\n />\n ))}\n </Styled.TabsWrapper>\n );\n};\n\nconst Tabs = memo(TabsComponent) as typeof TabsComponent;\n\nexport default Tabs;\n"],"names":["TabsComponent","selectedTab","onChange","tabs","theme","layout","height","minWidth","tabsTheme","useTheme","inactiveUnderlineColor","jsx","Styled.TabsWrapper","tab","TabItem","Tabs","memo"],"mappings":";;;;;AAOA,MAAMA,IAAgB,SAA2C;AAAA,EAC/D,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,QAAAC,IAAS;AAAA,EACT,QAAAC;AAAA,EACA,UAAAC;AACF,GAAoB;AAClB,QAAM,EAAE,MAAMC,EAAU,IAAIC,EAAS,GAE/BC,IADcF,EAAUJ,CAAK,EACQ,UAAU;AAGnD,SAAA,gBAAAO,EAACC,GAAA,EAAmB,yBAAyBF,GAC1C,UAAAP,EAAK,IAAI,CACRU,MAAA,gBAAAF;AAAA,IAACG;AAAA,IAAA;AAAA,MAEC,KAAAD;AAAA,MACA,YAAYA,EAAI,OAAOZ;AAAA,MACvB,UAAAC;AAAA,MACA,OAAAE;AAAA,MACA,QAAAC;AAAA,MACA,QAAAC;AAAA,MACA,UAAAC;AAAA,IAAA;AAAA,IAPKM,EAAI;AAAA,EASZ,CAAA,EACH,CAAA;AAEJ,GAEME,IAAOC,EAAKhB,CAAa,GAE/Be,IAAeA;"}
@@ -75,7 +75,6 @@ const y = "https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js", F = {
75
75
  }
76
76
  ), j = K;
77
77
  export {
78
- y as MATHJAX_URL,
79
78
  j as default
80
79
  };
81
80
  //# sourceMappingURL=learnosity-preloader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"learnosity-preloader.js","sources":["../../../../src/features/worksheet/learnosity-preloader/learnosity-preloader.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, useMemo, type FC, type PropsWithChildren } from 'react';\n\nimport { LIB } from '../../../assets/lib/lib';\nimport EVENTS from '../constants/events';\nimport { setMathJaxConfigInWindow } from '../worksheet/worksheet-helpers';\nimport LearnosityPreloaderContext from './learnosity-preloader-context';\nimport type {\n ILearnosityPreloaderProps,\n TLearnosityPreloaderContextValue,\n IMathJaxConfig,\n} from './learnosity-preloader-types';\nimport useDownloadScript from './use-download-script';\n\nexport const MATHJAX_URL = 'https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js';\n\ndeclare global {\n interface Window {\n MathJax: IMathJaxConfig;\n }\n}\n\nconst LearnosityEventsMap = {\n LOADING: EVENTS.WORKSHEET_V3_SCRIPT_LOADING,\n LOADED: EVENTS.WORKSHEET_V3_SCRIPT_LOADED,\n FAILED: EVENTS.WORKSHEET_V3_SCRIPT_FAILED,\n FALLBACK_LOADING: EVENTS.WORKSHEET_V3_SCRIPT_FALLBACK_LOADING,\n FALLBACK_LOADED: EVENTS.WORKSHEET_V3_SCRIPT_FALLBACK_LOADED,\n FALLBACK_FAILED: EVENTS.WORKSHEET_V3_SCRIPT_FALLBACK_FAILED,\n};\n\nconst MathJaxEventsMap = {\n LOADING: EVENTS.MATHJAX_SCRIPT_LOADING,\n LOADED: EVENTS.MATHJAX_SCRIPT_LOADED,\n FAILED: EVENTS.MATHJAX_SCRIPT_FAILED,\n};\nconst PolyPadEventsMap = {\n LOADING: EVENTS.POLYPAD_SCRIPT_LOADING,\n LOADED: EVENTS.POLYPAD_SCRIPT_LOADED,\n FAILED: EVENTS.POLYPAD_SCRIPT_FAILED,\n};\n\nconst LearnosityPreloader: FC<PropsWithChildren<ILearnosityPreloaderProps>> = memo(\n function LearnosityPreloader({ apiURL, fallbackAPIURL, logger, children }) {\n const isMathJaxLoaded = window?.MathJax?.version;\n const isPolypadLoaded = !!window?.Polypad;\n const {\n scriptStatus: learnosityScriptStatus,\n loadedAPIURL,\n downloadScript: loadLearnosity,\n } = useDownloadScript(\n logger,\n apiURL,\n 'learnosity-preloader-script',\n LearnosityEventsMap,\n fallbackAPIURL,\n );\n const { scriptStatus: mathjaxScriptStatus, downloadScript: loadMathjax } = useDownloadScript(\n logger,\n MATHJAX_URL,\n 'mathjax-script',\n MathJaxEventsMap,\n undefined,\n isMathJaxLoaded ? 'loaded' : 'loading',\n );\n const { scriptStatus: polypadScriptStatus, downloadScript: loadPolypad } = useDownloadScript(\n logger,\n LIB.POLYPAD,\n 'polypad-script',\n PolyPadEventsMap,\n undefined,\n isPolypadLoaded ? 'loaded' : 'loading',\n );\n\n useEffect(() => {\n if (!isMathJaxLoaded) {\n setMathJaxConfigInWindow(logger);\n }\n }, [isMathJaxLoaded, logger]);\n\n const scriptStatus = useMemo(() => {\n if (\n learnosityScriptStatus === 'loaded' &&\n mathjaxScriptStatus === 'loaded' &&\n polypadScriptStatus === 'loaded'\n ) {\n return 'loaded';\n }\n\n if (\n learnosityScriptStatus === 'error' ||\n mathjaxScriptStatus === 'error' ||\n polypadScriptStatus === 'error'\n ) {\n return 'error';\n }\n\n return 'loading';\n }, [learnosityScriptStatus, mathjaxScriptStatus, polypadScriptStatus]);\n\n const downloadScript = useCallback(() => {\n if (learnosityScriptStatus === 'error') {\n loadLearnosity();\n }\n\n if (mathjaxScriptStatus === 'error') {\n loadMathjax();\n }\n\n if (polypadScriptStatus === 'error') {\n loadPolypad();\n }\n }, [\n learnosityScriptStatus,\n loadLearnosity,\n loadMathjax,\n loadPolypad,\n mathjaxScriptStatus,\n polypadScriptStatus,\n ]);\n\n const contextValue = useMemo<TLearnosityPreloaderContextValue>(() => {\n if (scriptStatus === 'loaded') {\n return {\n scriptStatus,\n defaultAPIURL: apiURL,\n loadedAPIURL,\n downloadScript,\n };\n }\n\n return {\n scriptStatus,\n defaultAPIURL: apiURL,\n loadedAPIURL: undefined,\n downloadScript,\n };\n }, [apiURL, downloadScript, loadedAPIURL, scriptStatus]);\n\n return (\n <LearnosityPreloaderContext.Provider value={contextValue}>\n {children}\n </LearnosityPreloaderContext.Provider>\n );\n },\n);\n\nexport default LearnosityPreloader;\n"],"names":["MATHJAX_URL","LearnosityEventsMap","EVENTS","MathJaxEventsMap","PolyPadEventsMap","LearnosityPreloader","memo","apiURL","fallbackAPIURL","logger","children","isMathJaxLoaded","_a","isPolypadLoaded","learnosityScriptStatus","loadedAPIURL","loadLearnosity","useDownloadScript","mathjaxScriptStatus","loadMathjax","polypadScriptStatus","loadPolypad","LIB","useEffect","setMathJaxConfigInWindow","scriptStatus","useMemo","downloadScript","useCallback","contextValue","LearnosityPreloaderContext","LearnosityPreloader$1"],"mappings":";;;;;;;AAaO,MAAMA,IAAc,gEAQrBC,IAAsB;AAAA,EAC1B,SAASC,EAAO;AAAA,EAChB,QAAQA,EAAO;AAAA,EACf,QAAQA,EAAO;AAAA,EACf,kBAAkBA,EAAO;AAAA,EACzB,iBAAiBA,EAAO;AAAA,EACxB,iBAAiBA,EAAO;AAC1B,GAEMC,IAAmB;AAAA,EACvB,SAASD,EAAO;AAAA,EAChB,QAAQA,EAAO;AAAA,EACf,QAAQA,EAAO;AACjB,GACME,IAAmB;AAAA,EACvB,SAASF,EAAO;AAAA,EAChB,QAAQA,EAAO;AAAA,EACf,QAAQA,EAAO;AACjB,GAEMG,IAAwEC;AAAA,EAC5E,SAA6B,EAAE,QAAAC,GAAQ,gBAAAC,GAAgB,QAAAC,GAAQ,UAAAC,KAAY;;AACnE,UAAAC,KAAkBC,IAAA,iCAAQ,YAAR,gBAAAA,EAAiB,SACnCC,IAAkB,CAAC,EAAC,yBAAQ,UAC5B;AAAA,MACJ,cAAcC;AAAA,MACd,cAAAC;AAAA,MACA,gBAAgBC;AAAA,IAAA,IACdC;AAAA,MACFR;AAAA,MACAF;AAAA,MACA;AAAA,MACAN;AAAA,MACAO;AAAA,IAAA,GAEI,EAAE,cAAcU,GAAqB,gBAAgBC,EAAgB,IAAAF;AAAA,MACzER;AAAA,MACAT;AAAA,MACA;AAAA,MACAG;AAAA,MACA;AAAA,MACAQ,IAAkB,WAAW;AAAA,IAAA,GAEzB,EAAE,cAAcS,GAAqB,gBAAgBC,EAAgB,IAAAJ;AAAA,MACzER;AAAA,MACAa,EAAI;AAAA,MACJ;AAAA,MACAlB;AAAA,MACA;AAAA,MACAS,IAAkB,WAAW;AAAA,IAAA;AAG/B,IAAAU,EAAU,MAAM;AACd,MAAKZ,KACHa,EAAyBf,CAAM;AAAA,IACjC,GACC,CAACE,GAAiBF,CAAM,CAAC;AAEtB,UAAAgB,IAAeC,EAAQ,MAEzBZ,MAA2B,YAC3BI,MAAwB,YACxBE,MAAwB,WAEjB,WAIPN,MAA2B,WAC3BI,MAAwB,WACxBE,MAAwB,UAEjB,UAGF,WACN,CAACN,GAAwBI,GAAqBE,CAAmB,CAAC,GAE/DO,IAAiBC,EAAY,MAAM;AACvC,MAAId,MAA2B,WACdE,KAGbE,MAAwB,WACdC,KAGVC,MAAwB,WACdC;IACd,GACC;AAAA,MACDP;AAAA,MACAE;AAAA,MACAG;AAAA,MACAE;AAAA,MACAH;AAAA,MACAE;AAAA,IAAA,CACD,GAEKS,IAAeH,EAA0C,MACzDD,MAAiB,WACZ;AAAA,MACL,cAAAA;AAAA,MACA,eAAelB;AAAA,MACf,cAAAQ;AAAA,MACA,gBAAAY;AAAA,IAAA,IAIG;AAAA,MACL,cAAAF;AAAA,MACA,eAAelB;AAAA,MACf,cAAc;AAAA,MACd,gBAAAoB;AAAA,IAAA,GAED,CAACpB,GAAQoB,GAAgBZ,GAAcU,CAAY,CAAC;AAEvD,6BACGK,EAA2B,UAA3B,EAAoC,OAAOD,GACzC,UAAAnB,EACH,CAAA;AAAA,EAEJ;AACF,GAEAqB,IAAe1B;"}
1
+ {"version":3,"file":"learnosity-preloader.js","sources":["../../../../src/features/worksheet/learnosity-preloader/learnosity-preloader.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, useMemo, type FC, type PropsWithChildren } from 'react';\n\nimport { LIB } from '../../../assets/lib/lib';\nimport EVENTS from '../constants/events';\nimport { setMathJaxConfigInWindow } from '../worksheet/worksheet-helpers';\nimport LearnosityPreloaderContext from './learnosity-preloader-context';\nimport type {\n ILearnosityPreloaderProps,\n TLearnosityPreloaderContextValue,\n IMathJaxConfig,\n} from './learnosity-preloader-types';\nimport useDownloadScript from './use-download-script';\n\nconst MATHJAX_URL = 'https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js';\n\ndeclare global {\n interface Window {\n MathJax: IMathJaxConfig;\n }\n}\n\nconst LearnosityEventsMap = {\n LOADING: EVENTS.WORKSHEET_V3_SCRIPT_LOADING,\n LOADED: EVENTS.WORKSHEET_V3_SCRIPT_LOADED,\n FAILED: EVENTS.WORKSHEET_V3_SCRIPT_FAILED,\n FALLBACK_LOADING: EVENTS.WORKSHEET_V3_SCRIPT_FALLBACK_LOADING,\n FALLBACK_LOADED: EVENTS.WORKSHEET_V3_SCRIPT_FALLBACK_LOADED,\n FALLBACK_FAILED: EVENTS.WORKSHEET_V3_SCRIPT_FALLBACK_FAILED,\n};\n\nconst MathJaxEventsMap = {\n LOADING: EVENTS.MATHJAX_SCRIPT_LOADING,\n LOADED: EVENTS.MATHJAX_SCRIPT_LOADED,\n FAILED: EVENTS.MATHJAX_SCRIPT_FAILED,\n};\nconst PolyPadEventsMap = {\n LOADING: EVENTS.POLYPAD_SCRIPT_LOADING,\n LOADED: EVENTS.POLYPAD_SCRIPT_LOADED,\n FAILED: EVENTS.POLYPAD_SCRIPT_FAILED,\n};\n\nconst LearnosityPreloader: FC<PropsWithChildren<ILearnosityPreloaderProps>> = memo(\n function LearnosityPreloader({ apiURL, fallbackAPIURL, logger, children }) {\n const isMathJaxLoaded = window?.MathJax?.version;\n const isPolypadLoaded = !!window?.Polypad;\n const {\n scriptStatus: learnosityScriptStatus,\n loadedAPIURL,\n downloadScript: loadLearnosity,\n } = useDownloadScript(\n logger,\n apiURL,\n 'learnosity-preloader-script',\n LearnosityEventsMap,\n fallbackAPIURL,\n );\n const { scriptStatus: mathjaxScriptStatus, downloadScript: loadMathjax } = useDownloadScript(\n logger,\n MATHJAX_URL,\n 'mathjax-script',\n MathJaxEventsMap,\n undefined,\n isMathJaxLoaded ? 'loaded' : 'loading',\n );\n const { scriptStatus: polypadScriptStatus, downloadScript: loadPolypad } = useDownloadScript(\n logger,\n LIB.POLYPAD,\n 'polypad-script',\n PolyPadEventsMap,\n undefined,\n isPolypadLoaded ? 'loaded' : 'loading',\n );\n\n useEffect(() => {\n if (!isMathJaxLoaded) {\n setMathJaxConfigInWindow(logger);\n }\n }, [isMathJaxLoaded, logger]);\n\n const scriptStatus = useMemo(() => {\n if (\n learnosityScriptStatus === 'loaded' &&\n mathjaxScriptStatus === 'loaded' &&\n polypadScriptStatus === 'loaded'\n ) {\n return 'loaded';\n }\n\n if (\n learnosityScriptStatus === 'error' ||\n mathjaxScriptStatus === 'error' ||\n polypadScriptStatus === 'error'\n ) {\n return 'error';\n }\n\n return 'loading';\n }, [learnosityScriptStatus, mathjaxScriptStatus, polypadScriptStatus]);\n\n const downloadScript = useCallback(() => {\n if (learnosityScriptStatus === 'error') {\n loadLearnosity();\n }\n\n if (mathjaxScriptStatus === 'error') {\n loadMathjax();\n }\n\n if (polypadScriptStatus === 'error') {\n loadPolypad();\n }\n }, [\n learnosityScriptStatus,\n loadLearnosity,\n loadMathjax,\n loadPolypad,\n mathjaxScriptStatus,\n polypadScriptStatus,\n ]);\n\n const contextValue = useMemo<TLearnosityPreloaderContextValue>(() => {\n if (scriptStatus === 'loaded') {\n return {\n scriptStatus,\n defaultAPIURL: apiURL,\n loadedAPIURL,\n downloadScript,\n };\n }\n\n return {\n scriptStatus,\n defaultAPIURL: apiURL,\n loadedAPIURL: undefined,\n downloadScript,\n };\n }, [apiURL, downloadScript, loadedAPIURL, scriptStatus]);\n\n return (\n <LearnosityPreloaderContext.Provider value={contextValue}>\n {children}\n </LearnosityPreloaderContext.Provider>\n );\n },\n);\n\nexport default LearnosityPreloader;\n"],"names":["MATHJAX_URL","LearnosityEventsMap","EVENTS","MathJaxEventsMap","PolyPadEventsMap","LearnosityPreloader","memo","apiURL","fallbackAPIURL","logger","children","isMathJaxLoaded","_a","isPolypadLoaded","learnosityScriptStatus","loadedAPIURL","loadLearnosity","useDownloadScript","mathjaxScriptStatus","loadMathjax","polypadScriptStatus","loadPolypad","LIB","useEffect","setMathJaxConfigInWindow","scriptStatus","useMemo","downloadScript","useCallback","contextValue","LearnosityPreloaderContext","LearnosityPreloader$1"],"mappings":";;;;;;;AAaA,MAAMA,IAAc,gEAQdC,IAAsB;AAAA,EAC1B,SAASC,EAAO;AAAA,EAChB,QAAQA,EAAO;AAAA,EACf,QAAQA,EAAO;AAAA,EACf,kBAAkBA,EAAO;AAAA,EACzB,iBAAiBA,EAAO;AAAA,EACxB,iBAAiBA,EAAO;AAC1B,GAEMC,IAAmB;AAAA,EACvB,SAASD,EAAO;AAAA,EAChB,QAAQA,EAAO;AAAA,EACf,QAAQA,EAAO;AACjB,GACME,IAAmB;AAAA,EACvB,SAASF,EAAO;AAAA,EAChB,QAAQA,EAAO;AAAA,EACf,QAAQA,EAAO;AACjB,GAEMG,IAAwEC;AAAA,EAC5E,SAA6B,EAAE,QAAAC,GAAQ,gBAAAC,GAAgB,QAAAC,GAAQ,UAAAC,KAAY;;AACnE,UAAAC,KAAkBC,IAAA,iCAAQ,YAAR,gBAAAA,EAAiB,SACnCC,IAAkB,CAAC,EAAC,yBAAQ,UAC5B;AAAA,MACJ,cAAcC;AAAA,MACd,cAAAC;AAAA,MACA,gBAAgBC;AAAA,IAAA,IACdC;AAAA,MACFR;AAAA,MACAF;AAAA,MACA;AAAA,MACAN;AAAA,MACAO;AAAA,IAAA,GAEI,EAAE,cAAcU,GAAqB,gBAAgBC,EAAgB,IAAAF;AAAA,MACzER;AAAA,MACAT;AAAA,MACA;AAAA,MACAG;AAAA,MACA;AAAA,MACAQ,IAAkB,WAAW;AAAA,IAAA,GAEzB,EAAE,cAAcS,GAAqB,gBAAgBC,EAAgB,IAAAJ;AAAA,MACzER;AAAA,MACAa,EAAI;AAAA,MACJ;AAAA,MACAlB;AAAA,MACA;AAAA,MACAS,IAAkB,WAAW;AAAA,IAAA;AAG/B,IAAAU,EAAU,MAAM;AACd,MAAKZ,KACHa,EAAyBf,CAAM;AAAA,IACjC,GACC,CAACE,GAAiBF,CAAM,CAAC;AAEtB,UAAAgB,IAAeC,EAAQ,MAEzBZ,MAA2B,YAC3BI,MAAwB,YACxBE,MAAwB,WAEjB,WAIPN,MAA2B,WAC3BI,MAAwB,WACxBE,MAAwB,UAEjB,UAGF,WACN,CAACN,GAAwBI,GAAqBE,CAAmB,CAAC,GAE/DO,IAAiBC,EAAY,MAAM;AACvC,MAAId,MAA2B,WACdE,KAGbE,MAAwB,WACdC,KAGVC,MAAwB,WACdC;IACd,GACC;AAAA,MACDP;AAAA,MACAE;AAAA,MACAG;AAAA,MACAE;AAAA,MACAH;AAAA,MACAE;AAAA,IAAA,CACD,GAEKS,IAAeH,EAA0C,MACzDD,MAAiB,WACZ;AAAA,MACL,cAAAA;AAAA,MACA,eAAelB;AAAA,MACf,cAAAQ;AAAA,MACA,gBAAAY;AAAA,IAAA,IAIG;AAAA,MACL,cAAAF;AAAA,MACA,eAAelB;AAAA,MACf,cAAc;AAAA,MACd,gBAAAoB;AAAA,IAAA,GAED,CAACpB,GAAQoB,GAAgBZ,GAAcU,CAAY,CAAC;AAEvD,6BACGK,EAA2B,UAA3B,EAAoC,OAAOD,GACzC,UAAAnB,EACH,CAAA;AAAA,EAEJ;AACF,GAEAqB,IAAe1B;"}
@@ -1,22 +1,22 @@
1
- const t = 792, e = 1008, s = 30, T = 32, n = 28, I = 48, E = 42, c = 16, a = 56, _ = 0, o = 360, O = 52, N = { left: 0, top: 56 }, R = [
1
+ const t = 792, e = 1008, s = 30, T = 32, n = 28, I = 48, E = 42, a = 16, c = 40, _ = 0, o = 360, O = { left: 0, top: 56 }, N = [
2
2
  "practice-basic-optional",
3
3
  "practice-regular-optional",
4
4
  "advanced-we-do",
5
5
  "advanced-your-turn",
6
6
  "advanced-explore",
7
7
  "advanced-practice"
8
- ], A = 2e3, S = [
8
+ ], R = 2e3, A = [
9
9
  { name: "CORRECT", url: "https://static.qumath.in/static/intel-student/cmpress/correct-zap.mp3" },
10
10
  {
11
11
  name: "INCORRECT",
12
12
  url: "https://static.qumath.in/static/intel-student/cmpress/incorrect-zap.mp3"
13
13
  }
14
- ], i = [
14
+ ], S = [
15
15
  {
16
16
  name: "VALIDATE",
17
17
  url: "https://wmznlejcfq.s3.ap-southeast-1.amazonaws.com/static/intel-student/cmpress/validate-zap.mp3"
18
18
  }
19
- ], l = [
19
+ ], i = [
20
20
  {
21
21
  label: "Answered all the questions independently.",
22
22
  id: "E"
@@ -31,20 +31,19 @@ const t = 792, e = 1008, s = 30, T = 32, n = 28, I = 48, E = 42, c = 16, a = 56,
31
31
  }
32
32
  ];
33
33
  export {
34
- a as ACTION_BAR_HEIGHT,
35
- A as CLOZE_FORMULA_RESPONSE_LIMIT,
36
- N as DESMOS_CALC_POSITION,
37
- l as EXIT_TICKET_RATING_OPTIONS,
34
+ c as ACTION_BAR_HEIGHT,
35
+ R as CLOZE_FORMULA_RESPONSE_LIMIT,
36
+ O as DESMOS_CALC_POSITION,
37
+ i as EXIT_TICKET_RATING_OPTIONS,
38
38
  s as INTERSECTION_OBSERVER_THRESHOLD_POINTS,
39
39
  T as INTERSECTION_OBSERVER_THROTTLE_TIME,
40
40
  o as LEARNOSITY_KEYBOARD_HEIGHT,
41
- R as OPTIONAL_ITEM_TYPES,
42
- c as QUESTIONS_GAP,
41
+ N as OPTIONAL_ITEM_TYPES,
42
+ a as QUESTIONS_GAP,
43
43
  t as QUESTION_WIDTH,
44
- O as SIDEBAR_WIDTH,
45
44
  e as SPLIT_QUESTION_WIDTH,
46
- S as SYSTEM_VALIDATION_AUDIO_LIST,
47
- i as TEACHER_VALIDATION_AUDIO_LIST,
45
+ A as SYSTEM_VALIDATION_AUDIO_LIST,
46
+ S as TEACHER_VALIDATION_AUDIO_LIST,
48
47
  E as TOP_NAVIGATION_ARROW_WIDTH,
49
48
  I as TOP_NAVIGATION_HEIGHT,
50
49
  _ as WORKSHEET_CONTAINER_BORDER_RADIUS,
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../src/features/worksheet/worksheet/constants.ts"],"sourcesContent":["import type { QUESTIONS_RATING, TItemType } from './worksheet-types';\n\nexport const QUESTION_WIDTH = 792;\nexport const SPLIT_QUESTION_WIDTH = 1008; // 1024 - 16\nexport const INTERSECTION_OBSERVER_THRESHOLD_POINTS = 30;\nexport const INTERSECTION_OBSERVER_THROTTLE_TIME = 32; // in ms, 2 frames\nexport const WORKSHEET_NUDGE_BANNER_HEIGHT = 28;\n\nexport const TOP_NAVIGATION_HEIGHT = 48;\nexport const TOP_NAVIGATION_ARROW_WIDTH = 42;\n\nexport const QUESTIONS_GAP = 16;\nexport const ACTION_BAR_HEIGHT = 56;\nexport const WORKSHEET_CONTAINER_BORDER_RADIUS = 0;\nexport const LEARNOSITY_KEYBOARD_HEIGHT = 360;\nexport const SIDEBAR_WIDTH = 52;\n\nexport const DESMOS_CALC_POSITION = { left: 0, top: 56 };\n\nexport const OPTIONAL_ITEM_TYPES: TItemType[] = [\n 'practice-basic-optional',\n 'practice-regular-optional',\n 'advanced-we-do',\n 'advanced-your-turn',\n 'advanced-explore',\n 'advanced-practice',\n];\nexport const CLOZE_FORMULA_RESPONSE_LIMIT = 2000;\n\nexport const SYSTEM_VALIDATION_AUDIO_LIST = [\n { name: 'CORRECT', url: 'https://static.qumath.in/static/intel-student/cmpress/correct-zap.mp3' },\n {\n name: 'INCORRECT',\n url: 'https://static.qumath.in/static/intel-student/cmpress/incorrect-zap.mp3',\n },\n];\nexport const TEACHER_VALIDATION_AUDIO_LIST = [\n {\n name: 'VALIDATE',\n url: 'https://wmznlejcfq.s3.ap-southeast-1.amazonaws.com/static/intel-student/cmpress/validate-zap.mp3',\n },\n];\n\nexport const EXIT_TICKET_RATING_OPTIONS: Array<{\n label: string;\n id: keyof typeof QUESTIONS_RATING;\n}> = [\n {\n label: 'Answered all the questions independently.',\n id: 'E',\n },\n {\n label: 'Needed some help to answer the questions.',\n id: 'S',\n },\n {\n label: 'Needed a lot of help to answer the questions.',\n id: 'H',\n },\n];\n"],"names":["QUESTION_WIDTH","SPLIT_QUESTION_WIDTH","INTERSECTION_OBSERVER_THRESHOLD_POINTS","INTERSECTION_OBSERVER_THROTTLE_TIME","WORKSHEET_NUDGE_BANNER_HEIGHT","TOP_NAVIGATION_HEIGHT","TOP_NAVIGATION_ARROW_WIDTH","QUESTIONS_GAP","ACTION_BAR_HEIGHT","WORKSHEET_CONTAINER_BORDER_RADIUS","LEARNOSITY_KEYBOARD_HEIGHT","SIDEBAR_WIDTH","DESMOS_CALC_POSITION","OPTIONAL_ITEM_TYPES","CLOZE_FORMULA_RESPONSE_LIMIT","SYSTEM_VALIDATION_AUDIO_LIST","TEACHER_VALIDATION_AUDIO_LIST","EXIT_TICKET_RATING_OPTIONS"],"mappings":"AAEO,MAAMA,IAAiB,KACjBC,IAAuB,MACvBC,IAAyC,IACzCC,IAAsC,IACtCC,IAAgC,IAEhCC,IAAwB,IACxBC,IAA6B,IAE7BC,IAAgB,IAChBC,IAAoB,IACpBC,IAAoC,GACpCC,IAA6B,KAC7BC,IAAgB,IAEhBC,IAAuB,EAAE,MAAM,GAAG,KAAK,GAAG,GAE1CC,IAAmC;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GACaC,IAA+B,KAE/BC,IAA+B;AAAA,EAC1C,EAAE,MAAM,WAAW,KAAK,wEAAwE;AAAA,EAChG;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,EACP;AACF,GACaC,IAAgC;AAAA,EAC3C;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,EACP;AACF,GAEaC,IAGR;AAAA,EACH;AAAA,IACE,OAAO;AAAA,IACP,IAAI;AAAA,EACN;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,IAAI;AAAA,EACN;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,IAAI;AAAA,EACN;AACF;"}
1
+ {"version":3,"file":"constants.js","sources":["../../../../src/features/worksheet/worksheet/constants.ts"],"sourcesContent":["import type { QUESTIONS_RATING, TItemType } from './worksheet-types';\n\nexport const QUESTION_WIDTH = 792;\nexport const SPLIT_QUESTION_WIDTH = 1008; // 1024 - 16\nexport const INTERSECTION_OBSERVER_THRESHOLD_POINTS = 30;\nexport const INTERSECTION_OBSERVER_THROTTLE_TIME = 32; // in ms, 2 frames\nexport const WORKSHEET_NUDGE_BANNER_HEIGHT = 28;\n\nexport const TOP_NAVIGATION_HEIGHT = 48;\nexport const TOP_NAVIGATION_ARROW_WIDTH = 42;\n\nexport const QUESTIONS_GAP = 16;\nexport const ACTION_BAR_HEIGHT = 40;\nexport const WORKSHEET_CONTAINER_BORDER_RADIUS = 0;\nexport const LEARNOSITY_KEYBOARD_HEIGHT = 360;\n\nexport const DESMOS_CALC_POSITION = { left: 0, top: 56 };\n\nexport const OPTIONAL_ITEM_TYPES: TItemType[] = [\n 'practice-basic-optional',\n 'practice-regular-optional',\n 'advanced-we-do',\n 'advanced-your-turn',\n 'advanced-explore',\n 'advanced-practice',\n];\nexport const CLOZE_FORMULA_RESPONSE_LIMIT = 2000;\n\nexport const SYSTEM_VALIDATION_AUDIO_LIST = [\n { name: 'CORRECT', url: 'https://static.qumath.in/static/intel-student/cmpress/correct-zap.mp3' },\n {\n name: 'INCORRECT',\n url: 'https://static.qumath.in/static/intel-student/cmpress/incorrect-zap.mp3',\n },\n];\nexport const TEACHER_VALIDATION_AUDIO_LIST = [\n {\n name: 'VALIDATE',\n url: 'https://wmznlejcfq.s3.ap-southeast-1.amazonaws.com/static/intel-student/cmpress/validate-zap.mp3',\n },\n];\n\nexport const EXIT_TICKET_RATING_OPTIONS: Array<{\n label: string;\n id: keyof typeof QUESTIONS_RATING;\n}> = [\n {\n label: 'Answered all the questions independently.',\n id: 'E',\n },\n {\n label: 'Needed some help to answer the questions.',\n id: 'S',\n },\n {\n label: 'Needed a lot of help to answer the questions.',\n id: 'H',\n },\n];\n"],"names":["QUESTION_WIDTH","SPLIT_QUESTION_WIDTH","INTERSECTION_OBSERVER_THRESHOLD_POINTS","INTERSECTION_OBSERVER_THROTTLE_TIME","WORKSHEET_NUDGE_BANNER_HEIGHT","TOP_NAVIGATION_HEIGHT","TOP_NAVIGATION_ARROW_WIDTH","QUESTIONS_GAP","ACTION_BAR_HEIGHT","WORKSHEET_CONTAINER_BORDER_RADIUS","LEARNOSITY_KEYBOARD_HEIGHT","DESMOS_CALC_POSITION","OPTIONAL_ITEM_TYPES","CLOZE_FORMULA_RESPONSE_LIMIT","SYSTEM_VALIDATION_AUDIO_LIST","TEACHER_VALIDATION_AUDIO_LIST","EXIT_TICKET_RATING_OPTIONS"],"mappings":"AAEO,MAAMA,IAAiB,KACjBC,IAAuB,MACvBC,IAAyC,IACzCC,IAAsC,IACtCC,IAAgC,IAEhCC,IAAwB,IACxBC,IAA6B,IAE7BC,IAAgB,IAChBC,IAAoB,IACpBC,IAAoC,GACpCC,IAA6B,KAE7BC,IAAuB,EAAE,MAAM,GAAG,KAAK,GAAG,GAE1CC,IAAmC;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GACaC,IAA+B,KAE/BC,IAA+B;AAAA,EAC1C,EAAE,MAAM,WAAW,KAAK,wEAAwE;AAAA,EAChG;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,EACP;AACF,GACaC,IAAgC;AAAA,EAC3C;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,EACP;AACF,GAEaC,IAGR;AAAA,EACH;AAAA,IACE,OAAO;AAAA,IACP,IAAI;AAAA,EACN;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,IAAI;AAAA,EACN;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,IAAI;AAAA,EACN;AACF;"}