@atlaskit/media-card 79.0.12 → 79.1.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/CHANGELOG.md +20 -0
- package/dist/cjs/card/card.js +1 -1
- package/dist/cjs/card/cardView.js +10 -5
- package/dist/cjs/card/externalImageCard.js +1 -0
- package/dist/cjs/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/cjs/card/svgView/svgView.js +2 -1
- package/dist/cjs/card/svgView/svgViewV2.js +64 -0
- package/dist/cjs/card/ui/imageRenderer/helpers.js +76 -0
- package/dist/cjs/card/ui/imageRenderer/imageRendererV2.compiled.css +2 -0
- package/dist/cjs/card/ui/imageRenderer/imageRendererV2.js +87 -0
- package/dist/cjs/card/ui/imageRenderer/index.js +14 -0
- package/dist/cjs/card/ui/imageRenderer/types.js +5 -0
- package/dist/cjs/card/ui/imageRenderer/wrapper.compiled.css +7 -0
- package/dist/cjs/card/ui/imageRenderer/wrapper.js +21 -0
- package/dist/cjs/inline/loader.js +1 -1
- package/dist/cjs/utils/ufoExperiences.js +1 -1
- package/dist/es2019/card/card.js +1 -1
- package/dist/es2019/card/cardView.js +10 -5
- package/dist/es2019/card/externalImageCard.js +1 -0
- package/dist/es2019/card/inlinePlayerWrapper-compiled.js +1 -4
- package/dist/es2019/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/es2019/card/svgView/svgView.js +2 -1
- package/dist/es2019/card/svgView/svgViewV2.js +57 -0
- package/dist/es2019/card/ui/imageRenderer/helpers.js +73 -0
- package/dist/es2019/card/ui/imageRenderer/imageRendererV2.compiled.css +2 -0
- package/dist/es2019/card/ui/imageRenderer/imageRendererV2.js +68 -0
- package/dist/es2019/card/ui/imageRenderer/index.js +7 -0
- package/dist/es2019/card/ui/imageRenderer/types.js +1 -0
- package/dist/es2019/card/ui/imageRenderer/wrapper.compiled.css +7 -0
- package/dist/es2019/card/ui/imageRenderer/wrapper.js +11 -0
- package/dist/es2019/inline/loader.js +1 -1
- package/dist/es2019/utils/ufoExperiences.js +1 -1
- package/dist/esm/card/card.js +1 -1
- package/dist/esm/card/cardView.js +10 -5
- package/dist/esm/card/externalImageCard.js +1 -0
- package/dist/esm/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/esm/card/svgView/svgView.js +2 -1
- package/dist/esm/card/svgView/svgViewV2.js +57 -0
- package/dist/esm/card/ui/imageRenderer/helpers.js +70 -0
- package/dist/esm/card/ui/imageRenderer/imageRendererV2.compiled.css +2 -0
- package/dist/esm/card/ui/imageRenderer/imageRendererV2.js +77 -0
- package/dist/esm/card/ui/imageRenderer/index.js +7 -0
- package/dist/esm/card/ui/imageRenderer/types.js +1 -0
- package/dist/esm/card/ui/imageRenderer/wrapper.compiled.css +7 -0
- package/dist/esm/card/ui/imageRenderer/wrapper.js +12 -0
- package/dist/esm/inline/loader.js +1 -1
- package/dist/esm/utils/ufoExperiences.js +1 -1
- package/dist/types/card/cardView.d.ts +2 -2
- package/dist/types/card/svgView/svgViewV2.d.ts +7 -0
- package/dist/types/card/ui/imageRenderer/helpers.d.ts +3 -0
- package/dist/types/card/ui/imageRenderer/imageRenderer.d.ts +2 -14
- package/dist/types/card/ui/imageRenderer/imageRendererV2.d.ts +3 -0
- package/dist/types/card/ui/imageRenderer/index.d.ts +3 -0
- package/dist/types/card/ui/imageRenderer/types.d.ts +18 -0
- package/dist/types/card/ui/imageRenderer/wrapper.d.ts +4 -0
- package/dist/types-ts4.5/card/cardView.d.ts +2 -2
- package/dist/types-ts4.5/card/svgView/svgViewV2.d.ts +7 -0
- package/dist/types-ts4.5/card/ui/imageRenderer/helpers.d.ts +3 -0
- package/dist/types-ts4.5/card/ui/imageRenderer/imageRenderer.d.ts +2 -14
- package/dist/types-ts4.5/card/ui/imageRenderer/imageRendererV2.d.ts +3 -0
- package/dist/types-ts4.5/card/ui/imageRenderer/index.d.ts +3 -0
- package/dist/types-ts4.5/card/ui/imageRenderer/types.d.ts +18 -0
- package/dist/types-ts4.5/card/ui/imageRenderer/wrapper.d.ts +4 -0
- package/package.json +11 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
# @atlaskit/media-card
|
|
2
2
|
|
|
3
|
+
## 79.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#123268](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/123268)
|
|
8
|
+
[`f47a830143188`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/f47a830143188) -
|
|
9
|
+
Allow for passing in a resolved media provider to enable SSR'ing media in the editor
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies
|
|
14
|
+
|
|
15
|
+
## 79.0.13
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- [#127167](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/127167)
|
|
20
|
+
[`08efe402190f3`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/08efe402190f3) -
|
|
21
|
+
Replaced internal image rendering component - Behind feature gate platform_media_card_image_render
|
|
22
|
+
|
|
3
23
|
## 79.0.12
|
|
4
24
|
|
|
5
25
|
### Patch Changes
|
package/dist/cjs/card/card.js
CHANGED
|
@@ -21,7 +21,7 @@ var _excluded = ["identifier"];
|
|
|
21
21
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
22
22
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
23
23
|
var packageName = "@atlaskit/media-card";
|
|
24
|
-
var packageVersion = "79.0
|
|
24
|
+
var packageVersion = "79.1.0";
|
|
25
25
|
var CardBase = exports.CardBase = function CardBase(_ref) {
|
|
26
26
|
var identifier = _ref.identifier,
|
|
27
27
|
otherProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
@@ -9,6 +9,7 @@ exports.CardViewBase = exports.CardView = void 0;
|
|
|
9
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _mediaClient = require("@atlaskit/media-client");
|
|
12
13
|
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
13
14
|
var _mimeTypeIcon = require("@atlaskit/media-ui/mime-type-icon");
|
|
14
15
|
var _spinner = _interopRequireDefault(require("@atlaskit/spinner"));
|
|
@@ -16,7 +17,7 @@ var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
|
|
|
16
17
|
var _useCallbackRef = require("use-callback-ref");
|
|
17
18
|
var _mediaUi = require("@atlaskit/media-ui");
|
|
18
19
|
var _analytics = require("../utils/analytics");
|
|
19
|
-
var _imageRenderer = require("./ui/imageRenderer
|
|
20
|
+
var _imageRenderer = require("./ui/imageRenderer");
|
|
20
21
|
var _titleBox = require("./ui/titleBox/titleBox");
|
|
21
22
|
var _failedTitleBox = require("./ui/titleBox/failedTitleBox");
|
|
22
23
|
var _progressBar = require("./ui/progressBar/progressBar");
|
|
@@ -33,6 +34,7 @@ var _useBreakpoint = require("./useBreakpoint");
|
|
|
33
34
|
var _openMediaViewerButton = _interopRequireDefault(require("./ui/openMediaViewerButton/openMediaViewerButton"));
|
|
34
35
|
var _useCurrentValueRef = require("../utils/useCurrentValueRef");
|
|
35
36
|
var _svgView = require("./svgView");
|
|
37
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
36
38
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
37
39
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
38
40
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -245,7 +247,8 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
|
|
|
245
247
|
onSvgLoad === null || onSvgLoad === void 0 || onSvgLoad();
|
|
246
248
|
};
|
|
247
249
|
var contents = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_wrapper.ImageContainer, {
|
|
248
|
-
centerElements: didSvgRender,
|
|
250
|
+
centerElements: didSvgRender && !(0, _platformFeatureFlags.fg)('platform_media_card_image_render') // The whole centerElements styles can go after removing the flag
|
|
251
|
+
,
|
|
249
252
|
testId: _classnames.fileCardImageViewSelector,
|
|
250
253
|
mediaName: name,
|
|
251
254
|
status: status,
|
|
@@ -266,13 +269,13 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
|
|
|
266
269
|
}, /*#__PURE__*/_react.default.createElement(_spinner.default, {
|
|
267
270
|
testId: "media-card-loading",
|
|
268
271
|
interactionName: "media-card-loading"
|
|
269
|
-
})), renderSvgView && identifier && /*#__PURE__*/_react.default.createElement(_svgView.SvgView, {
|
|
272
|
+
})), renderSvgView && identifier && (0, _mediaClient.isFileIdentifier)(identifier) && /*#__PURE__*/_react.default.createElement(_svgView.SvgView, {
|
|
270
273
|
identifier: identifier,
|
|
271
274
|
resizeMode: resizeMode || 'crop',
|
|
272
275
|
onError: onSvgError,
|
|
273
276
|
onLoad: onSvgLoadBase,
|
|
274
277
|
wrapperRef: divRef
|
|
275
|
-
}), renderImageRenderer && /*#__PURE__*/_react.default.createElement(_imageRenderer.ImageRenderer, {
|
|
278
|
+
}), renderImageRenderer && identifier && /*#__PURE__*/_react.default.createElement(_imageRenderer.ImageRenderer, {
|
|
276
279
|
cardPreview: cardPreview,
|
|
277
280
|
mediaType: (metadata === null || metadata === void 0 ? void 0 : metadata.mediaType) || 'unknown',
|
|
278
281
|
alt: alt !== null && alt !== void 0 ? alt : name,
|
|
@@ -281,7 +284,9 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
|
|
|
281
284
|
onImageLoad: handleOnImageLoad,
|
|
282
285
|
onImageError: handleOnImageError,
|
|
283
286
|
nativeLazyLoad: nativeLazyLoad,
|
|
284
|
-
forceSyncDisplay: forceSyncDisplay
|
|
287
|
+
forceSyncDisplay: forceSyncDisplay,
|
|
288
|
+
identifier: identifier,
|
|
289
|
+
wrapperRef: divRef
|
|
285
290
|
}), renderPlayButton && /*#__PURE__*/_react.default.createElement(_iconWrapper.IconWrapper, {
|
|
286
291
|
breakpoint: breakpoint,
|
|
287
292
|
hasTitleBox: hasVisibleTitleBox
|
|
@@ -201,6 +201,7 @@ var ExternalImageCard = exports.ExternalImageCard = function ExternalImageCard(_
|
|
|
201
201
|
|
|
202
202
|
var mediaCardCursor = (0, _getMediaCardCursor.getMediaCardCursor)(false, !!shouldOpenMediaViewer, status === 'error', !!cardPreview, metadata.mediaType);
|
|
203
203
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_cardView.CardView, {
|
|
204
|
+
identifier: identifier,
|
|
204
205
|
status: status,
|
|
205
206
|
error: error,
|
|
206
207
|
mediaItemType: identifier.mediaItemType,
|
|
@@ -87,7 +87,7 @@ var WrappedMediaCardAnalyticsErrorBoundary = /*#__PURE__*/function (_React$Compo
|
|
|
87
87
|
}(_react.default.Component);
|
|
88
88
|
(0, _defineProperty2.default)(WrappedMediaCardAnalyticsErrorBoundary, "displayName", 'MediaCardAnalyticsErrorBoundary');
|
|
89
89
|
var packageName = "@atlaskit/media-card";
|
|
90
|
-
var packageVersion = "79.0
|
|
90
|
+
var packageVersion = "79.1.0";
|
|
91
91
|
|
|
92
92
|
// @ts-ignore: [PIT-1685] Fails in post-office due to backwards incompatibility issue with React 18
|
|
93
93
|
var MediaCardAnalyticsErrorBoundary = (0, _mediaCommon.withMediaAnalyticsContext)({
|
|
@@ -9,6 +9,7 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
10
10
|
var _svgImageCompiled = require("./svgImage-compiled");
|
|
11
11
|
var _svgImageEmotion = require("./svgImage-emotion");
|
|
12
|
+
var _svgViewV = require("./svgViewV2");
|
|
12
13
|
var SvgView = exports.SvgView = function SvgView(props) {
|
|
13
|
-
return (0, _platformFeatureFlags.fg)('platform_media_compiled') ? /*#__PURE__*/_react.default.createElement(_svgImageCompiled.SvgView, props) : /*#__PURE__*/_react.default.createElement(_svgImageEmotion.SvgView, props);
|
|
14
|
+
return (0, _platformFeatureFlags.fg)('platform_media_card_image_render') ? /*#__PURE__*/_react.default.createElement(_svgViewV.SvgView, props) : (0, _platformFeatureFlags.fg)('platform_media_compiled') ? /*#__PURE__*/_react.default.createElement(_svgImageCompiled.SvgView, props) : /*#__PURE__*/_react.default.createElement(_svgImageEmotion.SvgView, props);
|
|
14
15
|
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SvgView = void 0;
|
|
7
|
+
var _react = require("@emotion/react");
|
|
8
|
+
var _react2 = require("react");
|
|
9
|
+
var _errors = require("../../errors");
|
|
10
|
+
var _mediaSvg = require("@atlaskit/media-svg");
|
|
11
|
+
var _imageRendererV = require("../ui/imageRenderer/imageRendererV2");
|
|
12
|
+
/**
|
|
13
|
+
* @jsxRuntime classic
|
|
14
|
+
* @jsx jsx
|
|
15
|
+
*/
|
|
16
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
17
|
+
|
|
18
|
+
var getErrorReason = function getErrorReason(svgReason) {
|
|
19
|
+
switch (svgReason) {
|
|
20
|
+
case 'img-error':
|
|
21
|
+
return 'svg-img-error';
|
|
22
|
+
case 'binary-fetch':
|
|
23
|
+
return 'svg-binary-fetch';
|
|
24
|
+
case 'blob-to-datauri':
|
|
25
|
+
return 'svg-blob-to-datauri';
|
|
26
|
+
default:
|
|
27
|
+
return 'svg-unknown-error';
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
var SvgView = exports.SvgView = function SvgView(_ref) {
|
|
31
|
+
var identifier = _ref.identifier,
|
|
32
|
+
resizeMode = _ref.resizeMode,
|
|
33
|
+
onLoad = _ref.onLoad,
|
|
34
|
+
onError = _ref.onError,
|
|
35
|
+
wrapperRef = _ref.wrapperRef,
|
|
36
|
+
alt = _ref.alt;
|
|
37
|
+
var onSvgError = function onSvgError(err) {
|
|
38
|
+
var error = new _errors.MediaCardError(getErrorReason(err.primaryReason), err.secondaryError);
|
|
39
|
+
onError === null || onError === void 0 || onError(error);
|
|
40
|
+
};
|
|
41
|
+
var _useResolveSvg = (0, _mediaSvg.useResolveSvg)(identifier, onSvgError),
|
|
42
|
+
svgUrl = _useResolveSvg.svgUrl,
|
|
43
|
+
source = _useResolveSvg.source;
|
|
44
|
+
var cardPreview = (0, _react2.useMemo)(function () {
|
|
45
|
+
return svgUrl && source ? {
|
|
46
|
+
dataURI: svgUrl,
|
|
47
|
+
source: source
|
|
48
|
+
} : undefined;
|
|
49
|
+
}, [svgUrl, source]);
|
|
50
|
+
return cardPreview ? (0, _react.jsx)(_imageRendererV.ImageRenderer, {
|
|
51
|
+
testId: "media-card-svg",
|
|
52
|
+
identifier: identifier,
|
|
53
|
+
cardPreview: cardPreview,
|
|
54
|
+
alt: alt,
|
|
55
|
+
resizeMode: resizeMode,
|
|
56
|
+
onImageLoad: onLoad,
|
|
57
|
+
onImageError: function onImageError() {
|
|
58
|
+
onSvgError(new _mediaSvg.MediaSVGError('img-error'));
|
|
59
|
+
},
|
|
60
|
+
wrapperRef: wrapperRef,
|
|
61
|
+
mediaType: "image",
|
|
62
|
+
useWhiteBackground: true
|
|
63
|
+
}) : null;
|
|
64
|
+
};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.calculateInitialDimensions = exports.calculateDimensions = void 0;
|
|
7
|
+
var calculateDimensions = exports.calculateDimensions = function calculateDimensions(imgElement, parentElement, resizeMode) {
|
|
8
|
+
var naturalWidth = imgElement.naturalWidth,
|
|
9
|
+
width = imgElement.width,
|
|
10
|
+
naturalHeight = imgElement.naturalHeight,
|
|
11
|
+
height = imgElement.height;
|
|
12
|
+
// Firefox & Safari can't always read the "natural" dimensions correctly.
|
|
13
|
+
// When these are undefined or zero, we replace them with the rendered values
|
|
14
|
+
var imgWidth = naturalWidth || width;
|
|
15
|
+
var imgHeight = naturalHeight || height;
|
|
16
|
+
var _parentElement$getBou = parentElement.getBoundingClientRect(),
|
|
17
|
+
parentWidth = _parentElement$getBou.width,
|
|
18
|
+
parentHeight = _parentElement$getBou.height;
|
|
19
|
+
if (resizeMode === 'fit' || resizeMode === 'full-fit') {
|
|
20
|
+
return {
|
|
21
|
+
maxWidth: "min(100%, ".concat(imgWidth, "px)"),
|
|
22
|
+
maxHeight: "min(100%, ".concat(imgHeight, "px)")
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
var imgRatio = imgWidth / imgHeight;
|
|
26
|
+
var cardRatio = parentWidth / parentHeight;
|
|
27
|
+
var isImageLandscapier = imgRatio > cardRatio;
|
|
28
|
+
if (resizeMode === 'stretchy-fit') {
|
|
29
|
+
if (isImageLandscapier) {
|
|
30
|
+
return {
|
|
31
|
+
width: '100%',
|
|
32
|
+
maxHeight: '100%'
|
|
33
|
+
};
|
|
34
|
+
} else {
|
|
35
|
+
return {
|
|
36
|
+
height: '100%',
|
|
37
|
+
maxWidth: '100%'
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (resizeMode === 'crop') {
|
|
42
|
+
if (isImageLandscapier) {
|
|
43
|
+
return {
|
|
44
|
+
height: imgHeight,
|
|
45
|
+
maxHeight: '100%'
|
|
46
|
+
};
|
|
47
|
+
} else {
|
|
48
|
+
return {
|
|
49
|
+
width: imgWidth,
|
|
50
|
+
maxWidth: '100%'
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return {};
|
|
55
|
+
};
|
|
56
|
+
var calculateInitialDimensions = exports.calculateInitialDimensions = function calculateInitialDimensions(resizeMode) {
|
|
57
|
+
if (resizeMode === 'fit' || resizeMode === 'full-fit') {
|
|
58
|
+
return {
|
|
59
|
+
maxWidth: "100%",
|
|
60
|
+
maxHeight: "100%"
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
if (resizeMode === 'stretchy-fit') {
|
|
64
|
+
// assume the image is landscape
|
|
65
|
+
return {
|
|
66
|
+
width: '100%',
|
|
67
|
+
maxHeight: '100%'
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// resizeMode === 'crop'
|
|
72
|
+
// assume the image is landscape
|
|
73
|
+
return {
|
|
74
|
+
width: '100%'
|
|
75
|
+
};
|
|
76
|
+
};
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/* imageRendererV2.tsx generated by @compiled/babel-plugin v0.36.1 */
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
Object.defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
exports.ImageRenderer = void 0;
|
|
10
|
+
require("./imageRendererV2.compiled.css");
|
|
11
|
+
var _runtime = require("@compiled/react/runtime");
|
|
12
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
var _helpers = require("./helpers");
|
|
16
|
+
var _useCurrentValueRef = require("../../../utils/useCurrentValueRef");
|
|
17
|
+
var _wrapper = require("./wrapper");
|
|
18
|
+
var _mediaClient = require("@atlaskit/media-client");
|
|
19
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
20
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
22
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
23
|
+
var baseStyles = null;
|
|
24
|
+
var backgroundStyles = null;
|
|
25
|
+
var ImageRenderer = exports.ImageRenderer = function ImageRenderer(_ref) {
|
|
26
|
+
var cardPreview = _ref.cardPreview,
|
|
27
|
+
_ref$alt = _ref.alt,
|
|
28
|
+
alt = _ref$alt === void 0 ? '' : _ref$alt,
|
|
29
|
+
_ref$resizeMode = _ref.resizeMode,
|
|
30
|
+
resizeMode = _ref$resizeMode === void 0 ? 'crop' : _ref$resizeMode,
|
|
31
|
+
onImageLoad = _ref.onImageLoad,
|
|
32
|
+
onImageError = _ref.onImageError,
|
|
33
|
+
onDisplayImage = _ref.onDisplayImage,
|
|
34
|
+
mediaType = _ref.mediaType,
|
|
35
|
+
nativeLazyLoad = _ref.nativeLazyLoad,
|
|
36
|
+
forceSyncDisplay = _ref.forceSyncDisplay,
|
|
37
|
+
identifier = _ref.identifier,
|
|
38
|
+
wrapperRef = _ref.wrapperRef,
|
|
39
|
+
useWhiteBackground = _ref.useWhiteBackground,
|
|
40
|
+
testId = _ref.testId;
|
|
41
|
+
var onDisplayImageRef = (0, _useCurrentValueRef.useCurrentValueRef)(onDisplayImage);
|
|
42
|
+
(0, _react.useEffect)(function () {
|
|
43
|
+
if (mediaType === 'image') {
|
|
44
|
+
var _onDisplayImageRef$cu;
|
|
45
|
+
(_onDisplayImageRef$cu = onDisplayImageRef.current) === null || _onDisplayImageRef$cu === void 0 || _onDisplayImageRef$cu.call(onDisplayImageRef);
|
|
46
|
+
}
|
|
47
|
+
}, [mediaType, onDisplayImageRef]);
|
|
48
|
+
var _useState = (0, _react.useState)(false),
|
|
49
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
50
|
+
didRender = _useState2[0],
|
|
51
|
+
setDidRender = _useState2[1];
|
|
52
|
+
var _useState3 = (0, _react.useState)((0, _helpers.calculateInitialDimensions)(resizeMode)),
|
|
53
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
54
|
+
resolvedDimensions = _useState4[0],
|
|
55
|
+
setResolvedDimensions = _useState4[1];
|
|
56
|
+
var imgRef = (0, _react.useRef)(null);
|
|
57
|
+
var onLoad = function onLoad(evt) {
|
|
58
|
+
wrapperRef.current && setResolvedDimensions((0, _helpers.calculateDimensions)(evt.currentTarget, wrapperRef.current, resizeMode));
|
|
59
|
+
setDidRender(true);
|
|
60
|
+
cardPreview && (onImageLoad === null || onImageLoad === void 0 ? void 0 : onImageLoad(cardPreview));
|
|
61
|
+
};
|
|
62
|
+
var onError = function onError() {
|
|
63
|
+
onImageError && cardPreview && onImageError(cardPreview);
|
|
64
|
+
};
|
|
65
|
+
(0, _react.useEffect)(function () {
|
|
66
|
+
if (imgRef.current && wrapperRef.current && imgRef.current) {
|
|
67
|
+
setResolvedDimensions((0, _helpers.calculateDimensions)(imgRef.current, wrapperRef.current, resizeMode));
|
|
68
|
+
}
|
|
69
|
+
}, [resizeMode, wrapperRef]);
|
|
70
|
+
return cardPreview ? /*#__PURE__*/_react.default.createElement(_wrapper.ImageRendererWrapper, null, /*#__PURE__*/_react.default.createElement("img", {
|
|
71
|
+
ref: imgRef,
|
|
72
|
+
"data-testid": testId,
|
|
73
|
+
"data-fileid": (0, _mediaClient.isFileIdentifier)(identifier) ? identifier.id : null,
|
|
74
|
+
"data-filecollection": (0, _mediaClient.isFileIdentifier)(identifier) ? identifier.collectionName : null,
|
|
75
|
+
"data-resizemode": resizeMode,
|
|
76
|
+
"data-source": cardPreview.source,
|
|
77
|
+
src: cardPreview.dataURI,
|
|
78
|
+
alt: alt,
|
|
79
|
+
onLoad: onLoad,
|
|
80
|
+
onError: onError,
|
|
81
|
+
loading: nativeLazyLoad ? 'lazy' : undefined,
|
|
82
|
+
style: _objectSpread({
|
|
83
|
+
visibility: didRender || forceSyncDisplay ? 'visible' : 'hidden'
|
|
84
|
+
}, resolvedDimensions),
|
|
85
|
+
className: (0, _runtime.ax)(["_5ral1f51", useWhiteBackground && "_bfhku67f"])
|
|
86
|
+
})) : null;
|
|
87
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.ImageRenderer = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _imageRenderer = require("./imageRenderer");
|
|
10
|
+
var _imageRendererV = require("./imageRendererV2");
|
|
11
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
12
|
+
var ImageRenderer = exports.ImageRenderer = function ImageRenderer(props) {
|
|
13
|
+
return (0, _platformFeatureFlags.fg)('platform_media_card_image_render') ? /*#__PURE__*/_react.default.createElement(_imageRendererV.ImageRenderer, props) : /*#__PURE__*/_react.default.createElement(_imageRenderer.ImageRenderer, props);
|
|
14
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/* wrapper.tsx generated by @compiled/babel-plugin v0.36.1 */
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.ImageRendererWrapper = void 0;
|
|
9
|
+
require("./wrapper.compiled.css");
|
|
10
|
+
var React = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _runtime = require("@compiled/react/runtime");
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
|
+
var wrapperStyles = null;
|
|
15
|
+
var ImageRendererWrapper = exports.ImageRendererWrapper = function ImageRendererWrapper(_ref) {
|
|
16
|
+
var children = _ref.children;
|
|
17
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
18
|
+
"data-testid": "ImageRendererWrapper",
|
|
19
|
+
className: (0, _runtime.ax)(["_kqswstnw _1bsb1osq _4t3i1osq _1e0c1txw _2lx21bp4 _1bah1h6o _4cvr1h6o"])
|
|
20
|
+
}, children);
|
|
21
|
+
};
|
|
@@ -117,7 +117,7 @@ var MediaInlineCardLoader = exports.default = /*#__PURE__*/function (_React$Pure
|
|
|
117
117
|
ErrorBoundary = _this$state.ErrorBoundary;
|
|
118
118
|
var analyticsContext = {
|
|
119
119
|
packageVersion: "@atlaskit/media-card",
|
|
120
|
-
packageName: "79.0
|
|
120
|
+
packageName: "79.1.0",
|
|
121
121
|
componentName: 'mediaInlineCard',
|
|
122
122
|
component: 'mediaInlineCard'
|
|
123
123
|
};
|
|
@@ -15,7 +15,7 @@ var _mediaClient = require("@atlaskit/media-client");
|
|
|
15
15
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
16
16
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
17
17
|
var packageName = "@atlaskit/media-card";
|
|
18
|
-
var packageVersion = "79.0
|
|
18
|
+
var packageVersion = "79.1.0";
|
|
19
19
|
var SAMPLE_RATE = 0.05;
|
|
20
20
|
var concurrentExperience;
|
|
21
21
|
var getExperience = function getExperience(id) {
|
package/dist/es2019/card/card.js
CHANGED
|
@@ -9,7 +9,7 @@ import { startResourceObserver, setAnalyticsContext } from '../utils/mediaPerfor
|
|
|
9
9
|
import { useAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
10
10
|
import UFOLabel from '@atlaskit/react-ufo/label';
|
|
11
11
|
const packageName = "@atlaskit/media-card";
|
|
12
|
-
const packageVersion = "79.0
|
|
12
|
+
const packageVersion = "79.1.0";
|
|
13
13
|
export const CardBase = ({
|
|
14
14
|
identifier,
|
|
15
15
|
...otherProps
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React, { useEffect, useState, useRef, useMemo } from 'react';
|
|
2
|
+
import { isFileIdentifier } from '@atlaskit/media-client';
|
|
2
3
|
import { withAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
3
4
|
import { MimeTypeIcon } from '@atlaskit/media-ui/mime-type-icon';
|
|
4
5
|
import SpinnerIcon from '@atlaskit/spinner';
|
|
@@ -6,7 +7,7 @@ import Tooltip from '@atlaskit/tooltip';
|
|
|
6
7
|
import { useMergeRefs } from 'use-callback-ref';
|
|
7
8
|
import { messages } from '@atlaskit/media-ui';
|
|
8
9
|
import { createAndFireMediaCardEvent } from '../utils/analytics';
|
|
9
|
-
import { ImageRenderer } from './ui/imageRenderer
|
|
10
|
+
import { ImageRenderer } from './ui/imageRenderer';
|
|
10
11
|
import { TitleBox } from './ui/titleBox/titleBox';
|
|
11
12
|
import { FailedTitleBox } from './ui/titleBox/failedTitleBox';
|
|
12
13
|
import { ProgressBar } from './ui/progressBar/progressBar';
|
|
@@ -23,6 +24,7 @@ import { useBreakpoint } from './useBreakpoint';
|
|
|
23
24
|
import OpenMediaViewerButton from './ui/openMediaViewerButton/openMediaViewerButton';
|
|
24
25
|
import { useCurrentValueRef } from '../utils/useCurrentValueRef';
|
|
25
26
|
import { SvgView } from './svgView';
|
|
27
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
26
28
|
export const CardViewBase = ({
|
|
27
29
|
identifier,
|
|
28
30
|
innerRef = null,
|
|
@@ -233,7 +235,8 @@ export const CardViewBase = ({
|
|
|
233
235
|
onSvgLoad === null || onSvgLoad === void 0 ? void 0 : onSvgLoad();
|
|
234
236
|
};
|
|
235
237
|
const contents = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ImageContainer, {
|
|
236
|
-
centerElements: didSvgRender
|
|
238
|
+
centerElements: didSvgRender && !fg('platform_media_card_image_render') // The whole centerElements styles can go after removing the flag
|
|
239
|
+
,
|
|
237
240
|
testId: fileCardImageViewSelector,
|
|
238
241
|
mediaName: name,
|
|
239
242
|
status: status,
|
|
@@ -254,13 +257,13 @@ export const CardViewBase = ({
|
|
|
254
257
|
}, /*#__PURE__*/React.createElement(SpinnerIcon, {
|
|
255
258
|
testId: "media-card-loading",
|
|
256
259
|
interactionName: "media-card-loading"
|
|
257
|
-
})), renderSvgView && identifier && /*#__PURE__*/React.createElement(SvgView, {
|
|
260
|
+
})), renderSvgView && identifier && isFileIdentifier(identifier) && /*#__PURE__*/React.createElement(SvgView, {
|
|
258
261
|
identifier: identifier,
|
|
259
262
|
resizeMode: resizeMode || 'crop',
|
|
260
263
|
onError: onSvgError,
|
|
261
264
|
onLoad: onSvgLoadBase,
|
|
262
265
|
wrapperRef: divRef
|
|
263
|
-
}), renderImageRenderer && /*#__PURE__*/React.createElement(ImageRenderer, {
|
|
266
|
+
}), renderImageRenderer && identifier && /*#__PURE__*/React.createElement(ImageRenderer, {
|
|
264
267
|
cardPreview: cardPreview,
|
|
265
268
|
mediaType: (metadata === null || metadata === void 0 ? void 0 : metadata.mediaType) || 'unknown',
|
|
266
269
|
alt: alt !== null && alt !== void 0 ? alt : name,
|
|
@@ -269,7 +272,9 @@ export const CardViewBase = ({
|
|
|
269
272
|
onImageLoad: handleOnImageLoad,
|
|
270
273
|
onImageError: handleOnImageError,
|
|
271
274
|
nativeLazyLoad: nativeLazyLoad,
|
|
272
|
-
forceSyncDisplay: forceSyncDisplay
|
|
275
|
+
forceSyncDisplay: forceSyncDisplay,
|
|
276
|
+
identifier: identifier,
|
|
277
|
+
wrapperRef: divRef
|
|
273
278
|
}), renderPlayButton && /*#__PURE__*/React.createElement(IconWrapper, {
|
|
274
279
|
breakpoint: breakpoint,
|
|
275
280
|
hasTitleBox: hasVisibleTitleBox
|
|
@@ -166,6 +166,7 @@ export const ExternalImageCard = ({
|
|
|
166
166
|
|
|
167
167
|
const mediaCardCursor = getMediaCardCursor(false, !!shouldOpenMediaViewer, status === 'error', !!cardPreview, metadata.mediaType);
|
|
168
168
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CardView, {
|
|
169
|
+
identifier: identifier,
|
|
169
170
|
status: status,
|
|
170
171
|
error: error,
|
|
171
172
|
mediaItemType: identifier.mediaItemType,
|
|
@@ -35,10 +35,7 @@ export const InlinePlayerWrapper = props => {
|
|
|
35
35
|
style: {
|
|
36
36
|
width: getDimensionsWithDefault(dimensions).width || '100%',
|
|
37
37
|
height: getDimensionsWithDefault(dimensions).height || 'auto'
|
|
38
|
-
}
|
|
39
|
-
// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage, @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
|
|
40
|
-
,
|
|
41
|
-
|
|
38
|
+
},
|
|
42
39
|
onClick: onClick,
|
|
43
40
|
ref: innerRef
|
|
44
41
|
}, VcMediaWrapperProps), props.children);
|
|
@@ -66,7 +66,7 @@ class WrappedMediaCardAnalyticsErrorBoundary extends React.Component {
|
|
|
66
66
|
}
|
|
67
67
|
_defineProperty(WrappedMediaCardAnalyticsErrorBoundary, "displayName", 'MediaCardAnalyticsErrorBoundary');
|
|
68
68
|
const packageName = "@atlaskit/media-card";
|
|
69
|
-
const packageVersion = "79.0
|
|
69
|
+
const packageVersion = "79.1.0";
|
|
70
70
|
|
|
71
71
|
// @ts-ignore: [PIT-1685] Fails in post-office due to backwards incompatibility issue with React 18
|
|
72
72
|
const MediaCardAnalyticsErrorBoundary = withMediaAnalyticsContext({
|
|
@@ -2,6 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
3
3
|
import { SvgView as SvgViewCompiled } from './svgImage-compiled';
|
|
4
4
|
import { SvgView as SvgViewEmotion } from './svgImage-emotion';
|
|
5
|
+
import { SvgView as SvgViewV2 } from './svgViewV2';
|
|
5
6
|
export const SvgView = props => {
|
|
6
|
-
return fg('platform_media_compiled') ? /*#__PURE__*/React.createElement(SvgViewCompiled, props) : /*#__PURE__*/React.createElement(SvgViewEmotion, props);
|
|
7
|
+
return fg('platform_media_card_image_render') ? /*#__PURE__*/React.createElement(SvgViewV2, props) : fg('platform_media_compiled') ? /*#__PURE__*/React.createElement(SvgViewCompiled, props) : /*#__PURE__*/React.createElement(SvgViewEmotion, props);
|
|
7
8
|
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jsxRuntime classic
|
|
3
|
+
* @jsx jsx
|
|
4
|
+
*/
|
|
5
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
6
|
+
import { jsx } from '@emotion/react';
|
|
7
|
+
import { useMemo } from 'react';
|
|
8
|
+
import { MediaCardError } from '../../errors';
|
|
9
|
+
import { useResolveSvg, MediaSVGError } from '@atlaskit/media-svg';
|
|
10
|
+
import { ImageRenderer } from '../ui/imageRenderer/imageRendererV2';
|
|
11
|
+
const getErrorReason = svgReason => {
|
|
12
|
+
switch (svgReason) {
|
|
13
|
+
case 'img-error':
|
|
14
|
+
return 'svg-img-error';
|
|
15
|
+
case 'binary-fetch':
|
|
16
|
+
return 'svg-binary-fetch';
|
|
17
|
+
case 'blob-to-datauri':
|
|
18
|
+
return 'svg-blob-to-datauri';
|
|
19
|
+
default:
|
|
20
|
+
return 'svg-unknown-error';
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
export const SvgView = ({
|
|
24
|
+
identifier,
|
|
25
|
+
resizeMode,
|
|
26
|
+
onLoad,
|
|
27
|
+
onError,
|
|
28
|
+
wrapperRef,
|
|
29
|
+
alt
|
|
30
|
+
}) => {
|
|
31
|
+
const onSvgError = err => {
|
|
32
|
+
const error = new MediaCardError(getErrorReason(err.primaryReason), err.secondaryError);
|
|
33
|
+
onError === null || onError === void 0 ? void 0 : onError(error);
|
|
34
|
+
};
|
|
35
|
+
const {
|
|
36
|
+
svgUrl,
|
|
37
|
+
source
|
|
38
|
+
} = useResolveSvg(identifier, onSvgError);
|
|
39
|
+
const cardPreview = useMemo(() => svgUrl && source ? {
|
|
40
|
+
dataURI: svgUrl,
|
|
41
|
+
source
|
|
42
|
+
} : undefined, [svgUrl, source]);
|
|
43
|
+
return cardPreview ? jsx(ImageRenderer, {
|
|
44
|
+
testId: "media-card-svg",
|
|
45
|
+
identifier: identifier,
|
|
46
|
+
cardPreview: cardPreview,
|
|
47
|
+
alt: alt,
|
|
48
|
+
resizeMode: resizeMode,
|
|
49
|
+
onImageLoad: onLoad,
|
|
50
|
+
onImageError: () => {
|
|
51
|
+
onSvgError(new MediaSVGError('img-error'));
|
|
52
|
+
},
|
|
53
|
+
wrapperRef: wrapperRef,
|
|
54
|
+
mediaType: "image",
|
|
55
|
+
useWhiteBackground: true
|
|
56
|
+
}) : null;
|
|
57
|
+
};
|