@cuemath/leap 4.0.3 → 4.0.4
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.
- package/dist/features/math-fit/math-fit-report/comps/score-section/score-section.js +43 -42
- package/dist/features/math-fit/math-fit-report/comps/score-section/score-section.js.map +1 -1
- package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.js +5 -5
- package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.js.map +1 -1
- package/dist/features/timeline/daily-timeline/comps/daily-timeline-items/daily-timeline-items.js +38 -37
- package/dist/features/timeline/daily-timeline/comps/daily-timeline-items/daily-timeline-items.js.map +1 -1
- package/dist/features/ui/tag/tag-styled.js +17 -15
- package/dist/features/ui/tag/tag-styled.js.map +1 -1
- package/dist/features/ui/tag/tag.js +7 -5
- package/dist/features/ui/tag/tag.js.map +1 -1
- package/dist/features/ui/theme/get-theme.js +14 -12
- package/dist/features/ui/theme/get-theme.js.map +1 -1
- package/dist/features/ui/theme/tag.js +36 -0
- package/dist/features/ui/theme/tag.js.map +1 -0
- package/dist/features/ui/theme/text.js +0 -15
- package/dist/features/ui/theme/text.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-controller/student/controller-lesson-v3_1.js +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-controller/student/controller-lesson-v3_1.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar-styled.js +1 -0
- package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar-styled.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar.js +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar.js.map +1 -1
- package/dist/index.d.ts +27 -3
- package/package.json +1 -1
|
@@ -1,63 +1,64 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { memo as X, useCallback as _, Fragment as
|
|
3
|
-
import { useTheme as
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
1
|
+
import { jsxs as r, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { memo as X, useCallback as _, Fragment as w } from "react";
|
|
3
|
+
import { useTheme as y } from "styled-components";
|
|
4
|
+
import G from "../../../../ui/buttons/button/button.js";
|
|
5
|
+
import o from "../../../../ui/layout/flex-view.js";
|
|
6
|
+
import d from "../../../../ui/text/text.js";
|
|
7
|
+
import L from "../score-badge/score-badge.js";
|
|
8
8
|
import { Divider as K } from "./score-section-styled.js";
|
|
9
9
|
import g from "../../../../ui/separator/separator.js";
|
|
10
|
-
import { getQuestionStatusBgColor as
|
|
10
|
+
import { getQuestionStatusBgColor as j } from "../../math-fit-report-helpers.js";
|
|
11
11
|
import { EQuestionState as u } from "../../../math-fit-overview/math-fit-overview-types.js";
|
|
12
|
-
import { EDeviceType as
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
import { EDeviceType as k } from "../../../../ui/theme/constants.js";
|
|
13
|
+
import M from "../../../../ui/tag/tag.js";
|
|
14
|
+
const V = X(function({
|
|
15
|
+
onReviewSection: l,
|
|
16
|
+
section: m,
|
|
17
|
+
sheet: f,
|
|
18
|
+
compactView: s = !1,
|
|
19
|
+
showReviewButton: x = !0
|
|
19
20
|
}) {
|
|
20
21
|
const {
|
|
21
|
-
title:
|
|
22
|
-
score:
|
|
22
|
+
title: b,
|
|
23
|
+
score: p,
|
|
23
24
|
scoreChange: C,
|
|
24
|
-
sessionId:
|
|
25
|
+
sessionId: $,
|
|
25
26
|
isIncomplete: t = !1,
|
|
26
27
|
sectionNumber: T,
|
|
27
|
-
topics:
|
|
28
|
-
} =
|
|
29
|
-
!t &&
|
|
30
|
-
}, [t,
|
|
31
|
-
return /* @__PURE__ */ o
|
|
32
|
-
/* @__PURE__ */ o
|
|
33
|
-
/* @__PURE__ */
|
|
34
|
-
|
|
28
|
+
topics: I
|
|
29
|
+
} = m, { device: A } = y(), c = A <= k.MOBILE, h = [...I ?? []].sort((i, a) => i.miniGoal.order - a.miniGoal.order), E = c || s ? "column" : "row", S = c || s ? "" : "center", B = c || s ? 0.5 : 0, D = _(() => {
|
|
30
|
+
!t && m.sheet && l && l(f, $);
|
|
31
|
+
}, [t, l, m.sheet, f, $]);
|
|
32
|
+
return /* @__PURE__ */ r(o, { children: [
|
|
33
|
+
/* @__PURE__ */ r(o, { $flexDirection: "row", $alignItems: "center", children: [
|
|
34
|
+
/* @__PURE__ */ r(d, { $renderAs: "ab2-bold", $color: "BLACK_1", children: [
|
|
35
|
+
b,
|
|
35
36
|
":"
|
|
36
37
|
] }),
|
|
37
38
|
/* @__PURE__ */ e(g, { width: 4 }),
|
|
38
|
-
t ? /* @__PURE__ */ e(
|
|
39
|
+
t ? /* @__PURE__ */ e(M, { text: "INCOMPLETE", size: "8px" }) : p && /* @__PURE__ */ e(L, { score: p, maxScore: 10, scoreChange: C })
|
|
39
40
|
] }),
|
|
40
|
-
/* @__PURE__ */ e(
|
|
41
|
-
/* @__PURE__ */
|
|
42
|
-
|
|
41
|
+
/* @__PURE__ */ e(o, { $flexRowGapX: 0.5, $gapX: 0.75, children: h.map((i, a) => /* @__PURE__ */ r(w, { children: [
|
|
42
|
+
/* @__PURE__ */ r(
|
|
43
|
+
o,
|
|
43
44
|
{
|
|
44
45
|
$flexDirection: E,
|
|
45
46
|
$justifyContent: "space-between",
|
|
46
|
-
$alignItems:
|
|
47
|
-
$flexRowGapX:
|
|
47
|
+
$alignItems: S,
|
|
48
|
+
$flexRowGapX: B,
|
|
48
49
|
children: [
|
|
49
|
-
/* @__PURE__ */ e(
|
|
50
|
-
/* @__PURE__ */ e(
|
|
51
|
-
|
|
50
|
+
/* @__PURE__ */ e(d, { $renderAs: "ub2", $color: t ? "BLACK_T_38" : "BLACK_1", children: i.name }),
|
|
51
|
+
/* @__PURE__ */ e(o, { $flexGapX: 0.5, $flexDirection: "row", $flexWrap: !0, children: i.miniGoal.items.map((n) => /* @__PURE__ */ e(
|
|
52
|
+
o,
|
|
52
53
|
{
|
|
53
54
|
$heightX: 1.25,
|
|
54
55
|
$gutterX: 0.5,
|
|
55
56
|
$alignItems: "center",
|
|
56
57
|
$justifyContent: "center",
|
|
57
58
|
$borderRadiusX: 1,
|
|
58
|
-
$background:
|
|
59
|
-
children: /* @__PURE__ */
|
|
60
|
-
|
|
59
|
+
$background: j(n.state),
|
|
60
|
+
children: /* @__PURE__ */ r(
|
|
61
|
+
d,
|
|
61
62
|
{
|
|
62
63
|
$renderAs: "ub4",
|
|
63
64
|
$color: n.state === u.SKIPPED || n.state === u.UNATTEMPTED ? "BLACK_T_38" : "WHITE",
|
|
@@ -73,12 +74,12 @@ const Y = X(function({
|
|
|
73
74
|
]
|
|
74
75
|
}
|
|
75
76
|
),
|
|
76
|
-
|
|
77
|
+
a !== h.length - 1 && /* @__PURE__ */ e(K, {})
|
|
77
78
|
] }, i.name)) }),
|
|
78
|
-
|
|
79
|
+
x && /* @__PURE__ */ r(o, { $alignItems: "center", children: [
|
|
79
80
|
/* @__PURE__ */ e(g, { heightX: 0.75 }),
|
|
80
81
|
/* @__PURE__ */ e(
|
|
81
|
-
|
|
82
|
+
G,
|
|
82
83
|
{
|
|
83
84
|
label: `Review Section ${T}`,
|
|
84
85
|
renderAs: t ? "secondary" : "primary",
|
|
@@ -91,6 +92,6 @@ const Y = X(function({
|
|
|
91
92
|
] });
|
|
92
93
|
});
|
|
93
94
|
export {
|
|
94
|
-
|
|
95
|
+
V as default
|
|
95
96
|
};
|
|
96
97
|
//# sourceMappingURL=score-section.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"score-section.js","sources":["../../../../../../src/features/math-fit/math-fit-report/comps/score-section/score-section.tsx"],"sourcesContent":["import { Fragment, memo, useCallback, type FC } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport Button from '../../../../ui/buttons/button/button';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport ScoreBadge from '../score-badge/score-badge';\nimport type { IScoreSectionProps } from './score-section-types';\nimport * as Styled from './score-section-styled';\nimport Separator from '../../../../ui/separator/separator';\nimport { getQuestionStatusBgColor } from '../../math-fit-report-helpers';\nimport { EQuestionState } from '../../../math-fit-overview/math-fit-overview-types';\nimport { EDeviceType } from '../../../../ui/theme/constants';\n\nconst ScoreSection: FC<IScoreSectionProps> = memo(function ScoreSection({\n onReviewSection,\n section,\n sheet,\n compactView = false,\n showReviewButton = true,\n}) {\n const {\n title,\n score,\n scoreChange,\n sessionId,\n isIncomplete = false,\n sectionNumber,\n topics,\n } = section;\n\n const { device } = useTheme();\n const isMobile = device <= EDeviceType.MOBILE;\n\n const sortedTopics = [...(topics ?? [])].sort((a, b) => a.miniGoal.order - b.miniGoal.order);\n const layoutDirection = isMobile || compactView ? 'column' : 'row';\n const alignment = isMobile || compactView ? '' : 'center';\n const gap = isMobile || compactView ? 0.5 : 0;\n\n const onClickReview = useCallback(() => {\n if (!isIncomplete && section.sheet && onReviewSection) {\n onReviewSection(sheet, sessionId);\n }\n }, [isIncomplete, onReviewSection, section.sheet, sheet, sessionId]);\n\n return (\n <FlexView>\n <FlexView $flexDirection=\"row\" $alignItems=\"center\">\n <Text $renderAs=\"ab2-bold\" $color=\"BLACK_1\">\n {title}:\n </Text>\n <Separator width={4} />\n {isIncomplete ? (\n <
|
|
1
|
+
{"version":3,"file":"score-section.js","sources":["../../../../../../src/features/math-fit/math-fit-report/comps/score-section/score-section.tsx"],"sourcesContent":["import { Fragment, memo, useCallback, type FC } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport Button from '../../../../ui/buttons/button/button';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport ScoreBadge from '../score-badge/score-badge';\nimport type { IScoreSectionProps } from './score-section-types';\nimport * as Styled from './score-section-styled';\nimport Separator from '../../../../ui/separator/separator';\nimport { getQuestionStatusBgColor } from '../../math-fit-report-helpers';\nimport { EQuestionState } from '../../../math-fit-overview/math-fit-overview-types';\nimport { EDeviceType } from '../../../../ui/theme/constants';\nimport Tag from '../../../../ui/tag/tag';\n\nconst ScoreSection: FC<IScoreSectionProps> = memo(function ScoreSection({\n onReviewSection,\n section,\n sheet,\n compactView = false,\n showReviewButton = true,\n}) {\n const {\n title,\n score,\n scoreChange,\n sessionId,\n isIncomplete = false,\n sectionNumber,\n topics,\n } = section;\n\n const { device } = useTheme();\n const isMobile = device <= EDeviceType.MOBILE;\n\n const sortedTopics = [...(topics ?? [])].sort((a, b) => a.miniGoal.order - b.miniGoal.order);\n const layoutDirection = isMobile || compactView ? 'column' : 'row';\n const alignment = isMobile || compactView ? '' : 'center';\n const gap = isMobile || compactView ? 0.5 : 0;\n\n const onClickReview = useCallback(() => {\n if (!isIncomplete && section.sheet && onReviewSection) {\n onReviewSection(sheet, sessionId);\n }\n }, [isIncomplete, onReviewSection, section.sheet, sheet, sessionId]);\n\n return (\n <FlexView>\n <FlexView $flexDirection=\"row\" $alignItems=\"center\">\n <Text $renderAs=\"ab2-bold\" $color=\"BLACK_1\">\n {title}:\n </Text>\n <Separator width={4} />\n {isIncomplete ? (\n <Tag text=\"INCOMPLETE\" size=\"8px\" />\n ) : (\n score && <ScoreBadge score={score} maxScore={10} scoreChange={scoreChange} />\n )}\n </FlexView>\n <FlexView $flexRowGapX={0.5} $gapX={0.75}>\n {sortedTopics.map((topic, index) => (\n <Fragment key={topic.name}>\n <FlexView\n $flexDirection={layoutDirection}\n $justifyContent=\"space-between\"\n $alignItems={alignment}\n $flexRowGapX={gap}\n >\n <Text $renderAs=\"ub2\" $color={isIncomplete ? 'BLACK_T_38' : 'BLACK_1'}>\n {topic.name}\n </Text>\n <FlexView $flexGapX={0.5} $flexDirection=\"row\" $flexWrap>\n {topic.miniGoal.items.map(question => (\n <FlexView\n key={question.item_reference}\n $heightX={1.25}\n $gutterX={0.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $borderRadiusX={1}\n $background={getQuestionStatusBgColor(question.state)}\n >\n <Text\n $renderAs=\"ub4\"\n $color={\n question.state === EQuestionState.SKIPPED ||\n question.state === EQuestionState.UNATTEMPTED\n ? 'BLACK_T_38'\n : 'WHITE'\n }\n >\n Q{question.order}\n </Text>\n </FlexView>\n ))}\n </FlexView>\n </FlexView>\n {index !== sortedTopics.length - 1 && <Styled.Divider />}\n </Fragment>\n ))}\n </FlexView>\n {showReviewButton && (\n <FlexView $alignItems=\"center\">\n <Separator heightX={0.75} />\n <Button\n label={`Review Section ${sectionNumber}`}\n renderAs={isIncomplete ? 'secondary' : 'primary'}\n size=\"small\"\n onClick={onClickReview}\n disabled={isIncomplete}\n />\n </FlexView>\n )}\n </FlexView>\n );\n});\n\nexport default ScoreSection;\n"],"names":["ScoreSection","memo","onReviewSection","section","sheet","compactView","showReviewButton","title","score","scoreChange","sessionId","isIncomplete","sectionNumber","topics","device","useTheme","isMobile","EDeviceType","sortedTopics","a","b","layoutDirection","alignment","gap","onClickReview","useCallback","FlexView","jsxs","Text","jsx","Separator","Tag","ScoreBadge","topic","index","Fragment","question","getQuestionStatusBgColor","EQuestionState","Styled.Divider","Button"],"mappings":"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"}
|
package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { memo as
|
|
3
|
-
import
|
|
4
|
-
const a =
|
|
5
|
-
return !
|
|
1
|
+
import { jsx as n, Fragment as m } from "react/jsx-runtime";
|
|
2
|
+
import { memo as o } from "react";
|
|
3
|
+
import t from "../../../../../ui/tag/tag.js";
|
|
4
|
+
const a = o(function({ tags: e }) {
|
|
5
|
+
return !e || e.length === 0 ? null : /* @__PURE__ */ n(m, { children: e.map((r) => /* @__PURE__ */ n(t, { text: r, size: "12px", shape: "curved" }, r)) });
|
|
6
6
|
});
|
|
7
7
|
export {
|
|
8
8
|
a as default
|
package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tags-render.js","sources":["../../../../../../../src/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.tsx"],"sourcesContent":["import { type FC, memo } from 'react';\n\nimport Tag from '../../../../../ui/tag/tag';\n\nconst TagsRenderer: FC<{ tags: string[] }> = memo(function TagsRenderer({ tags }) {\n if (!tags || tags.length === 0) return null;\n\n return (\n <>\n {tags.map(tag => (\n <Tag key={tag} text={tag}
|
|
1
|
+
{"version":3,"file":"tags-render.js","sources":["../../../../../../../src/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.tsx"],"sourcesContent":["import { type FC, memo } from 'react';\n\nimport Tag from '../../../../../ui/tag/tag';\n\nconst TagsRenderer: FC<{ tags: string[] }> = memo(function TagsRenderer({ tags }) {\n if (!tags || tags.length === 0) return null;\n\n return (\n <>\n {tags.map(tag => (\n <Tag key={tag} text={tag} size=\"12px\" shape=\"curved\" />\n ))}\n </>\n );\n});\n\nexport default TagsRenderer;\n"],"names":["TagsRenderer","memo","tags","jsx","Fragment","tag","Tag"],"mappings":";;;AAIA,MAAMA,IAAuCC,EAAK,SAAsB,EAAE,MAAAC,KAAQ;AAChF,SAAI,CAACA,KAAQA,EAAK,WAAW,IAAU,OAIlC,gBAAAC,EAAAC,GAAA,EAAA,UAAAF,EAAK,IAAI,CAAAG,wBACPC,GAAc,EAAA,MAAMD,GAAK,MAAK,QAAO,OAAM,YAAlCA,CAA2C,CACtD,EACH,CAAA;AAEJ,CAAC;"}
|
package/dist/features/timeline/daily-timeline/comps/daily-timeline-items/daily-timeline-items.js
CHANGED
|
@@ -1,50 +1,51 @@
|
|
|
1
|
-
import { jsx as e, jsxs as m, Fragment as
|
|
2
|
-
import { memo as y, useState as
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
1
|
+
import { jsx as e, jsxs as m, Fragment as x } from "react/jsx-runtime";
|
|
2
|
+
import { memo as y, useState as A, useMemo as L, useCallback as b } from "react";
|
|
3
|
+
import D from "../../../../../assets/line-icons/icons/plus.js";
|
|
4
|
+
import w from "../../../../ui/accordion-section/accordion-section.js";
|
|
5
|
+
import i from "../../../../ui/layout/flex-view.js";
|
|
6
|
+
import S from "../../../../../assets/line-icons/icons/minus.js";
|
|
7
7
|
import N from "../../../../ui/image/image.js";
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import { Wrapper as
|
|
11
|
-
import { getTimelineCardIcon as
|
|
12
|
-
import { useUIContext as
|
|
13
|
-
import { DAILY_TIMELINE_ANALYTICS_EVENTS as
|
|
8
|
+
import V from "../../../../ui/text/text.js";
|
|
9
|
+
import j from "../accordion-item/accordion-item.js";
|
|
10
|
+
import { Wrapper as k, TagContainer as M, SectionFooter as X, Card as B } from "./daily-timeline-items-styled.js";
|
|
11
|
+
import { getTimelineCardIcon as P } from "../utils.js";
|
|
12
|
+
import { useUIContext as W } from "../../../../ui/context/context.js";
|
|
13
|
+
import { DAILY_TIMELINE_ANALYTICS_EVENTS as h } from "../../daily-timeline-events.js";
|
|
14
|
+
import z from "../../../../ui/tag/tag.js";
|
|
14
15
|
const F = y((I) => {
|
|
15
16
|
const {
|
|
16
17
|
type: t,
|
|
17
|
-
summary:
|
|
18
|
+
summary: r,
|
|
18
19
|
cards: n,
|
|
19
20
|
onPuzzleClick: f,
|
|
20
|
-
onReviewClick:
|
|
21
|
+
onReviewClick: u,
|
|
21
22
|
courseStream: s,
|
|
22
23
|
shouldShowTag: E,
|
|
23
|
-
userType:
|
|
24
|
-
isLastItem:
|
|
24
|
+
userType: $,
|
|
25
|
+
isLastItem: g,
|
|
25
26
|
fromDate: l,
|
|
26
27
|
studentId: c
|
|
27
|
-
} = I, [
|
|
28
|
+
} = I, [C, _] = A(!1), d = L(() => P(t), [t]), { onEvent: a } = W(), T = b(
|
|
28
29
|
(o) => {
|
|
29
|
-
|
|
30
|
-
o ?
|
|
30
|
+
_(o), a(
|
|
31
|
+
o ? h.TIMELINE_VIEW_EXPANDED : h.TIMELINE_VIEW_COLLAPSED,
|
|
31
32
|
{
|
|
32
33
|
timeline_date: l,
|
|
33
34
|
student_id: c,
|
|
34
35
|
timeline_section_type: t,
|
|
35
|
-
timeline_section_subject:
|
|
36
|
+
timeline_section_subject: r
|
|
36
37
|
}
|
|
37
38
|
);
|
|
38
39
|
},
|
|
39
|
-
[l, a, c, t,
|
|
40
|
+
[l, a, c, t, r]
|
|
40
41
|
);
|
|
41
|
-
return /* @__PURE__ */ e(
|
|
42
|
-
|
|
42
|
+
return /* @__PURE__ */ e(k, { $borderColor: "BLACK_1", $background: "WHITE", $shouldAddBorder: g, children: /* @__PURE__ */ e(
|
|
43
|
+
w,
|
|
43
44
|
{
|
|
44
|
-
headerElement: /* @__PURE__ */ m(
|
|
45
|
-
E && s && /* @__PURE__ */ e(
|
|
45
|
+
headerElement: /* @__PURE__ */ m(i, { children: [
|
|
46
|
+
E && s && /* @__PURE__ */ e(M, { $position: "absolute", children: /* @__PURE__ */ e(z, { size: "8px", text: s }) }),
|
|
46
47
|
/* @__PURE__ */ m(
|
|
47
|
-
|
|
48
|
+
i,
|
|
48
49
|
{
|
|
49
50
|
$flexDirection: "row",
|
|
50
51
|
$alignItems: "center",
|
|
@@ -54,42 +55,42 @@ const F = y((I) => {
|
|
|
54
55
|
$gapX: 1.32,
|
|
55
56
|
children: [
|
|
56
57
|
/* @__PURE__ */ m(
|
|
57
|
-
|
|
58
|
+
i,
|
|
58
59
|
{
|
|
59
60
|
$flexDirection: "row",
|
|
60
61
|
$alignItems: "center",
|
|
61
62
|
$justifyContent: "center",
|
|
62
63
|
$flexGapX: 1.125,
|
|
63
64
|
children: [
|
|
64
|
-
/* @__PURE__ */ e(
|
|
65
|
-
/* @__PURE__ */ e(
|
|
65
|
+
/* @__PURE__ */ e(i, { children: d && /* @__PURE__ */ e(N, { src: d }) }),
|
|
66
|
+
/* @__PURE__ */ e(V, { $renderAs: "ab2", $color: "BLACK_1", children: r ?? "" })
|
|
66
67
|
]
|
|
67
68
|
}
|
|
68
69
|
),
|
|
69
|
-
|
|
70
|
+
C ? /* @__PURE__ */ e(S, { width: 20, height: 20 }) : /* @__PURE__ */ e(D, { width: 20, height: 20 })
|
|
70
71
|
]
|
|
71
72
|
}
|
|
72
73
|
)
|
|
73
74
|
] }),
|
|
74
|
-
bodyElement: n.length > 0 ? /* @__PURE__ */ e(
|
|
75
|
-
|
|
75
|
+
bodyElement: n.length > 0 ? /* @__PURE__ */ e(X, { $gutter: 32, children: n.map((o, p) => /* @__PURE__ */ e(
|
|
76
|
+
B,
|
|
76
77
|
{
|
|
77
78
|
$isLastCard: p === n.length - 1,
|
|
78
79
|
children: /* @__PURE__ */ e(
|
|
79
|
-
|
|
80
|
+
j,
|
|
80
81
|
{
|
|
81
82
|
card: o,
|
|
82
83
|
onPuzzleClick: f,
|
|
83
|
-
onReviewClick:
|
|
84
|
+
onReviewClick: u,
|
|
84
85
|
type: t,
|
|
85
|
-
userType:
|
|
86
|
+
userType: $
|
|
86
87
|
}
|
|
87
88
|
)
|
|
88
89
|
},
|
|
89
90
|
o.node_id ?? `card-${p}`
|
|
90
|
-
)) }) : /* @__PURE__ */ e(
|
|
91
|
+
)) }) : /* @__PURE__ */ e(x, {}),
|
|
91
92
|
defaultVisible: !1,
|
|
92
|
-
onBodyVisibilityChange:
|
|
93
|
+
onBodyVisibilityChange: T
|
|
93
94
|
}
|
|
94
95
|
) });
|
|
95
96
|
});
|
package/dist/features/timeline/daily-timeline/comps/daily-timeline-items/daily-timeline-items.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daily-timeline-items.js","sources":["../../../../../../src/features/timeline/daily-timeline/comps/daily-timeline-items/daily-timeline-items.tsx"],"sourcesContent":["import { memo, useCallback, useMemo, useState, type FC } from 'react';\n\nimport PlusIcon from '../../../../../assets/line-icons/icons/plus';\nimport AccordionSection from '../../../../ui/accordion-section/accordion-section';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport MinusIcon from '../../../../../assets/line-icons/icons/minus';\nimport Image from '../../../../ui/image/image';\nimport Text from '../../../../ui/text/text';\nimport AccordionItem from '../accordion-item/accordion-item';\nimport * as Styled from './daily-timeline-items-styled';\nimport { getTimelineCardIcon } from '../utils';\nimport { type IDailyTimelineItemsProps } from './daily-timeline-items.types';\nimport { useUIContext } from '../../../../ui/context/context';\nimport { DAILY_TIMELINE_ANALYTICS_EVENTS } from '../../daily-timeline-events';\n\nconst DailyTimelineItems: FC<IDailyTimelineItemsProps> = memo(props => {\n const {\n type,\n summary,\n cards,\n onPuzzleClick,\n onReviewClick,\n courseStream,\n shouldShowTag,\n userType,\n isLastItem,\n fromDate,\n studentId,\n } = props;\n const [isExpended, setIsExpended] = useState(false);\n\n const timelineIcon = useMemo(() => getTimelineCardIcon(type), [type]);\n const { onEvent: trackEvent } = useUIContext();\n\n const handleExpand = useCallback(\n (val: boolean) => {\n setIsExpended(val);\n trackEvent(\n val\n ? DAILY_TIMELINE_ANALYTICS_EVENTS.TIMELINE_VIEW_EXPANDED\n : DAILY_TIMELINE_ANALYTICS_EVENTS.TIMELINE_VIEW_COLLAPSED,\n {\n timeline_date: fromDate,\n student_id: studentId,\n timeline_section_type: type,\n timeline_section_subject: summary,\n },\n );\n },\n [fromDate, trackEvent, studentId, type, summary],\n );\n\n return (\n <Styled.Wrapper $borderColor=\"BLACK_1\" $background=\"WHITE\" $shouldAddBorder={isLastItem}>\n <AccordionSection\n headerElement={\n <FlexView>\n {shouldShowTag && courseStream && (\n <Styled.TagContainer $position=\"absolute\"
|
|
1
|
+
{"version":3,"file":"daily-timeline-items.js","sources":["../../../../../../src/features/timeline/daily-timeline/comps/daily-timeline-items/daily-timeline-items.tsx"],"sourcesContent":["import { memo, useCallback, useMemo, useState, type FC } from 'react';\n\nimport PlusIcon from '../../../../../assets/line-icons/icons/plus';\nimport AccordionSection from '../../../../ui/accordion-section/accordion-section';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport MinusIcon from '../../../../../assets/line-icons/icons/minus';\nimport Image from '../../../../ui/image/image';\nimport Text from '../../../../ui/text/text';\nimport AccordionItem from '../accordion-item/accordion-item';\nimport * as Styled from './daily-timeline-items-styled';\nimport { getTimelineCardIcon } from '../utils';\nimport { type IDailyTimelineItemsProps } from './daily-timeline-items.types';\nimport { useUIContext } from '../../../../ui/context/context';\nimport { DAILY_TIMELINE_ANALYTICS_EVENTS } from '../../daily-timeline-events';\nimport Tag from '../../../../ui/tag/tag';\n\nconst DailyTimelineItems: FC<IDailyTimelineItemsProps> = memo(props => {\n const {\n type,\n summary,\n cards,\n onPuzzleClick,\n onReviewClick,\n courseStream,\n shouldShowTag,\n userType,\n isLastItem,\n fromDate,\n studentId,\n } = props;\n const [isExpended, setIsExpended] = useState(false);\n\n const timelineIcon = useMemo(() => getTimelineCardIcon(type), [type]);\n const { onEvent: trackEvent } = useUIContext();\n\n const handleExpand = useCallback(\n (val: boolean) => {\n setIsExpended(val);\n trackEvent(\n val\n ? DAILY_TIMELINE_ANALYTICS_EVENTS.TIMELINE_VIEW_EXPANDED\n : DAILY_TIMELINE_ANALYTICS_EVENTS.TIMELINE_VIEW_COLLAPSED,\n {\n timeline_date: fromDate,\n student_id: studentId,\n timeline_section_type: type,\n timeline_section_subject: summary,\n },\n );\n },\n [fromDate, trackEvent, studentId, type, summary],\n );\n\n return (\n <Styled.Wrapper $borderColor=\"BLACK_1\" $background=\"WHITE\" $shouldAddBorder={isLastItem}>\n <AccordionSection\n headerElement={\n <FlexView>\n {shouldShowTag && courseStream && (\n <Styled.TagContainer $position=\"absolute\">\n <Tag size=\"8px\" text={courseStream} />\n </Styled.TagContainer>\n )}\n <FlexView\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"space-between\"\n $heightX={4}\n $gutterX={1}\n $gapX={1.32}\n >\n <FlexView\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $flexGapX={1.125}\n >\n <FlexView>{timelineIcon && <Image src={timelineIcon} />}</FlexView>\n <Text $renderAs=\"ab2\" $color=\"BLACK_1\">\n {summary ?? ''}\n </Text>\n </FlexView>\n {isExpended ? (\n <MinusIcon width={20} height={20} />\n ) : (\n <PlusIcon width={20} height={20} />\n )}\n </FlexView>\n </FlexView>\n }\n bodyElement={\n cards.length > 0 ? (\n <Styled.SectionFooter $gutter={32}>\n {cards.map((card, index) => (\n <Styled.Card\n key={card.node_id ?? `card-${index}`}\n $isLastCard={index === cards.length - 1}\n >\n <AccordionItem\n card={card}\n onPuzzleClick={onPuzzleClick}\n onReviewClick={onReviewClick}\n type={type}\n userType={userType}\n />\n </Styled.Card>\n ))}\n </Styled.SectionFooter>\n ) : (\n <></>\n )\n }\n defaultVisible={false}\n onBodyVisibilityChange={handleExpand}\n />\n </Styled.Wrapper>\n );\n});\n\nDailyTimelineItems.displayName = 'DailyTimelineItems';\n\nexport default DailyTimelineItems;\n"],"names":["DailyTimelineItems","memo","props","type","summary","cards","onPuzzleClick","onReviewClick","courseStream","shouldShowTag","userType","isLastItem","fromDate","studentId","isExpended","setIsExpended","useState","timelineIcon","useMemo","getTimelineCardIcon","trackEvent","useUIContext","handleExpand","useCallback","val","DAILY_TIMELINE_ANALYTICS_EVENTS","jsx","Styled.Wrapper","AccordionSection","FlexView","Styled.TagContainer","Tag","jsxs","Image","Text","MinusIcon","PlusIcon","Styled.SectionFooter","card","index","Styled.Card","AccordionItem","Fragment"],"mappings":"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"}
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
import
|
|
2
|
-
const
|
|
3
|
-
const {
|
|
4
|
-
colors: e,
|
|
5
|
-
layout: { gutter: r }
|
|
6
|
-
} = o;
|
|
1
|
+
import a from "styled-components";
|
|
2
|
+
const d = a.div(({ $size: e, $shape: i, theme: r }) => {
|
|
3
|
+
const { colors: t, tag: n } = r, o = n.sizes[e], p = o.borderRadius[i];
|
|
7
4
|
return `
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
5
|
+
display: flex;
|
|
6
|
+
width: fit-content;
|
|
7
|
+
padding: ${o.paddingTop}px ${o.paddingHorizontal}px 0px;
|
|
8
|
+
background-color: ${t.BLACK_5};
|
|
9
|
+
border-radius: ${p}px;
|
|
10
|
+
font-family: Athletics-Black;
|
|
11
|
+
font-size: ${o.fontSize}px;
|
|
12
|
+
line-height: ${o.lineHeight}px;
|
|
13
|
+
color: ${t.WHITE};
|
|
14
|
+
text-transform: uppercase;
|
|
15
|
+
letter-spacing: 0.5px;
|
|
16
|
+
white-space: nowrap;
|
|
17
|
+
`;
|
|
16
18
|
});
|
|
17
19
|
export {
|
|
18
|
-
|
|
20
|
+
d as Wrapper
|
|
19
21
|
};
|
|
20
22
|
//# sourceMappingURL=tag-styled.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-styled.js","sources":["../../../../src/features/ui/tag/tag-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport type {
|
|
1
|
+
{"version":3,"file":"tag-styled.js","sources":["../../../../src/features/ui/tag/tag-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport type { TTagSizes, TTagShapes } from '../types';\n\nconst Wrapper = styled.div<{\n $size: TTagSizes;\n $shape: TTagShapes;\n}>(({ $size, $shape, theme }) => {\n const { colors, tag } = theme;\n const config = tag.sizes[$size];\n const borderRadius = config.borderRadius[$shape];\n\n return `\n display: flex;\n width: fit-content;\n padding: ${config.paddingTop}px ${config.paddingHorizontal}px 0px;\n background-color: ${colors.BLACK_5};\n border-radius: ${borderRadius}px;\n font-family: Athletics-Black;\n font-size: ${config.fontSize}px;\n line-height: ${config.lineHeight}px;\n color: ${colors.WHITE};\n text-transform: uppercase;\n letter-spacing: 0.5px;\n white-space: nowrap;\n `;\n});\n\nexport { Wrapper };\n"],"names":["Wrapper","styled","$size","$shape","theme","colors","tag","config","borderRadius"],"mappings":";AAIM,MAAAA,IAAUC,EAAO,IAGpB,CAAC,EAAE,OAAAC,GAAO,QAAAC,GAAQ,OAAAC,QAAY;AACzB,QAAA,EAAE,QAAAC,GAAQ,KAAAC,EAAQ,IAAAF,GAClBG,IAASD,EAAI,MAAMJ,CAAK,GACxBM,IAAeD,EAAO,aAAaJ,CAAM;AAExC,SAAA;AAAA;AAAA;AAAA,eAGMI,EAAO,UAAU,MAAMA,EAAO,iBAAiB;AAAA,wBACtCF,EAAO,OAAO;AAAA,qBACjBG,CAAY;AAAA;AAAA,iBAEhBD,EAAO,QAAQ;AAAA,mBACbA,EAAO,UAAU;AAAA,aACvBF,EAAO,KAAK;AAAA;AAAA;AAAA;AAAA;AAKzB,CAAC;"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import
|
|
3
|
-
import { Wrapper as
|
|
4
|
-
const
|
|
1
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { memo as a } from "react";
|
|
3
|
+
import { Wrapper as m } from "./tag-styled.js";
|
|
4
|
+
const p = a(function({ text: r, size: o, shape: e = "square" }) {
|
|
5
|
+
return /* @__PURE__ */ t(m, { $size: o, $shape: e, children: r });
|
|
6
|
+
}), c = p;
|
|
5
7
|
export {
|
|
6
|
-
|
|
8
|
+
c as default
|
|
7
9
|
};
|
|
8
10
|
//# sourceMappingURL=tag.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag.js","sources":["../../../../src/features/ui/tag/tag.tsx"],"sourcesContent":["import { type FC } from 'react';\n\nimport
|
|
1
|
+
{"version":3,"file":"tag.js","sources":["../../../../src/features/ui/tag/tag.tsx"],"sourcesContent":["import { memo, type FC } from 'react';\n\nimport * as Styled from './tag-styled';\nimport type { ITagProps } from './tag-types';\n\nconst Tag: FC<ITagProps> = memo(function Tag({ text, size, shape = 'square' }) {\n return (\n <Styled.Wrapper $size={size} $shape={shape}>\n {text}\n </Styled.Wrapper>\n );\n});\n\nexport default Tag;\n"],"names":["Tag","memo","text","size","shape","jsx","Styled.Wrapper","Tag$1"],"mappings":";;;AAKA,MAAMA,IAAqBC,EAAK,SAAa,EAAE,MAAAC,GAAM,MAAAC,GAAM,OAAAC,IAAQ,YAAY;AAE3E,SAAA,gBAAAC,EAACC,GAAA,EAAe,OAAOH,GAAM,QAAQC,GAClC,UACHF,EAAA,CAAA;AAEJ,CAAC,GAEDK,IAAeP;"}
|
|
@@ -5,13 +5,14 @@ import g, { hues as f } from "./clrs.js";
|
|
|
5
5
|
import { getDevice as n } from "./get-device.js";
|
|
6
6
|
import p from "./input.js";
|
|
7
7
|
import u from "./layout.js";
|
|
8
|
-
import { getMediaQueries as
|
|
9
|
-
import
|
|
8
|
+
import { getMediaQueries as a } from "./media-queries.js";
|
|
9
|
+
import s from "./tab.js";
|
|
10
10
|
import C from "./tabs.js";
|
|
11
|
-
import
|
|
12
|
-
import x from "./text
|
|
13
|
-
import
|
|
14
|
-
|
|
11
|
+
import c from "./tag.js";
|
|
12
|
+
import x from "./text.js";
|
|
13
|
+
import T from "./text-button.js";
|
|
14
|
+
import { getZIndexConfig as b } from "./z-index.js";
|
|
15
|
+
const M = () => {
|
|
15
16
|
const t = u(), { gutter: o, deviceWidth: e } = t;
|
|
16
17
|
return {
|
|
17
18
|
arrowTooltip: r(),
|
|
@@ -21,16 +22,17 @@ const D = () => {
|
|
|
21
22
|
input: p(o),
|
|
22
23
|
checkbox: m(o),
|
|
23
24
|
layout: t,
|
|
24
|
-
tab:
|
|
25
|
+
tab: s(t.gutter),
|
|
25
26
|
tabs: C(),
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
tag: c(),
|
|
28
|
+
text: x(),
|
|
29
|
+
textButton: T(),
|
|
30
|
+
zIndex: b(),
|
|
29
31
|
device: n(e),
|
|
30
|
-
mediaQueries:
|
|
32
|
+
mediaQueries: a()
|
|
31
33
|
};
|
|
32
34
|
};
|
|
33
35
|
export {
|
|
34
|
-
|
|
36
|
+
M as getTheme
|
|
35
37
|
};
|
|
36
38
|
//# sourceMappingURL=get-theme.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-theme.js","sources":["../../../../src/features/ui/theme/get-theme.ts"],"sourcesContent":["import type { DefaultTheme } from 'styled-components';\n\nimport getArrowTooltipConfig from './arrow-tooltip';\nimport getButtonConfig from './button';\nimport getCheckboxConfig from './checkbox';\nimport getColors, { hues } from './clrs';\nimport { getDevice } from './get-device';\nimport getInputConfig from './input';\nimport getLayout from './layout';\nimport { getMediaQueries } from './media-queries';\nimport getTabConfig from './tab';\nimport getTabsConfig from './tabs';\nimport getTextTypes from './text';\nimport getTextButtonConfig from './text-button';\nimport { getZIndexConfig } from './z-index';\n\nconst getTheme: () => DefaultTheme = () => {\n const layout = getLayout();\n const { gutter, deviceWidth } = layout;\n\n return {\n arrowTooltip: getArrowTooltipConfig(),\n button: getButtonConfig(gutter),\n colors: getColors(),\n hues: hues,\n input: getInputConfig(gutter),\n checkbox: getCheckboxConfig(gutter),\n layout,\n tab: getTabConfig(layout.gutter),\n tabs: getTabsConfig(),\n text: getTextTypes(),\n textButton: getTextButtonConfig(),\n zIndex: getZIndexConfig(),\n device: getDevice(deviceWidth),\n mediaQueries: getMediaQueries(),\n };\n};\n\nexport { getTheme };\n"],"names":["getTheme","layout","getLayout","gutter","deviceWidth","getArrowTooltipConfig","getButtonConfig","getColors","hues","getInputConfig","getCheckboxConfig","getTabConfig","getTabsConfig","getTextTypes","getTextButtonConfig","getZIndexConfig","getDevice","getMediaQueries"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-theme.js","sources":["../../../../src/features/ui/theme/get-theme.ts"],"sourcesContent":["import type { DefaultTheme } from 'styled-components';\n\nimport getArrowTooltipConfig from './arrow-tooltip';\nimport getButtonConfig from './button';\nimport getCheckboxConfig from './checkbox';\nimport getColors, { hues } from './clrs';\nimport { getDevice } from './get-device';\nimport getInputConfig from './input';\nimport getLayout from './layout';\nimport { getMediaQueries } from './media-queries';\nimport getTabConfig from './tab';\nimport getTabsConfig from './tabs';\nimport getTagConfig from './tag';\nimport getTextTypes from './text';\nimport getTextButtonConfig from './text-button';\nimport { getZIndexConfig } from './z-index';\n\nconst getTheme: () => DefaultTheme = () => {\n const layout = getLayout();\n const { gutter, deviceWidth } = layout;\n\n return {\n arrowTooltip: getArrowTooltipConfig(),\n button: getButtonConfig(gutter),\n colors: getColors(),\n hues: hues,\n input: getInputConfig(gutter),\n checkbox: getCheckboxConfig(gutter),\n layout,\n tab: getTabConfig(layout.gutter),\n tabs: getTabsConfig(),\n tag: getTagConfig(),\n text: getTextTypes(),\n textButton: getTextButtonConfig(),\n zIndex: getZIndexConfig(),\n device: getDevice(deviceWidth),\n mediaQueries: getMediaQueries(),\n };\n};\n\nexport { getTheme };\n"],"names":["getTheme","layout","getLayout","gutter","deviceWidth","getArrowTooltipConfig","getButtonConfig","getColors","hues","getInputConfig","getCheckboxConfig","getTabConfig","getTabsConfig","getTagConfig","getTextTypes","getTextButtonConfig","getZIndexConfig","getDevice","getMediaQueries"],"mappings":";;;;;;;;;;;;;;AAiBA,MAAMA,IAA+B,MAAM;AACzC,QAAMC,IAASC,KACT,EAAE,QAAAC,GAAQ,aAAAC,EAAgB,IAAAH;AAEzB,SAAA;AAAA,IACL,cAAcI,EAAsB;AAAA,IACpC,QAAQC,EAAgBH,CAAM;AAAA,IAC9B,QAAQI,EAAU;AAAA,IAClB,MAAAC;AAAA,IACA,OAAOC,EAAeN,CAAM;AAAA,IAC5B,UAAUO,EAAkBP,CAAM;AAAA,IAClC,QAAAF;AAAA,IACA,KAAKU,EAAaV,EAAO,MAAM;AAAA,IAC/B,MAAMW,EAAc;AAAA,IACpB,KAAKC,EAAa;AAAA,IAClB,MAAMC,EAAa;AAAA,IACnB,YAAYC,EAAoB;AAAA,IAChC,QAAQC,EAAgB;AAAA,IACxB,QAAQC,EAAUb,CAAW;AAAA,IAC7B,cAAcc,EAAgB;AAAA,EAAA;AAElC;"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
const i = () => ({ sizes: {
|
|
2
|
+
"8px": {
|
|
3
|
+
fontSize: 8,
|
|
4
|
+
lineHeight: 11,
|
|
5
|
+
paddingHorizontal: 3,
|
|
6
|
+
paddingTop: 1,
|
|
7
|
+
borderRadius: {
|
|
8
|
+
curved: 2,
|
|
9
|
+
square: 0
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"10px": {
|
|
13
|
+
fontSize: 10,
|
|
14
|
+
lineHeight: 11,
|
|
15
|
+
paddingHorizontal: 4,
|
|
16
|
+
paddingTop: 2,
|
|
17
|
+
borderRadius: {
|
|
18
|
+
curved: 2,
|
|
19
|
+
square: 0
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"12px": {
|
|
23
|
+
fontSize: 12,
|
|
24
|
+
lineHeight: 15,
|
|
25
|
+
paddingHorizontal: 6,
|
|
26
|
+
paddingTop: 1,
|
|
27
|
+
borderRadius: {
|
|
28
|
+
curved: 3,
|
|
29
|
+
square: 0
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
} });
|
|
33
|
+
export {
|
|
34
|
+
i as default
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=tag.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tag.js","sources":["../../../../src/features/ui/theme/tag.ts"],"sourcesContent":["import type { TTagSizes, ITagSizeConfig } from '../types';\n\ninterface IGetTagConfig {\n (): {\n sizes: Record<TTagSizes, ITagSizeConfig>;\n };\n}\n\nconst getTagConfig: IGetTagConfig = () => {\n const sizes: Record<TTagSizes, ITagSizeConfig> = {\n '8px': {\n fontSize: 8,\n lineHeight: 11,\n paddingHorizontal: 3,\n paddingTop: 1,\n borderRadius: {\n curved: 2,\n square: 0,\n },\n },\n '10px': {\n fontSize: 10,\n lineHeight: 11,\n paddingHorizontal: 4,\n paddingTop: 2,\n borderRadius: {\n curved: 2,\n square: 0,\n },\n },\n '12px': {\n fontSize: 12,\n lineHeight: 15,\n paddingHorizontal: 6,\n paddingTop: 1,\n borderRadius: {\n curved: 3,\n square: 0,\n },\n },\n };\n\n return { sizes };\n};\n\nexport default getTagConfig;\n"],"names":["getTagConfig"],"mappings":"AAQA,MAAMA,IAA8B,OAkC3B,EAAE,OAjCwC;AAAA,EAC/C,OAAO;AAAA,IACL,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,cAAc;AAAA,MACZ,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,cAAc;AAAA,MACZ,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,cAAc;AAAA,MACZ,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EAGa;"}
|
|
@@ -95,31 +95,16 @@ function n(t = 1) {
|
|
|
95
95
|
fontSize: 14 * t,
|
|
96
96
|
lineHeight: 20 * t
|
|
97
97
|
},
|
|
98
|
-
ab4: {
|
|
99
|
-
fontFamily: "Athletics-Regular",
|
|
100
|
-
fontSize: 8 * t,
|
|
101
|
-
lineHeight: 12 * t
|
|
102
|
-
},
|
|
103
98
|
"ab3-bold": {
|
|
104
99
|
fontFamily: "Athletics-Bold",
|
|
105
100
|
fontSize: 14 * t,
|
|
106
101
|
lineHeight: 20 * t
|
|
107
102
|
},
|
|
108
|
-
"ab4-bold": {
|
|
109
|
-
fontFamily: "Athletics-Bold",
|
|
110
|
-
fontSize: 8 * t,
|
|
111
|
-
lineHeight: 12 * t
|
|
112
|
-
},
|
|
113
103
|
"ab3-black": {
|
|
114
104
|
fontFamily: "Athletics-Black",
|
|
115
105
|
fontSize: 14 * t,
|
|
116
106
|
lineHeight: 20 * t
|
|
117
107
|
},
|
|
118
|
-
"ab4-black": {
|
|
119
|
-
fontFamily: "Athletics-Black",
|
|
120
|
-
fontSize: 8 * t,
|
|
121
|
-
lineHeight: 12 * t
|
|
122
|
-
},
|
|
123
108
|
ac1: {
|
|
124
109
|
fontFamily: "Athletics-Bold",
|
|
125
110
|
fontSize: 32 * t,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","sources":["../../../../src/features/ui/theme/text.ts"],"sourcesContent":["import type { ITextConfig, TTextVariants } from '../types';\n\nfunction getTextTypes(multiplier: number = 1): Record<TTextVariants, ITextConfig> {\n return {\n 'ah1': {\n fontFamily: 'Athletics-Light',\n fontSize: 64 * multiplier,\n lineHeight: 72 * multiplier,\n },\n 'ah1-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 64 * multiplier,\n lineHeight: 72 * multiplier,\n },\n 'ah1-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 64 * multiplier,\n lineHeight: 72 * multiplier,\n },\n 'ah2': {\n fontFamily: 'Athletics-Light',\n fontSize: 48 * multiplier,\n lineHeight: 56 * multiplier,\n },\n 'ah2-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 48 * multiplier,\n lineHeight: 56 * multiplier,\n },\n 'ah2-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 48 * multiplier,\n lineHeight: 56 * multiplier,\n },\n 'ah3': {\n fontFamily: 'Athletics-Light',\n fontSize: 32 * multiplier,\n lineHeight: 40 * multiplier,\n },\n 'ah3-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 32 * multiplier,\n lineHeight: 40 * multiplier,\n },\n 'ah3-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 32 * multiplier,\n lineHeight: 40 * multiplier,\n },\n 'ah4': {\n fontFamily: 'Athletics-Light',\n fontSize: 24 * multiplier,\n lineHeight: 32 * multiplier,\n },\n 'ah4-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 24 * multiplier,\n lineHeight: 32 * multiplier,\n },\n 'ah4-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 24 * multiplier,\n lineHeight: 32 * multiplier,\n },\n 'ab1': {\n fontFamily: 'Athletics-Regular',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ab1-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ab1-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ab2': {\n fontFamily: 'Athletics-Regular',\n fontSize: 16 * multiplier,\n lineHeight: 22 * multiplier,\n },\n 'ab2-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 16 * multiplier,\n lineHeight: 22 * multiplier,\n },\n 'ab2-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 16 * multiplier,\n lineHeight: 22 * multiplier,\n },\n 'ab3': {\n fontFamily: 'Athletics-Regular',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ab4': {\n fontFamily: 'Athletics-Regular',\n fontSize: 8 * multiplier,\n lineHeight: 12 * multiplier,\n },\n 'ab3-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ab4-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 8 * multiplier,\n lineHeight: 12 * multiplier,\n },\n 'ab3-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ab4-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 8 * multiplier,\n lineHeight: 12 * multiplier,\n },\n 'ac1': {\n fontFamily: 'Athletics-Bold',\n fontSize: 32 * multiplier,\n lineHeight: 36 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac1-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 32 * multiplier,\n lineHeight: 36 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac2': {\n fontFamily: 'Athletics-Bold',\n fontSize: 20 * multiplier,\n lineHeight: 24 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac2-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 20 * multiplier,\n lineHeight: 24 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac3': {\n fontFamily: 'Athletics-Bold',\n fontSize: 16 * multiplier,\n lineHeight: 20 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac3-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 16 * multiplier,\n lineHeight: 20 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac4': {\n fontFamily: 'Athletics-Bold',\n fontSize: 12 * multiplier,\n lineHeight: 16 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac4-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 12 * multiplier,\n lineHeight: 16 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac5': {\n fontFamily: 'Athletics-Bold',\n fontSize: 10 * multiplier,\n lineHeight: 12 * multiplier,\n letterSpacing: 0.5,\n textTransform: 'uppercase',\n },\n 'ac5-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 10 * multiplier,\n lineHeight: 12 * multiplier,\n letterSpacing: 0.5,\n textTransform: 'uppercase',\n },\n 'ub1': {\n fontFamily: 'UntitledSans-Regular',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ub1-bold': {\n fontFamily: 'UntitledSans-Medium',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ub2': {\n fontFamily: 'UntitledSans-Regular',\n fontSize: 16 * multiplier,\n lineHeight: 24 * multiplier,\n },\n 'ub2-bold': {\n fontFamily: 'UntitledSans-Medium',\n fontSize: 16 * multiplier,\n lineHeight: 24 * multiplier,\n },\n 'ub3': {\n fontFamily: 'UntitledSans-Regular',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ub3-bold': {\n fontFamily: 'UntitledSans-Medium',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ub4': {\n fontFamily: 'UntitledSans-Regular',\n fontSize: 12 * multiplier,\n lineHeight: 16 * multiplier,\n },\n 'ub4-bold': {\n fontFamily: 'UntitledSans-Medium',\n fontSize: 12 * multiplier,\n lineHeight: 16 * multiplier,\n },\n };\n}\n\nexport default getTextTypes;\n"],"names":["getTextTypes","multiplier"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"text.js","sources":["../../../../src/features/ui/theme/text.ts"],"sourcesContent":["import type { ITextConfig, TTextVariants } from '../types';\n\nfunction getTextTypes(multiplier: number = 1): Record<TTextVariants, ITextConfig> {\n return {\n 'ah1': {\n fontFamily: 'Athletics-Light',\n fontSize: 64 * multiplier,\n lineHeight: 72 * multiplier,\n },\n 'ah1-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 64 * multiplier,\n lineHeight: 72 * multiplier,\n },\n 'ah1-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 64 * multiplier,\n lineHeight: 72 * multiplier,\n },\n 'ah2': {\n fontFamily: 'Athletics-Light',\n fontSize: 48 * multiplier,\n lineHeight: 56 * multiplier,\n },\n 'ah2-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 48 * multiplier,\n lineHeight: 56 * multiplier,\n },\n 'ah2-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 48 * multiplier,\n lineHeight: 56 * multiplier,\n },\n 'ah3': {\n fontFamily: 'Athletics-Light',\n fontSize: 32 * multiplier,\n lineHeight: 40 * multiplier,\n },\n 'ah3-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 32 * multiplier,\n lineHeight: 40 * multiplier,\n },\n 'ah3-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 32 * multiplier,\n lineHeight: 40 * multiplier,\n },\n 'ah4': {\n fontFamily: 'Athletics-Light',\n fontSize: 24 * multiplier,\n lineHeight: 32 * multiplier,\n },\n 'ah4-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 24 * multiplier,\n lineHeight: 32 * multiplier,\n },\n 'ah4-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 24 * multiplier,\n lineHeight: 32 * multiplier,\n },\n 'ab1': {\n fontFamily: 'Athletics-Regular',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ab1-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ab1-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ab2': {\n fontFamily: 'Athletics-Regular',\n fontSize: 16 * multiplier,\n lineHeight: 22 * multiplier,\n },\n 'ab2-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 16 * multiplier,\n lineHeight: 22 * multiplier,\n },\n 'ab2-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 16 * multiplier,\n lineHeight: 22 * multiplier,\n },\n 'ab3': {\n fontFamily: 'Athletics-Regular',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ab3-bold': {\n fontFamily: 'Athletics-Bold',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ab3-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ac1': {\n fontFamily: 'Athletics-Bold',\n fontSize: 32 * multiplier,\n lineHeight: 36 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac1-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 32 * multiplier,\n lineHeight: 36 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac2': {\n fontFamily: 'Athletics-Bold',\n fontSize: 20 * multiplier,\n lineHeight: 24 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac2-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 20 * multiplier,\n lineHeight: 24 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac3': {\n fontFamily: 'Athletics-Bold',\n fontSize: 16 * multiplier,\n lineHeight: 20 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac3-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 16 * multiplier,\n lineHeight: 20 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac4': {\n fontFamily: 'Athletics-Bold',\n fontSize: 12 * multiplier,\n lineHeight: 16 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac4-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 12 * multiplier,\n lineHeight: 16 * multiplier,\n letterSpacing: 1,\n textTransform: 'uppercase',\n },\n 'ac5': {\n fontFamily: 'Athletics-Bold',\n fontSize: 10 * multiplier,\n lineHeight: 12 * multiplier,\n letterSpacing: 0.5,\n textTransform: 'uppercase',\n },\n 'ac5-black': {\n fontFamily: 'Athletics-Black',\n fontSize: 10 * multiplier,\n lineHeight: 12 * multiplier,\n letterSpacing: 0.5,\n textTransform: 'uppercase',\n },\n 'ub1': {\n fontFamily: 'UntitledSans-Regular',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ub1-bold': {\n fontFamily: 'UntitledSans-Medium',\n fontSize: 20 * multiplier,\n lineHeight: 28 * multiplier,\n },\n 'ub2': {\n fontFamily: 'UntitledSans-Regular',\n fontSize: 16 * multiplier,\n lineHeight: 24 * multiplier,\n },\n 'ub2-bold': {\n fontFamily: 'UntitledSans-Medium',\n fontSize: 16 * multiplier,\n lineHeight: 24 * multiplier,\n },\n 'ub3': {\n fontFamily: 'UntitledSans-Regular',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ub3-bold': {\n fontFamily: 'UntitledSans-Medium',\n fontSize: 14 * multiplier,\n lineHeight: 20 * multiplier,\n },\n 'ub4': {\n fontFamily: 'UntitledSans-Regular',\n fontSize: 12 * multiplier,\n lineHeight: 16 * multiplier,\n },\n 'ub4-bold': {\n fontFamily: 'UntitledSans-Medium',\n fontSize: 12 * multiplier,\n lineHeight: 16 * multiplier,\n },\n };\n}\n\nexport default getTextTypes;\n"],"names":["getTextTypes","multiplier"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller-lesson-v3_1.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-questions-controller/student/controller-lesson-v3_1.tsx"],"sourcesContent":["import { deepEqual } from 'fast-equals';\nimport { memo, useCallback, useEffect, useMemo, useState, type FC } from 'react';\n\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../../ui/buttons/button/button';\nimport { useWorksheetStore } from '../../hooks/use-worksheet-store';\nimport { isTeacherInterventionNeeded } from '../../worksheet-helpers';\nimport useHandleCheckButtonClick from '../hooks/use-handle-check-button-click';\nimport useHandleNextButtonClick from '../hooks/use-handle-next-button-click';\nimport useHandleResponseChange from '../hooks/use-handle-response-change';\nimport useHandleRetryButtonClick from '../hooks/use-handle-retry-button-click';\nimport usePlayValidationAudio from '../hooks/use-play-validation-audio';\nimport type {\n IButtonTypes,\n IWorksheetQuestionsControllerProps,\n} from '../worksheet-questions-controller-types';\nimport useHandleStartButtonClick from '../hooks/use-handle-start-button-click';\nimport useHandleSkipButtonClick from '../hooks/use-handle-skip-button-click';\nimport useHandleSubmitQuiz from '../hooks/use-handle-submit-quiz';\nimport { type IWorksheetQuestion, type IWorksheetResponse } from '../../worksheet-types';\n\ninterface IAreAllExitTicketQuestionsValidated {\n (responses: Record<string, IWorksheetResponse>, questions: IWorksheetQuestion[]): boolean;\n}\n\nconst areAllExitTicketQuestionsValidated: IAreAllExitTicketQuestionsValidated = (\n responses,\n questions,\n) => {\n const exitTicketQuestions = questions.filter(\n q => q.item_type === 'exit-ticket' && !q.is_non_question,\n );\n\n return exitTicketQuestions.every(q => responses[q.response_id]?.validatedByTeacher === true);\n};\n\nconst StudentControllerLessonV3_1: FC<IWorksheetQuestionsControllerProps> = memo(\n function StudentControllerLessonV3_1(props) {\n const {\n behavior,\n question,\n questions,\n response,\n responses,\n learnosity,\n isQuestionAppended,\n inClass,\n isLastQuestion,\n onSubmit,\n worksheetCompleted,\n } = useWorksheetStore(store => {\n const activeQuestion = store.questions[store.activeQuestionIndex]!;\n\n return {\n behavior: store.behavior,\n question: activeQuestion,\n questions: store.questions,\n response: store.responses[activeQuestion.response_id],\n responses: store.responses,\n learnosity: store.learnosity,\n isQuestionAppended: store.appendedQuestionIds.includes(activeQuestion.response_id),\n inClass: store.inClass,\n isLastQuestion: store.activeQuestionIndex === store.questions.length - 1,\n onSubmit: store.onSubmit,\n worksheetCompleted: store.worksheetCompleted,\n };\n });\n const { getTimeSpentOnQuestion } = props;\n const {\n canAttempt,\n checkButtonLabel,\n retryButtonLabel,\n teacherDiscussionEnabled,\n attemptsAfterTeacherInterventionNeeded,\n } = behavior;\n const { response_id, metadata, is_non_question: isNonQuestion, item_type } = question;\n const isExitTicket = item_type === 'exit-ticket';\n const {\n startButton,\n checkButton,\n checkButtonDisabled,\n retryButton,\n retryButtonDisabled,\n nextButton,\n nextButtonDisabled,\n nextButtonTooltip,\n moveButton,\n skipButton,\n skipButtonLabel,\n submitQuizButton,\n submitAttemptButton,\n } = useMemo<IButtonTypes>(() => {\n if (isNonQuestion)\n return {\n startButton: canAttempt && !response?.responseGiven,\n };\n\n if (isExitTicket) {\n const { submittedByStudent } = response || {};\n\n if (!submittedByStudent) {\n if (isLastQuestion)\n return {\n submitQuizButton: true,\n };\n\n if (response?.skipped || response?.response)\n return {\n nextButton: true,\n };\n\n return {\n skipButton: true,\n skipButtonLabel: 'Next',\n };\n }\n\n if (isLastQuestion && areAllExitTicketQuestionsValidated(responses, questions)) {\n return {\n submitAttemptButton: !worksheetCompleted,\n };\n }\n }\n\n if (!response || !response.response || !response.score)\n return {\n checkButton: canAttempt,\n checkButtonDisabled: canAttempt,\n };\n\n const { responseEdited, score, attemptsHistory, retryEnabled } = response;\n\n if (responseEdited) {\n const lastAttemptResponse = attemptsHistory?.slice(-1)[0]?.response;\n\n return {\n checkButton: canAttempt || response.retryEnabled,\n checkButtonDisabled: deepEqual(response.response, lastAttemptResponse),\n };\n }\n\n if ((score.score ?? 0) < score.max_score) {\n const teacherInterventionNeeded = isTeacherInterventionNeeded({\n attemptsAfterTeacherInterventionNeeded:\n item_type === 'exit-ticket' ? 1 : attemptsAfterTeacherInterventionNeeded,\n attemptsHistory,\n });\n\n if (!teacherInterventionNeeded)\n return {\n retryButton: canAttempt,\n };\n\n if (inClass)\n return {\n retryButton: true,\n retryButtonDisabled: retryEnabled !== true,\n };\n\n return {\n moveButton: true,\n };\n }\n\n if ((score.score ?? 0) === score.max_score) {\n if (\n inClass &&\n teacherDiscussionEnabled &&\n metadata.acknowledgements &&\n !response?.validatedByTeacher\n ) {\n return {\n nextButton: true,\n nextButtonDisabled: true,\n nextButtonTooltip: 'Tutor approval is required',\n };\n }\n\n if (!isLastQuestion)\n return {\n nextButton: true,\n };\n }\n\n return {};\n }, [\n isNonQuestion,\n canAttempt,\n response,\n isExitTicket,\n isLastQuestion,\n responses,\n questions,\n worksheetCompleted,\n item_type,\n attemptsAfterTeacherInterventionNeeded,\n inClass,\n teacherDiscussionEnabled,\n metadata.acknowledgements,\n ]);\n\n const playValidationAudio = usePlayValidationAudio();\n const handleResponseChange = useHandleResponseChange({\n getTimeSpentOnQuestion,\n });\n const handleNextButtonClick = useHandleNextButtonClick();\n const [skipped, setSkipped] = useState(false);\n const handleSkipButtonClick = useHandleSkipButtonClick({\n setSkipped,\n });\n const handleValidate = useCallback(() => {\n playValidationAudio();\n handleResponseChange(true);\n }, [handleResponseChange, playValidationAudio]);\n const handleCheckButtonClick = useHandleCheckButtonClick({\n handleValidate,\n });\n const handleRetryButtonClick = useHandleRetryButtonClick({\n handleResponseChange,\n });\n const handleStartButtonClick = useHandleStartButtonClick();\n const handleSubmitQuiz = useHandleSubmitQuiz();\n const handleSheetSubmitButtonClick = useCallback(() => {\n onSubmit?.(responses, questions);\n }, [onSubmit, responses, questions]);\n\n const questionEnabled = checkButton || (isExitTicket && !response?.submittedByStudent);\n\n useEffect(() => {\n if (skipped) {\n setSkipped(false);\n handleNextButtonClick();\n }\n }, [handleNextButtonClick, skipped]);\n\n useEffect(() => {\n const questionInstance = isQuestionAppended ? learnosity.question(response_id) : undefined;\n\n if (questionInstance) {\n if (questionEnabled) {\n questionInstance.on('changed', handleResponseChange);\n questionInstance.enable();\n } else {\n questionInstance.disable();\n }\n }\n\n return () => {\n if (questionInstance && questionEnabled) {\n questionInstance.off('changed', handleResponseChange);\n questionInstance.disable();\n }\n };\n }, [handleResponseChange, isQuestionAppended, learnosity, questionEnabled, response_id]);\n\n return (\n <>\n {nextButton && (\n <ArrowTooltip\n position=\"top\"\n renderAs=\"primary\"\n hidden={!nextButtonTooltip}\n tooltipItem={nextButtonTooltip ?? ''}\n >\n <Button\n widthX={6}\n renderAs=\"primary\"\n label=\"Next\"\n onClick={handleNextButtonClick}\n disabled={nextButtonDisabled === true}\n />\n </ArrowTooltip>\n )}\n {skipButton && (\n <Button\n widthX={6}\n renderAs=\"primary\"\n label={skipButtonLabel ?? 'Skip'}\n onClick={handleSkipButtonClick}\n />\n )}\n {moveButton && (\n <Button\n widthX={8.5}\n renderAs=\"primary\"\n label=\"Move ahead\"\n onClick={handleNextButtonClick}\n />\n )}\n {retryButton && (\n <ArrowTooltip\n position=\"top\"\n renderAs=\"primary\"\n hidden={!retryButtonDisabled}\n tooltipItem=\"Tutor will help, then enable retry\"\n >\n <Button\n widthX={6}\n renderAs=\"primary\"\n label={retryButtonLabel}\n disabled={!isQuestionAppended || retryButtonDisabled}\n onClick={handleRetryButtonClick}\n />\n </ArrowTooltip>\n )}\n {checkButton && (\n <Button\n renderAs=\"primary\"\n label={checkButtonLabel}\n disabled={checkButtonDisabled === true || !isQuestionAppended}\n onClick={handleCheckButtonClick}\n />\n )}\n {startButton && (\n <Button renderAs=\"primary\" label=\"Start\" onClick={handleStartButtonClick} />\n )}\n {submitQuizButton && (\n <Button\n renderAs=\"primary\"\n label=\"Submit\"\n analyticsLabel=\"Submit Quiz\"\n onClick={handleSubmitQuiz}\n />\n )}\n {submitAttemptButton && (\n <Button renderAs=\"primary\" label=\"Submit\" onClick={handleSheetSubmitButtonClick} />\n )}\n </>\n );\n },\n);\n\nexport default StudentControllerLessonV3_1;\n"],"names":["areAllExitTicketQuestionsValidated","responses","questions","q","_a","StudentControllerLessonV3_1","memo","props","behavior","question","response","learnosity","isQuestionAppended","inClass","isLastQuestion","onSubmit","worksheetCompleted","useWorksheetStore","store","activeQuestion","getTimeSpentOnQuestion","canAttempt","checkButtonLabel","retryButtonLabel","teacherDiscussionEnabled","attemptsAfterTeacherInterventionNeeded","response_id","metadata","isNonQuestion","item_type","isExitTicket","startButton","checkButton","checkButtonDisabled","retryButton","retryButtonDisabled","nextButton","nextButtonDisabled","nextButtonTooltip","moveButton","skipButton","skipButtonLabel","submitQuizButton","submitAttemptButton","useMemo","submittedByStudent","responseEdited","score","attemptsHistory","retryEnabled","lastAttemptResponse","deepEqual","isTeacherInterventionNeeded","playValidationAudio","usePlayValidationAudio","handleResponseChange","useHandleResponseChange","handleNextButtonClick","useHandleNextButtonClick","skipped","setSkipped","useState","handleSkipButtonClick","useHandleSkipButtonClick","handleValidate","useCallback","handleCheckButtonClick","useHandleCheckButtonClick","handleRetryButtonClick","useHandleRetryButtonClick","handleStartButtonClick","useHandleStartButtonClick","handleSubmitQuiz","useHandleSubmitQuiz","handleSheetSubmitButtonClick","questionEnabled","useEffect","questionInstance","jsxs","Fragment","jsx","ArrowTooltip","Button"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"controller-lesson-v3_1.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-questions-controller/student/controller-lesson-v3_1.tsx"],"sourcesContent":["import { deepEqual } from 'fast-equals';\nimport { memo, useCallback, useEffect, useMemo, useState, type FC } from 'react';\n\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport Button from '../../../../ui/buttons/button/button';\nimport { useWorksheetStore } from '../../hooks/use-worksheet-store';\nimport { isTeacherInterventionNeeded } from '../../worksheet-helpers';\nimport useHandleCheckButtonClick from '../hooks/use-handle-check-button-click';\nimport useHandleNextButtonClick from '../hooks/use-handle-next-button-click';\nimport useHandleResponseChange from '../hooks/use-handle-response-change';\nimport useHandleRetryButtonClick from '../hooks/use-handle-retry-button-click';\nimport usePlayValidationAudio from '../hooks/use-play-validation-audio';\nimport type {\n IButtonTypes,\n IWorksheetQuestionsControllerProps,\n} from '../worksheet-questions-controller-types';\nimport useHandleStartButtonClick from '../hooks/use-handle-start-button-click';\nimport useHandleSkipButtonClick from '../hooks/use-handle-skip-button-click';\nimport useHandleSubmitQuiz from '../hooks/use-handle-submit-quiz';\nimport { type IWorksheetQuestion, type IWorksheetResponse } from '../../worksheet-types';\n\ninterface IAreAllExitTicketQuestionsValidated {\n (responses: Record<string, IWorksheetResponse>, questions: IWorksheetQuestion[]): boolean;\n}\n\nconst areAllExitTicketQuestionsValidated: IAreAllExitTicketQuestionsValidated = (\n responses,\n questions,\n) => {\n const exitTicketQuestions = questions.filter(\n q => q.item_type === 'exit-ticket' && !q.is_non_question,\n );\n\n return exitTicketQuestions.every(q => responses[q.response_id]?.validatedByTeacher === true);\n};\n\nconst StudentControllerLessonV3_1: FC<IWorksheetQuestionsControllerProps> = memo(\n function StudentControllerLessonV3_1(props) {\n const {\n behavior,\n question,\n questions,\n response,\n responses,\n learnosity,\n isQuestionAppended,\n inClass,\n isLastQuestion,\n onSubmit,\n worksheetCompleted,\n } = useWorksheetStore(store => {\n const activeQuestion = store.questions[store.activeQuestionIndex]!;\n\n return {\n behavior: store.behavior,\n question: activeQuestion,\n questions: store.questions,\n response: store.responses[activeQuestion.response_id],\n responses: store.responses,\n learnosity: store.learnosity,\n isQuestionAppended: store.appendedQuestionIds.includes(activeQuestion.response_id),\n inClass: store.inClass,\n isLastQuestion: store.activeQuestionIndex === store.questions.length - 1,\n onSubmit: store.onSubmit,\n worksheetCompleted: store.worksheetCompleted,\n };\n });\n const { getTimeSpentOnQuestion } = props;\n const {\n canAttempt,\n checkButtonLabel,\n retryButtonLabel,\n teacherDiscussionEnabled,\n attemptsAfterTeacherInterventionNeeded,\n } = behavior;\n const { response_id, metadata, is_non_question: isNonQuestion, item_type } = question;\n const isExitTicket = item_type === 'exit-ticket';\n const {\n startButton,\n checkButton,\n checkButtonDisabled,\n retryButton,\n retryButtonDisabled,\n nextButton,\n nextButtonDisabled,\n nextButtonTooltip,\n moveButton,\n skipButton,\n skipButtonLabel,\n submitQuizButton,\n submitAttemptButton,\n } = useMemo<IButtonTypes>(() => {\n if (isNonQuestion)\n return {\n startButton: canAttempt && !response?.responseGiven,\n };\n\n if (isExitTicket) {\n const { submittedByStudent } = response || {};\n\n if (!submittedByStudent) {\n if (isLastQuestion)\n return {\n submitQuizButton: true,\n };\n\n if (response?.skipped || response?.response)\n return {\n nextButton: true,\n };\n\n return {\n skipButton: true,\n skipButtonLabel: 'Next',\n };\n }\n\n if (isLastQuestion && areAllExitTicketQuestionsValidated(responses, questions)) {\n return {\n submitAttemptButton: !worksheetCompleted,\n };\n }\n }\n\n if (!response || !response.response || !response.score)\n return {\n checkButton: canAttempt,\n checkButtonDisabled: canAttempt,\n };\n\n const { responseEdited, score, attemptsHistory, retryEnabled } = response;\n\n if (responseEdited) {\n const lastAttemptResponse = attemptsHistory?.slice(-1)[0]?.response;\n\n return {\n checkButton: canAttempt || response.retryEnabled,\n checkButtonDisabled: deepEqual(response.response, lastAttemptResponse),\n };\n }\n\n if ((score.score ?? 0) < score.max_score) {\n const teacherInterventionNeeded = isTeacherInterventionNeeded({\n attemptsAfterTeacherInterventionNeeded:\n item_type === 'exit-ticket' ? 1 : attemptsAfterTeacherInterventionNeeded,\n attemptsHistory,\n });\n\n if (!teacherInterventionNeeded)\n return {\n retryButton: canAttempt,\n };\n\n if (inClass)\n return {\n retryButton: true,\n retryButtonDisabled: retryEnabled !== true,\n };\n\n return {\n moveButton: true,\n };\n }\n\n if ((score.score ?? 0) === score.max_score) {\n if (\n inClass &&\n teacherDiscussionEnabled &&\n metadata.acknowledgements &&\n !response?.validatedByTeacher\n ) {\n return {\n nextButton: true,\n nextButtonDisabled: true,\n nextButtonTooltip: 'Tutor approval is required',\n };\n }\n\n if (!isLastQuestion)\n return {\n nextButton: true,\n };\n }\n\n return {};\n }, [\n isNonQuestion,\n canAttempt,\n response,\n isExitTicket,\n isLastQuestion,\n responses,\n questions,\n worksheetCompleted,\n item_type,\n attemptsAfterTeacherInterventionNeeded,\n inClass,\n teacherDiscussionEnabled,\n metadata.acknowledgements,\n ]);\n\n const playValidationAudio = usePlayValidationAudio();\n const handleResponseChange = useHandleResponseChange({\n getTimeSpentOnQuestion,\n });\n const handleNextButtonClick = useHandleNextButtonClick();\n const [skipped, setSkipped] = useState(false);\n const handleSkipButtonClick = useHandleSkipButtonClick({\n setSkipped,\n });\n const handleValidate = useCallback(() => {\n playValidationAudio();\n handleResponseChange(true);\n }, [handleResponseChange, playValidationAudio]);\n const handleCheckButtonClick = useHandleCheckButtonClick({\n handleValidate,\n });\n const handleRetryButtonClick = useHandleRetryButtonClick({\n handleResponseChange,\n });\n const handleStartButtonClick = useHandleStartButtonClick();\n const handleSubmitQuiz = useHandleSubmitQuiz();\n const handleSheetSubmitButtonClick = useCallback(() => {\n onSubmit?.(responses, questions);\n }, [onSubmit, responses, questions]);\n\n const questionEnabled = checkButton || (isExitTicket && !response?.submittedByStudent);\n\n useEffect(() => {\n if (skipped) {\n setSkipped(false);\n handleNextButtonClick();\n }\n }, [handleNextButtonClick, skipped]);\n\n useEffect(() => {\n const questionInstance = isQuestionAppended ? learnosity.question(response_id) : undefined;\n\n if (questionInstance) {\n if (questionEnabled) {\n questionInstance.on('changed', handleResponseChange);\n questionInstance.enable();\n } else {\n questionInstance.disable();\n }\n }\n\n return () => {\n if (questionInstance && questionEnabled) {\n questionInstance.off('changed', handleResponseChange);\n questionInstance.disable();\n }\n };\n }, [handleResponseChange, isQuestionAppended, learnosity, questionEnabled, response_id]);\n\n return (\n <>\n {nextButton && (\n <ArrowTooltip\n position=\"top\"\n renderAs=\"primary\"\n hidden={!nextButtonTooltip}\n tooltipItem={nextButtonTooltip ?? ''}\n >\n <Button\n widthX={6}\n renderAs=\"primary\"\n label=\"Next\"\n onClick={handleNextButtonClick}\n disabled={nextButtonDisabled === true}\n />\n </ArrowTooltip>\n )}\n {skipButton && (\n <Button\n widthX={6}\n renderAs=\"primary\"\n label={skipButtonLabel ?? 'Skip'}\n onClick={handleSkipButtonClick}\n />\n )}\n {moveButton && (\n <Button\n widthX={9.75}\n renderAs=\"primary\"\n label=\"Move ahead\"\n onClick={handleNextButtonClick}\n />\n )}\n {retryButton && (\n <ArrowTooltip\n position=\"top\"\n renderAs=\"primary\"\n hidden={!retryButtonDisabled}\n tooltipItem=\"Tutor will help, then enable retry\"\n >\n <Button\n widthX={6}\n renderAs=\"primary\"\n label={retryButtonLabel}\n disabled={!isQuestionAppended || retryButtonDisabled}\n onClick={handleRetryButtonClick}\n />\n </ArrowTooltip>\n )}\n {checkButton && (\n <Button\n renderAs=\"primary\"\n label={checkButtonLabel}\n disabled={checkButtonDisabled === true || !isQuestionAppended}\n onClick={handleCheckButtonClick}\n />\n )}\n {startButton && (\n <Button renderAs=\"primary\" label=\"Start\" onClick={handleStartButtonClick} />\n )}\n {submitQuizButton && (\n <Button\n renderAs=\"primary\"\n label=\"Submit\"\n analyticsLabel=\"Submit Quiz\"\n onClick={handleSubmitQuiz}\n />\n )}\n {submitAttemptButton && (\n <Button renderAs=\"primary\" label=\"Submit\" onClick={handleSheetSubmitButtonClick} />\n )}\n </>\n );\n },\n);\n\nexport default StudentControllerLessonV3_1;\n"],"names":["areAllExitTicketQuestionsValidated","responses","questions","q","_a","StudentControllerLessonV3_1","memo","props","behavior","question","response","learnosity","isQuestionAppended","inClass","isLastQuestion","onSubmit","worksheetCompleted","useWorksheetStore","store","activeQuestion","getTimeSpentOnQuestion","canAttempt","checkButtonLabel","retryButtonLabel","teacherDiscussionEnabled","attemptsAfterTeacherInterventionNeeded","response_id","metadata","isNonQuestion","item_type","isExitTicket","startButton","checkButton","checkButtonDisabled","retryButton","retryButtonDisabled","nextButton","nextButtonDisabled","nextButtonTooltip","moveButton","skipButton","skipButtonLabel","submitQuizButton","submitAttemptButton","useMemo","submittedByStudent","responseEdited","score","attemptsHistory","retryEnabled","lastAttemptResponse","deepEqual","isTeacherInterventionNeeded","playValidationAudio","usePlayValidationAudio","handleResponseChange","useHandleResponseChange","handleNextButtonClick","useHandleNextButtonClick","skipped","setSkipped","useState","handleSkipButtonClick","useHandleSkipButtonClick","handleValidate","useCallback","handleCheckButtonClick","useHandleCheckButtonClick","handleRetryButtonClick","useHandleRetryButtonClick","handleStartButtonClick","useHandleStartButtonClick","handleSubmitQuiz","useHandleSubmitQuiz","handleSheetSubmitButtonClick","questionEnabled","useEffect","questionInstance","jsxs","Fragment","jsx","ArrowTooltip","Button"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"questions-toolbar-styled.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport { TOOL_ICON_SIZE } from '../../constants';\n\ninterface IWorksheetQuestionsToolbarContainerProps {\n $showBorder: boolean;\n}\nconst WorksheetQuestionsToolbarContainer = styled(\n FlexView,\n)<IWorksheetQuestionsToolbarContainerProps>(\n ({ theme, $showBorder }) => `\n ${$showBorder ? `margin-left: 12px; border-left: 1px solid ${theme.colors.WHITE_5};` : ''}\n align-self: stretch;\n padding-left: 4px;\n`,\n);\n\ninterface IIconContainerProps {\n $disabled?: boolean;\n}\nconst IconContainer = styled(FlexView)<IIconContainerProps>(\n ({ theme, $disabled = false }) => `\n height: 40px;\n width: 40px;\n border-radius: 50%;\n align-items: center;\n justify-content: center;\n\n ${\n !$disabled\n ? `&:hover {\n cursor: pointer;\n background-color: ${theme.colors.WHITE_4};\n }`\n : 'opacity: 0.38;'\n }\n`,\n);\n\nconst HintsIconContainer = styled.div`\n position: relative;\n width: ${TOOL_ICON_SIZE}px;\n height: ${TOOL_ICON_SIZE}px;\n`;\n\nconst HintsNumberContainer = styled.div(\n ({ theme }) => `\n position: absolute;\n top: 2px;\n right: 2px;\n width: 12px;\n height: 12px;\n background-color: ${theme.colors.YELLOW_4};\n border: 1px solid ${theme.colors.WHITE};\n border-radius: 50%;\n`,\n);\n\nconst TickMark = styled.img`\n position: absolute;\n top: 2px;\n right: 2px;\n width: 12px;\n height: 12px;\n`;\n\nconst HintsNumber = styled(Text)`\n line-height: 11px;\n text-align: center;\n`;\n\nexport {\n HintsIconContainer,\n HintsNumber,\n HintsNumberContainer,\n IconContainer,\n TickMark,\n WorksheetQuestionsToolbarContainer,\n};\n"],"names":["WorksheetQuestionsToolbarContainer","styled","FlexView","theme","$showBorder","IconContainer","$disabled","HintsIconContainer","TOOL_ICON_SIZE","HintsNumberContainer","TickMark","HintsNumber","Text"],"mappings":";;;;AASA,MAAMA,IAAqCC;AAAA,EACzCC;AACF;AAAA,EACE,CAAC,EAAE,OAAAC,GAAO,aAAAC,EAAA,MAAkB;AAAA,IAC1BA,IAAc,6CAA6CD,EAAM,OAAO,OAAO,MAAM,EAAE;AAAA;AAAA;AAAA;AAI3F,GAKME,IAAgBJ,EAAOC,CAAQ;AAAA,EACnC,CAAC,EAAE,OAAAC,GAAO,WAAAG,IAAY,GAAY,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQ/BA,IAKG,mBAJA;AAAA;AAAA,8BAEsBH,EAAM,OAAO,OAAO;AAAA,YAGhD;AAAA;AAEF,GAEMI,IAAqBN,EAAO;AAAA;AAAA,WAEvBO,CAAc;AAAA,YACbA,CAAc;AAAA,GAGpBC,IAAuBR,EAAO;AAAA,EAClC,CAAC,EAAE,OAAAE,EAAA,MAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAMKA,EAAM,OAAO,QAAQ;AAAA,sBACrBA,EAAM,OAAO,KAAK;AAAA;AAAA;AAGxC,GAEMO,IAAWT,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAQlBU,IAAcV,EAAOW,CAAI;AAAA;AAAA;AAAA;"}
|
|
1
|
+
{"version":3,"file":"questions-toolbar-styled.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../../../../ui/layout/flex-view';\nimport Text from '../../../../ui/text/text';\nimport { TOOL_ICON_SIZE } from '../../constants';\n\ninterface IWorksheetQuestionsToolbarContainerProps {\n $showBorder: boolean;\n}\nconst WorksheetQuestionsToolbarContainer = styled(\n FlexView,\n)<IWorksheetQuestionsToolbarContainerProps>(\n ({ theme, $showBorder }) => `\n ${$showBorder ? `margin-left: 12px; border-left: 1px solid ${theme.colors.WHITE_5};` : ''}\n align-self: stretch;\n padding-left: 4px;\n`,\n);\n\ninterface IIconContainerProps {\n $disabled?: boolean;\n}\nconst IconContainer = styled(FlexView)<IIconContainerProps>(\n ({ theme, $disabled = false }) => `\n height: 40px;\n width: 40px;\n border-radius: 50%;\n align-items: center;\n justify-content: center;\n\n ${\n !$disabled\n ? `&:hover {\n cursor: pointer;\n background-color: ${theme.colors.WHITE_4};\n }`\n : 'opacity: 0.38;'\n }\n`,\n);\n\nconst HintsIconContainer = styled.div`\n position: relative;\n width: ${TOOL_ICON_SIZE}px;\n height: ${TOOL_ICON_SIZE}px;\n`;\n\nconst HintsNumberContainer = styled.div(\n ({ theme }) => `\n position: absolute;\n top: 2px;\n right: 2px;\n width: 12px;\n height: 12px;\n background-color: ${theme.colors.YELLOW_4};\n border: 1px solid ${theme.colors.WHITE};\n border-radius: 50%;\n`,\n);\n\nconst TickMark = styled.img`\n position: absolute;\n top: 2px;\n right: 2px;\n width: 12px;\n height: 12px;\n`;\n\nconst HintsNumber = styled(Text)`\n font-size: 7.5px;\n line-height: 11px;\n text-align: center;\n`;\n\nexport {\n HintsIconContainer,\n HintsNumber,\n HintsNumberContainer,\n IconContainer,\n TickMark,\n WorksheetQuestionsToolbarContainer,\n};\n"],"names":["WorksheetQuestionsToolbarContainer","styled","FlexView","theme","$showBorder","IconContainer","$disabled","HintsIconContainer","TOOL_ICON_SIZE","HintsNumberContainer","TickMark","HintsNumber","Text"],"mappings":";;;;AASA,MAAMA,IAAqCC;AAAA,EACzCC;AACF;AAAA,EACE,CAAC,EAAE,OAAAC,GAAO,aAAAC,EAAA,MAAkB;AAAA,IAC1BA,IAAc,6CAA6CD,EAAM,OAAO,OAAO,MAAM,EAAE;AAAA;AAAA;AAAA;AAI3F,GAKME,IAAgBJ,EAAOC,CAAQ;AAAA,EACnC,CAAC,EAAE,OAAAC,GAAO,WAAAG,IAAY,GAAY,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQ/BA,IAKG,mBAJA;AAAA;AAAA,8BAEsBH,EAAM,OAAO,OAAO;AAAA,YAGhD;AAAA;AAEF,GAEMI,IAAqBN,EAAO;AAAA;AAAA,WAEvBO,CAAc;AAAA,YACbA,CAAc;AAAA,GAGpBC,IAAuBR,EAAO;AAAA,EAClC,CAAC,EAAE,OAAAE,EAAA,MAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAMKA,EAAM,OAAO,QAAQ;AAAA,sBACrBA,EAAM,OAAO,KAAK;AAAA;AAAA;AAGxC,GAEMO,IAAWT,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAQlBU,IAAcV,EAAOW,CAAI;AAAA;AAAA;AAAA;AAAA;"}
|
|
@@ -92,7 +92,7 @@ const ke = F(function({
|
|
|
92
92
|
children: [
|
|
93
93
|
r.visible && /* @__PURE__ */ e(c, { label: "Hint", disabled: r.disabled, onClick: U, children: /* @__PURE__ */ e(d, { position: "top", renderAs: "primary", tooltipItem: "Hint", children: /* @__PURE__ */ e(a, { $disabled: r.disabled, children: /* @__PURE__ */ A(P, { children: [
|
|
94
94
|
/* @__PURE__ */ e(V, { width: o, height: o }),
|
|
95
|
-
!r.allHintsUtilized && r.nextHintnumber > 1 && /* @__PURE__ */ e(X, { children: /* @__PURE__ */ e(Y, { $renderAs: "
|
|
95
|
+
!r.allHintsUtilized && r.nextHintnumber > 1 && /* @__PURE__ */ e(X, { children: /* @__PURE__ */ e(Y, { $renderAs: "ab3-bold", $color: "BLACK", children: r.nextHintnumber }) }),
|
|
96
96
|
r.allHintsUtilized && /* @__PURE__ */ e(ee, { src: x.TICK_GREEN })
|
|
97
97
|
] }) }) }) }),
|
|
98
98
|
C.visible && /* @__PURE__ */ e(c, { label: "Solution", disabled: C.disabled, onClick: q, children: /* @__PURE__ */ e(d, { position: "top", renderAs: "primary", tooltipItem: "Solution", children: /* @__PURE__ */ e(a, { $disabled: C.disabled, children: n === l.SOLUTION ? /* @__PURE__ */ e(k, { width: o, height: o }) : /* @__PURE__ */ e(G, { width: o, height: o }) }) }) }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"questions-toolbar.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar.tsx"],"sourcesContent":["import { type FC, memo, useCallback } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../../assets/illustrations/illustrations';\nimport CalculatorIcon from '../../../../../assets/line-icons/icons/calculator';\nimport CloseIcon from '../../../../../assets/line-icons/icons/close';\nimport HandIcon from '../../../../../assets/line-icons/icons/hand';\nimport HintsIcon from '../../../../../assets/line-icons/icons/hints';\nimport QuestionFeedbackIcon from '../../../../../assets/line-icons/icons/question-feedback';\nimport SolutionIcon from '../../../../../assets/line-icons/icons/solution';\nimport TeachingToolsIcon from '../../../../../assets/line-icons/icons/teaching-tools';\nimport TValQuestionIcon from '../../../../../assets/line-icons/icons/tval-question';\nimport Clickable from '../../../../ui/buttons/clickable/clickable';\nimport EVENTS from '../../../constants/events';\nimport { useWorksheetStore } from '../../hooks/use-worksheet-store';\nimport { getQuestionMetadata } from '../../worksheet-helpers';\nimport { EActiveQuestionTool } from '../../worksheet-types';\nimport { type IQuestionToolbarOptions } from './questions-toolbar-helpers';\nimport * as Styled from './questions-toolbar-styled';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport { TOOL_ICON_SIZE } from '../../constants';\n\ninterface IQuestionsToolbarProps {\n toolbarOptions: IQuestionToolbarOptions;\n showBorder: boolean;\n}\n\nconst QuestionsToolbar: FC<IQuestionsToolbarProps> = memo(function QuestionsToolbar({\n showBorder,\n toolbarOptions,\n}) {\n const { hints, solution, askTeacher, questionFeedback, teachingTools, discussion } =\n toolbarOptions;\n const {\n question,\n behavior,\n loggerRef,\n setResponses,\n onResponseChange,\n onHelp,\n openQuestionFeedbackModal,\n activeQuestionTool,\n setActiveQuestionTool,\n unsetActiveQuestionTool,\n toggleCalculator,\n } = useWorksheetStore(store => {\n const activeQuestion = store.questions[store.activeQuestionIndex]!;\n\n return {\n behavior: store.behavior,\n question: activeQuestion,\n loggerRef: store.loggerRef,\n setResponses: store.setResponses,\n onResponseChange: store.onResponseChange,\n onHelp: store.onHelp,\n openQuestionFeedbackModal: store.openQuestionFeedbackModal,\n activeQuestionTool: store.activeQuestionTool,\n setActiveQuestionTool: store.setActiveQuestionTool,\n unsetActiveQuestionTool: store.unsetActiveQuestionTool,\n toggleCalculator: store.toggleCalculator,\n };\n });\n const { response_id: responseId } = question;\n\n const handleHintButtonClick = useCallback(() => {\n loggerRef.current(EVENTS.WORKSHEET_V3_HINT_SEEN);\n setResponses(prevResponses => {\n const newResponse = {\n ...getQuestionMetadata(question),\n ...prevResponses[responseId],\n hintsUsed: (prevResponses[responseId]?.hintsUsed ?? 0) + 1,\n };\n\n onResponseChange?.({\n responseId,\n response: newResponse,\n question,\n isNewAttempt: false,\n });\n\n return {\n ...prevResponses,\n [responseId]: newResponse,\n };\n });\n }, [loggerRef, onResponseChange, question, responseId, setResponses]);\n\n const handleQuestionFeedbackClick = useCallback(() => {\n if (openQuestionFeedbackModal) {\n openQuestionFeedbackModal(question.item_reference);\n }\n }, [openQuestionFeedbackModal, question]);\n\n const handleTeachingToolsClick = useCallback(() => {\n if (activeQuestionTool !== EActiveQuestionTool.TEACHING_TOOLS) {\n setActiveQuestionTool(EActiveQuestionTool.TEACHING_TOOLS);\n } else {\n unsetActiveQuestionTool();\n }\n }, [setActiveQuestionTool, unsetActiveQuestionTool, activeQuestionTool]);\n\n const handleDiscussionClick = useCallback(() => {\n if (activeQuestionTool !== EActiveQuestionTool.DISCUSSION) {\n setActiveQuestionTool(EActiveQuestionTool.DISCUSSION);\n } else {\n unsetActiveQuestionTool();\n }\n }, [setActiveQuestionTool, unsetActiveQuestionTool, activeQuestionTool]);\n\n const handleSolutionClick = useCallback(() => {\n if (activeQuestionTool !== EActiveQuestionTool.SOLUTION) {\n setActiveQuestionTool(EActiveQuestionTool.SOLUTION);\n } else {\n unsetActiveQuestionTool();\n }\n }, [setActiveQuestionTool, unsetActiveQuestionTool, activeQuestionTool]);\n\n const handleHelpButtonClick = useCallback(() => {\n if (onHelp && question) {\n const { item_number, question_number, total_questions } = question;\n\n onHelp({\n questionId: responseId,\n questionNumber: `${item_number + 1}${\n total_questions > 1 ? String.fromCharCode('a'.charCodeAt(0) + question_number) : ''\n }`,\n });\n }\n }, [onHelp, question, responseId]);\n\n return (\n <Styled.WorksheetQuestionsToolbarContainer\n $showBorder={showBorder}\n $flexDirection=\"row\"\n $alignItems=\"center\"\n >\n {hints.visible && (\n <Clickable label=\"Hint\" disabled={hints.disabled} onClick={handleHintButtonClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Hint\">\n <Styled.IconContainer $disabled={hints.disabled}>\n <Styled.HintsIconContainer>\n <HintsIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n {!hints.allHintsUtilized && hints.nextHintnumber > 1 && (\n <Styled.HintsNumberContainer>\n <Styled.HintsNumber $renderAs=\"ab4-black\" $color=\"BLACK\">\n {hints.nextHintnumber}\n </Styled.HintsNumber>\n </Styled.HintsNumberContainer>\n )}\n {hints.allHintsUtilized && <Styled.TickMark src={ILLUSTRATIONS.TICK_GREEN} />}\n </Styled.HintsIconContainer>\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {solution.visible && (\n <Clickable label=\"Solution\" disabled={solution.disabled} onClick={handleSolutionClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Solution\">\n <Styled.IconContainer $disabled={solution.disabled}>\n {activeQuestionTool === EActiveQuestionTool.SOLUTION ? (\n <CloseIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n ) : (\n <SolutionIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n )}\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {askTeacher.visible && (\n <Clickable label=\"Ask for help\" onClick={handleHelpButtonClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Help\">\n <Styled.IconContainer>\n <HandIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {questionFeedback.visible && (\n <Clickable label=\"Question Feedback\" onClick={handleQuestionFeedbackClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Feedback\">\n <Styled.IconContainer>\n <QuestionFeedbackIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {behavior.canShowDesmosCalc && (\n <Clickable label=\"Desmos Calculator\" onClick={toggleCalculator}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Calculator\">\n <Styled.IconContainer>\n <CalculatorIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {teachingTools.visible && (\n <Clickable\n label=\"Teaching Tools\"\n disabled={teachingTools.disabled}\n onClick={handleTeachingToolsClick}\n >\n <ArrowTooltip\n position=\"top\"\n renderAs=\"primary\"\n tooltipItem=\"Cue Don't Tell, Hint and Solution\"\n >\n <Styled.IconContainer $disabled={teachingTools.disabled}>\n {activeQuestionTool === EActiveQuestionTool.TEACHING_TOOLS ? (\n <CloseIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n ) : (\n <TeachingToolsIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n )}\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {discussion.visible && (\n <Clickable label=\"Teacher Validated Question\" onClick={handleDiscussionClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Teacher Validated Question\">\n <Styled.IconContainer>\n {activeQuestionTool === EActiveQuestionTool.DISCUSSION ? (\n <CloseIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n ) : (\n <TValQuestionIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n )}\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n </Styled.WorksheetQuestionsToolbarContainer>\n );\n});\n\nexport default QuestionsToolbar;\n"],"names":["QuestionsToolbar","memo","showBorder","toolbarOptions","hints","solution","askTeacher","questionFeedback","teachingTools","discussion","question","behavior","loggerRef","setResponses","onResponseChange","onHelp","openQuestionFeedbackModal","activeQuestionTool","setActiveQuestionTool","unsetActiveQuestionTool","toggleCalculator","useWorksheetStore","store","activeQuestion","responseId","handleHintButtonClick","useCallback","EVENTS","prevResponses","newResponse","getQuestionMetadata","_a","handleQuestionFeedbackClick","handleTeachingToolsClick","EActiveQuestionTool","handleDiscussionClick","handleSolutionClick","handleHelpButtonClick","item_number","question_number","total_questions","jsxs","Styled.WorksheetQuestionsToolbarContainer","jsx","Clickable","ArrowTooltip","Styled.IconContainer","Styled.HintsIconContainer","HintsIcon","TOOL_ICON_SIZE","Styled.HintsNumberContainer","Styled.HintsNumber","Styled.TickMark","ILLUSTRATIONS","CloseIcon","SolutionIcon","HandIcon","QuestionFeedbackIcon","CalculatorIcon","TeachingToolsIcon","TValQuestionIcon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"questions-toolbar.js","sources":["../../../../../../src/features/worksheet/worksheet/worksheet-questions-tools/questions-toolbar/questions-toolbar.tsx"],"sourcesContent":["import { type FC, memo, useCallback } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../../assets/illustrations/illustrations';\nimport CalculatorIcon from '../../../../../assets/line-icons/icons/calculator';\nimport CloseIcon from '../../../../../assets/line-icons/icons/close';\nimport HandIcon from '../../../../../assets/line-icons/icons/hand';\nimport HintsIcon from '../../../../../assets/line-icons/icons/hints';\nimport QuestionFeedbackIcon from '../../../../../assets/line-icons/icons/question-feedback';\nimport SolutionIcon from '../../../../../assets/line-icons/icons/solution';\nimport TeachingToolsIcon from '../../../../../assets/line-icons/icons/teaching-tools';\nimport TValQuestionIcon from '../../../../../assets/line-icons/icons/tval-question';\nimport Clickable from '../../../../ui/buttons/clickable/clickable';\nimport EVENTS from '../../../constants/events';\nimport { useWorksheetStore } from '../../hooks/use-worksheet-store';\nimport { getQuestionMetadata } from '../../worksheet-helpers';\nimport { EActiveQuestionTool } from '../../worksheet-types';\nimport { type IQuestionToolbarOptions } from './questions-toolbar-helpers';\nimport * as Styled from './questions-toolbar-styled';\nimport ArrowTooltip from '../../../../ui/arrow-tooltip/arrow-tooltip';\nimport { TOOL_ICON_SIZE } from '../../constants';\n\ninterface IQuestionsToolbarProps {\n toolbarOptions: IQuestionToolbarOptions;\n showBorder: boolean;\n}\n\nconst QuestionsToolbar: FC<IQuestionsToolbarProps> = memo(function QuestionsToolbar({\n showBorder,\n toolbarOptions,\n}) {\n const { hints, solution, askTeacher, questionFeedback, teachingTools, discussion } =\n toolbarOptions;\n const {\n question,\n behavior,\n loggerRef,\n setResponses,\n onResponseChange,\n onHelp,\n openQuestionFeedbackModal,\n activeQuestionTool,\n setActiveQuestionTool,\n unsetActiveQuestionTool,\n toggleCalculator,\n } = useWorksheetStore(store => {\n const activeQuestion = store.questions[store.activeQuestionIndex]!;\n\n return {\n behavior: store.behavior,\n question: activeQuestion,\n loggerRef: store.loggerRef,\n setResponses: store.setResponses,\n onResponseChange: store.onResponseChange,\n onHelp: store.onHelp,\n openQuestionFeedbackModal: store.openQuestionFeedbackModal,\n activeQuestionTool: store.activeQuestionTool,\n setActiveQuestionTool: store.setActiveQuestionTool,\n unsetActiveQuestionTool: store.unsetActiveQuestionTool,\n toggleCalculator: store.toggleCalculator,\n };\n });\n const { response_id: responseId } = question;\n\n const handleHintButtonClick = useCallback(() => {\n loggerRef.current(EVENTS.WORKSHEET_V3_HINT_SEEN);\n setResponses(prevResponses => {\n const newResponse = {\n ...getQuestionMetadata(question),\n ...prevResponses[responseId],\n hintsUsed: (prevResponses[responseId]?.hintsUsed ?? 0) + 1,\n };\n\n onResponseChange?.({\n responseId,\n response: newResponse,\n question,\n isNewAttempt: false,\n });\n\n return {\n ...prevResponses,\n [responseId]: newResponse,\n };\n });\n }, [loggerRef, onResponseChange, question, responseId, setResponses]);\n\n const handleQuestionFeedbackClick = useCallback(() => {\n if (openQuestionFeedbackModal) {\n openQuestionFeedbackModal(question.item_reference);\n }\n }, [openQuestionFeedbackModal, question]);\n\n const handleTeachingToolsClick = useCallback(() => {\n if (activeQuestionTool !== EActiveQuestionTool.TEACHING_TOOLS) {\n setActiveQuestionTool(EActiveQuestionTool.TEACHING_TOOLS);\n } else {\n unsetActiveQuestionTool();\n }\n }, [setActiveQuestionTool, unsetActiveQuestionTool, activeQuestionTool]);\n\n const handleDiscussionClick = useCallback(() => {\n if (activeQuestionTool !== EActiveQuestionTool.DISCUSSION) {\n setActiveQuestionTool(EActiveQuestionTool.DISCUSSION);\n } else {\n unsetActiveQuestionTool();\n }\n }, [setActiveQuestionTool, unsetActiveQuestionTool, activeQuestionTool]);\n\n const handleSolutionClick = useCallback(() => {\n if (activeQuestionTool !== EActiveQuestionTool.SOLUTION) {\n setActiveQuestionTool(EActiveQuestionTool.SOLUTION);\n } else {\n unsetActiveQuestionTool();\n }\n }, [setActiveQuestionTool, unsetActiveQuestionTool, activeQuestionTool]);\n\n const handleHelpButtonClick = useCallback(() => {\n if (onHelp && question) {\n const { item_number, question_number, total_questions } = question;\n\n onHelp({\n questionId: responseId,\n questionNumber: `${item_number + 1}${\n total_questions > 1 ? String.fromCharCode('a'.charCodeAt(0) + question_number) : ''\n }`,\n });\n }\n }, [onHelp, question, responseId]);\n\n return (\n <Styled.WorksheetQuestionsToolbarContainer\n $showBorder={showBorder}\n $flexDirection=\"row\"\n $alignItems=\"center\"\n >\n {hints.visible && (\n <Clickable label=\"Hint\" disabled={hints.disabled} onClick={handleHintButtonClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Hint\">\n <Styled.IconContainer $disabled={hints.disabled}>\n <Styled.HintsIconContainer>\n <HintsIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n {!hints.allHintsUtilized && hints.nextHintnumber > 1 && (\n <Styled.HintsNumberContainer>\n <Styled.HintsNumber $renderAs=\"ab3-bold\" $color=\"BLACK\">\n {hints.nextHintnumber}\n </Styled.HintsNumber>\n </Styled.HintsNumberContainer>\n )}\n {hints.allHintsUtilized && <Styled.TickMark src={ILLUSTRATIONS.TICK_GREEN} />}\n </Styled.HintsIconContainer>\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {solution.visible && (\n <Clickable label=\"Solution\" disabled={solution.disabled} onClick={handleSolutionClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Solution\">\n <Styled.IconContainer $disabled={solution.disabled}>\n {activeQuestionTool === EActiveQuestionTool.SOLUTION ? (\n <CloseIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n ) : (\n <SolutionIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n )}\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {askTeacher.visible && (\n <Clickable label=\"Ask for help\" onClick={handleHelpButtonClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Help\">\n <Styled.IconContainer>\n <HandIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {questionFeedback.visible && (\n <Clickable label=\"Question Feedback\" onClick={handleQuestionFeedbackClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Feedback\">\n <Styled.IconContainer>\n <QuestionFeedbackIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {behavior.canShowDesmosCalc && (\n <Clickable label=\"Desmos Calculator\" onClick={toggleCalculator}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Calculator\">\n <Styled.IconContainer>\n <CalculatorIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {teachingTools.visible && (\n <Clickable\n label=\"Teaching Tools\"\n disabled={teachingTools.disabled}\n onClick={handleTeachingToolsClick}\n >\n <ArrowTooltip\n position=\"top\"\n renderAs=\"primary\"\n tooltipItem=\"Cue Don't Tell, Hint and Solution\"\n >\n <Styled.IconContainer $disabled={teachingTools.disabled}>\n {activeQuestionTool === EActiveQuestionTool.TEACHING_TOOLS ? (\n <CloseIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n ) : (\n <TeachingToolsIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n )}\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n {discussion.visible && (\n <Clickable label=\"Teacher Validated Question\" onClick={handleDiscussionClick}>\n <ArrowTooltip position=\"top\" renderAs=\"primary\" tooltipItem=\"Teacher Validated Question\">\n <Styled.IconContainer>\n {activeQuestionTool === EActiveQuestionTool.DISCUSSION ? (\n <CloseIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n ) : (\n <TValQuestionIcon width={TOOL_ICON_SIZE} height={TOOL_ICON_SIZE} />\n )}\n </Styled.IconContainer>\n </ArrowTooltip>\n </Clickable>\n )}\n </Styled.WorksheetQuestionsToolbarContainer>\n );\n});\n\nexport default QuestionsToolbar;\n"],"names":["QuestionsToolbar","memo","showBorder","toolbarOptions","hints","solution","askTeacher","questionFeedback","teachingTools","discussion","question","behavior","loggerRef","setResponses","onResponseChange","onHelp","openQuestionFeedbackModal","activeQuestionTool","setActiveQuestionTool","unsetActiveQuestionTool","toggleCalculator","useWorksheetStore","store","activeQuestion","responseId","handleHintButtonClick","useCallback","EVENTS","prevResponses","newResponse","getQuestionMetadata","_a","handleQuestionFeedbackClick","handleTeachingToolsClick","EActiveQuestionTool","handleDiscussionClick","handleSolutionClick","handleHelpButtonClick","item_number","question_number","total_questions","jsxs","Styled.WorksheetQuestionsToolbarContainer","jsx","Clickable","ArrowTooltip","Styled.IconContainer","Styled.HintsIconContainer","HintsIcon","TOOL_ICON_SIZE","Styled.HintsNumberContainer","Styled.HintsNumber","Styled.TickMark","ILLUSTRATIONS","CloseIcon","SolutionIcon","HandIcon","QuestionFeedbackIcon","CalculatorIcon","TeachingToolsIcon","TValQuestionIcon"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -827,6 +827,8 @@ declare const getTabConfig: IGetTabConfig;
|
|
|
827
827
|
|
|
828
828
|
/* Excluded from this release type: getTabsConfig */
|
|
829
829
|
|
|
830
|
+
declare const getTagConfig: IGetTagConfig;
|
|
831
|
+
|
|
830
832
|
declare const getTextButtonConfig: IGetTextButtonConfig;
|
|
831
833
|
|
|
832
834
|
declare function getTextTypes(multiplier?: number): Record<TTextVariants, ITextConfig>;
|
|
@@ -1951,6 +1953,12 @@ declare interface IGetTabsConfig {
|
|
|
1951
1953
|
(): Record<TTabsTheme, ITabsThemeConfig>;
|
|
1952
1954
|
}
|
|
1953
1955
|
|
|
1956
|
+
declare interface IGetTagConfig {
|
|
1957
|
+
(): {
|
|
1958
|
+
sizes: Record<TTagSizes, ITagSizeConfig>;
|
|
1959
|
+
};
|
|
1960
|
+
}
|
|
1961
|
+
|
|
1954
1962
|
declare interface IGetTextButtonConfig {
|
|
1955
1963
|
(): {
|
|
1956
1964
|
sizes: Record<TTextButtonSizes, ITextButtonSizeConfig>;
|
|
@@ -4579,9 +4587,20 @@ export declare interface ITabVariantConfig {
|
|
|
4579
4587
|
}
|
|
4580
4588
|
|
|
4581
4589
|
declare interface ITagProps {
|
|
4582
|
-
backgroundColor: TColorNames;
|
|
4583
4590
|
text: string;
|
|
4584
|
-
|
|
4591
|
+
size: TTagSizes;
|
|
4592
|
+
shape?: TTagShapes;
|
|
4593
|
+
}
|
|
4594
|
+
|
|
4595
|
+
export declare interface ITagSizeConfig {
|
|
4596
|
+
fontSize: number;
|
|
4597
|
+
lineHeight: number;
|
|
4598
|
+
paddingHorizontal: number;
|
|
4599
|
+
paddingTop: number;
|
|
4600
|
+
borderRadius: {
|
|
4601
|
+
curved: number;
|
|
4602
|
+
square: number;
|
|
4603
|
+
};
|
|
4585
4604
|
}
|
|
4586
4605
|
|
|
4587
4606
|
declare interface ITalkMeter {
|
|
@@ -4710,6 +4729,7 @@ export declare interface ITheme {
|
|
|
4710
4729
|
layout: ReturnType<typeof getLayout>;
|
|
4711
4730
|
tab: ReturnType<typeof getTabConfig>;
|
|
4712
4731
|
tabs: ReturnType<typeof getTabsConfig>;
|
|
4732
|
+
tag: ReturnType<typeof getTagConfig>;
|
|
4713
4733
|
text: ReturnType<typeof getTextTypes>;
|
|
4714
4734
|
textButton: ReturnType<typeof getTextButtonConfig>;
|
|
4715
4735
|
zIndex: ReturnType<typeof getZIndexConfig>;
|
|
@@ -7631,6 +7651,10 @@ declare type TTabsTheme = 'light' | 'dark';
|
|
|
7631
7651
|
|
|
7632
7652
|
export declare type TTabVariants = 'primary' | 'secondary';
|
|
7633
7653
|
|
|
7654
|
+
export declare type TTagShapes = 'curved' | 'square';
|
|
7655
|
+
|
|
7656
|
+
export declare type TTagSizes = '8px' | '10px' | '12px';
|
|
7657
|
+
|
|
7634
7658
|
declare type TTestDifficultyLevel = 'EASY' | 'MODERATE' | 'DIFFICULT';
|
|
7635
7659
|
|
|
7636
7660
|
declare type TTestHelpItemsDataProps = {
|
|
@@ -7643,7 +7667,7 @@ export declare type TTestType = 'standardized' | 'non-standardized' | 'no-test'
|
|
|
7643
7667
|
|
|
7644
7668
|
export declare type TTextButtonSizes = 'small' | 'regular' | 'medium';
|
|
7645
7669
|
|
|
7646
|
-
export declare type TTextVariants = `${'ah1' | 'ah2' | 'ah3' | 'ah4' | 'ab1' | 'ab2' | 'ab3'
|
|
7670
|
+
export declare type TTextVariants = `${'ah1' | 'ah2' | 'ah3' | 'ah4' | 'ab1' | 'ab2' | 'ab3'}${'' | '-bold' | '-black'}` | `${'ac1' | 'ac2' | 'ac3' | 'ac4' | 'ac5'}${'' | '-black'}` | `${'ub1' | 'ub2' | 'ub3' | 'ub4'}${'' | '-bold'}`;
|
|
7647
7671
|
|
|
7648
7672
|
declare type TTimeUnit = 'hours' | 'minutes' | 'days';
|
|
7649
7673
|
|