@digabi/exam-engine-core 23.4.7-rte-peer-dep.0 → 23.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/__tests__/annotations.test.js +148 -70
  2. package/dist/__tests__/annotations.test.js.map +1 -1
  3. package/dist/__tests__/tsconfig.tsbuildinfo +1 -1
  4. package/dist/components/exam/SectionTitle.d.ts.map +1 -1
  5. package/dist/components/exam/SectionTitle.js +1 -1
  6. package/dist/components/exam/SectionTitle.js.map +1 -1
  7. package/dist/components/grading/examAnnotationUtils.js +1 -1
  8. package/dist/components/grading/examAnnotationUtils.js.map +1 -1
  9. package/dist/components/grading-instructions/SectionTitle.d.ts.map +1 -1
  10. package/dist/components/grading-instructions/SectionTitle.js +1 -1
  11. package/dist/components/grading-instructions/SectionTitle.js.map +1 -1
  12. package/dist/components/results/DNDAnswerContainer.d.ts +4 -0
  13. package/dist/components/results/DNDAnswerContainer.d.ts.map +1 -0
  14. package/dist/components/results/DNDAnswerContainer.js +22 -0
  15. package/dist/components/results/DNDAnswerContainer.js.map +1 -0
  16. package/dist/components/shared/AnnotationImageMark.d.ts +15 -0
  17. package/dist/components/shared/AnnotationImageMark.d.ts.map +1 -0
  18. package/dist/components/shared/AnnotationImageMark.js +98 -0
  19. package/dist/components/shared/AnnotationImageMark.js.map +1 -0
  20. package/dist/components/shared/AnnotationTextMark.d.ts +11 -0
  21. package/dist/components/shared/AnnotationTextMark.d.ts.map +1 -0
  22. package/dist/components/shared/AnnotationTextMark.js +21 -0
  23. package/dist/components/shared/AnnotationTextMark.js.map +1 -0
  24. package/dist/components/shared/HiddenAnnotationMark.d.ts +7 -0
  25. package/dist/components/shared/HiddenAnnotationMark.d.ts.map +1 -0
  26. package/dist/components/shared/HiddenAnnotationMark.js +7 -0
  27. package/dist/components/shared/HiddenAnnotationMark.js.map +1 -0
  28. package/dist/eslint.config.d.ts +22 -0
  29. package/dist/eslint.config.d.ts.map +1 -0
  30. package/dist/eslint.config.js +31 -0
  31. package/dist/eslint.config.js.map +1 -0
  32. package/dist/i18n/exam_titles_fi-FI.d.ts +46 -0
  33. package/dist/i18n/exam_titles_fi-FI.d.ts.map +1 -0
  34. package/dist/i18n/exam_titles_fi-FI.js +46 -0
  35. package/dist/i18n/exam_titles_fi-FI.js.map +1 -0
  36. package/dist/i18n/exam_titles_fi-FI.json +45 -0
  37. package/dist/i18n/exam_titles_sv-FI.d.ts +46 -0
  38. package/dist/i18n/exam_titles_sv-FI.d.ts.map +1 -0
  39. package/dist/i18n/exam_titles_sv-FI.js +46 -0
  40. package/dist/i18n/exam_titles_sv-FI.js.map +1 -0
  41. package/dist/i18n/exam_titles_sv-FI.json +45 -0
  42. package/dist/i18n/exams.d.ts +11 -0
  43. package/dist/i18n/exams.d.ts.map +1 -0
  44. package/dist/i18n/exams.js +10 -0
  45. package/dist/i18n/exams.js.map +1 -0
  46. package/dist/main-bundle.js +1 -1
  47. package/dist/types/ExamAnnotations.d.ts +47 -0
  48. package/dist/types/ExamAnnotations.d.ts.map +1 -0
  49. package/dist/types/ExamAnnotations.js +2 -0
  50. package/dist/types/ExamAnnotations.js.map +1 -0
  51. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"SectionTitle.d.ts","sourceRoot":"","sources":["../../../src/components/exam/SectionTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AASjE,iBAAS,YAAY,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,kBAAkB,qBAmCtE;;AAED,wBAAuC"}
1
+ {"version":3,"file":"SectionTitle.d.ts","sourceRoot":"","sources":["../../../src/components/exam/SectionTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AASjE,iBAAS,YAAY,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,kBAAkB,qBAoCtE;;AAED,wBAAuC"}
@@ -18,7 +18,7 @@ function SectionTitle({ element, renderChildNodes }) {
18
18
  }
19
19
  }, []);
