@digabi/exam-engine-core 23.5.4 → 23.6.0
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/__tests__/playwright/stories/exam/DNDAnswerContainer.story.js +1 -1
- package/dist/__tests__/playwright/stories/exam/DNDAnswerContainer.story.js.map +1 -1
- package/dist/__tests__/tsconfig.tsbuildinfo +1 -1
- package/dist/components/attachments/Attachments.d.ts.map +1 -1
- package/dist/components/attachments/Attachments.js +5 -4
- package/dist/components/attachments/Attachments.js.map +1 -1
- package/dist/components/attachments/ExternalMaterial.js +1 -1
- package/dist/components/attachments/ExternalMaterial.js.map +1 -1
- package/dist/components/context/AnnotationProvider.d.ts +3 -15
- package/dist/components/context/AnnotationProvider.d.ts.map +1 -1
- package/dist/components/context/AnnotationProvider.js +5 -61
- package/dist/components/context/AnnotationProvider.js.map +1 -1
- package/dist/components/exam/DropdownAnswer.d.ts.map +1 -1
- package/dist/components/exam/DropdownAnswer.js +2 -3
- package/dist/components/exam/DropdownAnswer.js.map +1 -1
- package/dist/components/exam/Exam.d.ts +4 -5
- package/dist/components/exam/Exam.d.ts.map +1 -1
- package/dist/components/exam/Exam.js +5 -4
- package/dist/components/exam/Exam.js.map +1 -1
- package/dist/components/exam/ExternalMaterial.js +1 -1
- package/dist/components/exam/ExternalMaterial.js.map +1 -1
- package/dist/components/grading-instructions/GradingInstructions.d.ts.map +1 -1
- package/dist/components/grading-instructions/GradingInstructions.js +5 -4
- package/dist/components/grading-instructions/GradingInstructions.js.map +1 -1
- package/dist/components/results/Results.d.ts.map +1 -1
- package/dist/components/results/Results.js +4 -3
- package/dist/components/results/Results.js.map +1 -1
- package/dist/components/shared/Formula.d.ts.map +1 -1
- package/dist/components/shared/Formula.js +9 -53
- package/dist/components/shared/Formula.js.map +1 -1
- package/dist/components/shared/References.d.ts +1 -1
- package/dist/components/shared/References.d.ts.map +1 -1
- package/dist/components/shared/References.js +1 -3
- package/dist/components/shared/References.js.map +1 -1
- package/dist/components/shared/TableOfContents.d.ts.map +1 -1
- package/dist/components/shared/TableOfContents.js +4 -4
- package/dist/components/shared/TableOfContents.js.map +1 -1
- package/dist/createRenderChildNodes.d.ts +1 -1
- package/dist/createRenderChildNodes.d.ts.map +1 -1
- package/dist/createRenderChildNodes.js +45 -42
- package/dist/createRenderChildNodes.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/main-bundle.js +4 -4
- package/package.json +2 -2
- package/dist/__tests__/annotations.test.d.ts +0 -2
- package/dist/__tests__/annotations.test.d.ts.map +0 -1
- package/dist/__tests__/annotations.test.js +0 -306
- package/dist/__tests__/annotations.test.js.map +0 -1
- package/dist/__tests__/playwright/Annotations.test.d.ts +0 -2
- package/dist/__tests__/playwright/Annotations.test.d.ts.map +0 -1
- package/dist/__tests__/playwright/Annotations.test.js +0 -201
- package/dist/__tests__/playwright/Annotations.test.js.map +0 -1
- package/dist/__tests__/playwright/attachments/Attachments.test.d.ts +0 -2
- package/dist/__tests__/playwright/attachments/Attachments.test.d.ts.map +0 -1
- package/dist/__tests__/playwright/attachments/Attachments.test.js +0 -30
- package/dist/__tests__/playwright/attachments/Attachments.test.js.map +0 -1
- package/dist/__tests__/playwright/exam/Exam.test.d.ts +0 -2
- package/dist/__tests__/playwright/exam/Exam.test.d.ts.map +0 -1
- package/dist/__tests__/playwright/exam/Exam.test.js +0 -30
- package/dist/__tests__/playwright/exam/Exam.test.js.map +0 -1
- package/dist/__tests__/playwright/grading-instructions/GradingInstructions.test.d.ts +0 -2
- package/dist/__tests__/playwright/grading-instructions/GradingInstructions.test.d.ts.map +0 -1
- package/dist/__tests__/playwright/grading-instructions/GradingInstructions.test.js +0 -30
- package/dist/__tests__/playwright/grading-instructions/GradingInstructions.test.js.map +0 -1
- package/dist/__tests__/playwright/stories/Annotations.story.d.ts +0 -15
- package/dist/__tests__/playwright/stories/Annotations.story.d.ts.map +0 -1
- package/dist/__tests__/playwright/stories/Annotations.story.js +0 -27
- package/dist/__tests__/playwright/stories/Annotations.story.js.map +0 -1
- package/dist/__tests__/playwright/stories/attachments/Attachments.story.d.ts +0 -13
- package/dist/__tests__/playwright/stories/attachments/Attachments.story.d.ts.map +0 -1
- package/dist/__tests__/playwright/stories/attachments/Attachments.story.js +0 -17
- package/dist/__tests__/playwright/stories/attachments/Attachments.story.js.map +0 -1
- package/dist/__tests__/playwright/stories/exam/Exam.story.d.ts +0 -12
- package/dist/__tests__/playwright/stories/exam/Exam.story.d.ts.map +0 -1
- package/dist/__tests__/playwright/stories/exam/Exam.story.js +0 -56
- package/dist/__tests__/playwright/stories/exam/Exam.story.js.map +0 -1
- package/dist/__tests__/playwright/stories/grading-intructions/GradingInstructions.story.d.ts +0 -13
- package/dist/__tests__/playwright/stories/grading-intructions/GradingInstructions.story.d.ts.map +0 -1
- package/dist/__tests__/playwright/stories/grading-intructions/GradingInstructions.story.js +0 -16
- package/dist/__tests__/playwright/stories/grading-intructions/GradingInstructions.story.js.map +0 -1
- package/dist/assets/closeButton.svg +0 -1
- package/dist/assets/collapse.svg +0 -12
- package/dist/assets/expand.svg +0 -12
- package/dist/assets/helpButton.svg +0 -9
- package/dist/assets/redoButton.svg +0 -5
- package/dist/assets/undoButton.svg +0 -5
- package/dist/components/results/DNDAnswerContainer.d.ts +0 -4
- package/dist/components/results/DNDAnswerContainer.d.ts.map +0 -1
- package/dist/components/results/DNDAnswerContainer.js +0 -22
- package/dist/components/results/DNDAnswerContainer.js.map +0 -1
- package/dist/components/shared/AnnotatableText.d.ts +0 -5
- package/dist/components/shared/AnnotatableText.d.ts.map +0 -1
- package/dist/components/shared/AnnotatableText.js +0 -25
- package/dist/components/shared/AnnotatableText.js.map +0 -1
- package/dist/components/shared/AnnotationImageMark.d.ts +0 -16
- package/dist/components/shared/AnnotationImageMark.d.ts.map +0 -1
- package/dist/components/shared/AnnotationImageMark.js +0 -99
- package/dist/components/shared/AnnotationImageMark.js.map +0 -1
- package/dist/components/shared/AnnotationMark.d.ts +0 -9
- package/dist/components/shared/AnnotationMark.d.ts.map +0 -1
- package/dist/components/shared/AnnotationMark.js +0 -14
- package/dist/components/shared/AnnotationMark.js.map +0 -1
- package/dist/components/shared/AnnotationPopup.d.ts +0 -3
- package/dist/components/shared/AnnotationPopup.d.ts.map +0 -1
- package/dist/components/shared/AnnotationPopup.js +0 -24
- package/dist/components/shared/AnnotationPopup.js.map +0 -1
- package/dist/components/shared/AnnotationTextMark.d.ts +0 -11
- package/dist/components/shared/AnnotationTextMark.d.ts.map +0 -1
- package/dist/components/shared/AnnotationTextMark.js +0 -21
- package/dist/components/shared/AnnotationTextMark.js.map +0 -1
- package/dist/components/shared/markText.d.ts +0 -6
- package/dist/components/shared/markText.d.ts.map +0 -1
- package/dist/components/shared/markText.js +0 -77
- package/dist/components/shared/markText.js.map +0 -1
- package/dist/eslint.config.d.ts +0 -22
- package/dist/eslint.config.d.ts.map +0 -1
- package/dist/eslint.config.js +0 -31
- package/dist/eslint.config.js.map +0 -1
- package/dist/i18n/exam_titles_fi-FI.d.ts +0 -46
- package/dist/i18n/exam_titles_fi-FI.d.ts.map +0 -1
- package/dist/i18n/exam_titles_fi-FI.js +0 -46
- package/dist/i18n/exam_titles_fi-FI.js.map +0 -1
- package/dist/i18n/exam_titles_fi-FI.json +0 -45
- package/dist/i18n/exam_titles_sv-FI.d.ts +0 -46
- package/dist/i18n/exam_titles_sv-FI.d.ts.map +0 -1
- package/dist/i18n/exam_titles_sv-FI.js +0 -46
- package/dist/i18n/exam_titles_sv-FI.js.map +0 -1
- package/dist/i18n/exam_titles_sv-FI.json +0 -45
- package/dist/i18n/exams.d.ts +0 -11
- package/dist/i18n/exams.d.ts.map +0 -1
- package/dist/i18n/exams.js +0 -10
- package/dist/i18n/exams.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Attachments.d.ts","sourceRoot":"","sources":["../../../src/components/attachments/Attachments.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"Attachments.d.ts","sourceRoot":"","sources":["../../../src/components/attachments/Attachments.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAA;AAyE7D,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,iBAGxC,CAAA;;AAED,wBAA8E"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import React, { useContext, useEffect } from 'react';
|
1
|
+
import React, { useContext, useEffect, useMemo } from 'react';
|
2
2
|
import { I18nextProvider } from 'react-i18next';
|
3
3
|
import { createRenderChildNodes } from '../../createRenderChildNodes';
|
4
4
|
import { NBSP, findChildElement } from '../../dom-utils';
|
@@ -17,22 +17,23 @@ import { withSectionContext } from '../context/SectionContext';
|
|
17
17
|
import AttachmentsExternalMaterial from './ExternalMaterial';
|
18
18
|
import AttachmentsQuestion from './Question';
|
19
19
|
import AttachmentsQuestionTitle from './QuestionTitle';
|
20
|
-
const
|
20
|
+
const _renderChildNodes = createRenderChildNodes({
|
21
21
|
'audio-group': RenderExamElements,
|
22
22
|
'external-material': AttachmentsExternalMaterial,
|
23
23
|
'question-title': AttachmentsQuestionTitle,
|
24
24
|
question: AttachmentsQuestion,
|
25
25
|
section: withSectionContext(RenderChildNodes)
|
26
26
|
});
|
27
|
-
const Attachments = ({
|
27
|
+
const Attachments = ({ annotationsEnabled, renderComponentOverrides }) => {
|
28
28
|
const { root, language, date, dateTimeFormatter, dayCode, examCode, resolveAttachment, subjectLanguage } = useContext(CommonExamContext);
|
29
|
+
const renderChildNodes = useMemo(() => _renderChildNodes(renderComponentOverrides), [renderComponentOverrides]);
|
29
30
|
const examTitle = findChildElement(root, 'exam-title');
|
30
31
|
const examStylesheet = root.getAttribute('exam-stylesheet');
|
31
32
|
const externalMaterial = findChildElement(root, 'external-material');
|
32
33
|
const i18n = useCached(() => initI18n(language, examCode, dayCode));
|
33
34
|
useEffect(changeLanguage(i18n, language));
|
34
35
|
useEffect(scrollToHash, []);
|
35
|
-
return (React.createElement(AnnotationProvider, {
|
36
|
+
return (React.createElement(AnnotationProvider, { annotationsEnabled: annotationsEnabled },
|
36
37
|
React.createElement(I18nextProvider, { i18n: i18n },
|
37
38
|
React.createElement("main", { className: "e-exam attachments", lang: subjectLanguage, "aria-labelledby": examTitleId },
|
38
39
|
React.createElement(React.StrictMode, null),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Attachments.js","sourceRoot":"","sources":["../../../src/components/attachments/Attachments.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;
|
1
|
+
{"version":3,"file":"Attachments.js","sourceRoot":"","sources":["../../../src/components/attachments/Attachments.tsx"],"names":[],"mappings":"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"}
|
@@ -32,7 +32,7 @@ const renderChildNodes = createRenderChildNodes({
|
|
32
32
|
translation: ExamTranslation,
|
33
33
|
reference: surround(Reference, 'div', { className: 'e-mrg-y-2 e-font-size-s' }),
|
34
34
|
'image-overlay': ImageOverlay
|
35
|
-
});
|
35
|
+
})();
|
36
36
|
function ExternalMaterial({ element, forceRender = false }) {
|
37
37
|
if (queryAncestors(element, 'question') == null && !forceRender) {
|
38
38
|
return null;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ExternalMaterial.js","sourceRoot":"","sources":["../../../src/components/attachments/ExternalMaterial.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,sBAAsB,EAAsB,MAAM,8BAA8B,CAAA;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,gBAAgB,MAAM,0BAA0B,CAAA;AACvD,OAAO,iBAAiB,MAAM,2BAA2B,CAAA;AACzD,OAAO,UAAU,MAAM,cAAc,CAAA;AACrC,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,MAAM,iBAAiB,CAAA;AACnC,OAAO,oBAAoB,MAAM,0BAA0B,CAAA;AAC3D,OAAO,IAAI,MAAM,gBAAgB,CAAA;AACjC,OAAO,OAAO,MAAM,mBAAmB,CAAA;AACvC,OAAO,KAAK,MAAM,iBAAiB,CAAA;AACnC,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAC3C,OAAO,QAAQ,MAAM,aAAa,CAAA;AAClC,OAAO,KAAK,MAAM,iBAAiB,CAAA;AACnC,OAAO,YAAY,MAAM,wBAAwB,CAAA;AACjD,OAAO,gBAAgB,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,eAAe,MAAM,2BAA2B,CAAA;AAEvD,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;IAC9C,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,CAAC;IAC3C,kBAAkB,EAAE,iBAAiB,CAAC,MAAM,CAAC;IAC7C,kBAAkB,EAAE,eAAe;IACnC,UAAU,EAAE,UAAU;IACtB,KAAK,EAAE,KAAK;IACZ,aAAa,EAAE,gBAAgB;IAC/B,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,OAAO;IAChB,iBAAiB,EAAE,cAAc;IACjC,WAAW,EAAE,eAAe;IAC5B,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAAC;IAC/E,eAAe,EAAE,YAAY;CAC9B,CAAC,CAAA;
|
1
|
+
{"version":3,"file":"ExternalMaterial.js","sourceRoot":"","sources":["../../../src/components/attachments/ExternalMaterial.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,sBAAsB,EAAsB,MAAM,8BAA8B,CAAA;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,gBAAgB,MAAM,0BAA0B,CAAA;AACvD,OAAO,iBAAiB,MAAM,2BAA2B,CAAA;AACzD,OAAO,UAAU,MAAM,cAAc,CAAA;AACrC,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,MAAM,iBAAiB,CAAA;AACnC,OAAO,oBAAoB,MAAM,0BAA0B,CAAA;AAC3D,OAAO,IAAI,MAAM,gBAAgB,CAAA;AACjC,OAAO,OAAO,MAAM,mBAAmB,CAAA;AACvC,OAAO,KAAK,MAAM,iBAAiB,CAAA;AACnC,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAC3C,OAAO,QAAQ,MAAM,aAAa,CAAA;AAClC,OAAO,KAAK,MAAM,iBAAiB,CAAA;AACnC,OAAO,YAAY,MAAM,wBAAwB,CAAA;AACjD,OAAO,gBAAgB,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,eAAe,MAAM,2BAA2B,CAAA;AAEvD,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;IAC9C,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,CAAC;IAC3C,kBAAkB,EAAE,iBAAiB,CAAC,MAAM,CAAC;IAC7C,kBAAkB,EAAE,eAAe;IACnC,UAAU,EAAE,UAAU;IACtB,KAAK,EAAE,KAAK;IACZ,aAAa,EAAE,gBAAgB;IAC/B,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,OAAO;IAChB,iBAAiB,EAAE,cAAc;IACjC,WAAW,EAAE,eAAe;IAC5B,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAAC;IAC/E,eAAe,EAAE,YAAY;CAC9B,CAAC,EAAE,CAAA;AAMJ,SAAS,gBAAgB,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,KAAK,EAAoC;IAC1F,IAAI,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QAChE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAA;IAE/C,OAAO,CACL;QACG,eAAe,GAAG,CAAC,IAAI,CACtB,oBAAC,oBAAoB,IAAO,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAM,CAC3F;QACA,gBAAgB,CAAC,OAAO,CAAC,CACzB,CACJ,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA"}
|
@@ -1,19 +1,7 @@
|
|
1
1
|
import React from 'react';
|
2
|
-
import { AnnotationPart, ExamImageAnnotation, NewExamAnnotation, WithAnnotationId } from '../../types/ExamAnnotations';
|
3
|
-
import { AnnotationProps } from '../exam/Exam';
|
4
2
|
export type AnnotationContextType = {
|
5
|
-
annotationsEnabled:
|
6
|
-
newAnnotation: NewExamAnnotation | null;
|
7
|
-
setNewAnnotation: (a: NewExamAnnotation | null) => void;
|
8
|
-
newAnnotationRef: HTMLElement | null;
|
9
|
-
setNewAnnotationRef: (ref: HTMLElement | null) => void;
|
10
|
-
textAnnotations: Record<string, WithAnnotationId<AnnotationPart>[]>;
|
11
|
-
imageAnnotations: Record<string, ExamImageAnnotation[]>;
|
12
|
-
onClickAnnotation: (e: React.MouseEvent<HTMLElement, MouseEvent>, annotationId: number) => void;
|
13
|
-
onSaveAnnotation: (annotation: NewExamAnnotation, comment: string) => Promise<string | undefined>;
|
3
|
+
annotationsEnabled: boolean;
|
14
4
|
};
|
15
|
-
export declare const AnnotationContext: React.Context<
|
16
|
-
|
17
|
-
}>;
|
18
|
-
export declare const AnnotationProvider: ({ children, annotations, onClickAnnotation, onSaveAnnotation }: React.PropsWithChildren<AnnotationProps>) => string | number | boolean | React.JSX.Element | Iterable<React.ReactNode> | null | undefined;
|
5
|
+
export declare const AnnotationContext: React.Context<boolean>;
|
6
|
+
export declare const AnnotationProvider: React.NamedExoticComponent<React.PropsWithChildren<Partial<AnnotationContextType>>>;
|
19
7
|
//# sourceMappingURL=AnnotationProvider.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"AnnotationProvider.d.ts","sourceRoot":"","sources":["../../../src/components/context/AnnotationProvider.tsx"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"AnnotationProvider.d.ts","sourceRoot":"","sources":["../../../src/components/context/AnnotationProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,MAAM,qBAAqB,GAAG;IAClC,kBAAkB,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,iBAAiB,wBAAsC,CAAA;AAGpE,eAAO,MAAM,kBAAkB,qFAK7B,CAAA"}
|
@@ -1,63 +1,7 @@
|
|
1
|
-
import
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
annotationsEnabled: false
|
1
|
+
import React from 'react';
|
2
|
+
export const AnnotationContext = React.createContext(false);
|
3
|
+
// eslint-disable-next-line prefer-arrow-callback
|
4
|
+
export const AnnotationProvider = React.memo(function AnnotationProvider({ children, annotationsEnabled }) {
|
5
|
+
return React.createElement(AnnotationContext.Provider, { value: annotationsEnabled !== null && annotationsEnabled !== void 0 ? annotationsEnabled : false }, children);
|
7
6
|
});
|
8
|
-
export const AnnotationProvider = ({ children, annotations, onClickAnnotation, onSaveAnnotation }) => {
|
9
|
-
const annotationsEnabled = !!annotations && !!onClickAnnotation && !!onSaveAnnotation;
|
10
|
-
if (!annotationsEnabled) {
|
11
|
-
return children;
|
12
|
-
}
|
13
|
-
return (React.createElement(AnnotationContextProvider, { annotations: annotations, onClickAnnotation: onClickAnnotation, onSaveAnnotation: onSaveAnnotation }, children));
|
14
|
-
};
|
15
|
-
function AnnotationContextProvider({ children, annotations, onClickAnnotation, onSaveAnnotation }) {
|
16
|
-
const [newAnnotation, setNewAnnotation] = React.useState(null);
|
17
|
-
const [newAnnotationRef, setNewAnnotationRef] = React.useState(null);
|
18
|
-
const onMouseDown = useCallback((e) => {
|
19
|
-
const target = e.target;
|
20
|
-
const clickIsInPopup = !!target.closest('.e-popup');
|
21
|
-
if (!clickIsInPopup) {
|
22
|
-
setNewAnnotation(null);
|
23
|
-
setNewAnnotationRef(null);
|
24
|
-
}
|
25
|
-
onMouseDownForAnnotation(e, setNewAnnotation);
|
26
|
-
}, [setNewAnnotation, setNewAnnotationRef, onMouseDownForAnnotation]);
|
27
|
-
const textAnnotations = useMemo(() => _.groupBy(annotations.flatMap(a => {
|
28
|
-
if (a.annotationType === 'text') {
|
29
|
-
return a.annotationParts.map((p, index, arr) => {
|
30
|
-
const isLastChild = index === arr.length - 1;
|
31
|
-
return {
|
32
|
-
...p,
|
33
|
-
annotationId: a.annotationId,
|
34
|
-
markNumber: isLastChild ? a.markNumber : undefined,
|
35
|
-
hidden: a.hidden,
|
36
|
-
resolved: a === null || a === void 0 ? void 0 : a.resolved
|
37
|
-
};
|
38
|
-
});
|
39
|
-
}
|
40
|
-
return [];
|
41
|
-
}), a => a.annotationAnchor), [annotations]);
|
42
|
-
const imageAnnotations = useMemo(() => _.groupBy(annotations.flatMap(a => {
|
43
|
-
if (a.annotationType === 'image') {
|
44
|
-
return a;
|
45
|
-
}
|
46
|
-
return [];
|
47
|
-
}), a => a.annotationAnchor), [annotations]);
|
48
|
-
return (React.createElement(AnnotationContext.Provider, { value: {
|
49
|
-
annotationsEnabled: true,
|
50
|
-
textAnnotations: textAnnotations,
|
51
|
-
imageAnnotations: imageAnnotations,
|
52
|
-
onClickAnnotation,
|
53
|
-
onSaveAnnotation,
|
54
|
-
newAnnotation,
|
55
|
-
setNewAnnotation,
|
56
|
-
newAnnotationRef,
|
57
|
-
setNewAnnotationRef
|
58
|
-
} },
|
59
|
-
React.createElement("span", { onMouseDown: onMouseDown },
|
60
|
-
React.createElement(AnnotationPopup, null),
|
61
|
-
children)));
|
62
|
-
}
|
63
7
|
//# sourceMappingURL=AnnotationProvider.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"AnnotationProvider.js","sourceRoot":"","sources":["../../../src/components/context/AnnotationProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
1
|
+
{"version":3,"file":"AnnotationProvider.js","sourceRoot":"","sources":["../../../src/components/context/AnnotationProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAU,KAAK,CAAC,CAAA;AAEpE,iDAAiD;AACjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,kBAAkB,CAAC,EACvE,QAAQ,EACR,kBAAkB,EACsC;IACxD,OAAO,oBAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,GAAI,KAAK,IAAG,QAAQ,CAA8B,CAAA;AAChH,CAAC,CAAC,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DropdownAnswer.d.ts","sourceRoot":"","sources":["../../../src/components/exam/DropdownAnswer.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAkD,MAAM,OAAO,CAAA;AAEtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;;
|
1
|
+
{"version":3,"file":"DropdownAnswer.d.ts","sourceRoot":"","sources":["../../../src/components/exam/DropdownAnswer.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAkD,MAAM,OAAO,CAAA;AAEtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;;AAyJjE,wBAAyC"}
|
@@ -62,8 +62,7 @@ const DropdownAnswer = ({ element, renderChildNodes }) => {
|
|
62
62
|
});
|
63
63
|
const { t } = useExamTranslation();
|
64
64
|
const scoreId = answerScoreId(element);
|
65
|
-
const
|
66
|
-
const canBeAnnotated = Object.keys(annotationContextData).length !== 0;
|
65
|
+
const annotationsEnabled = useContext(AnnotationContext);
|
67
66
|
const mouseHandlerOverrides = {
|
68
67
|
onClick: () => { },
|
69
68
|
onMouseDown: () => { },
|
@@ -93,7 +92,7 @@ const DropdownAnswer = ({ element, renderChildNodes }) => {
|
|
93
92
|
}), key: i, ...getItemProps({
|
94
93
|
item,
|
95
94
|
index: i
|
96
|
-
}), ...(
|
95
|
+
}), ...(annotationsEnabled ? mouseHandlerOverrides : {}) },
|
97
96
|
React.createElement("span", { className: classNames('e-dropdown-answer__menu-item-inner e-block', { 'e-nowrap': measuring }) }, item ? renderChildNodes(item) : React.createElement("span", { "aria-label": t.raw('dropdown-answer.clear') }, NBSP))))))),
|
98
97
|
answers.length > 1 && React.createElement(Score, { score: maxScore, size: 'inline', id: scoreId })));
|
99
98
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DropdownAnswer.js","sourceRoot":"","sources":["../../../src/components/exam/DropdownAnswer.tsx"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"DropdownAnswer.js","sourceRoot":"","sources":["../../../src/components/exam/DropdownAnswer.tsx"],"names":[],"mappings":"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"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import React from 'react';
|
2
|
-
import {
|
2
|
+
import { ExamAnswer, ExamComponentProps, ExamServerAPI, InitialCasStatus, RestrictedAudioPlaybackStats } from '../../index';
|
3
3
|
import { RichTextAnswer, TextAnswer as TextAnswerType } from '../../types/ExamAnswer';
|
4
4
|
/** Props common to taking the exams and viewing results */
|
5
5
|
export interface CommonExamProps {
|
@@ -14,11 +14,10 @@ export interface CommonExamProps {
|
|
14
14
|
/** @deprecated Not used anymore */
|
15
15
|
language?: string;
|
16
16
|
abitti2?: boolean;
|
17
|
+
renderComponentOverrides?: Record<string, React.ComponentType<ExamComponentProps>>;
|
17
18
|
}
|
18
19
|
export interface AnnotationProps {
|
19
|
-
|
20
|
-
onClickAnnotation?: (e: React.MouseEvent<HTMLElement, MouseEvent>, annotationId: number) => void;
|
21
|
-
onSaveAnnotation?: (annotation: NewExamAnnotation, comment: string) => Promise<string | undefined>;
|
20
|
+
annotationsEnabled?: boolean;
|
22
21
|
}
|
23
22
|
interface UndoViewProps {
|
24
23
|
close: () => void;
|
@@ -43,7 +42,7 @@ export interface ExamProps extends CommonExamProps {
|
|
43
42
|
showUndoView: boolean;
|
44
43
|
undoViewProps: UndoViewProps;
|
45
44
|
}
|
46
|
-
export declare const
|
45
|
+
export declare const renderChildNodesBase: (componentOverrides?: Record<string, React.ComponentType<ExamComponentProps>>) => import("../../createRenderChildNodes").RenderChildNodes;
|
47
46
|
declare const _default: React.MemoExoticComponent<React.ComponentType<any>>;
|
48
47
|
export default _default;
|
49
48
|
//# sourceMappingURL=Exam.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Exam.d.ts","sourceRoot":"","sources":["../../../src/components/exam/Exam.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"Exam.d.ts","sourceRoot":"","sources":["../../../src/components/exam/Exam.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8D,MAAM,OAAO,CAAA;AAOlF,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,4BAA4B,EAC7B,MAAM,aAAa,CAAA;AAIpB,OAAO,EAAE,cAAc,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,wBAAwB,CAAA;AA8CrF,2DAA2D;AAC3D,MAAM,WAAW,eAAe;IAC9B,sBAAsB;IACtB,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,uCAAuC;IACvC,cAAc,EAAE,MAAM,CAAA;IACtB,iEAAiE;IACjE,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IAC/C,mBAAmB;IACnB,GAAG,EAAE,WAAW,CAAA;IAChB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAA;CACnF;AAED,MAAM,WAAW,eAAe;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B;AAED,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,aAAa,EAAE,CAAC,UAAU,EAAE,cAAc,GAAG,cAAc,KAAK,IAAI,CAAA;IACpE,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,uDAAuD;AACvD,MAAM,WAAW,SAAU,SAAQ,eAAe;IAChD,2CAA2C;IAC3C,SAAS,EAAE,gBAAgB,CAAA;IAC3B,oEAAoE;IACpE,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B;;;OAGG;IACH,4BAA4B,EAAE,4BAA4B,EAAE,CAAA;IAC5D,qCAAqC;IACrC,aAAa,EAAE,aAAa,CAAA;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,OAAO,CAAA;IACrB,aAAa,EAAE,aAAa,CAAA;CAC7B;AAED,eAAO,MAAM,oBAAoB,uCA3FmC,MAAO,aACzE,iFAyHA,CAAA;;AAuMF,wBAAuE"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import React, { createRef, useContext, useEffect, useState } from 'react';
|
1
|
+
import React, { createRef, useContext, useEffect, useMemo, useState } from 'react';
|
2
2
|
import { I18nextProvider } from 'react-i18next';
|
3
3
|
import { Provider } from 'react-redux';
|
4
4
|
import { createRenderChildNodes } from '../../createRenderChildNodes';
|
@@ -52,7 +52,7 @@ import TextAnswer from './TextAnswer';
|
|
52
52
|
import { UndoView } from './UndoView';
|
53
53
|
import ErrorIndicator from './internal/ErrorIndicator';
|
54
54
|
import SaveIndicator from './internal/SaveIndicator';
|
55
|
-
export const
|
55
|
+
export const renderChildNodesBase = createRenderChildNodes({
|
56
56
|
attachment: ExamAttachment,
|
57
57
|
'attachment-link': mkAttachmentLink('link'),
|
58
58
|
'attachment-links': mkAttachmentLinks('link'),
|
@@ -84,8 +84,9 @@ export const renderChildNodes = createRenderChildNodes({
|
|
84
84
|
video: Video,
|
85
85
|
'image-overlay': ImageOverlay
|
86
86
|
});
|
87
|
-
const Exam = ({ doc, casStatus, answers, restrictedAudioPlaybackStats, examServerApi, studentName, showUndoView, undoViewProps,
|
87
|
+
const Exam = ({ doc, casStatus, answers, restrictedAudioPlaybackStats, examServerApi, studentName, showUndoView, undoViewProps, annotationsEnabled, renderComponentOverrides }) => {
|
88
88
|
const { date, dateTimeFormatter, dayCode, examCode, language, resolveAttachment, root, subjectLanguage } = useContext(CommonExamContext);
|
89
|
+
const renderChildNodes = useMemo(() => renderChildNodesBase(renderComponentOverrides), [renderComponentOverrides]);
|
89
90
|
const examTitle = findChildElement(root, 'exam-title');
|
90
91
|
const examInstruction = findChildElement(root, 'exam-instruction');
|
91
92
|
const tableOfContents = findChildElement(root, 'table-of-contents');
|
@@ -153,7 +154,7 @@ const Exam = ({ doc, casStatus, answers, restrictedAudioPlaybackStats, examServe
|
|
153
154
|
const isNewKoeVersion = examServerApi.examineExam !== undefined;
|
154
155
|
const isPreview = studentName === '[Kokelaan Nimi]';
|
155
156
|
return (React.createElement(Provider, { store: store },
|
156
|
-
React.createElement(AnnotationProvider, {
|
157
|
+
React.createElement(AnnotationProvider, { annotationsEnabled: annotationsEnabled },
|
157
158
|
React.createElement(TOCContext.Provider, { value: {
|
158
159
|
visibleTOCElements: visibleElements,
|
159
160
|
addRef
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Exam.js","sourceRoot":"","sources":["../../../src/components/exam/Exam.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;
|
1
|
+
{"version":3,"file":"Exam.js","sourceRoot":"","sources":["../../../src/components/exam/Exam.tsx"],"names":[],"mappings":"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"}
|
@@ -9,7 +9,7 @@ import { CommonExamContext } from '../context/CommonExamContext';
|
|
9
9
|
const renderChildNodes = createRenderChildNodes({
|
10
10
|
attachment: withAttachmentContext(Attachment),
|
11
11
|
'attachment-title': AttachmentTitle
|
12
|
-
});
|
12
|
+
})();
|
13
13
|
function Attachment({ element }) {
|
14
14
|
const { displayNumber } = useContext(AttachmentContext);
|
15
15
|
return (React.createElement("li", { "data-list-number": displayNumber, "aria-label": displayNumber }, renderChildNodes(element, 1 /* RenderOptions.SkipHTML */)));
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ExternalMaterial.js","sourceRoot":"","sources":["../../../src/components/exam/ExternalMaterial.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,sBAAsB,EAAqC,MAAM,8BAA8B,CAAA;AACxG,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAA;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAEhE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;IAC9C,UAAU,EAAE,qBAAqB,CAAC,UAAU,CAAC;IAC7C,kBAAkB,EAAE,eAAe;CACpC,CAAC,CAAA;
|
1
|
+
{"version":3,"file":"ExternalMaterial.js","sourceRoot":"","sources":["../../../src/components/exam/ExternalMaterial.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,sBAAsB,EAAqC,MAAM,8BAA8B,CAAA;AACxG,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAA;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAEhE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;IAC9C,UAAU,EAAE,qBAAqB,CAAC,UAAU,CAAC;IAC7C,kBAAkB,EAAE,eAAe;CACpC,CAAC,EAAE,CAAA;AAEJ,SAAS,UAAU,CAAC,EAAE,OAAO,EAAsB;IACjD,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAEvD,OAAO,CACL,gDAAsB,aAAa,gBAAc,aAAc,IAC5D,gBAAgB,CAAC,OAAO,iCAAyB,CAC/C,CACN,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,EAAE,OAAO,EAAsB;IACtD,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IACxD,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAEvD,OAAO,CACL,2BAAG,IAAI,EAAE,GAAG,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,aAAc,EAAE,CAAC,EAAE,SAAS,EAAC,uBAAuB,EAAC,MAAM,EAAC,aAAa,IAC3G,gBAAgB,CAAC,OAAO,CAAC,CACxB,CACL,CAAA;AACH,CAAC;AAOD,SAAS,gBAAgB,CAAC,EAAE,OAAO,EAAE,SAAS,GAAG,IAAI,EAAE,WAAW,GAAG,KAAK,EAAyB;IACjG,IAAI,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QAChE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAClC,MAAM,EAAE,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAA;IAE/C,OAAO,CACL,6BAAK,SAAS,EAAC,kCAAkC;QAC9C,SAAS,IAAI,CACZ,4BAAI,SAAS,EAAC,yBAAyB,EAAC,EAAE,EAAE,EAAE,IAC3C,CAAC,CAAC,yBAAyB,CAAC,CAC1B,CACN;QACD,4BAAI,SAAS,EAAC,+BAA+B,qBAAkB,EAAE,IAC9D,gBAAgB,CAAC,OAAO,CAAC,CACvB,CACD,CACP,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"GradingInstructions.d.ts","sourceRoot":"","sources":["../../../src/components/grading-instructions/GradingInstructions.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"GradingInstructions.d.ts","sourceRoot":"","sources":["../../../src/components/grading-instructions/GradingInstructions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAA;AAc7D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAmI/D,eAAO,MAAM,4BAA4B,EAAE,KAAK,CAAC,iBAGhD,CAAA;;sBAjJc,MAAO,aAAa;;;;;AAmJnC,wBAAqE"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import React, { useContext, useEffect } from 'react';
|
1
|
+
import React, { useContext, useEffect, useMemo } from 'react';
|
2
2
|
import { I18nextProvider } from 'react-i18next';
|
3
3
|
import { createRenderChildNodes } from '../../createRenderChildNodes';
|
4
4
|
import { findChildElement, queryAncestors } from '../../dom-utils';
|
@@ -46,7 +46,7 @@ const renderIfWithinGradingInstructionContent = renderIf(({ element }) => queryA
|
|
46
46
|
'dnd-answer-option'
|
47
47
|
]) != null);
|
48
48
|
const renderIfNotWithinExternalMaterial = renderIf(({ element }) => queryAncestors(element, ['external-material']) == null);
|
49
|
-
const
|
49
|
+
const _renderChildNodes = createRenderChildNodes({
|
50
50
|
'accepted-answer': AutogradedAnswerOption,
|
51
51
|
attachment: RenderExamElements,
|
52
52
|
'attachment-link': renderIfNotWithinExternalMaterial(mkAttachmentLink('plain')),
|
@@ -75,9 +75,10 @@ const renderChildNodes = createRenderChildNodes({
|
|
75
75
|
'section-title': SectionTitle,
|
76
76
|
video: Recording
|
77
77
|
});
|
78
|
-
const GradingInstructions = ({ doc,
|
78
|
+
const GradingInstructions = ({ doc, EditorComponent, annotationsEnabled, renderComponentOverrides }) => {
|
79
79
|
const root = doc.documentElement;
|
80
80
|
const { date, dateTimeFormatter, dayCode, examCode, language, subjectLanguage } = useContext(CommonExamContext);
|
81
|
+
const renderChildNodes = useMemo(() => _renderChildNodes(renderComponentOverrides), [renderComponentOverrides]);
|
81
82
|
const examTitle = findChildElement(root, 'exam-title');
|
82
83
|
const examGradingInstruction = findChildElement(root, 'exam-grading-instruction');
|
83
84
|
const tableOfContents = findChildElement(root, 'table-of-contents');
|
@@ -89,7 +90,7 @@ const GradingInstructions = ({ doc, annotations, onClickAnnotation, onSaveAnnota
|
|
89
90
|
const i18n = useCached(() => initI18n(language, examCode, dayCode));
|
90
91
|
useEffect(changeLanguage(i18n, language));
|
91
92
|
useEffect(scrollToHash, []);
|
92
|
-
return (React.createElement(AnnotationProvider, {
|
93
|
+
return (React.createElement(AnnotationProvider, { annotationsEnabled: annotationsEnabled },
|
93
94
|
React.createElement(GradingInstructionProvider, { EditorComponent: EditorComponent },
|
94
95
|
React.createElement(I18nextProvider, { i18n: i18n },
|
95
96
|
React.createElement("main", { className: "e-exam e-grading-instructions", lang: subjectLanguage },
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"GradingInstructions.js","sourceRoot":"","sources":["../../../src/components/grading-instructions/GradingInstructions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;
|
1
|
+
{"version":3,"file":"GradingInstructions.js","sourceRoot":"","sources":["../../../src/components/grading-instructions/GradingInstructions.tsx"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Results.d.ts","sourceRoot":"","sources":["../../../src/components/results/Results.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"Results.d.ts","sourceRoot":"","sources":["../../../src/components/results/Results.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAA;AAE7D,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAU/C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AA2B9C,MAAM,WAAW,YAAa,SAAQ,eAAe;IACnD,8GAA8G;IAC9G,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,oGAAoG;IACpG,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,8BAA8B;IAC9B,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;;AAqKD,wBAA6E"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import React, { useContext, useEffect } from 'react';
|
1
|
+
import React, { useContext, useEffect, useMemo } from 'react';
|
2
2
|
import { I18nextProvider } from 'react-i18next';
|
3
3
|
import { createRenderChildNodes } from '../../createRenderChildNodes';
|
4
4
|
import { findChildElement, queryAncestors } from '../../dom-utils';
|
@@ -34,7 +34,7 @@ import { EndExamSession } from './EndExamSession';
|
|
34
34
|
import { Footer } from '../shared/Footer';
|
35
35
|
import { DNDAnswerContainer } from '../shared/DNDAnswerContainer';
|
36
36
|
import { AudioContainer } from './AudioContainer';
|
37
|
-
const
|
37
|
+
const _renderChildNodes = createRenderChildNodes({
|
38
38
|
attachment: RenderChildNodes,
|
39
39
|
'attachment-link': mkAttachmentLink('plain'),
|
40
40
|
'attachment-links': mkAttachmentLinks('plain'),
|
@@ -57,9 +57,10 @@ const renderChildNodes = createRenderChildNodes({
|
|
57
57
|
'scored-text-answer': ScoredTextAnswer,
|
58
58
|
'scored-text-answers': RenderChildNodes
|
59
59
|
});
|
60
|
-
const Results = ({ doc, returnToExam, endSession, studentSessionEnded = false, isPreviewPage }) => {
|
60
|
+
const Results = ({ doc, returnToExam, endSession, studentSessionEnded = false, isPreviewPage, renderComponentOverrides }) => {
|
61
61
|
const { date, dateTimeFormatter, dayCode, examCode, language, resolveAttachment, root, subjectLanguage } = useContext(CommonExamContext);
|
62
62
|
const { answersByQuestionId } = useContext(ResultsContext);
|
63
|
+
const renderChildNodes = useMemo(() => _renderChildNodes(renderComponentOverrides), [renderComponentOverrides]);
|
63
64
|
const examTitle = findChildElement(root, 'exam-title');
|
64
65
|
const examStylesheet = root.getAttribute('exam-stylesheet');
|
65
66
|
const i18n = useCached(() => initI18n(language, examCode, dayCode));
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Results.js","sourceRoot":"","sources":["../../../src/components/results/Results.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;
|
1
|
+
{"version":3,"file":"Results.js","sourceRoot":"","sources":["../../../src/components/results/Results.tsx"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Formula.d.ts","sourceRoot":"","sources":["../../../src/components/shared/Formula.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
1
|
+
{"version":3,"file":"Formula.d.ts","sourceRoot":"","sources":["../../../src/components/shared/Formula.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAGjE,KAAK,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAA;;AAGzD,wBAeE"}
|
@@ -1,59 +1,15 @@
|
|
1
1
|
import classNames from 'classnames';
|
2
|
-
import React
|
3
|
-
import { getAttribute
|
4
|
-
import { AnnotationContext } from '../context/AnnotationProvider';
|
5
|
-
import { IsInSidebarContext } from '../context/IsInSidebarContext';
|
6
|
-
import HiddenAnnotationMark from './HiddenAnnotationMark';
|
7
|
-
import { AnnotationImageMark, useImageAnnotation } from './AnnotationImageMark';
|
2
|
+
import React from 'react';
|
3
|
+
import { getAttribute } from '../../dom-utils';
|
8
4
|
// eslint-disable-next-line prefer-arrow-callback
|
9
5
|
export default React.memo(function Formula({ element, className }) {
|
10
|
-
|
11
|
-
const
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
return React.createElement(AnnotatableFormula, { element: element, className: className, annotationContext: annotationContext });
|
16
|
-
});
|
17
|
-
// eslint-disable-next-line prefer-arrow-callback
|
18
|
-
const PlainFormula = React.memo(function PlainFormula(props) {
|
19
|
-
const { svg, assistiveTitle, isDisplayFormula } = useElementAttributes(props);
|
20
|
-
return (React.createElement(React.Fragment, null,
|
21
|
-
React.createElement("span", { className: classNames('e-formula', { 'e-block e-text-center': isDisplayFormula }, props.className), dangerouslySetInnerHTML: { __html: svg }, "aria-hidden": "true" }),
|
22
|
-
React.createElement(AssistiveTitle, { assistiveTitle: assistiveTitle })));
|
23
|
-
});
|
24
|
-
// eslint-disable-next-line prefer-arrow-callback
|
25
|
-
const AssistiveTitle = React.memo(function AssistiveTitle({ assistiveTitle }) {
|
26
|
-
return React.createElement("span", { className: "e-screen-reader-only" }, assistiveTitle);
|
27
|
-
});
|
28
|
-
// eslint-disable-next-line prefer-arrow-callback
|
29
|
-
const AnnotatableFormula = React.memo(function AnnotatableFormula(props) {
|
30
|
-
var _a;
|
31
|
-
const { imageAnnotations, onClickAnnotation, setNewAnnotationRef, newAnnotation, setNewAnnotation } = props.annotationContext;
|
32
|
-
const { svg, assistiveTitle, isDisplayFormula, textContent } = useElementAttributes(props);
|
33
|
-
const path = getElementPath(props.element);
|
34
|
-
const { elementRef, annotationRect, onMouseDown } = useImageAnnotation(path, `kaava ${textContent}`, setNewAnnotation);
|
35
|
-
const imageMarks = ((_a = imageAnnotations[path]) !== null && _a !== void 0 ? _a : [])
|
36
|
-
.map(({ annotationId, markNumber, resolved, hidden, rect }) => {
|
37
|
-
const key = `${annotationId}_${markNumber}`;
|
38
|
-
if (hidden) {
|
39
|
-
return React.createElement(HiddenAnnotationMark, { key: key, annotationId: annotationId });
|
40
|
-
}
|
41
|
-
return (React.createElement(AnnotationImageMark, { key: key, rect: rect, onClickAnnotation: onClickAnnotation, setNewAnnotationRef: setNewAnnotationRef, annotationId: annotationId, markNumber: markNumber, resolved: resolved }));
|
42
|
-
})
|
43
|
-
.concat((newAnnotation === null || newAnnotation === void 0 ? void 0 : newAnnotation.annotationType) === 'image' && newAnnotation.annotationAnchor === path ? (React.createElement(AnnotationImageMark, { key: "new-annotation-mark", rect: newAnnotation.rect, onClickAnnotation: onClickAnnotation, setNewAnnotationRef: setNewAnnotationRef })) : ([]))
|
44
|
-
.concat(annotationRect ? (React.createElement(AnnotationImageMark, { key: "annotation-rect", rect: annotationRect, onClickAnnotation: onClickAnnotation, setNewAnnotationRef: setNewAnnotationRef })) : ([]));
|
6
|
+
var _a, _b;
|
7
|
+
const svg = getAttribute(element, 'svg');
|
8
|
+
const textContent = (_a = element.textContent) === null || _a === void 0 ? void 0 : _a.trim();
|
9
|
+
const assistiveTitle = (_b = (getAttribute(element, 'assistive-title') || textContent)) !== null && _b !== void 0 ? _b : '';
|
10
|
+
const isDisplayFormula = getAttribute(element, 'mode') === 'display';
|
45
11
|
return (React.createElement(React.Fragment, null,
|
46
|
-
React.createElement("span", {
|
47
|
-
|
48
|
-
imageMarks),
|
49
|
-
React.createElement(AssistiveTitle, { assistiveTitle: assistiveTitle })));
|
12
|
+
React.createElement("span", { className: classNames('e-formula', { 'e-block e-text-center': isDisplayFormula }, className), dangerouslySetInnerHTML: { __html: svg }, "aria-hidden": "true" }),
|
13
|
+
React.createElement("span", { className: "e-screen-reader-only" }, assistiveTitle)));
|
50
14
|
});
|
51
|
-
function useElementAttributes(props) {
|
52
|
-
var _a, _b;
|
53
|
-
const svg = getAttribute(props.element, 'svg');
|
54
|
-
const textContent = (_a = props.element.textContent) === null || _a === void 0 ? void 0 : _a.trim();
|
55
|
-
const assistiveTitle = (_b = (getAttribute(props.element, 'assistive-title') || textContent)) !== null && _b !== void 0 ? _b : '';
|
56
|
-
const isDisplayFormula = getAttribute(props.element, 'mode') === 'display';
|
57
|
-
return { svg, assistiveTitle, isDisplayFormula, textContent };
|
58
|
-
}
|
59
15
|
//# sourceMappingURL=Formula.js.map
|