@atlaskit/media-card 77.7.7 → 77.8.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 +10 -0
- package/dist/cjs/card/card.js +10 -1
- package/dist/cjs/card/cardView.js +11 -3
- package/dist/cjs/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/cjs/card/ui/openMediaViewerButton/openMediaViewerButton.js +38 -0
- package/dist/cjs/card/ui/wrapper/styles.js +1 -1
- package/dist/cjs/card/v2/cardV2.js +1 -1
- package/dist/cjs/card/v2/cardViewV2.js +12 -4
- package/dist/cjs/card/v2/cardviews/cardViewWrapper.js +12 -4
- package/dist/cjs/card/v2/cardviews/index.js +6 -2
- package/dist/cjs/card/v2/fileCard.js +15 -0
- package/dist/cjs/inline/loader.js +1 -1
- package/dist/cjs/utils/ufoExperiences.js +1 -1
- package/dist/es2019/card/card.js +10 -1
- package/dist/es2019/card/cardView.js +10 -3
- package/dist/es2019/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/es2019/card/ui/openMediaViewerButton/openMediaViewerButton.js +37 -0
- package/dist/es2019/card/ui/wrapper/styles.js +5 -1
- package/dist/es2019/card/v2/cardV2.js +1 -1
- package/dist/es2019/card/v2/cardViewV2.js +11 -4
- package/dist/es2019/card/v2/cardviews/cardViewWrapper.js +10 -3
- package/dist/es2019/card/v2/cardviews/index.js +6 -2
- package/dist/es2019/card/v2/fileCard.js +15 -0
- package/dist/es2019/inline/loader.js +1 -1
- package/dist/es2019/utils/ufoExperiences.js +1 -1
- package/dist/esm/card/card.js +10 -1
- package/dist/esm/card/cardView.js +11 -3
- package/dist/esm/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/esm/card/ui/openMediaViewerButton/openMediaViewerButton.js +31 -0
- package/dist/esm/card/ui/wrapper/styles.js +2 -2
- package/dist/esm/card/v2/cardV2.js +1 -1
- package/dist/esm/card/v2/cardViewV2.js +12 -4
- package/dist/esm/card/v2/cardviews/cardViewWrapper.js +12 -4
- package/dist/esm/card/v2/cardviews/index.js +6 -2
- package/dist/esm/card/v2/fileCard.js +15 -0
- package/dist/esm/inline/loader.js +1 -1
- package/dist/esm/utils/ufoExperiences.js +1 -1
- package/dist/types/card/card.d.ts +4 -2
- package/dist/types/card/cardView.d.ts +3 -1
- package/dist/types/card/ui/openMediaViewerButton/openMediaViewerButton.d.ts +13 -0
- package/dist/types/card/v2/cardViewV2.d.ts +4 -2
- package/dist/types/card/v2/cardviews/cardViewWrapper.d.ts +3 -1
- package/dist/types/card/v2/cardviews/index.d.ts +4 -2
- package/dist/types-ts4.5/card/card.d.ts +4 -2
- package/dist/types-ts4.5/card/cardView.d.ts +3 -1
- package/dist/types-ts4.5/card/ui/openMediaViewerButton/openMediaViewerButton.d.ts +13 -0
- package/dist/types-ts4.5/card/v2/cardViewV2.d.ts +4 -2
- package/dist/types-ts4.5/card/v2/cardviews/cardViewWrapper.d.ts +3 -1
- package/dist/types-ts4.5/card/v2/cardviews/index.d.ts +4 -2
- package/example-helpers/styles.ts +0 -2
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# @atlaskit/media-card
|
|
2
2
|
|
|
3
|
+
## 77.8.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#69045](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/69045) [`c181471c1afb`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/c181471c1afb) - Made media card keyboard accessible when media viewer is enabled
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies
|
|
12
|
+
|
|
3
13
|
## 77.7.7
|
|
4
14
|
|
|
5
15
|
### Patch Changes
|
package/dist/cjs/card/card.js
CHANGED
|
@@ -50,7 +50,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
50
50
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
51
51
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
52
52
|
var packageName = "@atlaskit/media-card";
|
|
53
|
-
var packageVersion = "77.
|
|
53
|
+
var packageVersion = "77.8.0";
|
|
54
54
|
var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
55
55
|
(0, _inherits2.default)(CardBase, _Component);
|
|
56
56
|
var _super = _createSuper(CardBase);
|
|
@@ -62,6 +62,7 @@ var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
|
62
62
|
// of Cards regardless of whether it shares the same file (either internal or external)
|
|
63
63
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "internalOccurrenceKey", (0, _generateUniqueId.generateUniqueId)());
|
|
64
64
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hasBeenMounted", false);
|
|
65
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaViewerButtonRef", null);
|
|
65
66
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fileStateFlags", {
|
|
66
67
|
wasStatusUploading: false,
|
|
67
68
|
wasStatusProcessing: false
|
|
@@ -449,6 +450,9 @@ var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
|
449
450
|
cardRef: cardRef
|
|
450
451
|
});
|
|
451
452
|
});
|
|
453
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setMediaViewerButtonRef", function (buttonRef) {
|
|
454
|
+
_this.mediaViewerButtonRef = buttonRef;
|
|
455
|
+
});
|
|
452
456
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderInlinePlayer", function () {
|
|
453
457
|
var _this$props6 = _this.props,
|
|
454
458
|
identifier = _this$props6.identifier,
|
|
@@ -482,6 +486,9 @@ var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
|
482
486
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onMediaViewerClose", function () {
|
|
483
487
|
_this.setState({
|
|
484
488
|
mediaViewerSelectedItem: undefined
|
|
489
|
+
}, function () {
|
|
490
|
+
var _this$mediaViewerButt;
|
|
491
|
+
(_this$mediaViewerButt = _this.mediaViewerButtonRef) === null || _this$mediaViewerButt === void 0 || _this$mediaViewerButt.focus();
|
|
485
492
|
});
|
|
486
493
|
});
|
|
487
494
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onDisplayImage", function () {
|
|
@@ -583,12 +590,14 @@ var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
|
583
590
|
actions: actions,
|
|
584
591
|
selectable: selectable,
|
|
585
592
|
selected: selected,
|
|
593
|
+
shouldOpenMediaViewer: shouldOpenMediaViewer,
|
|
586
594
|
onClick: withCallbacks ? onCardViewClick : undefined,
|
|
587
595
|
onMouseEnter: withCallbacks ? onMouseEnter : undefined,
|
|
588
596
|
disableOverlay: disableOverlay,
|
|
589
597
|
progress: progress,
|
|
590
598
|
onDisplayImage: withCallbacks ? onDisplayImage : undefined,
|
|
591
599
|
innerRef: _this.setRef,
|
|
600
|
+
openMediaViewerButtonRef: _this.setMediaViewerButtonRef,
|
|
592
601
|
testId: testId,
|
|
593
602
|
featureFlags: featureFlags,
|
|
594
603
|
titleBoxBgColor: titleBoxBgColor,
|
|
@@ -39,6 +39,7 @@ var _errors = require("../errors");
|
|
|
39
39
|
var _wrapper = require("./ui/wrapper");
|
|
40
40
|
var _classnames = require("./classnames");
|
|
41
41
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
42
|
+
var _openMediaViewerButton = _interopRequireDefault(require("./ui/openMediaViewerButton/openMediaViewerButton"));
|
|
42
43
|
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; }
|
|
43
44
|
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; }
|
|
44
45
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
@@ -408,7 +409,10 @@ var CardViewBase = exports.CardViewBase = /*#__PURE__*/function (_React$Componen
|
|
|
408
409
|
disableOverlay = _this$props8.disableOverlay,
|
|
409
410
|
cardPreview = _this$props8.cardPreview,
|
|
410
411
|
mediaCardCursor = _this$props8.mediaCardCursor,
|
|
411
|
-
shouldHideTooltip = _this$props8.shouldHideTooltip
|
|
412
|
+
shouldHideTooltip = _this$props8.shouldHideTooltip,
|
|
413
|
+
_this$props8$openMedi = _this$props8.openMediaViewerButtonRef,
|
|
414
|
+
openMediaViewerButtonRef = _this$props8$openMedi === void 0 ? null : _this$props8$openMedi,
|
|
415
|
+
shouldOpenMediaViewer = _this$props8.shouldOpenMediaViewer;
|
|
412
416
|
var _ref9 = metadata || {},
|
|
413
417
|
name = _ref9.name;
|
|
414
418
|
var shouldDisplayBackground = !cardPreview || !disableOverlay || status === 'error' || status === 'failed-processing';
|
|
@@ -416,7 +420,11 @@ var CardViewBase = exports.CardViewBase = /*#__PURE__*/function (_React$Componen
|
|
|
416
420
|
var isTickBoxSelectable = !disableOverlay && !!selectable && !selected;
|
|
417
421
|
// Disable tooltip for Media Single
|
|
418
422
|
var shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
|
|
419
|
-
return (0, _react.jsx)(
|
|
423
|
+
return (0, _react.jsx)(_react2.default.Fragment, null, shouldOpenMediaViewer && (0, _react.jsx)(_openMediaViewerButton.default, {
|
|
424
|
+
fileName: name !== null && name !== void 0 ? name : '',
|
|
425
|
+
innerRef: openMediaViewerButtonRef,
|
|
426
|
+
onClick: onClick
|
|
427
|
+
}), (0, _react.jsx)(_wrapper.Wrapper, {
|
|
420
428
|
testId: testId || 'media-card-view',
|
|
421
429
|
dimensions: dimensions,
|
|
422
430
|
appearance: appearance,
|
|
@@ -435,7 +443,7 @@ var CardViewBase = exports.CardViewBase = /*#__PURE__*/function (_React$Componen
|
|
|
435
443
|
content: name,
|
|
436
444
|
position: "bottom",
|
|
437
445
|
tag: 'div'
|
|
438
|
-
}, this.renderContents()) : this.renderContents());
|
|
446
|
+
}, this.renderContents()) : this.renderContents()));
|
|
439
447
|
}
|
|
440
448
|
}]);
|
|
441
449
|
return CardViewBase;
|
|
@@ -90,7 +90,7 @@ var WrappedMediaCardAnalyticsErrorBoundary = /*#__PURE__*/function (_React$Compo
|
|
|
90
90
|
}(_react.default.Component);
|
|
91
91
|
(0, _defineProperty2.default)(WrappedMediaCardAnalyticsErrorBoundary, "displayName", 'MediaCardAnalyticsErrorBoundary');
|
|
92
92
|
var packageName = "@atlaskit/media-card";
|
|
93
|
-
var packageVersion = "77.
|
|
93
|
+
var packageVersion = "77.8.0";
|
|
94
94
|
var MediaCardAnalyticsErrorBoundary = (0, _mediaCommon.withMediaAnalyticsContext)({
|
|
95
95
|
packageVersion: packageVersion,
|
|
96
96
|
packageName: packageName,
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.visuallyHiddenStyles = exports.default = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
+
var _react = require("@emotion/react");
|
|
12
|
+
var _react2 = _interopRequireDefault(require("react"));
|
|
13
|
+
var _reactIntlNext = require("react-intl-next");
|
|
14
|
+
var _mediaUi = require("@atlaskit/media-ui");
|
|
15
|
+
var _excluded = ["fileName", "innerRef"];
|
|
16
|
+
var _templateObject;
|
|
17
|
+
/** @jsx jsx */
|
|
18
|
+
var visuallyHiddenStyles = exports.visuallyHiddenStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 1px;\n height: 1px;\n padding: 0;\n position: fixed;\n border: 0;\n clip: rect(1px, 1px, 1px, 1px);\n overflow: hidden;\n white-space: nowrap;\n"])));
|
|
19
|
+
var OpenMediaViewerButton = function OpenMediaViewerButton(_ref) {
|
|
20
|
+
var fileName = _ref.fileName,
|
|
21
|
+
innerRef = _ref.innerRef,
|
|
22
|
+
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
23
|
+
var intl = (0, _reactIntlNext.useIntl)();
|
|
24
|
+
return (0, _react.jsx)("button", (0, _extends2.default)({
|
|
25
|
+
ref: innerRef,
|
|
26
|
+
css: visuallyHiddenStyles
|
|
27
|
+
}, props), intl.formatMessage(_mediaUi.messages.open_file_in_viewer, {
|
|
28
|
+
name: fileName
|
|
29
|
+
}));
|
|
30
|
+
};
|
|
31
|
+
var OpenMediaViewerButtonWrapper = function OpenMediaViewerButtonWrapper(props) {
|
|
32
|
+
return props.intl ? (0, _react.jsx)(OpenMediaViewerButton, props) : (0, _react.jsx)(_reactIntlNext.IntlProvider, {
|
|
33
|
+
locale: "en"
|
|
34
|
+
}, (0, _react.jsx)(OpenMediaViewerButton, props));
|
|
35
|
+
};
|
|
36
|
+
var _default = exports.default = (0, _reactIntlNext.injectIntl)(OpenMediaViewerButtonWrapper, {
|
|
37
|
+
enforceContext: false
|
|
38
|
+
});
|
|
@@ -26,6 +26,6 @@ var wrapperStyles = exports.wrapperStyles = function wrapperStyles(_ref) {
|
|
|
26
26
|
isTickBoxSelectable = _ref.isTickBoxSelectable,
|
|
27
27
|
shouldDisplayTooltip = _ref.shouldDisplayTooltip,
|
|
28
28
|
mediaCardCursor = _ref.mediaCardCursor;
|
|
29
|
-
return (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", "\n box-sizing: border-box;\n * {\n box-sizing: border-box;\n }\n position: relative;\n font-family: ", ";\n ", "\n ", "\n ", "\n ", "\n ", "\n ", ";\n ", "\n\n /* We use classnames from here exceptionally to be able to handle styles when the Card is on hover */\n ", "\n ", "\n &:hover .", " {\n ", "\n }\n &:hover .", " {\n ", "\n }\n\n /* Tooltip does not support percentage dimensions. We enforce them here */\n ", "\n"])), (0, _styles.transition)(), (0, _constants.fontFamily)(), (0, _styles.getWrapperDimensions)(dimensions, appearance), displayBackground && "background: ".concat("var(--ds-background-neutral, ".concat(_colors.N20, ")"), ";"), _mediaUi.borderRadius, (0, _styles.getCursorStyle)(mediaCardCursor), (0, _styles.getWrapperShadow)(disableOverlay, selected), (0, _styles.generateResponsiveStyles)(breakpoint), _selection.hideNativeBrowserTextSelectionStyles, (0, _styles.getClickablePlayButtonStyles)(isPlayButtonClickable), (0, _styles.getSelectableTickBoxStyles)(isTickBoxSelectable), _styles2.blanketClassName, _styles2.fixedBlanketStyles, _styles3.actionsBarClassName, _styles3.fixedActionBarStyles, shouldDisplayTooltip && "> div { width: 100%; height: 100%; }");
|
|
29
|
+
return (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", "\n box-sizing: border-box;\n * {\n box-sizing: border-box;\n }\n position: relative;\n font-family: ", ";\n ", "\n ", "\n ", "\n ", "\n ", "\n ", ";\n ", "\n\n /* We use classnames from here exceptionally to be able to handle styles when the Card is on hover */\n ", "\n ", "\n &:hover .", " {\n ", "\n }\n &:hover .", " {\n ", "\n }\n\n /* Tooltip does not support percentage dimensions. We enforce them here */\n ", "\n\n button:focus + & {\n outline: solid 2px ", ";\n }\n"])), (0, _styles.transition)(), (0, _constants.fontFamily)(), (0, _styles.getWrapperDimensions)(dimensions, appearance), displayBackground && "background: ".concat("var(--ds-background-neutral, ".concat(_colors.N20, ")"), ";"), _mediaUi.borderRadius, (0, _styles.getCursorStyle)(mediaCardCursor), (0, _styles.getWrapperShadow)(disableOverlay, selected), (0, _styles.generateResponsiveStyles)(breakpoint), _selection.hideNativeBrowserTextSelectionStyles, (0, _styles.getClickablePlayButtonStyles)(isPlayButtonClickable), (0, _styles.getSelectableTickBoxStyles)(isTickBoxSelectable), _styles2.blanketClassName, _styles2.fixedBlanketStyles, _styles3.actionsBarClassName, _styles3.fixedActionBarStyles, shouldDisplayTooltip && "> div { width: 100%; height: 100%; }", "var(--ds-border-focused, ".concat(_colors.B100, ")"));
|
|
30
30
|
};
|
|
31
31
|
wrapperStyles.displayName = 'NewFileExperienceWrapper';
|
|
@@ -16,7 +16,7 @@ var _externalImageCard = require("./externalImageCard");
|
|
|
16
16
|
var _fileCard = require("./fileCard");
|
|
17
17
|
var _excluded = ["identifier"];
|
|
18
18
|
var packageName = "@atlaskit/media-card";
|
|
19
|
-
var packageVersion = "77.
|
|
19
|
+
var packageVersion = "77.8.0";
|
|
20
20
|
var CardV2Base = exports.CardV2Base = function CardV2Base(_ref) {
|
|
21
21
|
var identifier = _ref.identifier,
|
|
22
22
|
otherProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
@@ -32,6 +32,7 @@ var _errors = require("../../errors");
|
|
|
32
32
|
var _wrapper = require("../ui/wrapper");
|
|
33
33
|
var _classnames = require("../classnames");
|
|
34
34
|
var _useBreakpoint = require("../useBreakpoint");
|
|
35
|
+
var _openMediaViewerButton = _interopRequireDefault(require("../ui/openMediaViewerButton/openMediaViewerButton"));
|
|
35
36
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
36
37
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
37
38
|
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; }
|
|
@@ -62,7 +63,10 @@ var CardViewV2Base = exports.CardViewV2Base = function CardViewV2Base(_ref) {
|
|
|
62
63
|
titleBoxBgColor = _ref.titleBoxBgColor,
|
|
63
64
|
titleBoxIcon = _ref.titleBoxIcon,
|
|
64
65
|
error = _ref.error,
|
|
65
|
-
disableAnimation = _ref.disableAnimation
|
|
66
|
+
disableAnimation = _ref.disableAnimation,
|
|
67
|
+
_ref$openMediaViewerB = _ref.openMediaViewerButtonRef,
|
|
68
|
+
openMediaViewerButtonRef = _ref$openMediaViewerB === void 0 ? null : _ref$openMediaViewerB,
|
|
69
|
+
shouldOpenMediaViewer = _ref.shouldOpenMediaViewer;
|
|
66
70
|
var _useState = (0, _react2.useState)(false),
|
|
67
71
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
68
72
|
didImageRender = _useState2[0],
|
|
@@ -205,7 +209,7 @@ var CardViewV2Base = exports.CardViewV2Base = function CardViewV2Base(_ref) {
|
|
|
205
209
|
name = _ref5.name,
|
|
206
210
|
createdAt = _ref5.createdAt;
|
|
207
211
|
var actionsWithDetails = metadata && actions ? (0, _actions.attachDetailsToActions)(actions, metadata) : [];
|
|
208
|
-
var
|
|
212
|
+
var contents = (0, _react.jsx)(_react2.default.Fragment, null, (0, _react.jsx)("div", {
|
|
209
213
|
css: _styles.cardImageContainerStyles,
|
|
210
214
|
className: _classnames.fileCardImageViewSelector,
|
|
211
215
|
"data-testid": _classnames.fileCardImageViewSelector,
|
|
@@ -260,7 +264,11 @@ var CardViewV2Base = exports.CardViewV2Base = function CardViewV2Base(_ref) {
|
|
|
260
264
|
})), disableOverlay || !actions || actions.length === 0 ? null : (0, _react.jsx)(_actionsBar.ActionsBar, {
|
|
261
265
|
actions: actionsWithDetails
|
|
262
266
|
}));
|
|
263
|
-
return (0, _react.jsx)(
|
|
267
|
+
return (0, _react.jsx)(_react2.default.Fragment, null, shouldOpenMediaViewer && (0, _react.jsx)(_openMediaViewerButton.default, {
|
|
268
|
+
fileName: name !== null && name !== void 0 ? name : '',
|
|
269
|
+
innerRef: openMediaViewerButtonRef,
|
|
270
|
+
onClick: onClick
|
|
271
|
+
}), (0, _react.jsx)(_wrapper.Wrapper, {
|
|
264
272
|
testId: testId || 'media-card-view',
|
|
265
273
|
dimensions: dimensions,
|
|
266
274
|
onClick: onClick,
|
|
@@ -278,7 +286,7 @@ var CardViewV2Base = exports.CardViewV2Base = function CardViewV2Base(_ref) {
|
|
|
278
286
|
content: name,
|
|
279
287
|
position: "bottom",
|
|
280
288
|
tag: "div"
|
|
281
|
-
},
|
|
289
|
+
}, contents) : contents));
|
|
282
290
|
};
|
|
283
291
|
var CardViewV2 = exports.CardViewV2 = (0, _analyticsNext.withAnalyticsEvents)({
|
|
284
292
|
onClick: (0, _analytics.createAndFireMediaCardEvent)({
|
|
@@ -18,7 +18,8 @@ var _tickBox = require("../../ui/tickBox/tickBox");
|
|
|
18
18
|
var _blanket = require("../../ui/blanket/blanket");
|
|
19
19
|
var _actionsBar = require("../../ui/actionsBar/actionsBar");
|
|
20
20
|
var _classnames = require("../../classnames");
|
|
21
|
-
var
|
|
21
|
+
var _openMediaViewerButton = _interopRequireDefault(require("../../ui/openMediaViewerButton/openMediaViewerButton"));
|
|
22
|
+
var _excluded = ["cardPreview", "testId", "dimensions", "appearance", "metadata", "selected", "selectable", "actions", "breakpoint", "disableOverlay", "titleBoxBgColor", "titleBoxIcon", "shouldHideTooltip", "children", "onClick", "onMouseEnter", "mediaCardCursor", "customBlanket", "customTitleBox", "progressBar", "shouldOpenMediaViewer", "openMediaViewerButtonRef"];
|
|
22
23
|
/** @jsx jsx */
|
|
23
24
|
var CardViewWrapper = exports.CardViewWrapper = /*#__PURE__*/_react2.default.forwardRef(function (_ref, ref) {
|
|
24
25
|
var cardPreview = _ref.cardPreview,
|
|
@@ -42,6 +43,9 @@ var CardViewWrapper = exports.CardViewWrapper = /*#__PURE__*/_react2.default.for
|
|
|
42
43
|
customBlanket = _ref.customBlanket,
|
|
43
44
|
customTitleBox = _ref.customTitleBox,
|
|
44
45
|
progressBar = _ref.progressBar,
|
|
46
|
+
shouldOpenMediaViewer = _ref.shouldOpenMediaViewer,
|
|
47
|
+
_ref$openMediaViewerB = _ref.openMediaViewerButtonRef,
|
|
48
|
+
openMediaViewerButtonRef = _ref$openMediaViewerB === void 0 ? null : _ref$openMediaViewerB,
|
|
45
49
|
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
46
50
|
var _ref2 = metadata || {},
|
|
47
51
|
name = _ref2.name,
|
|
@@ -56,7 +60,7 @@ var CardViewWrapper = exports.CardViewWrapper = /*#__PURE__*/_react2.default.for
|
|
|
56
60
|
titleBoxIcon: titleBoxIcon,
|
|
57
61
|
titleBoxBgColor: titleBoxBgColor
|
|
58
62
|
});
|
|
59
|
-
var
|
|
63
|
+
var contents = (0, _react.jsx)(_react2.default.Fragment, null, (0, _react.jsx)("div", (0, _extends2.default)({
|
|
60
64
|
css: _styles.cardImageContainerStyles,
|
|
61
65
|
className: _classnames.fileCardImageViewSelector,
|
|
62
66
|
"data-testid": _classnames.fileCardImageViewSelector,
|
|
@@ -77,7 +81,11 @@ var CardViewWrapper = exports.CardViewWrapper = /*#__PURE__*/_react2.default.for
|
|
|
77
81
|
var isTickBoxSelectable = !disableOverlay && !!selectable && !selected;
|
|
78
82
|
var shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
|
|
79
83
|
var shouldDisplayBackground = !cardPreview || !disableOverlay;
|
|
80
|
-
return (0, _react.jsx)(
|
|
84
|
+
return (0, _react.jsx)(_react2.default.Fragment, null, shouldOpenMediaViewer && (0, _react.jsx)(_openMediaViewerButton.default, {
|
|
85
|
+
fileName: name !== null && name !== void 0 ? name : '',
|
|
86
|
+
innerRef: openMediaViewerButtonRef,
|
|
87
|
+
onClick: onClick
|
|
88
|
+
}), (0, _react.jsx)(_wrapper.Wrapper, {
|
|
81
89
|
testId: testId || 'media-card-view',
|
|
82
90
|
dimensions: dimensions,
|
|
83
91
|
appearance: appearance,
|
|
@@ -96,5 +104,5 @@ var CardViewWrapper = exports.CardViewWrapper = /*#__PURE__*/_react2.default.for
|
|
|
96
104
|
content: name,
|
|
97
105
|
position: "bottom",
|
|
98
106
|
tag: "div"
|
|
99
|
-
},
|
|
107
|
+
}, contents) : contents));
|
|
100
108
|
});
|
|
@@ -51,7 +51,9 @@ var CardViewsBase = exports.CardViewsBase = function CardViewsBase(_ref) {
|
|
|
51
51
|
titleBoxBgColor = _ref.titleBoxBgColor,
|
|
52
52
|
titleBoxIcon = _ref.titleBoxIcon,
|
|
53
53
|
error = _ref.error,
|
|
54
|
-
disableAnimation = _ref.disableAnimation
|
|
54
|
+
disableAnimation = _ref.disableAnimation,
|
|
55
|
+
shouldOpenMediaViewer = _ref.shouldOpenMediaViewer,
|
|
56
|
+
openMediaViewerButtonRef = _ref.openMediaViewerButtonRef;
|
|
55
57
|
var _useState = (0, _react2.useState)(false),
|
|
56
58
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
57
59
|
didImageRender = _useState2[0],
|
|
@@ -108,7 +110,9 @@ var CardViewsBase = exports.CardViewsBase = function CardViewsBase(_ref) {
|
|
|
108
110
|
onClick: onClick,
|
|
109
111
|
onMouseEnter: onMouseEnter,
|
|
110
112
|
mediaCardCursor: mediaCardCursor,
|
|
111
|
-
innerRef: innerRef
|
|
113
|
+
innerRef: innerRef,
|
|
114
|
+
shouldOpenMediaViewer: shouldOpenMediaViewer,
|
|
115
|
+
openMediaViewerButtonRef: openMediaViewerButtonRef
|
|
112
116
|
};
|
|
113
117
|
switch (status) {
|
|
114
118
|
case 'uploading':
|
|
@@ -127,6 +127,7 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
127
127
|
wasStatusUploading: false,
|
|
128
128
|
wasStatusProcessing: false
|
|
129
129
|
});
|
|
130
|
+
var mediaViewerButtonRef = (0, _react.useRef)(null);
|
|
130
131
|
|
|
131
132
|
// Generate unique traceId for file
|
|
132
133
|
var traceContext = (0, _react.useMemo)(function () {
|
|
@@ -295,6 +296,18 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
295
296
|
});
|
|
296
297
|
});
|
|
297
298
|
|
|
299
|
+
//----------------------------------------------------------------//
|
|
300
|
+
//--------------------- Focus on Close Viewer -------------------//
|
|
301
|
+
//----------------------------------------------------------------//
|
|
302
|
+
|
|
303
|
+
var wasViewerPreviouslyOpen = (0, _usePrevious.usePrevious)(mediaViewerSelectedItem);
|
|
304
|
+
(0, _react.useEffect)(function () {
|
|
305
|
+
if (wasViewerPreviouslyOpen && !mediaViewerSelectedItem) {
|
|
306
|
+
var _mediaViewerButtonRef;
|
|
307
|
+
(_mediaViewerButtonRef = mediaViewerButtonRef.current) === null || _mediaViewerButtonRef === void 0 || _mediaViewerButtonRef.focus();
|
|
308
|
+
}
|
|
309
|
+
}, [wasViewerPreviouslyOpen, mediaViewerSelectedItem]);
|
|
310
|
+
|
|
298
311
|
//----------------------------------------------------------------//
|
|
299
312
|
//---------------------- Callbacks & Handlers -------------------//
|
|
300
313
|
//----------------------------------------------------------------//
|
|
@@ -521,6 +534,8 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
521
534
|
actions: computedActions,
|
|
522
535
|
selectable: selectable,
|
|
523
536
|
selected: selected,
|
|
537
|
+
shouldOpenMediaViewer: shouldOpenMediaViewer,
|
|
538
|
+
openMediaViewerButtonRef: mediaViewerButtonRef,
|
|
524
539
|
onClick: withCallbacks ? onCardViewClick : undefined,
|
|
525
540
|
onMouseEnter: withCallbacks ? function (event) {
|
|
526
541
|
onMouseEnter === null || onMouseEnter === void 0 || onMouseEnter({
|
|
@@ -119,7 +119,7 @@ var MediaInlineCardLoader = exports.default = /*#__PURE__*/function (_React$Pure
|
|
|
119
119
|
ErrorBoundary = _this$state.ErrorBoundary;
|
|
120
120
|
var analyticsContext = {
|
|
121
121
|
packageVersion: "@atlaskit/media-card",
|
|
122
|
-
packageName: "77.
|
|
122
|
+
packageName: "77.8.0",
|
|
123
123
|
componentName: 'mediaInlineCard',
|
|
124
124
|
component: 'mediaInlineCard'
|
|
125
125
|
};
|
|
@@ -14,7 +14,7 @@ var _mediaClient = require("@atlaskit/media-client");
|
|
|
14
14
|
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; }
|
|
15
15
|
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; }
|
|
16
16
|
var packageName = "@atlaskit/media-card";
|
|
17
|
-
var packageVersion = "77.
|
|
17
|
+
var packageVersion = "77.8.0";
|
|
18
18
|
var concurrentExperience;
|
|
19
19
|
var getExperience = function getExperience(id) {
|
|
20
20
|
if (!concurrentExperience) {
|
package/dist/es2019/card/card.js
CHANGED
|
@@ -28,7 +28,7 @@ import { completeUfoExperience, startUfoExperience, abortUfoExperience } from '.
|
|
|
28
28
|
import { generateUniqueId } from '../utils/generateUniqueId';
|
|
29
29
|
import { DateOverrideContext } from '../dateOverrideContext';
|
|
30
30
|
const packageName = "@atlaskit/media-card";
|
|
31
|
-
const packageVersion = "77.
|
|
31
|
+
const packageVersion = "77.8.0";
|
|
32
32
|
export class CardBase extends Component {
|
|
33
33
|
constructor(props) {
|
|
34
34
|
super(props);
|
|
@@ -36,6 +36,7 @@ export class CardBase extends Component {
|
|
|
36
36
|
// of Cards regardless of whether it shares the same file (either internal or external)
|
|
37
37
|
_defineProperty(this, "internalOccurrenceKey", generateUniqueId());
|
|
38
38
|
_defineProperty(this, "hasBeenMounted", false);
|
|
39
|
+
_defineProperty(this, "mediaViewerButtonRef", null);
|
|
39
40
|
_defineProperty(this, "fileStateFlags", {
|
|
40
41
|
wasStatusUploading: false,
|
|
41
42
|
wasStatusProcessing: false
|
|
@@ -397,6 +398,9 @@ export class CardBase extends Component {
|
|
|
397
398
|
cardRef
|
|
398
399
|
});
|
|
399
400
|
});
|
|
401
|
+
_defineProperty(this, "setMediaViewerButtonRef", buttonRef => {
|
|
402
|
+
this.mediaViewerButtonRef = buttonRef;
|
|
403
|
+
});
|
|
400
404
|
_defineProperty(this, "renderInlinePlayer", () => {
|
|
401
405
|
const {
|
|
402
406
|
identifier,
|
|
@@ -432,6 +436,9 @@ export class CardBase extends Component {
|
|
|
432
436
|
_defineProperty(this, "onMediaViewerClose", () => {
|
|
433
437
|
this.setState({
|
|
434
438
|
mediaViewerSelectedItem: undefined
|
|
439
|
+
}, () => {
|
|
440
|
+
var _this$mediaViewerButt;
|
|
441
|
+
(_this$mediaViewerButt = this.mediaViewerButtonRef) === null || _this$mediaViewerButt === void 0 ? void 0 : _this$mediaViewerButt.focus();
|
|
435
442
|
});
|
|
436
443
|
});
|
|
437
444
|
_defineProperty(this, "onDisplayImage", () => {
|
|
@@ -542,12 +549,14 @@ export class CardBase extends Component {
|
|
|
542
549
|
actions: actions,
|
|
543
550
|
selectable: selectable,
|
|
544
551
|
selected: selected,
|
|
552
|
+
shouldOpenMediaViewer: shouldOpenMediaViewer,
|
|
545
553
|
onClick: withCallbacks ? onCardViewClick : undefined,
|
|
546
554
|
onMouseEnter: withCallbacks ? onMouseEnter : undefined,
|
|
547
555
|
disableOverlay: disableOverlay,
|
|
548
556
|
progress: progress,
|
|
549
557
|
onDisplayImage: withCallbacks ? onDisplayImage : undefined,
|
|
550
558
|
innerRef: this.setRef,
|
|
559
|
+
openMediaViewerButtonRef: this.setMediaViewerButtonRef,
|
|
551
560
|
testId: testId,
|
|
552
561
|
featureFlags: featureFlags,
|
|
553
562
|
titleBoxBgColor: titleBoxBgColor,
|
|
@@ -27,6 +27,7 @@ import { isUploadError, isRateLimitedError, isPollingError } from '../errors';
|
|
|
27
27
|
import { Wrapper } from './ui/wrapper';
|
|
28
28
|
import { fileCardImageViewSelector } from './classnames';
|
|
29
29
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
30
|
+
import OpenMediaViewerButton from './ui/openMediaViewerButton/openMediaViewerButton';
|
|
30
31
|
/**
|
|
31
32
|
* This is classic vanilla CardView class. To create an instance of class one would need to supply
|
|
32
33
|
* `createAnalyticsEvent` prop to satisfy it's Analytics Events needs.
|
|
@@ -393,7 +394,9 @@ export class CardViewBase extends React.Component {
|
|
|
393
394
|
disableOverlay,
|
|
394
395
|
cardPreview,
|
|
395
396
|
mediaCardCursor,
|
|
396
|
-
shouldHideTooltip
|
|
397
|
+
shouldHideTooltip,
|
|
398
|
+
openMediaViewerButtonRef = null,
|
|
399
|
+
shouldOpenMediaViewer
|
|
397
400
|
} = this.props;
|
|
398
401
|
const {
|
|
399
402
|
name
|
|
@@ -403,7 +406,11 @@ export class CardViewBase extends React.Component {
|
|
|
403
406
|
const isTickBoxSelectable = !disableOverlay && !!selectable && !selected;
|
|
404
407
|
// Disable tooltip for Media Single
|
|
405
408
|
const shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
|
|
406
|
-
return jsx(
|
|
409
|
+
return jsx(React.Fragment, null, shouldOpenMediaViewer && jsx(OpenMediaViewerButton, {
|
|
410
|
+
fileName: name !== null && name !== void 0 ? name : '',
|
|
411
|
+
innerRef: openMediaViewerButtonRef,
|
|
412
|
+
onClick: onClick
|
|
413
|
+
}), jsx(Wrapper, {
|
|
407
414
|
testId: testId || 'media-card-view',
|
|
408
415
|
dimensions: dimensions,
|
|
409
416
|
appearance: appearance,
|
|
@@ -422,7 +429,7 @@ export class CardViewBase extends React.Component {
|
|
|
422
429
|
content: name,
|
|
423
430
|
position: "bottom",
|
|
424
431
|
tag: 'div'
|
|
425
|
-
}, this.renderContents()) : this.renderContents());
|
|
432
|
+
}, this.renderContents()) : this.renderContents()));
|
|
426
433
|
}
|
|
427
434
|
}
|
|
428
435
|
_defineProperty(CardViewBase, "defaultProps", {
|
|
@@ -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 = "77.
|
|
69
|
+
const packageVersion = "77.8.0";
|
|
70
70
|
const MediaCardAnalyticsErrorBoundary = withMediaAnalyticsContext({
|
|
71
71
|
packageVersion,
|
|
72
72
|
packageName,
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
/** @jsx jsx */
|
|
3
|
+
import { jsx, css } from '@emotion/react';
|
|
4
|
+
import React from 'react';
|
|
5
|
+
import { injectIntl, IntlProvider, useIntl } from 'react-intl-next';
|
|
6
|
+
import { messages } from '@atlaskit/media-ui';
|
|
7
|
+
export const visuallyHiddenStyles = css`
|
|
8
|
+
width: 1px;
|
|
9
|
+
height: 1px;
|
|
10
|
+
padding: 0;
|
|
11
|
+
position: fixed;
|
|
12
|
+
border: 0;
|
|
13
|
+
clip: rect(1px, 1px, 1px, 1px);
|
|
14
|
+
overflow: hidden;
|
|
15
|
+
white-space: nowrap;
|
|
16
|
+
`;
|
|
17
|
+
const OpenMediaViewerButton = ({
|
|
18
|
+
fileName,
|
|
19
|
+
innerRef,
|
|
20
|
+
...props
|
|
21
|
+
}) => {
|
|
22
|
+
const intl = useIntl();
|
|
23
|
+
return jsx("button", _extends({
|
|
24
|
+
ref: innerRef,
|
|
25
|
+
css: visuallyHiddenStyles
|
|
26
|
+
}, props), intl.formatMessage(messages.open_file_in_viewer, {
|
|
27
|
+
name: fileName
|
|
28
|
+
}));
|
|
29
|
+
};
|
|
30
|
+
const OpenMediaViewerButtonWrapper = props => {
|
|
31
|
+
return props.intl ? jsx(OpenMediaViewerButton, props) : jsx(IntlProvider, {
|
|
32
|
+
locale: "en"
|
|
33
|
+
}, jsx(OpenMediaViewerButton, props));
|
|
34
|
+
};
|
|
35
|
+
export default injectIntl(OpenMediaViewerButtonWrapper, {
|
|
36
|
+
enforceContext: false
|
|
37
|
+
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { css } from '@emotion/react';
|
|
2
2
|
import { fontFamily } from '@atlaskit/theme/constants';
|
|
3
3
|
import { borderRadius } from '@atlaskit/media-ui';
|
|
4
|
-
import { N20 } from '@atlaskit/theme/colors';
|
|
4
|
+
import { N20, B100 } from '@atlaskit/theme/colors';
|
|
5
5
|
import { hideNativeBrowserTextSelectionStyles } from '@atlaskit/editor-shared-styles/selection';
|
|
6
6
|
import { transition } from '../styles';
|
|
7
7
|
import { fixedBlanketStyles, blanketClassName } from '../blanket/styles';
|
|
@@ -46,5 +46,9 @@ export const wrapperStyles = ({
|
|
|
46
46
|
|
|
47
47
|
/* Tooltip does not support percentage dimensions. We enforce them here */
|
|
48
48
|
${shouldDisplayTooltip && `> div { width: 100%; height: 100%; }`}
|
|
49
|
+
|
|
50
|
+
button:focus + & {
|
|
51
|
+
outline: solid 2px ${`var(--ds-border-focused, ${B100})`};
|
|
52
|
+
}
|
|
49
53
|
`;
|
|
50
54
|
wrapperStyles.displayName = 'NewFileExperienceWrapper';
|
|
@@ -7,7 +7,7 @@ import { IntlProvider, injectIntl } from 'react-intl-next';
|
|
|
7
7
|
import { ExternalImageCard } from './externalImageCard';
|
|
8
8
|
import { FileCard } from './fileCard';
|
|
9
9
|
const packageName = "@atlaskit/media-card";
|
|
10
|
-
const packageVersion = "77.
|
|
10
|
+
const packageVersion = "77.8.0";
|
|
11
11
|
export const CardV2Base = ({
|
|
12
12
|
identifier,
|
|
13
13
|
...otherProps
|
|
@@ -23,6 +23,7 @@ import { isUploadError, isRateLimitedError, isPollingError } from '../../errors'
|
|
|
23
23
|
import { Wrapper } from '../ui/wrapper';
|
|
24
24
|
import { fileCardImageViewSelector } from '../classnames';
|
|
25
25
|
import { useBreakpoint } from '../useBreakpoint';
|
|
26
|
+
import OpenMediaViewerButton from '../ui/openMediaViewerButton/openMediaViewerButton';
|
|
26
27
|
export const CardViewV2Base = ({
|
|
27
28
|
innerRef,
|
|
28
29
|
onImageLoad,
|
|
@@ -49,7 +50,9 @@ export const CardViewV2Base = ({
|
|
|
49
50
|
titleBoxBgColor,
|
|
50
51
|
titleBoxIcon,
|
|
51
52
|
error,
|
|
52
|
-
disableAnimation
|
|
53
|
+
disableAnimation,
|
|
54
|
+
openMediaViewerButtonRef = null,
|
|
55
|
+
shouldOpenMediaViewer
|
|
53
56
|
}) => {
|
|
54
57
|
const [didImageRender, setDidImageRender] = useState(false);
|
|
55
58
|
const divRef = useRef(null);
|
|
@@ -201,7 +204,7 @@ export const CardViewV2Base = ({
|
|
|
201
204
|
createdAt
|
|
202
205
|
} = metadata || {};
|
|
203
206
|
const actionsWithDetails = metadata && actions ? attachDetailsToActions(actions, metadata) : [];
|
|
204
|
-
const
|
|
207
|
+
const contents = jsx(React.Fragment, null, jsx("div", {
|
|
205
208
|
css: cardImageContainerStyles,
|
|
206
209
|
className: fileCardImageViewSelector,
|
|
207
210
|
"data-testid": fileCardImageViewSelector,
|
|
@@ -256,7 +259,11 @@ export const CardViewV2Base = ({
|
|
|
256
259
|
})), disableOverlay || !actions || actions.length === 0 ? null : jsx(ActionsBar, {
|
|
257
260
|
actions: actionsWithDetails
|
|
258
261
|
}));
|
|
259
|
-
return jsx(
|
|
262
|
+
return jsx(React.Fragment, null, shouldOpenMediaViewer && jsx(OpenMediaViewerButton, {
|
|
263
|
+
fileName: name !== null && name !== void 0 ? name : '',
|
|
264
|
+
innerRef: openMediaViewerButtonRef,
|
|
265
|
+
onClick: onClick
|
|
266
|
+
}), jsx(Wrapper, {
|
|
260
267
|
testId: testId || 'media-card-view',
|
|
261
268
|
dimensions: dimensions,
|
|
262
269
|
onClick: onClick,
|
|
@@ -274,7 +281,7 @@ export const CardViewV2Base = ({
|
|
|
274
281
|
content: name,
|
|
275
282
|
position: "bottom",
|
|
276
283
|
tag: "div"
|
|
277
|
-
},
|
|
284
|
+
}, contents) : contents));
|
|
278
285
|
};
|
|
279
286
|
export const CardViewV2 = withAnalyticsEvents({
|
|
280
287
|
onClick: createAndFireMediaCardEvent({
|
|
@@ -11,6 +11,7 @@ import { TickBox } from '../../ui/tickBox/tickBox';
|
|
|
11
11
|
import { Blanket } from '../../ui/blanket/blanket';
|
|
12
12
|
import { ActionsBar } from '../../ui/actionsBar/actionsBar';
|
|
13
13
|
import { fileCardImageViewSelector } from '../../classnames';
|
|
14
|
+
import OpenMediaViewerButton from '../../ui/openMediaViewerButton/openMediaViewerButton';
|
|
14
15
|
export const CardViewWrapper = /*#__PURE__*/React.forwardRef(({
|
|
15
16
|
cardPreview,
|
|
16
17
|
testId,
|
|
@@ -32,6 +33,8 @@ export const CardViewWrapper = /*#__PURE__*/React.forwardRef(({
|
|
|
32
33
|
customBlanket,
|
|
33
34
|
customTitleBox,
|
|
34
35
|
progressBar,
|
|
36
|
+
shouldOpenMediaViewer,
|
|
37
|
+
openMediaViewerButtonRef = null,
|
|
35
38
|
...props
|
|
36
39
|
}, ref) => {
|
|
37
40
|
const {
|
|
@@ -48,7 +51,7 @@ export const CardViewWrapper = /*#__PURE__*/React.forwardRef(({
|
|
|
48
51
|
titleBoxIcon: titleBoxIcon,
|
|
49
52
|
titleBoxBgColor: titleBoxBgColor
|
|
50
53
|
});
|
|
51
|
-
const
|
|
54
|
+
const contents = jsx(React.Fragment, null, jsx("div", _extends({
|
|
52
55
|
css: cardImageContainerStyles,
|
|
53
56
|
className: fileCardImageViewSelector,
|
|
54
57
|
"data-testid": fileCardImageViewSelector,
|
|
@@ -69,7 +72,11 @@ export const CardViewWrapper = /*#__PURE__*/React.forwardRef(({
|
|
|
69
72
|
const isTickBoxSelectable = !disableOverlay && !!selectable && !selected;
|
|
70
73
|
const shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
|
|
71
74
|
const shouldDisplayBackground = !cardPreview || !disableOverlay;
|
|
72
|
-
return jsx(
|
|
75
|
+
return jsx(React.Fragment, null, shouldOpenMediaViewer && jsx(OpenMediaViewerButton, {
|
|
76
|
+
fileName: name !== null && name !== void 0 ? name : '',
|
|
77
|
+
innerRef: openMediaViewerButtonRef,
|
|
78
|
+
onClick: onClick
|
|
79
|
+
}), jsx(Wrapper, {
|
|
73
80
|
testId: testId || 'media-card-view',
|
|
74
81
|
dimensions: dimensions,
|
|
75
82
|
appearance: appearance,
|
|
@@ -88,5 +95,5 @@ export const CardViewWrapper = /*#__PURE__*/React.forwardRef(({
|
|
|
88
95
|
content: name,
|
|
89
96
|
position: "bottom",
|
|
90
97
|
tag: "div"
|
|
91
|
-
},
|
|
98
|
+
}, contents) : contents));
|
|
92
99
|
});
|