@atlaskit/media-card 79.16.12 → 79.16.14

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 (44) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/cjs/card/card.js +1 -1
  3. package/dist/cjs/card/cardView.js +28 -7
  4. package/dist/cjs/card/fileCard.js +1 -0
  5. package/dist/cjs/card/inlinePlayerWrapper-compiled.js +5 -1
  6. package/dist/cjs/card/media-card-analytics-error-boundary.js +1 -1
  7. package/dist/cjs/card/ui/actionsBar/actionsBarWrapper-compiled.js +11 -3
  8. package/dist/cjs/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.compiled.css +2 -0
  9. package/dist/cjs/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.js +18 -1
  10. package/dist/cjs/card/ui/wrapper/wrapper-compiled.compiled.css +5 -1
  11. package/dist/cjs/card/ui/wrapper/wrapper-compiled.js +28 -2
  12. package/dist/cjs/inline/loader.js +1 -1
  13. package/dist/cjs/utils/ufoExperiences.js +1 -1
  14. package/dist/es2019/card/card.js +1 -1
  15. package/dist/es2019/card/cardView.js +28 -7
  16. package/dist/es2019/card/fileCard.js +1 -0
  17. package/dist/es2019/card/inlinePlayerWrapper-compiled.js +5 -1
  18. package/dist/es2019/card/media-card-analytics-error-boundary.js +1 -1
  19. package/dist/es2019/card/ui/actionsBar/actionsBarWrapper-compiled.js +10 -3
  20. package/dist/es2019/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.compiled.css +2 -0
  21. package/dist/es2019/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.js +18 -1
  22. package/dist/es2019/card/ui/wrapper/wrapper-compiled.compiled.css +5 -1
  23. package/dist/es2019/card/ui/wrapper/wrapper-compiled.js +31 -2
  24. package/dist/es2019/inline/loader.js +1 -1
  25. package/dist/es2019/utils/ufoExperiences.js +1 -1
  26. package/dist/esm/card/card.js +1 -1
  27. package/dist/esm/card/cardView.js +28 -7
  28. package/dist/esm/card/fileCard.js +1 -0
  29. package/dist/esm/card/inlinePlayerWrapper-compiled.js +5 -1
  30. package/dist/esm/card/media-card-analytics-error-boundary.js +1 -1
  31. package/dist/esm/card/ui/actionsBar/actionsBarWrapper-compiled.js +10 -3
  32. package/dist/esm/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.compiled.css +2 -0
  33. package/dist/esm/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.js +18 -1
  34. package/dist/esm/card/ui/wrapper/wrapper-compiled.compiled.css +5 -1
  35. package/dist/esm/card/ui/wrapper/wrapper-compiled.js +28 -2
  36. package/dist/esm/inline/loader.js +1 -1
  37. package/dist/esm/utils/ufoExperiences.js +1 -1
  38. package/dist/types/card/cardView.d.ts +5 -1
  39. package/dist/types/card/ui/titleBox/styles.d.ts +1 -1
  40. package/dist/types/card/ui/wrapper/types.d.ts +1 -0
  41. package/dist/types-ts4.5/card/cardView.d.ts +5 -1
  42. package/dist/types-ts4.5/card/ui/titleBox/styles.d.ts +1 -1
  43. package/dist/types-ts4.5/card/ui/wrapper/types.d.ts +1 -0
  44. package/package.json +13 -7
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @atlaskit/media-card
2
2
 
3
+ ## 79.16.14
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+
9
+ ## 79.16.13
10
+
11
+ ### Patch Changes
12
+
13
+ - [`9896ce8e69e57`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/9896ce8e69e57) -
14
+ Improve accessibility across media packages with semantic button elements and i18n support, all
15
+ changes are behind feature flag
16
+ - Updated dependencies
17
+
3
18
  ## 79.16.12
4
19
 
5
20
  ### Patch Changes
@@ -20,7 +20,7 @@ var _label = _interopRequireDefault(require("@atlaskit/react-ufo/label"));
20
20
  var _excluded = ["identifier"];
21
21
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
22
22
  var packageName = "@atlaskit/media-card";
23
- var packageVersion = "79.16.11";
23
+ var packageVersion = "79.16.13";
24
24
  var CardBase = exports.CardBase = function CardBase(_ref) {
25
25
  var identifier = _ref.identifier,
26
26
  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 _reactIntlNext = require("react-intl-next");
12
13
  var _mediaClient = require("@atlaskit/media-client");
13
14
  var _analyticsNext = require("@atlaskit/analytics-next");
14
15
  var _mimeTypeIcon = require("@atlaskit/media-ui/mime-type-icon");
@@ -39,6 +40,13 @@ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
39
40
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
40
41
  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; }
41
42
  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; }
43
+ var i18n = (0, _reactIntlNext.defineMessages)({
44
+ traceIdTooltip: {
45
+ id: 'fabric.media.trace_id_tooltip',
46
+ defaultMessage: 'Use Trace ID {traceId} when reaching out to support.',
47
+ description: 'Tooltip content showing the trace identifier for troubleshooting file preview errors'
48
+ }
49
+ });
42
50
  var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
43
51
  var identifier = _ref.identifier,
44
52
  _ref$innerRef = _ref.innerRef,
@@ -73,7 +81,9 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
73
81
  shouldOpenMediaViewer = _ref.shouldOpenMediaViewer,
74
82
  overriddenCreationDate = _ref.overriddenCreationDate,
75
83
  onSvgError = _ref.onSvgError,
76
- onSvgLoad = _ref.onSvgLoad;
84
+ onSvgLoad = _ref.onSvgLoad,
85
+ traceId = _ref.traceId;
86
+ var intl = (0, _reactIntlNext.useIntl)();
77
87
  var _useState = (0, _react.useState)(false),
78
88
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
79
89
  didSvgRender = _useState2[0],
@@ -170,6 +180,7 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
170
180
  });
171
181
  var _iconMessage;
172
182
  var _customTitleMessage;
183
+ var _traceTooltipVariant;
173
184
  if ((0, _errors.isUploadError)(error)) {
174
185
  _iconMessage = /*#__PURE__*/_react.default.createElement(_iconMessage2.FailedToUpload, null);
175
186
  _customTitleMessage = _mediaUi.messages.failed_to_upload;
@@ -178,8 +189,10 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
178
189
  _customTitleMessage = _mediaUi.messages.check_internet_connection;
179
190
  } else if (!metadata) {
180
191
  _iconMessage = /*#__PURE__*/_react.default.createElement(_iconMessage2.FailedToLoad, null);
192
+ _traceTooltipVariant = 'failed-to-load';
181
193
  } else {
182
194
  _iconMessage = /*#__PURE__*/_react.default.createElement(_iconMessage2.PreviewUnavailable, null);
195
+ _traceTooltipVariant = 'preview-unavailable';
183
196
  }
184
197
  if (!disableOverlay) {
185
198
  var _renderFailedTitleBox = !name || !!_customTitleMessage;
@@ -187,11 +200,13 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
187
200
  renderTitleBox: !!name && !_customTitleMessage,
188
201
  renderFailedTitleBox: _renderFailedTitleBox,
189
202
  iconMessage: !_renderFailedTitleBox ? _iconMessage : undefined,
190
- customTitleMessage: _customTitleMessage
203
+ customTitleMessage: _customTitleMessage,
204
+ traceTooltipVariant: _traceTooltipVariant
191
205
  });
192
206
  }
193
207
  return _objectSpread(_objectSpread({}, baseErrorConfig), {}, {
194
- iconMessage: _iconMessage
208
+ iconMessage: _iconMessage,
209
+ traceTooltipVariant: _traceTooltipVariant
195
210
  });
196
211
  case 'loading-preview':
197
212
  case 'loading':
@@ -212,17 +227,22 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
212
227
  renderFailedTitleBox = _getRenderConfigBySta.renderFailedTitleBox,
213
228
  renderTickBox = _getRenderConfigBySta.renderTickBox,
214
229
  isFixedBlanket = _getRenderConfigBySta.isFixedBlanket,
215
- customTitleMessage = _getRenderConfigBySta.customTitleMessage;
230
+ customTitleMessage = _getRenderConfigBySta.customTitleMessage,
231
+ traceTooltipVariant = _getRenderConfigBySta.traceTooltipVariant;
216
232
  var shouldDisplayBackground = !cardPreview || !disableOverlay || status === 'error' || status === 'failed-processing';
217
233
  var isPlayButtonClickable = shouldRenderPlayButton() && !!disableOverlay;
218
234
  var isTickBoxSelectable = !disableOverlay && !!selectable && !selected;
219
- // Disable tooltip for Media Single
220
- var shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
221
235
  var _ref4 = metadata || {},
222
236
  mediaType = _ref4.mediaType,
223
237
  mimeType = _ref4.mimeType,
224
238
  name = _ref4.name,
225
239
  createdAt = _ref4.createdAt;
240
+ var shouldShowTraceIdTooltip = !!traceTooltipVariant && !!traceId && (0, _platformFeatureFlags.fg)('platform_trace_id_tooltip_attachment_failures');
241
+ var tooltipContent = shouldShowTraceIdTooltip ? intl.formatMessage(i18n.traceIdTooltip, {
242
+ traceId: traceId
243
+ }) : name;
244
+ // Disable tooltip for Media Single
245
+ var shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
226
246
  var isTitleBoxVisible = renderTitleBox && name;
227
247
  var hasVisibleTitleBox = !!(isTitleBoxVisible || renderFailedTitleBox);