20
20
  return (React.createElement(React.Fragment, null,
21
- element.hasChildNodes() && (React.createElement("h2", { className: "exam-section-title", id: sectionTitleId(displayNumber), "data-toc-id": `section-${displayNumber}`, ref: ref },
21
+ element.hasChildNodes() && (React.createElement("h2", { className: "exam-section-title", id: sectionTitleId(displayNumber), "data-toc-id": `section-${displayNumber}`, ref: ref, "data-annotation-anchor": `section-title-${displayNumber}` },
22
22
  sections.length > 1 && t('section', { displayNumber }),
23
23
  " ",
24
24
  renderChildNodes(element))),
@@ -1 +1 @@
1
- {"version":3,"file":"SectionTitle.js","sourceRoot":"","sources":["../../../src/components/exam/SectionTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,qBAAqB,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,gBAAgB,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,SAAS,YAAY,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAsB;IACrE,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAClD,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAC5F,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAElC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,EAAkB,CAAA;IAE7C,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,KAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,CACL;QACG,OAAO,CAAC,aAAa,EAAE,IAAI,CAC1B,4BACE,SAAS,EAAC,oBAAoB,EAC9B,EAAE,EAAE,cAAc,CAAC,aAAa,CAAC,iBACpB,WAAW,aAAa,EAAE,EACvC,GAAG,EAAE,GAAG;YAEP,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC;;YAAG,gBAAgB,CAAC,OAAO,CAAC,CAChF,CACN;QACA,UAAU,IAAI,IAAI,IAAI,CACrB,8BAAM,SAAS,EAAC,mCAAmC;YACjD,oBAAC,gBAAgB,OAAG;YACpB,oBAAC,qBAAqB,IAAO,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,GAAM,CAC5F,CACR,CACA,CACJ,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA"}
1
+ {"version":3,"file":"SectionTitle.js","sourceRoot":"","sources":["../../../src/components/exam/SectionTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,qBAAqB,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,gBAAgB,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,SAAS,YAAY,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAsB;IACrE,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAClD,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAC5F,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAElC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,EAAkB,CAAA;IAE7C,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,KAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,CACL;QACG,OAAO,CAAC,aAAa,EAAE,IAAI,CAC1B,4BACE,SAAS,EAAC,oBAAoB,EAC9B,EAAE,EAAE,cAAc,CAAC,aAAa,CAAC,iBACpB,WAAW,aAAa,EAAE,EACvC,GAAG,EAAE,GAAG,4BACgB,iBAAiB,aAAa,EAAE;YAEvD,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC;;YAAG,gBAAgB,CAAC,OAAO,CAAC,CAChF,CACN;QACA,UAAU,IAAI,IAAI,IAAI,CACrB,8BAAM,SAAS,EAAC,mCAAmC;YACjD,oBAAC,gBAAgB,OAAG;YACpB,oBAAC,qBAAqB,IAAO,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,GAAM,CAC5F,CACR,CACA,CACJ,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA"}
@@ -39,7 +39,7 @@ const selectionContainsNonhiddenMarks = (selection) => {
39
39
  const childContainsNonHiddenMark = rangeChildren.some(child => child.querySelector('mark[data-hidden="false"]'));
40
40
  return childIsNonHiddenMark || childContainsNonHiddenMark;
41
41
  };
42
- const getDisplayNumber = (node) => { var _a; return (_a = node === null || node === void 0 ? void 0 : node.closest('div[data-annotation-anchor]')) === null || _a === void 0 ? void 0 : _a.getAttribute('data-annotation-anchor'); };
42
+ const getDisplayNumber = (node) => { var _a; return (_a = node === null || node === void 0 ? void 0 : node.closest('[data-annotation-anchor]')) === null || _a === void 0 ? void 0 : _a.getAttribute('data-annotation-anchor'); };
43
43
  const isAnnotatable = (node) => (node === null || node === void 0 ? void 0 : node.getAttribute('data-annotation-path')) && node.tagName !== 'MARK';
44
44
  const extractAnnotationsFromSelection = (selection) => {
45
45
  var _a, _b;
@@ -1 +1 @@
1
- {"version":3,"file":"examAnnotationUtils.js","sourceRoot":"","sources":["../../../src/components/grading/examAnnotationUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"examAnnotationUtils.js","sourceRoot":"","sources":["../../../src/components/grading/examAnnotationUtils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SectionTitle.d.ts","sourceRoot":"","sources":["../../../src/components/grading-instructions/SectionTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAMjE,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,CAc7D,CAAA;AAED,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"SectionTitle.d.ts","sourceRoot":"","sources":["../../../src/components/grading-instructions/SectionTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAMjE,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,CAkB7D,CAAA;AAED,eAAe,YAAY,CAAA"}
@@ -7,7 +7,7 @@ const SectionTitle = ({ element, renderChildNodes }) => {
7
7
  const { sections } = useContext(CommonExamContext);
8
8
  const { displayNumber } = useContext(SectionContext);
9
9
  const { t } = useExamTranslation();
10
- return (React.createElement(React.Fragment, null, element.hasChildNodes() && (React.createElement("h2", { className: "e-grading-instructions-section-title", id: sectionTitleId(displayNumber) },
10
+ return (React.createElement(React.Fragment, null, element.hasChildNodes() && (React.createElement("h2", { className: "e-grading-instructions-section-title", id: sectionTitleId(displayNumber), "data-annotation-anchor": `section-title-${displayNumber}` },
11
11
  sections.length > 1 && t('section', { displayNumber }),
12
12
  " ",
13
13
  renderChildNodes(element)))));
@@ -1 +1 @@
1
- {"version":3,"file":"SectionTitle.js","sourceRoot":"","sources":["../../../src/components/grading-instructions/SectionTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAE1C,MAAM,YAAY,GAAgD,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE;IAClG,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAClD,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACpD,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAElC,OAAO,CACL,0CACG,OAAO,CAAC,aAAa,EAAE,IAAI,CAC1B,4BAAI,SAAS,EAAC,sCAAsC,EAAC,EAAE,EAAE,cAAc,CAAC,aAAa,CAAC;QACnF,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC;;QAAG,gBAAgB,CAAC,OAAO,CAAC,CAChF,CACN,CACA,CACJ,CAAA;AACH,CAAC,CAAA;AAED,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"SectionTitle.js","sourceRoot":"","sources":["../../../src/components/grading-instructions/SectionTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAE1C,MAAM,YAAY,GAAgD,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE;IAClG,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAClD,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACpD,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAElC,OAAO,CACL,0CACG,OAAO,CAAC,aAAa,EAAE,IAAI,CAC1B,4BACE,SAAS,EAAC,sCAAsC,EAChD,EAAE,EAAE,cAAc,CAAC,aAAa,CAAC,4BACT,iBAAiB,aAAa,EAAE;QAEvD,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC;;QAAG,gBAAgB,CAAC,OAAO,CAAC,CAChF,CACN,CACA,CACJ,CAAA;AACH,CAAC,CAAA;AAED,eAAe,YAAY,CAAA"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { ExamComponentProps } from '../..';
3
+ export declare const DNDAnswerContainer: ({ element, renderChildNodes }: ExamComponentProps) => React.JSX.Element;
4
+ //# sourceMappingURL=DNDAnswerContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DNDAnswerContainer.d.ts","sourceRoot":"","sources":["../../../src/components/results/DNDAnswerContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAO1C,eAAO,MAAM,kBAAkB,kCAAmC,kBAAkB,sBAuCnF,CAAA"}
@@ -0,0 +1,22 @@
1
+ import React, { useContext } from 'react';
2
+ import { query, queryAll } from '../../dom-utils';
3
+ import { ResultsContext } from '../context/ResultsContext';
4
+ import { getAnswerOptionIdsByQuestionId, getAnswerOptionsByOptionId } from '../exam/DNDAnswerContainer';
5
+ import { DNDTitleAndDroppable } from '../shared/DNDTitleAndDroppable';
6
+ import { CorrectDNDAnswers } from './CorrectDNDAnswers';
7
+ export const DNDAnswerContainer = ({ element, renderChildNodes }) => {
8
+ const { answersByQuestionId, gradingStructure } = useContext(ResultsContext);
9
+ const answerOptionIdsByQuestionId = getAnswerOptionIdsByQuestionId(element, answersByQuestionId);
10
+ const answerOptionsByOptionId = getAnswerOptionsByOptionId(element);
11
+ const dndAnswersWithQuestion = queryAll(element, 'dnd-answer').filter(e => !!query(e, 'dnd-answer-title'));
12
+ return (React.createElement("div", { className: "e-dnd-answer-container" }, dndAnswersWithQuestion.map(element => {
13
+ var _a;
14
+ const questionId = element.getAttribute('question-id');
15
+ const itemIds = answerOptionIdsByQuestionId[questionId] || [];
16
+ const answerOptionElements = (_a = (answerOptionIdsByQuestionId[questionId] || [])) === null || _a === void 0 ? void 0 : _a.map(id => (answerOptionsByOptionId === null || answerOptionsByOptionId === void 0 ? void 0 : answerOptionsByOptionId[id]) || null).filter(Boolean);
17
+ return (React.createElement(React.Fragment, { key: questionId },
18
+ React.createElement(DNDTitleAndDroppable, { key: questionId, element: element, answerOptionElements: answerOptionElements, renderChildNodes: renderChildNodes, itemIds: itemIds, page: "results" }),
19
+ gradingStructure && (React.createElement(CorrectDNDAnswers, { key: `${questionId}-correct`, element: element, renderChildNodes: renderChildNodes, answerOptionsById: answerOptionsByOptionId }))));
20
+ })));
21
+ };
22
+ //# sourceMappingURL=DNDAnswerContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DNDAnswerContainer.js","sourceRoot":"","sources":["../../../src/components/results/DNDAnswerContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,8BAA8B,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AACvG,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAsB,EAAE,EAAE;IACtF,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAC5E,MAAM,2BAA2B,GAAG,8BAA8B,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAA;IAChG,MAAM,uBAAuB,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAA;IACnE,MAAM,sBAAsB,GAAG,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAA;IAE1G,OAAO,CACL,6BAAK,SAAS,EAAC,wBAAwB,IACpC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;;QACpC,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,aAAa,CAAE,CAAA;QACvD,MAAM,OAAO,GAAG,2BAA2B,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;QAC7D,MAAM,oBAAoB,GAAG,MAAA,CAAC,2BAA2B,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,0CACxE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA,uBAAuB,aAAvB,uBAAuB,uBAAvB,uBAAuB,CAAG,EAAE,CAAC,KAAI,IAAI,EAChD,MAAM,CAAC,OAAO,CAAC,CAAA;QAElB,OAAO,CACL,oBAAC,KAAK,CAAC,QAAQ,IAAC,GAAG,EAAE,UAAU;YAC7B,oBAAC,oBAAoB,IACnB,GAAG,EAAE,UAAU,EACf,OAAO,EAAE,OAAO,EAChB,oBAAoB,EAAE,oBAAoB,EAC1C,gBAAgB,EAAE,gBAAgB,EAClC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAC,SAAS,GACd;YAED,gBAAgB,IAAI,CACnB,oBAAC,iBAAiB,IAChB,GAAG,EAAE,GAAG,UAAU,UAAU,EAC5B,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,gBAAgB,EAClC,iBAAiB,EAAE,uBAAuB,GAC1C,CACH,CACc,CAClB,CAAA;IACH,CAAC,CAAC,CACE,CACP,CAAA;AACH,CAAC,CAAA"}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { AnnotationRect, NewExamAnnotation, NewExamImageAnnotation } from '../../types/ExamAnnotations';
3
+ export declare const AnnotationImageMark: React.NamedExoticComponent<{
4
+ rect: NewExamImageAnnotation["rect"];
5
+ onClickAnnotation: (e: React.MouseEvent<HTMLElement, MouseEvent>, annotationId: number) => void;
6
+ setNewAnnotationRef: (e: HTMLElement | null) => void;
7
+ annotationId?: number | undefined;
8
+ markNumber?: number | undefined;
9
+ }>;
10
+ export declare function useImageAnnotation(anchor: string, description: string, setNewAnnotation: (a: NewExamAnnotation | null) => void): {
11
+ elementRef: React.RefObject<HTMLElement>;
12
+ annotationRect: AnnotationRect | undefined;
13
+ onMouseDown: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;
14
+ };
15
+ //# sourceMappingURL=AnnotationImageMark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnnotationImageMark.d.ts","sourceRoot":"","sources":["../../../src/components/shared/AnnotationImageMark.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmD,MAAM,OAAO,CAAA;AACvE,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAGvG,eAAO,MAAM,mBAAmB;UAOxB,sBAAsB,CAAC,MAAM,CAAC;uBACjB,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI;yBAC1E,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI;mBACrC,MAAM,GAAG,SAAS;iBACpB,MAAM,GAAG,SAAS;EAuC/B,CAAA;AAEF,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI;;;qBA4DnB,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC;EAkB9E"}
@@ -0,0 +1,98 @@
1
+ import { clamp } from 'lodash-es';
2
+ import React, { useCallback, useEffect, useRef, useState } from 'react';
3
+ // eslint-disable-next-line prefer-arrow-callback
4
+ export const AnnotationImageMark = React.memo(function AnnotationImageMark({ rect: { x1, y1, x2, y2 }, onClickAnnotation, setNewAnnotationRef, annotationId, markNumber }) {
5
+ const markRef = useRef(null);
6
+ const supRef = useRef(null);
7
+ useEffect(() => {
8
+ if (markRef.current) {
9
+ markRef.current.style['inset'] =
10
+ `${100 * Math.min(y1, y2)}% ${100 * (1 - Math.max(x1, x2))}% ${100 * (1 - Math.max(y1, y2))}% ${100 * Math.min(x1, x2)}%`;
11
+ }
12
+ if (supRef.current) {
13
+ supRef.current.style['left'] = `${100 * Math.max(x1, x2)}%`;
14
+ supRef.current.style['top'] = `${100 * Math.min(y1, y2)}%`;
15
+ }
16
+ }, [x1, y1, x2, y2]);
17
+ useEffect(() => {
18
+ if (markRef.current && annotationId === undefined) {
19
+ setNewAnnotationRef(markRef.current);
20
+ }
21
+ }, []);
22
+ const onMouseDown = useCallback((e) => {
23
+ if (annotationId) {
24
+ e.stopPropagation();
25
+ onClickAnnotation(e, annotationId);
26
+ }
27
+ }, [annotationId]);
28
+ return (React.createElement(React.Fragment, null,
29
+ React.createElement("mark", { ref: markRef, className: "e-annotation e-annotation--shape", onMouseDown: onMouseDown }),
30
+ markNumber && React.createElement("sup", { ref: supRef, className: "e-annotation", "data-content": markNumber })));
31
+ });
32
+ export function useImageAnnotation(anchor, description, setNewAnnotation) {
33
+ const elementRef = useRef(null);
34
+ const [annotationRect, setAnnotationRect] = useState();
35
+ const annotationRectRef = useRef();
36
+ useEffect(() => {
37
+ annotationRectRef.current = annotationRect;
38
+ }, [annotationRect]);
39
+ const onMouseMove = useCallback((e) => {
40
+ const el = elementRef.current;
41
+ if (el === null) {
42
+ return;
43
+ }
44
+ e.preventDefault();
45
+ e.stopPropagation();
46
+ const [x2, y2] = getMousePosition(el, e);
47
+ setAnnotationRect(rect => {
48
+ if (rect) {
49
+ const { x1, y1 } = rect;
50
+ return { x1, y1, x2, y2 };
51
+ }
52
+ return rect;
53
+ });
54
+ }, []);
55
+ const onMouseUp = useCallback((e) => {
56
+ var _a, _b;
57
+ const el = elementRef.current;
58
+ if (el === null) {
59
+ return;
60
+ }
61
+ window.removeEventListener('mouseup', onMouseUp);
62
+ window.removeEventListener('mousemove', onMouseMove);
63
+ const displayNumber = (_b = (_a = elementRef.current) === null || _a === void 0 ? void 0 : _a.closest('div[data-annotation-anchor]')) === null || _b === void 0 ? void 0 : _b.getAttribute('data-annotation-anchor');
64
+ if (!displayNumber || !annotationRectRef.current) {
65
+ setAnnotationRect(undefined);
66
+ return;
67
+ }
68
+ const { x1, y1 } = annotationRectRef.current;
69
+ const [x2, y2] = getMousePosition(el, e);
70
+ setNewAnnotation({
71
+ annotationType: 'image',
72
+ displayNumber,
73
+ annotationAnchor: anchor,
74
+ rect: { x1, y1, x2, y2 },
75
+ description
76
+ });
77
+ setAnnotationRect(undefined);
78
+ }, []);
79
+ const onMouseDown = useCallback((e) => {
80
+ const el = elementRef.current;
81
+ if (el === null || e.button !== 0) {
82
+ return;
83
+ }
84
+ e.preventDefault();
85
+ e.stopPropagation();
86
+ window.addEventListener('mouseup', onMouseUp);
87
+ window.addEventListener('mousemove', onMouseMove);
88
+ const [x1, y1] = getMousePosition(el, e);
89
+ setAnnotationRect({ x1, y1, x2: x1, y2: y1 });
90
+ setNewAnnotation(null);
91
+ }, []);
92
+ return { elementRef, annotationRect, onMouseDown };
93
+ }
94
+ function getMousePosition(el, e) {
95
+ const bbox = el.getBoundingClientRect();
96
+ return [clamp((e.clientX - bbox.left) / bbox.width, 0, 1), clamp((e.clientY - bbox.top) / bbox.height, 0, 1)];
97
+ }
98
+ //# sourceMappingURL=AnnotationImageMark.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnnotationImageMark.js","sourceRoot":"","sources":["../../../src/components/shared/AnnotationImageMark.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGvE,iDAAiD;AACjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,mBAAmB,CAAC,EACzE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,UAAU,EAOX;IACC,MAAM,OAAO,GAAG,MAAM,CAAc,IAAI,CAAC,CAAA;IACzC,MAAM,MAAM,GAAG,MAAM,CAAc,IAAI,CAAC,CAAA;IAExC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;gBAC5B,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAA;QAC7H,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAA;YAC3D,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAA;QAC5D,CAAC;IACH,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;IAEpB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,CAAC,OAAO,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAClD,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACtC,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,CAAoC,EAAE,EAAE;QACvC,IAAI,YAAY,EAAE,CAAC;YACjB,CAAC,CAAC,eAAe,EAAE,CAAA;YACnB,iBAAiB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;QACpC,CAAC;IACH,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAA;IAED,OAAO,CACL;QACE,8BAAM,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,kCAAkC,EAAC,WAAW,EAAE,WAAW,GAAI;QAC5F,UAAU,IAAI,6BAAK,GAAG,EAAE,MAAM,EAAE,SAAS,EAAC,cAAc,kBAAe,UAAU,GAAI,CACrF,CACJ,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,WAAmB,EACnB,gBAAuD;IAEvD,MAAM,UAAU,GAAG,MAAM,CAAc,IAAI,CAAC,CAAA;IAC5C,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,EAAkB,CAAA;IACtE,MAAM,iBAAiB,GAAG,MAAM,EAAkB,CAAA;IAElD,SAAS,CAAC,GAAG,EAAE;QACb,iBAAiB,CAAC,OAAO,GAAG,cAAc,CAAA;IAC5C,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAEpB,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAa,EAAE,EAAE;QAChD,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAA;QAC7B,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,OAAM;QACR,CAAC;QAED,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,CAAC,CAAC,eAAe,EAAE,CAAA;QAEnB,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QACxC,iBAAiB,CAAC,IAAI,CAAC,EAAE;YACvB,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAA;gBACvB,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAA;YAC3B,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAa,EAAE,EAAE;;QAC9C,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAA;QAC7B,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,OAAM;QACR,CAAC;QAED,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAChD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QAEpD,MAAM,aAAa,GAAG,MAAA,MAAA,UAAU,CAAC,OAAO,0CACpC,OAAO,CAAC,6BAA6B,CAAC,0CACtC,YAAY,CAAC,wBAAwB,CAAC,CAAA;QAE1C,IAAI,CAAC,aAAa,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;YACjD,iBAAiB,CAAC,SAAS,CAAC,CAAA;YAC5B,OAAM;QACR,CAAC;QAED,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAA;QAC5C,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAExC,gBAAgB,CAAC;YACf,cAAc,EAAE,OAAO;YACvB,aAAa;YACb,gBAAgB,EAAE,MAAM;YACxB,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;YACxB,WAAW;SACZ,CAAC,CAAA;QACF,iBAAiB,CAAC,SAAS,CAAC,CAAA;IAC9B,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAA4C,EAAE,EAAE;QAC/E,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAA;QAC7B,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAM;QACR,CAAC;QAED,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,CAAC,CAAC,eAAe,EAAE,CAAA;QAEnB,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC7C,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QAEjD,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QACxC,iBAAiB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QAC7C,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,CAAA;AACpD,CAAC;AAED,SAAS,gBAAgB,CAAC,EAAe,EAAE,CAAuC;IAChF,MAAM,IAAI,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAA;IACvC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAC/G,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React, { PropsWithChildren } from 'react';
2
+ import { AnnotationPart } from '../../types/ExamAnnotations';
3
+ declare function AnnotationMark({ annotation, onClickAnnotation, setNewAnnotationRef, __html, children }: PropsWithChildren<{
4
+ annotation: AnnotationPart;
5
+ onClickAnnotation: (e: React.MouseEvent<HTMLElement, MouseEvent>, annotationId: number) => void;
6
+ setNewAnnotationRef: (ref: HTMLElement | null) => void;
7
+ __html?: string;
8
+ }>): React.JSX.Element;
9
+ declare const _default: React.MemoExoticComponent<typeof AnnotationMark>;
10
+ export default _default;
11
+ //# sourceMappingURL=AnnotationTextMark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnnotationTextMark.d.ts","sourceRoot":"","sources":["../../../src/components/shared/AnnotationTextMark.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAqB,MAAM,OAAO,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAG5D,iBAAS,cAAc,CAAC,EACtB,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,QAAQ,EACT,EAAE,iBAAiB,CAAC;IACnB,UAAU,EAAE,cAAc,CAAA;IAC1B,iBAAiB,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/F,mBAAmB,EAAE,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAA;IACtD,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAC,qBAgCD;;AAED,wBAAyC"}
@@ -0,0 +1,21 @@
1
+ import React, { useEffect, useRef } from 'react';
2
+ import { isExistingAnnotation } from './markText';
3
+ function AnnotationMark({ annotation, onClickAnnotation, setNewAnnotationRef, __html, children }) {
4
+ const markRef = useRef(null);
5
+ useEffect(() => {
6
+ if (markRef.current && !isExistingAnnotation(annotation)) {
7
+ setNewAnnotationRef(markRef.current);
8
+ }
9
+ }, []);
10
+ const dangerouslySetInnerHTML = __html ? { dangerouslySetInnerHTML: { __html } } : {};
11
+ return (React.createElement(React.Fragment, null,
12
+ React.createElement("mark", { ref: markRef, className: `e-annotation ${annotation.resolved ? 'resolved' : ''}`, "data-annotation-id": isExistingAnnotation(annotation) ? annotation.annotationId : '', "data-hidden": "false", "data-annotation-path": annotation.annotationAnchor, onClick: e => {
13
+ if (isExistingAnnotation(annotation)) {
14
+ e.stopPropagation();
15
+ onClickAnnotation(e, annotation.annotationId);
16
+ }
17
+ }, ...dangerouslySetInnerHTML }, __html ? null : children),
18
+ (annotation === null || annotation === void 0 ? void 0 : annotation.markNumber) && React.createElement("sup", { className: "e-annotation", "data-content": annotation === null || annotation === void 0 ? void 0 : annotation.markNumber })));
19
+ }
20
+ export default React.memo(AnnotationMark);
21
+ //# sourceMappingURL=AnnotationTextMark.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnnotationTextMark.js","sourceRoot":"","sources":["../../../src/components/shared/AnnotationTextMark.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAqB,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAEnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEjD,SAAS,cAAc,CAAC,EACtB,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,QAAQ,EAMR;IACA,MAAM,OAAO,GAAG,MAAM,CAAc,IAAI,CAAC,CAAA;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC;YACzD,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACtC,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,uBAAuB,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAErF,OAAO,CACL;QACE,8BACE,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,gBAAgB,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,wBAC9C,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,iBACvE,OAAO,0BACG,UAAU,CAAC,gBAAgB,EACjD,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,IAAI,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC;oBACrC,CAAC,CAAC,eAAe,EAAE,CAAA;oBACnB,iBAAiB,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;gBAC/C,CAAC;YACH,CAAC,KACG,uBAAuB,IAE1B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CACpB;QACN,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,KAAI,6BAAK,SAAS,EAAC,cAAc,kBAAe,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,GAAI,CAChG,CACJ,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ declare function HiddenAnnotationMark(props: {
3
+ annotationId: number | null;
4
+ }): React.JSX.Element;
5
+ declare const _default: React.MemoExoticComponent<typeof HiddenAnnotationMark>;
6
+ export default _default;
7
+ //# sourceMappingURL=HiddenAnnotationMark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HiddenAnnotationMark.d.ts","sourceRoot":"","sources":["../../../src/components/shared/HiddenAnnotationMark.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,iBAAS,oBAAoB,CAAC,KAAK,EAAE;IAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,qBAEnE;;AAED,wBAA+C"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ function HiddenAnnotationMark(props) {
3
+ var _a;
4
+ return React.createElement("mark", { className: "e-annotation", "data-annotation-id": (_a = props.annotationId) !== null && _a !== void 0 ? _a : '', "data-hidden": "true" });
5
+ }
6
+ export default React.memo(HiddenAnnotationMark);
7
+ //# sourceMappingURL=HiddenAnnotationMark.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HiddenAnnotationMark.js","sourceRoot":"","sources":["../../../src/components/shared/HiddenAnnotationMark.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,SAAS,oBAAoB,CAAC,KAAsC;;IAClE,OAAO,8BAAM,SAAS,EAAC,cAAc,wBAAqB,MAAA,KAAK,CAAC,YAAY,mCAAI,EAAE,iBAAc,MAAM,GAAG,CAAA;AAC3G,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA"}
@@ -0,0 +1,22 @@
1
+ declare const _exports: ({
2
+ parserOptions: {
3
+ project: string;
4
+ tsconfigRootDir: string;
5
+ };
6
+ rules: {
7
+ 'no-restricted-imports': (string | {
8
+ paths: ({
9
+ name: string;
10
+ message: string;
11
+ } | {
12
+ name: string;
13
+ importNames: string[];
14
+ message: string;
15
+ })[];
16
+ })[];
17
+ };
18
+ } | {
19
+ ignores: string[];
20
+ })[];
21
+ export = _exports;
22
+ //# sourceMappingURL=eslint.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eslint.config.d.ts","sourceRoot":"","sources":["../src/eslint.config.js"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ module.exports = [
3
+ {
4
+ parserOptions: {
5
+ project: '../tsconfig.json',
6
+ tsconfigRootDir: __dirname
7
+ },
8
+ rules: {
9
+ 'no-restricted-imports': [
10
+ 'error',
11
+ {
12
+ paths: [
13
+ {
14
+ name: 'lodash',
15
+ message: "Please use import * as _ from 'lodash-es' in the core module for better tree shaking."
16
+ },
17
+ {
18
+ name: 'react-i18next',
19
+ importNames: ['useTranslation', 'Translation'],
20
+ message: 'Please use the `useExamTranslation` wrapper instead.'
21
+ }
22
+ ]
23
+ }
24
+ ]
25
+ }
26
+ },
27
+ {
28
+ ignores: ['dist/**/*', 'node_modules/**/*']
29
+ }
30
+ ];
31
+ //# sourceMappingURL=eslint.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eslint.config.js","sourceRoot":"","sources":["../src/eslint.config.js"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,GAAG;IACf;QACE,aAAa,EAAE;YACb,OAAO,EAAE,kBAAkB;YAC3B,eAAe,EAAE,SAAS;SAC3B;QACD,KAAK,EAAE;YACL,uBAAuB,EAAE;gBACvB,OAAO;gBACP;oBACE,KAAK,EAAE;wBACL;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,uFAAuF;yBACjG;wBACD;4BACE,IAAI,EAAE,eAAe;4BACrB,WAAW,EAAE,CAAC,gBAAgB,EAAE,aAAa,CAAC;4BAC9C,OAAO,EAAE,sDAAsD;yBAChE;qBACF;iBACF;aACF;SACF;KACF;IACD;QACE,OAAO,EAAE,CAAC,WAAW,EAAE,mBAAmB,CAAC;KAC5C;CACF,CAAA"}
@@ -0,0 +1,46 @@
1
+ export declare const examTitlesFi: {
2
+ codes: {
3
+ A5: string;
4
+ A_E: string;
5
+ A_X: string;
6
+ BA: string;
7
+ BB: string;
8
+ BI: string;
9
+ DC: string;
10
+ EA: string;
11
+ EC: string;
12
+ ET: string;
13
+ FA: string;
14
+ FC: string;
15
+ FF: string;
16
+ FY: string;
17
+ GC: string;
18
+ GE: string;
19
+ HI: string;
20
+ I: string;
21
+ IC: string;
22
+ KE: string;
23
+ L1: string;
24
+ L7: string;
25
+ M: string;
26
+ N: string;
27
+ PA: string;
28
+ PC: string;
29
+ PS: string;
30
+ QC: string;
31
+ SA: string;
32
+ SC: string;
33
+ TC: string;
34
+ TE: string;
35
+ UE: string;
36
+ UO: string;
37
+ VA: string;
38
+ VC: string;
39
+ W: string;
40
+ YH: string;
41
+ Z: string;
42
+ };
43
+ 'hearing-impaired': string;
44
+ 'visually-impaired': string;
45
+ };
46
+ //# sourceMappingURL=exam_titles_fi-FI.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam_titles_fi-FI.d.ts","sourceRoot":"","sources":["../../src/i18n/exam_titles_fi-FI.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CxB,CAAA"}
@@ -0,0 +1,46 @@
1
+ export const examTitlesFi = {
2
+ codes: {
3
+ A5: 'FI – Suomi toisena kielenä ja kirjallisuus',
4
+ A_E: 'FI – Äidinkieli ja kirjallisuus, kirjoitustaidon koe',
5
+ A_X: 'FI – Äidinkieli ja kirjallisuus, lukutaidon koe',
6
+ BA: 'FI – Ruotsi, pitkä oppimäärä',
7
+ BB: 'FI – Ruotsi, keskipitkä oppimäärä',
8
+ BI: 'FI – Biologia',
9
+ DC: 'FI – Pohjoissaame, lyhyt oppimäärä',
10
+ EA: 'FI – Englanti, pitkä oppimäärä',
11
+ EC: 'FI – Englanti, lyhyt oppimäärä',
12
+ ET: 'FI – Elämänkatsomustieto',
13
+ FA: 'FI – Ranska, pitkä oppimäärä',
14
+ FC: 'FI – Ranska, lyhyt oppimäärä',
15
+ FF: 'FI – Filosofia',
16
+ FY: 'FI – Fysiikka',
17
+ GC: 'FI – Portugali, lyhyt oppimäärä',
18
+ GE: 'FI – Maantiede',
19
+ HI: 'FI – Historia',
20
+ I: 'Eenikielâ já kirjálâšvuotâ, anarâškielâ',
21
+ IC: 'FI – Inarinsaame, lyhyt oppimäärä',
22
+ KE: 'FI – Kemia',
23
+ L1: 'FI – Latina, lyhyt oppimäärä',
24
+ L7: 'FI – Latina, laajempi lyhyt oppimäärä',
25
+ M: 'FI – Matematiikka, pitkä oppimäärä',
26
+ N: 'FI – Matematiikka, lyhyt oppimäärä',
27
+ PA: 'FI – Espanja, pitkä oppimäärä',
28
+ PC: 'FI – Espanja, lyhyt oppimäärä',
29
+ PS: 'FI – Psykologia',
30
+ QC: 'FI – Koltansaame, lyhyt oppimäärä',
31
+ SA: 'FI – Saksa, pitkä oppimäärä',
32
+ SC: 'FI – Saksa, lyhyt oppimäärä',
33
+ TC: 'FI – Italia, lyhyt oppimäärä',
34
+ TE: 'FI – Terveystieto',
35
+ UE: 'FI – Evankelisluterilainen uskonto',
36
+ UO: 'FI – Ortodoksinen uskonto',
37
+ VA: 'FI – Venäjä, pitkä oppimäärä',
38
+ VC: 'FI – Venäjä, lyhyt oppimäärä',
39
+ W: 'Jieʹnnǩiõll da ǩeʹrjjlažvuõtt, sääʹmǩiõll',
40
+ YH: 'FI – Yhteiskuntaoppi',
41
+ Z: 'Eatnigiella ja girjjálašvuohta, davvisámegiella'
42
+ },
43
+ 'hearing-impaired': '(kuulovammaiset)',
44
+ 'visually-impaired': '(näkövammaiset)'
45
+ };
46
+ //# sourceMappingURL=exam_titles_fi-FI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam_titles_fi-FI.js","sourceRoot":"","sources":["../../src/i18n/exam_titles_fi-FI.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE;QACL,EAAE,EAAE,4CAA4C;QAChD,GAAG,EAAE,sDAAsD;QAC3D,GAAG,EAAE,iDAAiD;QACtD,EAAE,EAAE,8BAA8B;QAClC,EAAE,EAAE,mCAAmC;QACvC,EAAE,EAAE,eAAe;QACnB,EAAE,EAAE,oCAAoC;QACxC,EAAE,EAAE,gCAAgC;QACpC,EAAE,EAAE,gCAAgC;QACpC,EAAE,EAAE,0BAA0B;QAC9B,EAAE,EAAE,8BAA8B;QAClC,EAAE,EAAE,8BAA8B;QAClC,EAAE,EAAE,gBAAgB;QACpB,EAAE,EAAE,eAAe;QACnB,EAAE,EAAE,iCAAiC;QACrC,EAAE,EAAE,gBAAgB;QACpB,EAAE,EAAE,eAAe;QACnB,CAAC,EAAE,yCAAyC;QAC5C,EAAE,EAAE,mCAAmC;QACvC,EAAE,EAAE,YAAY;QAChB,EAAE,EAAE,8BAA8B;QAClC,EAAE,EAAE,uCAAuC;QAC3C,CAAC,EAAE,oCAAoC;QACvC,CAAC,EAAE,oCAAoC;QACvC,EAAE,EAAE,+BAA+B;QACnC,EAAE,EAAE,+BAA+B;QACnC,EAAE,EAAE,iBAAiB;QACrB,EAAE,EAAE,mCAAmC;QACvC,EAAE,EAAE,6BAA6B;QACjC,EAAE,EAAE,6BAA6B;QACjC,EAAE,EAAE,8BAA8B;QAClC,EAAE,EAAE,mBAAmB;QACvB,EAAE,EAAE,oCAAoC;QACxC,EAAE,EAAE,2BAA2B;QAC/B,EAAE,EAAE,8BAA8B;QAClC,EAAE,EAAE,8BAA8B;QAClC,CAAC,EAAE,2CAA2C;QAC9C,EAAE,EAAE,sBAAsB;QAC1B,CAAC,EAAE,iDAAiD;KACrD;IACD,kBAAkB,EAAE,kBAAkB;IACtC,mBAAmB,EAAE,iBAAiB;CACvC,CAAA"}
@@ -0,0 +1,45 @@
1
+ {
2
+ "codes": {
3
+ "A5": "FI – Suomi toisena kielenä ja kirjallisuus",
4
+ "A_E": "FI – Äidinkieli ja kirjallisuus, kirjoitustaidon koe",
5
+ "A_X": "FI – Äidinkieli ja kirjallisuus, lukutaidon koe",
6
+ "BA": "FI – Ruotsi, pitkä oppimäärä",
7
+ "BB": "FI – Ruotsi, keskipitkä oppimäärä",
8
+ "BI": "FI – Biologia",
9
+ "DC": "FI – Pohjoissaame, lyhyt oppimäärä",
10
+ "EA": "FI – Englanti, pitkä oppimäärä",
11
+ "EC": "FI – Englanti, lyhyt oppimäärä",
12
+ "ET": "FI – Elämänkatsomustieto",
13
+ "FA": "FI – Ranska, pitkä oppimäärä",
14
+ "FC": "FI – Ranska, lyhyt oppimäärä",
15
+ "FF": "FI – Filosofia",
16
+ "FY": "FI – Fysiikka",
17
+ "GC": "FI – Portugali, lyhyt oppimäärä",
18
+ "GE": "FI – Maantiede",
19
+ "HI": "FI – Historia",
20
+ "I": "Eenikielâ já kirjálâšvuotâ, anarâškielâ",
21
+ "IC": "FI – Inarinsaame, lyhyt oppimäärä",
22
+ "KE": "FI – Kemia",
23
+ "L1": "FI – Latina, lyhyt oppimäärä",
24
+ "L7": "FI – Latina, laajempi lyhyt oppimäärä",
25
+ "M": "FI – Matematiikka, pitkä oppimäärä",
26
+ "N": "FI – Matematiikka, lyhyt oppimäärä",
27
+ "PA": "FI – Espanja, pitkä oppimäärä",
28
+ "PC": "FI – Espanja, lyhyt oppimäärä",
29
+ "PS": "FI – Psykologia",
30
+ "QC": "FI – Koltansaame, lyhyt oppimäärä",
31
+ "SA": "FI – Saksa, pitkä oppimäärä",
32
+ "SC": "FI – Saksa, lyhyt oppimäärä",
33
+ "TC": "FI – Italia, lyhyt oppimäärä",
34
+ "TE": "FI – Terveystieto",
35
+ "UE": "FI – Evankelisluterilainen uskonto",
36
+ "UO": "FI – Ortodoksinen uskonto",
37
+ "VA": "FI – Venäjä, pitkä oppimäärä",
38
+ "VC": "FI – Venäjä, lyhyt oppimäärä",
39
+ "W": "Jieʹnnǩiõll da ǩeʹrjjlažvuõtt, sääʹmǩiõll",
40
+ "YH": "FI – Yhteiskuntaoppi",
41
+ "Z": "Eatnigiella ja girjjálašvuohta, davvisámegiella"
42
+ },
43
+ "hearing-impaired": "(kuulovammaiset)",
44
+ "visually-impaired": "(näkövammaiset)"
45
+ }
@@ -0,0 +1,46 @@
1
+ export declare const examTitlesSv: {
2
+ codes: {
3
+ BI: string;
4
+ CA: string;
5
+ CB: string;
6
+ EA: string;
7
+ EC: string;
8
+ ET: string;
9
+ FA: string;
10
+ FC: string;
11
+ FF: string;
12
+ FY: string;
13
+ GC: string;
14
+ GE: string;
15
+ HI: string;
16
+ KE: string;
17
+ L1: string;
18
+ L7: string;
19
+ M: string;
20
+ N: string;
21
+ O5: string;
22
+ O_E: string;
23
+ O_X: string;
24
+ PA: string;
25
+ PC: string;
26
+ PS: string;
27
+ SA: string;
28
+ SC: string;
29
+ TC: string;
30
+ TE: string;
31
+ UE: string;
32
+ UO: string;
33
+ VA: string;
34
+ VC: string;
35
+ YH: string;
36
+ W: string;
37
+ Z: string;
38
+ I: string;
39
+ DC: string;
40
+ QC: string;
41
+ IC: string;
42
+ };
43
+ 'hearing-impaired': string;
44
+ 'visually-impaired': string;
45
+ };
46
+ //# sourceMappingURL=exam_titles_sv-FI.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exam_titles_sv-FI.d.ts","sourceRoot":"","sources":["../../src/i18n/exam_titles_sv-FI.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CxB,CAAA"}