@digabi/exam-engine-core 23.19.3 → 23.20.0-alpha.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.
@@ -1,10 +1,10 @@
1
1
  import React from 'react';
2
2
  import { ExamComponentProps } from '../../createRenderChildNodes';
3
3
  declare function Image(props: ExamComponentProps): React.JSX.Element;
4
- export declare function ImageBase({ element, className, renderChildNodes, resolveAttachment, disableZoomIn, onMaxWidthCalculated }: ExamComponentProps & {
4
+ export declare function ImageBase({ element, className, renderChildNodes, resolveAttachment, overrideImage, disableZoomIn }: ExamComponentProps & {
5
5
  resolveAttachment: (filename: string) => string;
6
+ overrideImage?: React.JSX.Element;
6
7
  disableZoomIn?: boolean;
7
- onMaxWidthCalculated?: (maxWidth: number) => void;
8
8
  }): React.JSX.Element;
9
9
  declare const _default: React.MemoExoticComponent<typeof Image>;
10
10
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/components/shared/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAQjE,iBAAS,KAAK,CAAC,KAAK,EAAE,kBAAkB,qBAGvC;AAED,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACrB,EAAE,kBAAkB,GAAG;IACtB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IAC/C,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CAClD,qBAmCA;;AAmBD,wBAAgC"}
1
+ {"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/components/shared/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAQjE,iBAAS,KAAK,CAAC,KAAK,EAAE,kBAAkB,qBAGvC;AAED,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACd,EAAE,kBAAkB,GAAG;IACtB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IAC/C,aAAa,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAA;IACjC,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,qBAkCA;;AAmBD,wBAAgC"}
@@ -9,7 +9,7 @@ function Image(props) {
9
9
  const { resolveAttachment } = useContext(CommonExamContext);
10
10
  return React.createElement(ImageBase, { ...props, resolveAttachment });
11
11
  }
12
- export function ImageBase({ element, className, renderChildNodes, resolveAttachment, disableZoomIn, onMaxWidthCalculated }) {
12
+ export function ImageBase({ element, className, renderChildNodes, resolveAttachment, overrideImage, disableZoomIn }) {
13
13
  const src = getAttribute(element, 'src');
14
14
  const width = getNumericAttribute(element, 'width');
15
15
  const height = getNumericAttribute(element, 'height');
@@ -19,15 +19,14 @@ export function ImageBase({ element, className, renderChildNodes, resolveAttachm
19
19
  const caption = hasCaption ? children : undefined;
20
20
  const captionId = hasCaption ? imageCaptionId(element) : undefined;
21
21
  const imgUrl = resolveAttachment(src);
22
- const image = React.createElement("img", { className: "e-image", src: imgUrl, alt: "", "aria-labelledby": captionId });
22
+ const image = overrideImage || React.createElement("img", { className: "e-image", src: imgUrl, alt: "", "aria-labelledby": captionId });
23
23
  return (React.createElement(React.Fragment, null,
24
24
  React.createElement(ResponsiveMediaContainer, { className,
25
25
  width,
26
26
  height,
27
27
  caption,
28
28
  captionId,
29
- bordered: hasCaption || queryAncestors(element, 'choice-answer') != null,
30
- onMaxWidthCalculated }, disableZoomIn || queryAncestors(element, ['choice-answer', 'hint']) != null ? (image) : (React.createElement(ZoomInImage, { image: image, hasCaption: hasCaption, imgUrl: imgUrl })))));
29
+ bordered: hasCaption || queryAncestors(element, 'choice-answer') != null }, disableZoomIn || queryAncestors(element, ['choice-answer', 'hint']) != null ? (image) : (React.createElement(ZoomInImage, { image: image, hasCaption: hasCaption, imgUrl: imgUrl })))));
31
30
  }
32
31
  function ZoomInImage({ image, imgUrl, hasCaption }) {
33
32
  const { t } = useExamTranslation();
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","sourceRoot":"","sources":["../../../src/components/shared/Image.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Image.js","sourceRoot":"","sources":["../../../src/components/shared/Image.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsiveMediaContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/shared/internal/ResponsiveMediaContainer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,UAAU,6BAA6B;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CAClD;AAED;;;;GAIG;AACH,QAAA,MAAM,wBAAwB,EAAE,KAAK,CAAC,iBAAiB,CAAC,6BAA6B,CA6CpF,CAAA;AAED,eAAe,wBAAwB,CAAA"}
1
+ {"version":3,"file":"ResponsiveMediaContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/shared/internal/ResponsiveMediaContainer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,UAAU,6BAA6B;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CAClD;AAED;;;;GAIG;AACH,QAAA,MAAM,wBAAwB,EAAE,KAAK,CAAC,iBAAiB,CAAC,6BAA6B,CAsCpF,CAAA;AAED,eAAe,wBAAwB,CAAA"}
@@ -6,14 +6,9 @@ const borderedPaddingAndBorderPx = 18;
6
6
  * finish loading, see https://www.perpetual-beta.org/weblog/responsive-images-without-browser-reflow.html for more
7
7
  * information.
8
8
  */
9
- const ResponsiveMediaContainer = ({ bordered = false, className, children, height, width, caption, captionId, onMaxWidthCalculated }) => {
9
+ const ResponsiveMediaContainer = ({ bordered = false, className, children, height, width, caption, captionId }) => {
10
10
  const paddingBottom = `${(height / width) * 100}%`;
11
11
  const maxWidth = width + (bordered ? borderedPaddingAndBorderPx : 0);
12
- React.useEffect(() => {
13
- if (onMaxWidthCalculated) {
14
- onMaxWidthCalculated(maxWidth);
15
- }
16
- }, [maxWidth, onMaxWidthCalculated]);
17
12
  return (React.createElement("span", { className: classNames('responsive-media-container', { 'responsive-media-container--bordered': bordered }, className), style: {
18
13
  maxWidth
19
14
  } },
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsiveMediaContainer.js","sourceRoot":"","sources":["../../../../src/components/shared/internal/ResponsiveMediaContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,0BAA0B,GAAG,EAAE,CAAA;AAarC;;;;GAIG;AACH,MAAM,wBAAwB,GAA2D,CAAC,EACxF,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,QAAQ,EACR,MAAM,EACN,KAAK,EACL,OAAO,EACP,SAAS,EACT,oBAAoB,EACrB,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;IAClD,MAAM,QAAQ,GAAG,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAEpE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,oBAAoB,EAAE,CAAC;YACzB,oBAAoB,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAA;IAEpC,OAAO,CACL,8BACE,SAAS,EAAE,UAAU,CACnB,4BAA4B,EAC5B,EAAE,sCAAsC,EAAE,QAAQ,EAAE,EACpD,SAAS,CACV,EACD,KAAK,EAAE;YACL,QAAQ;SACT;QAED,8BACE,SAAS,EAAC,mCAAmC,EAC7C,KAAK,EAAE;gBACL,aAAa;aACd,IAEA,QAAQ,CACJ;QACN,OAAO,IAAI,CACV,8BAAM,SAAS,EAAC,yCAAyC,EAAC,EAAE,EAAE,SAAS,IACpE,OAAO,CACH,CACR,CACI,CACR,CAAA;AACH,CAAC,CAAA;AAED,eAAe,wBAAwB,CAAA"}
1
+ {"version":3,"file":"ResponsiveMediaContainer.js","sourceRoot":"","sources":["../../../../src/components/shared/internal/ResponsiveMediaContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,0BAA0B,GAAG,EAAE,CAAA;AAarC;;;;GAIG;AACH,MAAM,wBAAwB,GAA2D,CAAC,EACxF,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,QAAQ,EACR,MAAM,EACN,KAAK,EACL,OAAO,EACP,SAAS,EACV,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;IAClD,MAAM,QAAQ,GAAG,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAEpE,OAAO,CACL,8BACE,SAAS,EAAE,UAAU,CACnB,4BAA4B,EAC5B,EAAE,sCAAsC,EAAE,QAAQ,EAAE,EACpD,SAAS,CACV,EACD,KAAK,EAAE;YACL,QAAQ;SACT;QAED,8BACE,SAAS,EAAC,mCAAmC,EAC7C,KAAK,EAAE;gBACL,aAAa;aACd,IAEA,QAAQ,CACJ;QACN,OAAO,IAAI,CACV,8BAAM,SAAS,EAAC,yCAAyC,EAAC,EAAE,EAAE,SAAS,IACpE,OAAO,CACH,CACR,CACI,CACR,CAAA;AACH,CAAC,CAAA;AAED,eAAe,wBAAwB,CAAA"}