228
248
  var metadataRef = (0, _useCurrentValueRef.useCurrentValueRef)(metadata);
@@ -324,6 +344,7 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
324
344
  testId: testId || 'media-card-view',
325
345
  dimensions: dimensions,
326
346
  onClick: onClick,
347
+ ariaLabel: name || 'Media Card',
327
348
  onMouseEnter: onMouseEnter,
328
349
  innerRef: mergedRef,
329
350
  breakpoint: breakpoint,
@@ -335,7 +356,7 @@ var CardViewBase = exports.CardViewBase = function CardViewBase(_ref) {
335
356
  isTickBoxSelectable: isTickBoxSelectable,
336
357
  shouldDisplayTooltip: shouldDisplayTooltip
337
358
  }, shouldDisplayTooltip ? /*#__PURE__*/_react.default.createElement(_tooltip.default, {
338
- content: name,
359
+ content: tooltipContent,
339
360
  position: "bottom",
340
361
  tag: "div"
341
362
  }, contents) : contents));
@@ -734,6 +734,7 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
734
734
  onSvgLoad: onSvgLoad,
735
735
  nativeLazyLoad: nativeLazyLoad,
736
736
  forceSyncDisplay: forceSyncDisplay,
737
+ traceId: traceContext.traceId,
737
738
  mediaCardCursor: mediaCardCursor,
738
739
  shouldHideTooltip: shouldHideTooltip,
739
740
  overriddenCreationDate: overridenDate
@@ -40,11 +40,15 @@ var InlinePlayerWrapper = exports.InlinePlayerWrapper = function InlinePlayerWra
40
40
  dimensions = props.dimensions,
41
41
  onClick = props.onClick,
42
42
  innerRef = props.innerRef;
43
+ var a11yProps = (0, _platformFeatureFlags.fg)('platform_media_a11y_suppression_fixes') ? {
44
+ role: 'presentation',
45
+ tabIndex: -1
46
+ } : {};
43
47
  return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
44
48
  id: "inlinePlayerWrapper",
45
49
  "data-testid": testId
50
+ }, a11yProps, {
46
51
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
47
- ,
48
52
  className: (0, _runtime.ax)([(0, _platformFeatureFlags.fg)('platform_editor_media_border_radius_fix') ? "_1reo15vq _18m915vq _2rko1mok _kqswh2mm _p12f1osq _c71l1osq _1bsb1ez3 _4t3i1amq _1y2k1osq _z18o1osq" : "_1reo15vq _18m915vq _2rkofajl _kqswh2mm _p12f1osq _c71l1osq _1bsb1ez3 _4t3i1amq _1y2k1osq _z18o1osq", selected && "_1p1y1j28 _1rk81j28 _14r11j28 _1np21j28", (0, _platformFeatureFlags.fg)('platform_editor_media_border_radius_fix') ? "_14mj1kw7 _aetrb3bt _z0ai1osq _1qdg1osq _18postnw _15l2idpf _631ousvi _11fnglyw" : "_14mjfajl _aetrb3bt _z0ai1osq _1qdg1osq _18postnw _15l2idpf _631ousvi _11fnglyw", selected && "_eq43fyzg", inlinePlayerClassName]),
49
53
  onClick: onClick,
50
54
  ref: innerRef
@@ -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.16.11";
90
+ var packageVersion = "79.16.13";
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)({
@@ -1,6 +1,7 @@
1
1
  /* actionsBarWrapper-compiled.tsx generated by @compiled/babel-plugin v0.39.1 */
2
2
  "use strict";
3
3
 
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5
  var _typeof = require("@babel/runtime/helpers/typeof");
5
6
  Object.defineProperty(exports, "__esModule", {
6
7
  value: true
@@ -9,20 +10,27 @@ exports.ActionsBarWrapper = void 0;
9
10
  require("./actionsBarWrapper-compiled.compiled.css");
10
11
  var React = _interopRequireWildcard(require("react"));
11
12
  var _runtime = require("@compiled/react/runtime");
13
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
12
14
  var _styles = require("./styles");
15
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
13
16
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
14
17
  var wrapperStyles = null;
15
18
  var fixedActionBarStyle = null;
16
19
  var ActionsBarWrapper = exports.ActionsBarWrapper = function ActionsBarWrapper(props) {
17
- return /*#__PURE__*/React.createElement("div", {
20
+ var a11yProps = (0, _platformFeatureFlags.fg)('platform_media_a11y_suppression_fixes') ? {
21
+ role: 'presentation',
22
+ tabIndex: -1
23
+ } : {};
24
+ return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
18
25
  id: "actionsBarWrapper",
19
- "data-testId": "actionsBarWrapper",
26
+ "data-testId": "actionsBarWrapper"
27
+ }, a11yProps, {
20
28
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
21
29
  className: (0, _runtime.ax)(["_v564ybtr _2lx2vrvc _1n261q9c _zulpu2gc _kqswstnw _154iidpf _1xi2idpf _1e0c1txw _1bahusic _ca0qu2gc _n3tdu2gc _u5f3u2gc _19bvu2gc _tzy4idpf", props.isFixed && "_tzy4kb7n", _styles.actionsBarClassName]),
22
30
  onClick: function onClick(event) {
23
31
  event.stopPropagation();
24
32
  event.preventDefault();
25
33
  }
26
- }, props.children);
34
+ }), props.children);
27
35
  };
28
36
  ActionsBarWrapper.displayName = 'ActionsBarWrapper';
@@ -1,7 +1,9 @@
1
1
 
2
+ ._kkk2n7od{all:unset}
2
3
  ._1i7vfhey p{font:var(--ds-font-body,normal 400 14px/20px "Atlassian Sans",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
3
4
  ._2rkofajl{border-radius:var(--ds-radius-small,3px)}._1bah1h6o{justify-content:center}
4
5
  ._1e0c1txw{display:flex}
6
+ ._1e0c1ule{display:block}
5
7
  ._2lx21bp4{flex-direction:column}
6
8
  ._31ku1h6o p{text-align:center}
7
9
  ._4cvr1h6o{align-items:center}
@@ -16,6 +16,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
16
16
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
17
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
18
18
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
19
20
  var _statusWarning = _interopRequireDefault(require("@atlaskit/icon/core/status-warning"));
20
21
  var _utils = require("../../../utils");
21
22
  var _contentLoadingErrorMessage = require("./contentLoadingErrorMessage");
@@ -48,6 +49,7 @@ var getConvertedDimension = function getConvertedDimension(dimensions) {
48
49
  };
49
50
  };
50
51
  var wrapperStyle = null;
52
+ var plainButtonStyle = null;
51
53
  var UnhandledErrorCard = exports.UnhandledErrorCard = /*#__PURE__*/function (_Component) {
52
54
  function UnhandledErrorCard() {
53
55
  (0, _classCallCheck2.default)(this, UnhandledErrorCard);
@@ -63,7 +65,22 @@ var UnhandledErrorCard = exports.UnhandledErrorCard = /*#__PURE__*/function (_Co
63
65
  onClick = _this$props.onClick;
64
66
  var convertedDimensions = getConvertedDimension(dimensions);
65
67
  var hideText = !shouldShowText(getConvertedDimension(dimensions));
66
- return /*#__PURE__*/React.createElement("div", {
68
+ return (0, _platformFeatureFlags.fg)('platform_media_a11y_suppression_fixes') ? /*#__PURE__*/React.createElement("button", {
69
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
70
+ style: convertedDimensions,
71
+ onClick: onClick,
72
+ "data-testid": "unhandled-error-card"
73
+ // eslint-disable-next-line @atlassian/i18n/no-literal-string-in-jsx
74
+ ,
75
+ "aria-label": "Preview unavailable",
76
+ className: (0, _runtime.ax)(["_kkk2n7od _1e0c1ule", "_2rkofajl _1e0c1txw _4cvr1h6o _1bah1h6o _bfhki8nm _syazazsu _c71l1osq _p12f1osq _2lx21bp4 _1i7vfhey _31ku1h6o"])
77
+ }, /*#__PURE__*/React.createElement(_statusWarning.default, {
78
+ label: "Error",
79
+ color: "var(--ds-icon-warning, #E06C00)",
80
+ spacing: "spacious"
81
+ }), /*#__PURE__*/React.createElement(_contentLoadingErrorMessage.ContentLoadingErrorMessage, {
82
+ isHidden: hideText
83
+ })) : /*#__PURE__*/React.createElement("div", {
67
84
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
68
85
  style: convertedDimensions,
69
86
  onClick: onClick,
@@ -1,4 +1,5 @@
1
1
 
2
+ ._kkk2n7od{all:unset}
2
3
  ._2rko18qm{border-radius:var(--ds-radius-large,3px)}
3
4
  button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--ds-border-focused,#4688ec)}._10pb1osq>div{height:100%}
4
5
  ._14r11j28::-moz-selection{background-color:transparent}
@@ -7,6 +8,7 @@ button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--d
7
8
  ._16qst7xp{box-shadow:var(--ds-shadow-raised,0 1px 1px #1e1f2140,0 0 1px #1e1f214f)}
8
9
  ._19zy8vuz:hover .media-card-play-button .play-icon-background{height:56px}
9
10
  ._1bsb1qmm{width:var(--media-wrapper-width)}
11
+ ._1e0c1ule{display:block}
10
12
  ._1np21j28 ::-moz-selection{background-color:transparent}
11
13
  ._1ntskb7n:hover .media-card-actions-bar{opacity:1}
12
14
  ._1p1y1j28::selection{background-color:transparent}
@@ -26,4 +28,6 @@ button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--d
26
28
  ._mts3kb7n:focus-within .media-card-actions-bar{opacity:1}
27
29
  ._p12f1osq{max-width:100%}
28
30
  ._vchhusvi{box-sizing:border-box}
29
- ._yfmhtlke [data-cursor=pointer]{cursor:pointer}
31
+ ._yfmhtlke [data-cursor=pointer]{cursor:pointer}
32
+ [data-node-type=media]>._4gy2stnw{position:absolute}
33
+ [data-node-type=media]>._d81m1osq{height:100%}
@@ -17,6 +17,7 @@ var _vcMedia = require("@atlaskit/react-ufo/vc-media");
17
17
  var _cardDimensions = require("../../../utils/cardDimensions");
18
18
  var _getCSSUnitValue = require("../../../utils/getCSSUnitValue");
19
19
  var _customData = _interopRequireDefault(require("@atlaskit/react-ufo/custom-data"));
20
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
20
21
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
21
22
  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
23
  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; }
@@ -26,6 +27,11 @@ var wrapperStyles = {
26
27
  default: "_2rko18qm _vchhusvi _kqswh2mm _ect4ttxp _p12f1osq _c71l1osq _1bsb1qmm _4t3ine4n _1hlmd0i9 _1rquusvi _eg541i5c _mts3kb7n _1ntskb7n"
27
28
  };
28
29
  var backgroundStyle = null;
30
+ var resetButtonStyle = null;
31
+
32
+ // Fix for Renderer context: editor-common's [data-node-type='media'] > div
33
+ // selector doesn't match <button>, so we replicate those styles here.
34
+ var rendererMediaButtonFix = null;
29
35
  var shadowStyleMap = {
30
36
  withOverlay: "_16qst7xp",
31
37
  selected: "_16qsr4us",
@@ -67,12 +73,32 @@ var Wrapper = exports.Wrapper = function Wrapper(props) {
67
73
  displayBackground = props.displayBackground,
68
74
  isPlayButtonClickable = props.isPlayButtonClickable,
69
75
  isTickBoxSelectable = props.isTickBoxSelectable,
70
- shouldDisplayTooltip = props.shouldDisplayTooltip;
76
+ shouldDisplayTooltip = props.shouldDisplayTooltip,
77
+ ariaLabel = props.ariaLabel;
71
78
  var defaultImageCardDimensions = (0, _cardDimensions.getDefaultCardDimensions)(appearance);
72
79
  var width = (0, _getCSSUnitValue.getCSSUnitValue)((dimensions === null || dimensions === void 0 ? void 0 : dimensions.width) || defaultImageCardDimensions.width);
73
80
  var height = (0, _getCSSUnitValue.getCSSUnitValue)((dimensions === null || dimensions === void 0 ? void 0 : dimensions.height) || defaultImageCardDimensions.height);
74
81
  var wrapperShadowKey = getShadowKey(disableOverlay, selected);
75
- return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
82
+ return (0, _platformFeatureFlags.fg)('platform_media_a11y_suppression_fixes') ? /*#__PURE__*/React.createElement("button", (0, _extends2.default)({
83
+ id: "newFileExperienceWrapper",
84
+ type: "button",
85
+ "aria-label": ariaLabel
86
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
87
+ ,
88
+ className: (0, _runtime.ax)(["_kkk2n7od _1e0c1ule", wrapperStyles.default, "_4gy2stnw _d81m1osq", "_yfmhtlke _5sb1v00u", displayBackground && "_bfhki8nm", wrapperShadowKey && shadowStyleMap[wrapperShadowKey], selected && "_1p1y1j28 _1rk81j28 _14r11j28 _1np21j28", isPlayButtonClickable && "_1y898vuz _19zy8vuz", isTickBoxSelectable && "_1yf91j9a _1xp5dgkc", shouldDisplayTooltip && "_9m3z1osq _10pb1osq", _cardConstants.newFileExperienceClassName]),
89
+ "data-testid": testId,
90
+ style: _objectSpread((0, _defineProperty2.default)((0, _defineProperty2.default)({}, LOCAL_WIDTH_VARIABLE, width), LOCAL_HEIGHT_VARIABLE, height), getResponsiveStyles(breakpoint)),
91
+ ref: innerRef,
92
+ onClick: onClick,
93
+ onMouseEnter: onMouseEnter,
94
+ onFocus: function onFocus(ev) {
95
+ return onMouseEnter && onMouseEnter(ev);
96
+ }
97
+ }, _vcMedia.VcMediaWrapperProps), /*#__PURE__*/React.createElement(_customData.default, {
98
+ data: {
99
+ hasMediaComponent: true
100
+ }
101
+ }), props.children) : /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
76
102
  id: "newFileExperienceWrapper"
77
103
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
78
104
  ,
@@ -116,7 +116,7 @@ var MediaInlineCardLoader = exports.default = /*#__PURE__*/function (_React$Pure
116
116
  ErrorBoundary = _this$state.ErrorBoundary;
117
117
  var analyticsContext = {
118
118
  packageVersion: "@atlaskit/media-card",
119
- packageName: "79.16.11",
119
+ packageName: "79.16.13",
120
120
  componentName: 'mediaInlineCard',
121
121
  component: 'mediaInlineCard'
122
122
  };
@@ -19,7 +19,7 @@ var _globalScope = require("./globalScope/globalScope");
19
19
  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; }
20
20
  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; }
21
21
  var packageName = "@atlaskit/media-card";
22
- var packageVersion = "79.16.11";
22
+ var packageVersion = "79.16.13";
23
23
  var SAMPLE_RATE = 0.05;
24
24
 
25
25
  /**
@@ -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.16.11";
12
+ const packageVersion = "79.16.13";
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 { defineMessages, useIntl } from 'react-intl-next';
2
3
  import { isFileIdentifier } from '@atlaskit/media-client';
3
4
  import { withAnalyticsEvents } from '@atlaskit/analytics-next';
4
5
  import { MimeTypeIcon } from '@atlaskit/media-ui/mime-type-icon';
@@ -26,6 +27,13 @@ import OpenMediaViewerButton from './ui/openMediaViewerButton/openMediaViewerBut
26
27
  import { useCurrentValueRef } from '../utils/useCurrentValueRef';
27
28
  import { SvgView } from './svgView';
28
29
  import { fg } from '@atlaskit/platform-feature-flags';
30
+ const i18n = defineMessages({
31
+ traceIdTooltip: {
32
+ id: 'fabric.media.trace_id_tooltip',
33
+ defaultMessage: 'Use Trace ID {traceId} when reaching out to support.',
34
+ description: 'Tooltip content showing the trace identifier for troubleshooting file preview errors'
35
+ }
36
+ });
29
37
  export const CardViewBase = ({
30
38
  identifier,
31
39
  innerRef = null,
@@ -58,8 +66,10 @@ export const CardViewBase = ({
58
66
  shouldOpenMediaViewer,
59
67
  overriddenCreationDate,
60
68
  onSvgError,
61
- onSvgLoad
69
+ onSvgLoad,
70
+ traceId
62
71
  }) => {
72
+ const intl = useIntl();
63
73
  const [didSvgRender, setDidSvgRender] = useState(false);
64
74
  const [didImageRender, setDidImageRender] = useState(false);
65
75
  const divRef = useRef(null);
@@ -156,6 +166,7 @@ export const CardViewBase = ({
156
166
  };
157
167
  let iconMessage;
158
168
  let customTitleMessage;
169
+ let traceTooltipVariant;
159
170
  if (isUploadError(error)) {
160
171
  iconMessage = /*#__PURE__*/React.createElement(FailedToUpload, null);
161
172
  customTitleMessage = messages.failed_to_upload;
@@ -164,8 +175,10 @@ export const CardViewBase = ({
164
175
  customTitleMessage = messages.check_internet_connection;
165
176
  } else if (!metadata) {
166
177
  iconMessage = /*#__PURE__*/React.createElement(FailedToLoad, null);
178
+ traceTooltipVariant = 'failed-to-load';
167
179
  } else {
168
180
  iconMessage = /*#__PURE__*/React.createElement(PreviewUnavailable, null);
181
+ traceTooltipVariant = 'preview-unavailable';
169
182
  }
170
183
  if (!disableOverlay) {
171
184
  const renderFailedTitleBox = !name || !!customTitleMessage;
@@ -174,12 +187,14 @@ export const CardViewBase = ({
174
187
  renderTitleBox: !!name && !customTitleMessage,
175
188
  renderFailedTitleBox,
176
189
  iconMessage: !renderFailedTitleBox ? iconMessage : undefined,
177
- customTitleMessage
190
+ customTitleMessage,
191
+ traceTooltipVariant
178
192
  };
179
193
  }
180
194
  return {
181
195
  ...baseErrorConfig,
182
- iconMessage
196
+ iconMessage,
197
+ traceTooltipVariant
183
198
  };
184
199
  case 'loading-preview':
185
200
  case 'loading':
@@ -200,19 +215,24 @@ export const CardViewBase = ({
200
215
  renderFailedTitleBox,
201
216
  renderTickBox,
202
217
  isFixedBlanket,
203
- customTitleMessage
218
+ customTitleMessage,
219
+ traceTooltipVariant
204
220
  } = getRenderConfigByStatus();
205
221
  const shouldDisplayBackground = !cardPreview || !disableOverlay || status === 'error' || status === 'failed-processing';
206
222
  const isPlayButtonClickable = shouldRenderPlayButton() && !!disableOverlay;
207
223
  const isTickBoxSelectable = !disableOverlay && !!selectable && !selected;
208
- // Disable tooltip for Media Single
209
- const shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
210
224
  const {
211
225
  mediaType,
212
226
  mimeType,
213
227
  name,
214
228
  createdAt
215
229
  } = metadata || {};
230
+ const shouldShowTraceIdTooltip = !!traceTooltipVariant && !!traceId && fg('platform_trace_id_tooltip_attachment_failures');
231
+ const tooltipContent = shouldShowTraceIdTooltip ? intl.formatMessage(i18n.traceIdTooltip, {
232
+ traceId
233
+ }) : name;
234
+ // Disable tooltip for Media Single
235
+ const shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
216
236
  const isTitleBoxVisible = renderTitleBox && name;
217
237
  const hasVisibleTitleBox = !!(isTitleBoxVisible || renderFailedTitleBox);
218
238
  const metadataRef = useCurrentValueRef(metadata);
@@ -313,6 +333,7 @@ export const CardViewBase = ({
313
333
  testId: testId || 'media-card-view',
314
334
  dimensions: dimensions,
315
335
  onClick: onClick,
336
+ ariaLabel: name || 'Media Card',
316
337
  onMouseEnter: onMouseEnter,
317
338
  innerRef: mergedRef,
318
339
  breakpoint: breakpoint,
@@ -324,7 +345,7 @@ export const CardViewBase = ({
324
345
  isTickBoxSelectable: isTickBoxSelectable,
325
346
  shouldDisplayTooltip: shouldDisplayTooltip
326
347
  }, shouldDisplayTooltip ? /*#__PURE__*/React.createElement(Tooltip, {
327
- content: name,
348
+ content: tooltipContent,
328
349
  position: "bottom",
329
350
  tag: "div"
330
351
  }, contents) : contents));
@@ -654,6 +654,7 @@ export const FileCard = ({
654
654
  onSvgLoad: onSvgLoad,
655
655
  nativeLazyLoad: nativeLazyLoad,
656
656
  forceSyncDisplay: forceSyncDisplay,
657
+ traceId: traceContext.traceId,
657
658
  mediaCardCursor: mediaCardCursor,
658
659
  shouldHideTooltip: shouldHideTooltip,
659
660
  overriddenCreationDate: overridenDate
@@ -32,11 +32,15 @@ export const InlinePlayerWrapper = props => {
32
32
  onClick,
33
33
  innerRef
34
34
  } = props;
35
+ const a11yProps = fg('platform_media_a11y_suppression_fixes') ? {
36
+ role: 'presentation',
37
+ tabIndex: -1
38
+ } : {};
35
39
  return /*#__PURE__*/React.createElement("div", _extends({
36
40
  id: "inlinePlayerWrapper",
37
41
  "data-testid": testId
42
+ }, a11yProps, {
38
43
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
39
- ,
40
44
  className: ax([fg('platform_editor_media_border_radius_fix') ? "_1reo15vq _18m915vq _2rko1mok _kqswh2mm _p12f1osq _c71l1osq _1bsbbj0z _4t3io1dg _1y2k1osq _z18o1osq" : "_1reo15vq _18m915vq _2rkofajl _kqswh2mm _p12f1osq _c71l1osq _1bsbbj0z _4t3io1dg _1y2k1osq _z18o1osq", selected && "_1p1y1j28 _1rk81j28 _14r11j28 _1np21j28", fg('platform_editor_media_border_radius_fix') ? "_14mj1kw7 _aetrb3bt _z0ai1osq _1qdg1osq _18postnw _15l2idpf _631ousvi _11fnglyw" : "_14mjfajl _aetrb3bt _z0ai1osq _1qdg1osq _18postnw _15l2idpf _631ousvi _11fnglyw", selected && "_eq43fyzg", inlinePlayerClassName]),
41
45
  style: {
42
46
  [LOCAL_WIDTH_VARIABLE]: getDimensionsWithDefault(dimensions).width || '100%',
@@ -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.16.11";
69
+ const packageVersion = "79.16.13";
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({
@@ -1,20 +1,27 @@
1
1
  /* actionsBarWrapper-compiled.tsx generated by @compiled/babel-plugin v0.39.1 */
2
+ import _extends from "@babel/runtime/helpers/extends";
2
3
  import "./actionsBarWrapper-compiled.compiled.css";
3
4
  import * as React from 'react';
4
5
  import { ax, ix } from "@compiled/react/runtime";
5
6
  import { actionsBarClassName } from './styles';
7
+ import { fg } from '@atlaskit/platform-feature-flags';
6
8
  const wrapperStyles = null;
7
9
  const fixedActionBarStyle = null;
8
10
  export const ActionsBarWrapper = props => {
9
- return /*#__PURE__*/React.createElement("div", {
11
+ const a11yProps = fg('platform_media_a11y_suppression_fixes') ? {
12
+ role: 'presentation',
13
+ tabIndex: -1
14
+ } : {};
15
+ return /*#__PURE__*/React.createElement("div", _extends({
10
16
  id: "actionsBarWrapper",
11
- "data-testId": "actionsBarWrapper",
17
+ "data-testId": "actionsBarWrapper"
18
+ }, a11yProps, {
12
19
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
13
20
  className: ax(["_v564ybtr _2lx2vrvc _1n261q9c _zulpu2gc _kqswstnw _154iidpf _1xi2idpf _1e0c1txw _1bahusic _ca0qu2gc _n3tdu2gc _u5f3u2gc _19bvu2gc _tzy4idpf", props.isFixed && "_tzy4kb7n", actionsBarClassName]),
14
21
  onClick: event => {
15
22
  event.stopPropagation();
16
23
  event.preventDefault();
17
24
  }
18
- }, props.children);
25
+ }), props.children);
19
26
  };
20
27
  ActionsBarWrapper.displayName = 'ActionsBarWrapper';
@@ -1,7 +1,9 @@
1
1
 
2
+ ._kkk2n7od{all:unset}
2
3
  ._1i7vfhey p{font:var(--ds-font-body,normal 400 14px/20px "Atlassian Sans",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
3
4
  ._2rkofajl{border-radius:var(--ds-radius-small,3px)}._1bah1h6o{justify-content:center}
4
5
  ._1e0c1txw{display:flex}
6
+ ._1e0c1ule{display:block}
5
7
  ._2lx21bp4{flex-direction:column}
6
8
  ._31ku1h6o p{text-align:center}
7
9
  ._4cvr1h6o{align-items:center}
@@ -3,6 +3,7 @@ import "./unhandledErrorCard-compiled.compiled.css";
3
3
  import * as React from 'react';
4
4
  import { ax, ix } from "@compiled/react/runtime";
5
5
  import { Component } from 'react';
6
+ import { fg } from '@atlaskit/platform-feature-flags';
6
7
  import WarningIcon from '@atlaskit/icon/core/status-warning';
7
8
  import { defaultImageCardDimensions } from '../../../utils';
8
9
  import { ContentLoadingErrorMessage } from './contentLoadingErrorMessage';
@@ -31,6 +32,7 @@ const getConvertedDimension = dimensions => {
31
32
  };
32
33
  };
33
34
  const wrapperStyle = null;
35
+ const plainButtonStyle = null;
34
36
  export class UnhandledErrorCard extends Component {
35
37
  render() {
36
38
  const {
@@ -39,7 +41,22 @@ export class UnhandledErrorCard extends Component {
39
41
  } = this.props;
40
42
  const convertedDimensions = getConvertedDimension(dimensions);
41
43
  const hideText = !shouldShowText(getConvertedDimension(dimensions));
42
- return /*#__PURE__*/React.createElement("div", {
44
+ return fg('platform_media_a11y_suppression_fixes') ? /*#__PURE__*/React.createElement("button", {
45
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
46
+ style: convertedDimensions,
47
+ onClick: onClick,
48
+ "data-testid": "unhandled-error-card"
49
+ // eslint-disable-next-line @atlassian/i18n/no-literal-string-in-jsx
50
+ ,
51
+ "aria-label": "Preview unavailable",
52
+ className: ax(["_kkk2n7od _1e0c1ule", "_2rkofajl _1e0c1txw _4cvr1h6o _1bah1h6o _bfhki8nm _syazazsu _c71l1osq _p12f1osq _2lx21bp4 _1i7vfhey _31ku1h6o"])
53
+ }, /*#__PURE__*/React.createElement(WarningIcon, {
54
+ label: "Error",
55
+ color: "var(--ds-icon-warning, #E06C00)",
56
+ spacing: "spacious"
57
+ }), /*#__PURE__*/React.createElement(ContentLoadingErrorMessage, {
58
+ isHidden: hideText
59
+ })) : /*#__PURE__*/React.createElement("div", {
43
60
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
44
61
  style: convertedDimensions,
45
62
  onClick: onClick,
@@ -1,4 +1,5 @@
1
1
 
2
+ ._kkk2n7od{all:unset}
2
3
  ._2rko18qm{border-radius:var(--ds-radius-large,3px)}
3
4
  button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--ds-border-focused,#4688ec)}._10pb1osq>div{height:100%}
4
5
  ._14r11j28::-moz-selection{background-color:transparent}
@@ -7,6 +8,7 @@ button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--d
7
8
  ._16qst7xp{box-shadow:var(--ds-shadow-raised,0 1px 1px #1e1f2140,0 0 1px #1e1f214f)}
8
9
  ._19zy8vuz:hover .media-card-play-button .play-icon-background{height:56px}
9
10
  ._1bsb1qmm{width:var(--media-wrapper-width)}
11
+ ._1e0c1ule{display:block}
10
12
  ._1np21j28 ::-moz-selection{background-color:transparent}
11
13
  ._1ntskb7n:hover .media-card-actions-bar{opacity:1}
12
14
  ._1p1y1j28::selection{background-color:transparent}
@@ -26,4 +28,6 @@ button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--d
26
28
  ._mts3kb7n:focus-within .media-card-actions-bar{opacity:1}
27
29
  ._p12f1osq{max-width:100%}
28
30
  ._vchhusvi{box-sizing:border-box}
29
- ._yfmhtlke [data-cursor=pointer]{cursor:pointer}
31
+ ._yfmhtlke [data-cursor=pointer]{cursor:pointer}
32
+ [data-node-type=media]>._4gy2stnw{position:absolute}
33
+ [data-node-type=media]>._d81m1osq{height:100%}
@@ -8,12 +8,18 @@ import { VcMediaWrapperProps } from '@atlaskit/react-ufo/vc-media';
8
8
  import { getDefaultCardDimensions } from '../../../utils/cardDimensions';
9
9
  import { getCSSUnitValue } from '../../../utils/getCSSUnitValue';
10
10
  import UFOCustomData from '@atlaskit/react-ufo/custom-data';
11
+ import { fg } from '@atlaskit/platform-feature-flags';
11
12
  export const LOCAL_WIDTH_VARIABLE = '--media-wrapper-width';
12
13
  export const LOCAL_HEIGHT_VARIABLE = '--media-wrapper-height';
13
14
  const wrapperStyles = {
14
15
  default: "_2rko18qm _vchhusvi _kqswh2mm _ect4ttxp _p12f1osq _c71l1osq _1bsb1qmm _4t3ine4n _1hlmd0i9 _1rquusvi _eg541i5c _mts3kb7n _1ntskb7n"
15
16
  };
16
17
  const backgroundStyle = null;
18
+ const resetButtonStyle = null;
19
+
20
+ // Fix for Renderer context: editor-common's [data-node-type='media'] > div
21
+ // selector doesn't match <button>, so we replicate those styles here.
22
+ const rendererMediaButtonFix = null;
17
23
  const shadowStyleMap = {
18
24
  withOverlay: "_16qst7xp",
19
25
  selected: "_16qsr4us",
@@ -62,13 +68,36 @@ export const Wrapper = props => {
62
68
  displayBackground,
63
69
  isPlayButtonClickable,
64
70
  isTickBoxSelectable,
65
- shouldDisplayTooltip
71
+ shouldDisplayTooltip,
72
+ ariaLabel
66
73
  } = props;
67
74
  const defaultImageCardDimensions = getDefaultCardDimensions(appearance);
68
75
  const width = getCSSUnitValue((dimensions === null || dimensions === void 0 ? void 0 : dimensions.width) || defaultImageCardDimensions.width);
69
76
  const height = getCSSUnitValue((dimensions === null || dimensions === void 0 ? void 0 : dimensions.height) || defaultImageCardDimensions.height);
70
77
  const wrapperShadowKey = getShadowKey(disableOverlay, selected);
71
- return /*#__PURE__*/React.createElement("div", _extends({
78
+ return fg('platform_media_a11y_suppression_fixes') ? /*#__PURE__*/React.createElement("button", _extends({
79
+ id: "newFileExperienceWrapper",
80
+ type: "button",
81
+ "aria-label": ariaLabel
82
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
83
+ ,
84
+ className: ax(["_kkk2n7od _1e0c1ule", wrapperStyles.default, "_4gy2stnw _d81m1osq", "_yfmhtlke _5sb1v00u", displayBackground && "_bfhki8nm", wrapperShadowKey && shadowStyleMap[wrapperShadowKey], selected && "_1p1y1j28 _1rk81j28 _14r11j28 _1np21j28", isPlayButtonClickable && "_1y898vuz _19zy8vuz", isTickBoxSelectable && "_1yf91j9a _1xp5dgkc", shouldDisplayTooltip && "_9m3z1osq _10pb1osq", newFileExperienceClassName]),
85
+ "data-testid": testId,
86
+ style: {
87
+ [LOCAL_WIDTH_VARIABLE]: width,
88
+ [LOCAL_HEIGHT_VARIABLE]: height,
89
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
90
+ ...getResponsiveStyles(breakpoint)
91
+ },
92
+ ref: innerRef,
93
+ onClick: onClick,
94
+ onMouseEnter: onMouseEnter,
95
+ onFocus: ev => onMouseEnter && onMouseEnter(ev)
96
+ }, VcMediaWrapperProps), /*#__PURE__*/React.createElement(UFOCustomData, {
97
+ data: {
98
+ hasMediaComponent: true
99
+ }
100
+ }), props.children) : /*#__PURE__*/React.createElement("div", _extends({
72
101
  id: "newFileExperienceWrapper"
73
102
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
74
103
  ,
@@ -37,7 +37,7 @@ export default class MediaInlineCardLoader extends React.PureComponent {
37
37
  } = this.state;
38
38
  const analyticsContext = {
39
39
  packageVersion: "@atlaskit/media-card",
40
- packageName: "79.16.11",
40
+ packageName: "79.16.13",
41
41
  componentName: 'mediaInlineCard',
42
42
  component: 'mediaInlineCard'
43
43
  };
@@ -9,7 +9,7 @@ import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
9
9
  import { getActiveInteraction } from '@atlaskit/react-ufo/interaction-metrics';
10
10
  import { getMediaGlobalScope } from './globalScope/globalScope';
11
11
  const packageName = "@atlaskit/media-card";
12
- const packageVersion = "79.16.11";
12
+ const packageVersion = "79.16.13";
13
13
  const SAMPLE_RATE = 0.05;
14
14
 
15
15
  /**
@@ -11,7 +11,7 @@ import { startResourceObserver, setAnalyticsContext } from '../utils/mediaPerfor
11
11
  import { useAnalyticsEvents } from '@atlaskit/analytics-next';
12
12
  import UFOLabel from '@atlaskit/react-ufo/label';
13
13
  var packageName = "@atlaskit/media-card";
14
- var packageVersion = "79.16.11";
14
+ var packageVersion = "79.16.13";
15
15
  export var CardBase = function CardBase(_ref) {
16
16
  var identifier = _ref.identifier,
17
17
  otherProps = _objectWithoutProperties(_ref, _excluded);
@@ -3,6 +3,7 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  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; }
4
4
  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) { _defineProperty(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; }
5
5
  import React, { useEffect, useState, useRef, useMemo } from 'react';
6
+ import { defineMessages, useIntl } from 'react-intl-next';
6
7
  import { isFileIdentifier } from '@atlaskit/media-client';
7
8
  import { withAnalyticsEvents } from '@atlaskit/analytics-next';
8
9
  import { MimeTypeIcon } from '@atlaskit/media-ui/mime-type-icon';
@@ -30,6 +31,13 @@ import OpenMediaViewerButton from './ui/openMediaViewerButton/openMediaViewerBut
30
31
  import { useCurrentValueRef } from '../utils/useCurrentValueRef';
31
32
  import { SvgView } from './svgView';
32
33
  import { fg } from '@atlaskit/platform-feature-flags';
34
+ var i18n = defineMessages({
35
+ traceIdTooltip: {
36
+ id: 'fabric.media.trace_id_tooltip',
37
+ defaultMessage: 'Use Trace ID {traceId} when reaching out to support.',
38
+ description: 'Tooltip content showing the trace identifier for troubleshooting file preview errors'
39
+ }
40
+ });
33
41
  export var CardViewBase = function CardViewBase(_ref) {
34
42
  var identifier = _ref.identifier,
35
43
  _ref$innerRef = _ref.innerRef,
@@ -64,7 +72,9 @@ export var CardViewBase = function CardViewBase(_ref) {
64
72
  shouldOpenMediaViewer = _ref.shouldOpenMediaViewer,
65
73
  overriddenCreationDate = _ref.overriddenCreationDate,
66
74
  onSvgError = _ref.onSvgError,
67
- onSvgLoad = _ref.onSvgLoad;
75
+ onSvgLoad = _ref.onSvgLoad,
76
+ traceId = _ref.traceId;
77
+ var intl = useIntl();
68
78
  var _useState = useState(false),
69
79
  _useState2 = _slicedToArray(_useState, 2),
70
80
  didSvgRender = _useState2[0],
@@ -161,6 +171,7 @@ export var CardViewBase = function CardViewBase(_ref) {
161
171
  });
162
172
  var _iconMessage;
163
173
  var _customTitleMessage;
174
+ var _traceTooltipVariant;
164
175
  if (isUploadError(error)) {
165
176
  _iconMessage = /*#__PURE__*/React.createElement(FailedToUpload, null);
166
177
  _customTitleMessage = messages.failed_to_upload;
@@ -169,8 +180,10 @@ export var CardViewBase = function CardViewBase(_ref) {
169
180
  _customTitleMessage = messages.check_internet_connection;
170
181
  } else if (!metadata) {
171
182
  _iconMessage = /*#__PURE__*/React.createElement(FailedToLoad, null);
183
+ _traceTooltipVariant = 'failed-to-load';
172
184
  } else {
173
185
  _iconMessage = /*#__PURE__*/React.createElement(PreviewUnavailable, null);
186
+ _traceTooltipVariant = 'preview-unavailable';
174
187
  }
175
188
  if (!disableOverlay) {
176
189
  var _renderFailedTitleBox = !name || !!_customTitleMessage;
@@ -178,11 +191,13 @@ export var CardViewBase = function CardViewBase(_ref) {
178
191
  renderTitleBox: !!name && !_customTitleMessage,
179
192
  renderFailedTitleBox: _renderFailedTitleBox,
180
193
  iconMessage: !_renderFailedTitleBox ? _iconMessage : undefined,
181
- customTitleMessage: _customTitleMessage
194
+ customTitleMessage: _customTitleMessage,
195
+ traceTooltipVariant: _traceTooltipVariant
182
196
  });
183
197
  }
184
198
  return _objectSpread(_objectSpread({}, baseErrorConfig), {}, {
185
- iconMessage: _iconMessage
199
+ iconMessage: _iconMessage,
200
+ traceTooltipVariant: _traceTooltipVariant
186
201
  });
187
202
  case 'loading-preview':
188
203
  case 'loading':
@@ -203,17 +218,22 @@ export var CardViewBase = function CardViewBase(_ref) {
203
218
  renderFailedTitleBox = _getRenderConfigBySta.renderFailedTitleBox,
204
219
  renderTickBox = _getRenderConfigBySta.renderTickBox,
205
220
  isFixedBlanket = _getRenderConfigBySta.isFixedBlanket,
206
- customTitleMessage = _getRenderConfigBySta.customTitleMessage;
221
+ customTitleMessage = _getRenderConfigBySta.customTitleMessage,
222
+ traceTooltipVariant = _getRenderConfigBySta.traceTooltipVariant;
207
223
  var shouldDisplayBackground = !cardPreview || !disableOverlay || status === 'error' || status === 'failed-processing';
208
224
  var isPlayButtonClickable = shouldRenderPlayButton() && !!disableOverlay;
209
225
  var isTickBoxSelectable = !disableOverlay && !!selectable && !selected;
210
- // Disable tooltip for Media Single
211
- var shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
212
226
  var _ref4 = metadata || {},
213
227
  mediaType = _ref4.mediaType,
214
228
  mimeType = _ref4.mimeType,
215
229
  name = _ref4.name,
216
230
  createdAt = _ref4.createdAt;
231
+ var shouldShowTraceIdTooltip = !!traceTooltipVariant && !!traceId && fg('platform_trace_id_tooltip_attachment_failures');
232
+ var tooltipContent = shouldShowTraceIdTooltip ? intl.formatMessage(i18n.traceIdTooltip, {
233
+ traceId: traceId
234
+ }) : name;
235
+ // Disable tooltip for Media Single
236
+ var shouldDisplayTooltip = !disableOverlay && !shouldHideTooltip;
217
237
  var isTitleBoxVisible = renderTitleBox && name;
218
238
  var hasVisibleTitleBox = !!(isTitleBoxVisible || renderFailedTitleBox);
219
239
  var metadataRef = useCurrentValueRef(metadata);
@@ -315,6 +335,7 @@ export var CardViewBase = function CardViewBase(_ref) {
315
335
  testId: testId || 'media-card-view',
316
336
  dimensions: dimensions,
317
337
  onClick: onClick,
338
+ ariaLabel: name || 'Media Card',
318
339
  onMouseEnter: onMouseEnter,
319
340
  innerRef: mergedRef,
320
341
  breakpoint: breakpoint,
@@ -326,7 +347,7 @@ export var CardViewBase = function CardViewBase(_ref) {
326
347
  isTickBoxSelectable: isTickBoxSelectable,
327
348
  shouldDisplayTooltip: shouldDisplayTooltip
328
349
  }, shouldDisplayTooltip ? /*#__PURE__*/React.createElement(Tooltip, {
329
- content: name,
350
+ content: tooltipContent,
330
351
  position: "bottom",
331
352
  tag: "div"
332
353
  }, contents) : contents));
@@ -726,6 +726,7 @@ export var FileCard = function FileCard(_ref) {
726
726
  onSvgLoad: onSvgLoad,
727
727
  nativeLazyLoad: nativeLazyLoad,
728
728
  forceSyncDisplay: forceSyncDisplay,
729
+ traceId: traceContext.traceId,
729
730
  mediaCardCursor: mediaCardCursor,
730
731
  shouldHideTooltip: shouldHideTooltip,
731
732
  overriddenCreationDate: overridenDate
@@ -31,11 +31,15 @@ export var InlinePlayerWrapper = function InlinePlayerWrapper(props) {
31
31
  dimensions = props.dimensions,
32
32
  onClick = props.onClick,
33
33
  innerRef = props.innerRef;
34
+ var a11yProps = fg('platform_media_a11y_suppression_fixes') ? {
35
+ role: 'presentation',
36
+ tabIndex: -1
37
+ } : {};
34
38
  return /*#__PURE__*/React.createElement("div", _extends({
35
39
  id: "inlinePlayerWrapper",
36
40
  "data-testid": testId
41
+ }, a11yProps, {
37
42
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
38
- ,
39
43
  className: ax([fg('platform_editor_media_border_radius_fix') ? "_1reo15vq _18m915vq _2rko1mok _kqswh2mm _p12f1osq _c71l1osq _1bsb1ez3 _4t3i1amq _1y2k1osq _z18o1osq" : "_1reo15vq _18m915vq _2rkofajl _kqswh2mm _p12f1osq _c71l1osq _1bsb1ez3 _4t3i1amq _1y2k1osq _z18o1osq", selected && "_1p1y1j28 _1rk81j28 _14r11j28 _1np21j28", fg('platform_editor_media_border_radius_fix') ? "_14mj1kw7 _aetrb3bt _z0ai1osq _1qdg1osq _18postnw _15l2idpf _631ousvi _11fnglyw" : "_14mjfajl _aetrb3bt _z0ai1osq _1qdg1osq _18postnw _15l2idpf _631ousvi _11fnglyw", selected && "_eq43fyzg", inlinePlayerClassName]),
40
44
  onClick: onClick,
41
45
  ref: innerRef
@@ -80,7 +80,7 @@ var WrappedMediaCardAnalyticsErrorBoundary = /*#__PURE__*/function (_React$Compo
80
80
  }(React.Component);
81
81
  _defineProperty(WrappedMediaCardAnalyticsErrorBoundary, "displayName", 'MediaCardAnalyticsErrorBoundary');
82
82
  var packageName = "@atlaskit/media-card";
83
- var packageVersion = "79.16.11";
83
+ var packageVersion = "79.16.13";
84
84
 
85
85
  // @ts-ignore: [PIT-1685] Fails in post-office due to backwards incompatibility issue with React 18
86
86
  var MediaCardAnalyticsErrorBoundary = withMediaAnalyticsContext({
@@ -1,20 +1,27 @@
1
1
  /* actionsBarWrapper-compiled.tsx generated by @compiled/babel-plugin v0.39.1 */
2
+ import _extends from "@babel/runtime/helpers/extends";
2
3
  import "./actionsBarWrapper-compiled.compiled.css";
3
4
  import * as React from 'react';
4
5
  import { ax, ix } from "@compiled/react/runtime";
5
6
  import { actionsBarClassName } from './styles';
7
+ import { fg } from '@atlaskit/platform-feature-flags';
6
8
  var wrapperStyles = null;
7
9
  var fixedActionBarStyle = null;
8
10
  export var ActionsBarWrapper = function ActionsBarWrapper(props) {
9
- return /*#__PURE__*/React.createElement("div", {
11
+ var a11yProps = fg('platform_media_a11y_suppression_fixes') ? {
12
+ role: 'presentation',
13
+ tabIndex: -1
14
+ } : {};
15
+ return /*#__PURE__*/React.createElement("div", _extends({
10
16
  id: "actionsBarWrapper",
11
- "data-testId": "actionsBarWrapper",
17
+ "data-testId": "actionsBarWrapper"
18
+ }, a11yProps, {
12
19
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
13
20
  className: ax(["_v564ybtr _2lx2vrvc _1n261q9c _zulpu2gc _kqswstnw _154iidpf _1xi2idpf _1e0c1txw _1bahusic _ca0qu2gc _n3tdu2gc _u5f3u2gc _19bvu2gc _tzy4idpf", props.isFixed && "_tzy4kb7n", actionsBarClassName]),
14
21
  onClick: function onClick(event) {
15
22
  event.stopPropagation();
16
23
  event.preventDefault();
17
24
  }
18
- }, props.children);
25
+ }), props.children);
19
26
  };
20
27
  ActionsBarWrapper.displayName = 'ActionsBarWrapper';
@@ -1,7 +1,9 @@
1
1
 
2
+ ._kkk2n7od{all:unset}
2
3
  ._1i7vfhey p{font:var(--ds-font-body,normal 400 14px/20px "Atlassian Sans",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
3
4
  ._2rkofajl{border-radius:var(--ds-radius-small,3px)}._1bah1h6o{justify-content:center}
4
5
  ._1e0c1txw{display:flex}
6
+ ._1e0c1ule{display:block}
5
7
  ._2lx21bp4{flex-direction:column}
6
8
  ._31ku1h6o p{text-align:center}
7
9
  ._4cvr1h6o{align-items:center}
@@ -10,6 +10,7 @@ import { ax, ix } from "@compiled/react/runtime";
10
10
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
11
11
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
12
12
  import { Component } from 'react';
13
+ import { fg } from '@atlaskit/platform-feature-flags';
13
14
  import WarningIcon from '@atlaskit/icon/core/status-warning';
14
15
  import { defaultImageCardDimensions } from '../../../utils';
15
16
  import { ContentLoadingErrorMessage } from './contentLoadingErrorMessage';
@@ -39,6 +40,7 @@ var getConvertedDimension = function getConvertedDimension(dimensions) {
39
40
  };
40
41
  };
41
42
  var wrapperStyle = null;
43
+ var plainButtonStyle = null;
42
44
  export var UnhandledErrorCard = /*#__PURE__*/function (_Component) {
43
45
  function UnhandledErrorCard() {
44
46
  _classCallCheck(this, UnhandledErrorCard);
@@ -54,7 +56,22 @@ export var UnhandledErrorCard = /*#__PURE__*/function (_Component) {
54
56
  onClick = _this$props.onClick;
55
57
  var convertedDimensions = getConvertedDimension(dimensions);
56
58
  var hideText = !shouldShowText(getConvertedDimension(dimensions));
57
- return /*#__PURE__*/React.createElement("div", {
59
+ return fg('platform_media_a11y_suppression_fixes') ? /*#__PURE__*/React.createElement("button", {
60
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
61
+ style: convertedDimensions,
62
+ onClick: onClick,
63
+ "data-testid": "unhandled-error-card"
64
+ // eslint-disable-next-line @atlassian/i18n/no-literal-string-in-jsx
65
+ ,
66
+ "aria-label": "Preview unavailable",
67
+ className: ax(["_kkk2n7od _1e0c1ule", "_2rkofajl _1e0c1txw _4cvr1h6o _1bah1h6o _bfhki8nm _syazazsu _c71l1osq _p12f1osq _2lx21bp4 _1i7vfhey _31ku1h6o"])
68
+ }, /*#__PURE__*/React.createElement(WarningIcon, {
69
+ label: "Error",
70
+ color: "var(--ds-icon-warning, #E06C00)",
71
+ spacing: "spacious"
72
+ }), /*#__PURE__*/React.createElement(ContentLoadingErrorMessage, {
73
+ isHidden: hideText
74
+ })) : /*#__PURE__*/React.createElement("div", {
58
75
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
59
76
  style: convertedDimensions,
60
77
  onClick: onClick,
@@ -1,4 +1,5 @@
1
1
 
2
+ ._kkk2n7od{all:unset}
2
3
  ._2rko18qm{border-radius:var(--ds-radius-large,3px)}
3
4
  button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--ds-border-focused,#4688ec)}._10pb1osq>div{height:100%}
4
5
  ._14r11j28::-moz-selection{background-color:transparent}
@@ -7,6 +8,7 @@ button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--d
7
8
  ._16qst7xp{box-shadow:var(--ds-shadow-raised,0 1px 1px #1e1f2140,0 0 1px #1e1f214f)}
8
9
  ._19zy8vuz:hover .media-card-play-button .play-icon-background{height:56px}
9
10
  ._1bsb1qmm{width:var(--media-wrapper-width)}
11
+ ._1e0c1ule{display:block}
10
12
  ._1np21j28 ::-moz-selection{background-color:transparent}
11
13
  ._1ntskb7n:hover .media-card-actions-bar{opacity:1}
12
14
  ._1p1y1j28::selection{background-color:transparent}
@@ -26,4 +28,6 @@ button:focus+._1hlmd0i9{outline:solid var(--ds-border-width-focused,2px) var(--d
26
28
  ._mts3kb7n:focus-within .media-card-actions-bar{opacity:1}
27
29
  ._p12f1osq{max-width:100%}
28
30
  ._vchhusvi{box-sizing:border-box}
29
- ._yfmhtlke [data-cursor=pointer]{cursor:pointer}
31
+ ._yfmhtlke [data-cursor=pointer]{cursor:pointer}
32
+ [data-node-type=media]>._4gy2stnw{position:absolute}
33
+ [data-node-type=media]>._d81m1osq{height:100%}
@@ -11,12 +11,18 @@ import { VcMediaWrapperProps } from '@atlaskit/react-ufo/vc-media';
11
11
  import { getDefaultCardDimensions } from '../../../utils/cardDimensions';
12
12
  import { getCSSUnitValue } from '../../../utils/getCSSUnitValue';
13
13
  import UFOCustomData from '@atlaskit/react-ufo/custom-data';
14
+ import { fg } from '@atlaskit/platform-feature-flags';
14
15
  export var LOCAL_WIDTH_VARIABLE = '--media-wrapper-width';
15
16
  export var LOCAL_HEIGHT_VARIABLE = '--media-wrapper-height';
16
17
  var wrapperStyles = {
17
18
  default: "_2rko18qm _vchhusvi _kqswh2mm _ect4ttxp _p12f1osq _c71l1osq _1bsb1qmm _4t3ine4n _1hlmd0i9 _1rquusvi _eg541i5c _mts3kb7n _1ntskb7n"
18
19
  };
19
20
  var backgroundStyle = null;
21
+ var resetButtonStyle = null;
22
+
23
+ // Fix for Renderer context: editor-common's [data-node-type='media'] > div
24
+ // selector doesn't match <button>, so we replicate those styles here.
25
+ var rendererMediaButtonFix = null;
20
26
  var shadowStyleMap = {
21
27
  withOverlay: "_16qst7xp",
22
28
  selected: "_16qsr4us",
@@ -58,12 +64,32 @@ export var Wrapper = function Wrapper(props) {
58
64
  displayBackground = props.displayBackground,
59
65
  isPlayButtonClickable = props.isPlayButtonClickable,
60
66
  isTickBoxSelectable = props.isTickBoxSelectable,
61
- shouldDisplayTooltip = props.shouldDisplayTooltip;
67
+ shouldDisplayTooltip = props.shouldDisplayTooltip,
68
+ ariaLabel = props.ariaLabel;
62
69
  var defaultImageCardDimensions = getDefaultCardDimensions(appearance);
63
70
  var width = getCSSUnitValue((dimensions === null || dimensions === void 0 ? void 0 : dimensions.width) || defaultImageCardDimensions.width);
64
71
  var height = getCSSUnitValue((dimensions === null || dimensions === void 0 ? void 0 : dimensions.height) || defaultImageCardDimensions.height);
65
72
  var wrapperShadowKey = getShadowKey(disableOverlay, selected);
66
- return /*#__PURE__*/React.createElement("div", _extends({
73
+ return fg('platform_media_a11y_suppression_fixes') ? /*#__PURE__*/React.createElement("button", _extends({
74
+ id: "newFileExperienceWrapper",
75
+ type: "button",
76
+ "aria-label": ariaLabel
77
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
78
+ ,
79
+ className: ax(["_kkk2n7od _1e0c1ule", wrapperStyles.default, "_4gy2stnw _d81m1osq", "_yfmhtlke _5sb1v00u", displayBackground && "_bfhki8nm", wrapperShadowKey && shadowStyleMap[wrapperShadowKey], selected && "_1p1y1j28 _1rk81j28 _14r11j28 _1np21j28", isPlayButtonClickable && "_1y898vuz _19zy8vuz", isTickBoxSelectable && "_1yf91j9a _1xp5dgkc", shouldDisplayTooltip && "_9m3z1osq _10pb1osq", newFileExperienceClassName]),
80
+ "data-testid": testId,
81
+ style: _objectSpread(_defineProperty(_defineProperty({}, LOCAL_WIDTH_VARIABLE, width), LOCAL_HEIGHT_VARIABLE, height), getResponsiveStyles(breakpoint)),
82
+ ref: innerRef,
83
+ onClick: onClick,
84
+ onMouseEnter: onMouseEnter,
85
+ onFocus: function onFocus(ev) {
86
+ return onMouseEnter && onMouseEnter(ev);
87
+ }
88
+ }, VcMediaWrapperProps), /*#__PURE__*/React.createElement(UFOCustomData, {
89
+ data: {
90
+ hasMediaComponent: true
91
+ }
92
+ }), props.children) : /*#__PURE__*/React.createElement("div", _extends({
67
93
  id: "newFileExperienceWrapper"
68
94
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
69
95
  ,
@@ -101,7 +101,7 @@ var MediaInlineCardLoader = /*#__PURE__*/function (_React$PureComponent) {
101
101
  ErrorBoundary = _this$state.ErrorBoundary;
102
102
  var analyticsContext = {
103
103
  packageVersion: "@atlaskit/media-card",
104
- packageName: "79.16.11",
104
+ packageName: "79.16.13",
105
105
  componentName: 'mediaInlineCard',
106
106
  component: 'mediaInlineCard'
107
107
  };
@@ -13,7 +13,7 @@ import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
13
13
  import { getActiveInteraction } from '@atlaskit/react-ufo/interaction-metrics';
14
14
  import { getMediaGlobalScope } from './globalScope/globalScope';
15
15
  var packageName = "@atlaskit/media-card";
16
- var packageVersion = "79.16.11";
16
+ var packageVersion = "79.16.13";
17
17
  var SAMPLE_RATE = 0.05;
18
18
 
19
19
  /**
@@ -37,11 +37,13 @@ export interface CardViewProps {
37
37
  readonly onSvgLoad?: () => void;
38
38
  readonly nativeLazyLoad?: boolean;
39
39
  readonly forceSyncDisplay?: boolean;
40
+ readonly traceId?: string;
40
41
  disableAnimation?: boolean;
41
42
  shouldHideTooltip?: boolean;
42
43
  overriddenCreationDate?: number;
43
44
  }
44
45
  export type CardViewBaseProps = CardViewProps & WithAnalyticsEventsProps;
46
+ type TraceTooltipVariant = 'preview-unavailable' | 'failed-to-load';
45
47
  export interface RenderConfigByStatus {
46
48
  renderTypeIcon?: boolean;
47
49
  iconMessage?: JSX.Element;
@@ -56,6 +58,8 @@ export interface RenderConfigByStatus {
56
58
  renderFailedTitleBox?: boolean;
57
59
  renderTickBox?: boolean;
58
60
  customTitleMessage?: MessageDescriptor;
61
+ traceTooltipVariant?: TraceTooltipVariant;
59
62
  }
60
- export declare const CardViewBase: ({ identifier, innerRef, onImageLoad, onImageError, dimensions, onClick, onMouseEnter, testId, metadata, status, selected, selectable, cardPreview, mediaCardCursor, shouldHideTooltip, progress, alt, resizeMode, onDisplayImage, nativeLazyLoad, forceSyncDisplay, actions, disableOverlay, titleBoxBgColor, titleBoxIcon, error, disableAnimation, openMediaViewerButtonRef, shouldOpenMediaViewer, overriddenCreationDate, onSvgError, onSvgLoad, }: CardViewBaseProps) => React.JSX.Element;
63
+ export declare const CardViewBase: ({ identifier, innerRef, onImageLoad, onImageError, dimensions, onClick, onMouseEnter, testId, metadata, status, selected, selectable, cardPreview, mediaCardCursor, shouldHideTooltip, progress, alt, resizeMode, onDisplayImage, nativeLazyLoad, forceSyncDisplay, actions, disableOverlay, titleBoxBgColor, titleBoxIcon, error, disableAnimation, openMediaViewerButtonRef, shouldOpenMediaViewer, overriddenCreationDate, onSvgError, onSvgLoad, traceId, }: CardViewBaseProps) => React.JSX.Element;
61
64
  export declare const CardView: React.ForwardRefExoticComponent<Omit<CardViewProps, keyof WithAnalyticsEventsProps> & React.RefAttributes<any>>;
65
+ export {};
@@ -6,7 +6,7 @@ type TitleBoxWrapperStyleArgs = {
6
6
  display?: 'none' | 'flex';
7
7
  };
8
8
  export declare const titleBoxWrapperStyles: {
9
- ({ breakpoint, display, }: TitleBoxWrapperStyleArgs): import("@emotion/utils").SerializedStyles;
9
+ ({ breakpoint, display }: TitleBoxWrapperStyleArgs): import("@emotion/utils").SerializedStyles;
10
10
  displayName: string;
11
11
  };
12
12
  export declare const titleBoxHeaderStyles: {
@@ -21,4 +21,5 @@ export interface WrapperProps {
21
21
  shouldDisplayTooltip: boolean;
22
22
  innerRef?: React.Ref<HTMLDivElement>;
23
23
  children?: JSX.Element;
24
+ ariaLabel?: string;
24
25
  }
@@ -37,11 +37,13 @@ export interface CardViewProps {
37
37
  readonly onSvgLoad?: () => void;
38
38
  readonly nativeLazyLoad?: boolean;
39
39
  readonly forceSyncDisplay?: boolean;
40
+ readonly traceId?: string;
40
41
  disableAnimation?: boolean;
41
42
  shouldHideTooltip?: boolean;
42
43
  overriddenCreationDate?: number;
43
44
  }
44
45
  export type CardViewBaseProps = CardViewProps & WithAnalyticsEventsProps;
46
+ type TraceTooltipVariant = 'preview-unavailable' | 'failed-to-load';
45
47
  export interface RenderConfigByStatus {
46
48
  renderTypeIcon?: boolean;
47
49
  iconMessage?: JSX.Element;
@@ -56,6 +58,8 @@ export interface RenderConfigByStatus {
56
58
  renderFailedTitleBox?: boolean;
57
59
  renderTickBox?: boolean;
58
60
  customTitleMessage?: MessageDescriptor;
61
+ traceTooltipVariant?: TraceTooltipVariant;
59
62
  }
60
- export declare const CardViewBase: ({ identifier, innerRef, onImageLoad, onImageError, dimensions, onClick, onMouseEnter, testId, metadata, status, selected, selectable, cardPreview, mediaCardCursor, shouldHideTooltip, progress, alt, resizeMode, onDisplayImage, nativeLazyLoad, forceSyncDisplay, actions, disableOverlay, titleBoxBgColor, titleBoxIcon, error, disableAnimation, openMediaViewerButtonRef, shouldOpenMediaViewer, overriddenCreationDate, onSvgError, onSvgLoad, }: CardViewBaseProps) => React.JSX.Element;
63
+ export declare const CardViewBase: ({ identifier, innerRef, onImageLoad, onImageError, dimensions, onClick, onMouseEnter, testId, metadata, status, selected, selectable, cardPreview, mediaCardCursor, shouldHideTooltip, progress, alt, resizeMode, onDisplayImage, nativeLazyLoad, forceSyncDisplay, actions, disableOverlay, titleBoxBgColor, titleBoxIcon, error, disableAnimation, openMediaViewerButtonRef, shouldOpenMediaViewer, overriddenCreationDate, onSvgError, onSvgLoad, traceId, }: CardViewBaseProps) => React.JSX.Element;
61
64
  export declare const CardView: React.ForwardRefExoticComponent<Omit<CardViewProps, keyof WithAnalyticsEventsProps> & React.RefAttributes<any>>;
65
+ export {};
@@ -6,7 +6,7 @@ type TitleBoxWrapperStyleArgs = {
6
6
  display?: 'none' | 'flex';
7
7
  };
8
8
  export declare const titleBoxWrapperStyles: {
9
- ({ breakpoint, display, }: TitleBoxWrapperStyleArgs): import("@emotion/utils").SerializedStyles;
9
+ ({ breakpoint, display }: TitleBoxWrapperStyleArgs): import("@emotion/utils").SerializedStyles;
10
10
  displayName: string;
11
11
  };
12
12
  export declare const titleBoxHeaderStyles: {
@@ -21,4 +21,5 @@ export interface WrapperProps {
21
21
  shouldDisplayTooltip: boolean;
22
22
  innerRef?: React.Ref<HTMLDivElement>;
23
23
  children?: JSX.Element;
24
+ ariaLabel?: string;
24
25
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/media-card",
3
- "version": "79.16.12",
3
+ "version": "79.16.14",
4
4
  "description": "Includes all media card related components, CardView, CardViewSmall, Card...",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -35,7 +35,7 @@
35
35
  "@atlaskit/dropdown-menu": "^16.8.0",
36
36
  "@atlaskit/editor-shared-styles": "^3.10.0",
37
37
  "@atlaskit/icon": "^34.0.0",
38
- "@atlaskit/link": "^3.3.0",
38
+ "@atlaskit/link": "^3.4.0",
39
39
  "@atlaskit/media-client": "^36.0.0",
40
40
  "@atlaskit/media-client-react": "^5.0.0",
41
41
  "@atlaskit/media-common": "^13.0.0",
@@ -46,10 +46,10 @@
46
46
  "@atlaskit/media-viewer": "^52.9.0",
47
47
  "@atlaskit/platform-feature-flags": "^1.1.0",
48
48
  "@atlaskit/primitives": "^18.1.0",
49
- "@atlaskit/react-ufo": "^5.10.0",
50
- "@atlaskit/spinner": "^19.0.0",
49
+ "@atlaskit/react-ufo": "^5.11.0",
50
+ "@atlaskit/spinner": "^19.1.0",
51
51
  "@atlaskit/theme": "^22.0.0",
52
- "@atlaskit/tmp-editor-statsig": "^54.0.0",
52
+ "@atlaskit/tmp-editor-statsig": "^55.0.0",
53
53
  "@atlaskit/tokens": "^11.4.0",
54
54
  "@atlaskit/tooltip": "^21.1.0",
55
55
  "@atlaskit/ufo": "^0.4.0",
@@ -79,10 +79,10 @@
79
79
  "@atlaskit/media-picker": "^70.1.0",
80
80
  "@atlaskit/media-test-data": "^3.2.0",
81
81
  "@atlaskit/media-test-helpers": "^40.0.0",
82
- "@atlaskit/radio": "^8.4.0",
82
+ "@atlaskit/radio": "^8.5.0",
83
83
  "@atlaskit/range": "^10.0.0",
84
84
  "@atlaskit/ssr": "workspace:^",
85
- "@atlaskit/toggle": "^15.2.0",
85
+ "@atlaskit/toggle": "^15.3.0",
86
86
  "@atlassian/a11y-jest-testing": "^0.11.0",
87
87
  "@atlassian/feature-flags-test-utils": "^1.0.0",
88
88
  "@atlassian/testing-library": "^0.5.0",
@@ -157,6 +157,12 @@
157
157
  },
158
158
  "platform_media_react19_support": {
159
159
  "type": "boolean"
160
+ },
161
+ "platform_trace_id_tooltip_attachment_failures": {
162
+ "type": "boolean"
163
+ },
164
+ "platform_media_a11y_suppression_fixes": {
165
+ "type": "boolean"
160
166
  }
161
167
  },
162
168
  "techstack": {