@atlaskit/media-card 74.3.2 → 74.4.1

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 (119) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cjs/card/card.js +27 -18
  3. package/dist/cjs/card/cardAnalytics.js +16 -5
  4. package/dist/cjs/card/cardImageView/cardOverlay/index.js +1 -3
  5. package/dist/cjs/card/cardImageView/cardOverlay/styles.js +6 -8
  6. package/dist/cjs/card/cardImageView/fileCardImageView.js +1 -3
  7. package/dist/cjs/card/cardImageView/styles.js +7 -9
  8. package/dist/cjs/card/cardLoader.js +12 -3
  9. package/dist/cjs/card/cardState.js +11 -13
  10. package/dist/cjs/card/media-card-analytics-error-boundary.js +129 -0
  11. package/dist/cjs/card/styles/index.js +1 -3
  12. package/dist/cjs/card/ui/blanket/styles.js +1 -3
  13. package/dist/cjs/card/ui/iconMessage/styles.js +1 -3
  14. package/dist/cjs/card/ui/loadingRateLimited/styles.js +1 -3
  15. package/dist/cjs/card/ui/newFileExperience/newFileExperienceWrapper.js +5 -1
  16. package/dist/cjs/card/ui/newFileExperience/styles.js +12 -4
  17. package/dist/cjs/card/ui/playButton/styles.js +2 -4
  18. package/dist/cjs/card/ui/styles.js +1 -3
  19. package/dist/cjs/card/ui/tickBox/styles.js +2 -4
  20. package/dist/cjs/card/ui/titleBox/failedTitleBox.js +1 -3
  21. package/dist/cjs/card/ui/titleBox/styles.js +19 -5
  22. package/dist/cjs/card/ui/titleBox/titleBoxComponents.js +5 -1
  23. package/dist/cjs/card/ui/unhandledErrorCard/index.js +112 -0
  24. package/dist/cjs/card/ui/unhandledErrorCard/types.js +5 -0
  25. package/dist/cjs/errors.js +12 -3
  26. package/dist/cjs/inline/loader.js +4 -4
  27. package/dist/cjs/inline/mediaInlineAnalyticsErrorBoundary.js +113 -0
  28. package/dist/cjs/utils/analytics.js +41 -10
  29. package/dist/cjs/utils/cardActions/styles.js +2 -4
  30. package/dist/cjs/utils/errorIcon/styles.js +1 -3
  31. package/dist/cjs/utils/lightCards/styles.js +4 -6
  32. package/dist/cjs/utils/ufoExperiences.js +1 -1
  33. package/dist/cjs/version.json +1 -1
  34. package/dist/es2019/card/card.js +29 -17
  35. package/dist/es2019/card/cardAnalytics.js +9 -5
  36. package/dist/es2019/card/cardImageView/cardOverlay/index.js +1 -2
  37. package/dist/es2019/card/cardImageView/cardOverlay/styles.js +20 -21
  38. package/dist/es2019/card/cardImageView/fileCardImageView.js +1 -2
  39. package/dist/es2019/card/cardImageView/styles.js +7 -8
  40. package/dist/es2019/card/cardLoader.js +12 -3
  41. package/dist/es2019/card/cardState.js +12 -7
  42. package/dist/es2019/card/media-card-analytics-error-boundary.js +90 -0
  43. package/dist/es2019/card/styles/index.js +1 -2
  44. package/dist/es2019/card/ui/blanket/styles.js +1 -2
  45. package/dist/es2019/card/ui/iconMessage/styles.js +1 -2
  46. package/dist/es2019/card/ui/loadingRateLimited/styles.js +1 -2
  47. package/dist/es2019/card/ui/newFileExperience/newFileExperienceWrapper.js +4 -1
  48. package/dist/es2019/card/ui/newFileExperience/styles.js +10 -3
  49. package/dist/es2019/card/ui/playButton/styles.js +2 -3
  50. package/dist/es2019/card/ui/styles.js +1 -2
  51. package/dist/es2019/card/ui/tickBox/styles.js +4 -5
  52. package/dist/es2019/card/ui/titleBox/failedTitleBox.js +1 -2
  53. package/dist/es2019/card/ui/titleBox/styles.js +20 -7
  54. package/dist/es2019/card/ui/titleBox/titleBoxComponents.js +4 -1
  55. package/dist/es2019/card/ui/unhandledErrorCard/index.js +79 -0
  56. package/dist/es2019/card/ui/unhandledErrorCard/types.js +1 -0
  57. package/dist/es2019/errors.js +13 -2
  58. package/dist/es2019/inline/loader.js +4 -4
  59. package/dist/es2019/inline/mediaInlineAnalyticsErrorBoundary.js +75 -0
  60. package/dist/es2019/utils/analytics.js +32 -9
  61. package/dist/es2019/utils/cardActions/styles.js +4 -5
  62. package/dist/es2019/utils/errorIcon/styles.js +1 -2
  63. package/dist/es2019/utils/lightCards/styles.js +4 -5
  64. package/dist/es2019/utils/ufoExperiences.js +1 -1
  65. package/dist/es2019/version.json +1 -1
  66. package/dist/esm/card/card.js +28 -19
  67. package/dist/esm/card/cardAnalytics.js +12 -4
  68. package/dist/esm/card/cardImageView/cardOverlay/index.js +1 -2
  69. package/dist/esm/card/cardImageView/cardOverlay/styles.js +6 -7
  70. package/dist/esm/card/cardImageView/fileCardImageView.js +1 -2
  71. package/dist/esm/card/cardImageView/styles.js +7 -8
  72. package/dist/esm/card/cardLoader.js +12 -3
  73. package/dist/esm/card/cardState.js +12 -11
  74. package/dist/esm/card/media-card-analytics-error-boundary.js +115 -0
  75. package/dist/esm/card/styles/index.js +1 -2
  76. package/dist/esm/card/ui/blanket/styles.js +1 -2
  77. package/dist/esm/card/ui/iconMessage/styles.js +1 -2
  78. package/dist/esm/card/ui/loadingRateLimited/styles.js +1 -2
  79. package/dist/esm/card/ui/newFileExperience/newFileExperienceWrapper.js +4 -1
  80. package/dist/esm/card/ui/newFileExperience/styles.js +10 -3
  81. package/dist/esm/card/ui/playButton/styles.js +2 -3
  82. package/dist/esm/card/ui/styles.js +1 -2
  83. package/dist/esm/card/ui/tickBox/styles.js +2 -3
  84. package/dist/esm/card/ui/titleBox/failedTitleBox.js +1 -2
  85. package/dist/esm/card/ui/titleBox/styles.js +19 -5
  86. package/dist/esm/card/ui/titleBox/titleBoxComponents.js +4 -1
  87. package/dist/esm/card/ui/unhandledErrorCard/index.js +93 -0
  88. package/dist/esm/card/ui/unhandledErrorCard/types.js +1 -0
  89. package/dist/esm/errors.js +12 -3
  90. package/dist/esm/inline/loader.js +5 -5
  91. package/dist/esm/inline/mediaInlineAnalyticsErrorBoundary.js +99 -0
  92. package/dist/esm/utils/analytics.js +34 -9
  93. package/dist/esm/utils/cardActions/styles.js +2 -3
  94. package/dist/esm/utils/errorIcon/styles.js +1 -2
  95. package/dist/esm/utils/lightCards/styles.js +4 -5
  96. package/dist/esm/utils/ufoExperiences.js +1 -1
  97. package/dist/esm/version.json +1 -1
  98. package/dist/types/card/card.d.ts +1 -1
  99. package/dist/types/card/cardAnalytics.d.ts +2 -1
  100. package/dist/types/card/cardState.d.ts +6 -1
  101. package/dist/types/card/getCardPreview/index.d.ts +1 -1
  102. package/dist/types/card/media-card-analytics-error-boundary.d.ts +14 -0
  103. package/dist/types/card/ui/newFileExperience/styles.d.ts +1 -1
  104. package/dist/types/card/ui/newFileExperience/types.d.ts +2 -0
  105. package/dist/types/card/ui/titleBox/styles.d.ts +1 -1
  106. package/dist/types/card/ui/titleBox/types.d.ts +2 -0
  107. package/dist/types/card/ui/unhandledErrorCard/index.d.ts +7 -0
  108. package/dist/types/card/ui/unhandledErrorCard/types.d.ts +6 -0
  109. package/dist/types/errors.d.ts +2 -2
  110. package/dist/types/inline/mediaInlineAnalyticsErrorBoundary.d.ts +11 -0
  111. package/dist/types/types.d.ts +3 -0
  112. package/dist/types/utils/analytics.d.ts +26 -6
  113. package/example-helpers/styles.ts +13 -0
  114. package/package.json +9 -8
  115. package/report.api.md +18 -2
  116. package/dist/cjs/utils/media-card-analytics-error-boundary.js +0 -59
  117. package/dist/es2019/utils/media-card-analytics-error-boundary.js +0 -19
  118. package/dist/esm/utils/media-card-analytics-error-boundary.js +0 -46
  119. package/dist/types/utils/media-card-analytics-error-boundary.d.ts +0 -10
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # @atlaskit/media-card
2
2
 
3
+ ## 74.4.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`6adc56f320d`](https://bitbucket.org/atlassian/atlassian-frontend/commits/6adc56f320d) - [MEX-2003] Fix dark mode regression in new card experience
8
+ - Updated dependencies
9
+
10
+ ## 74.4.0
11
+
12
+ ### Minor Changes
13
+
14
+ - [`81573c1dfa7`](https://bitbucket.org/atlassian/atlassian-frontend/commits/81573c1dfa7) - Media Card logs metadata trace Id
15
+ - [`0bccac57db6`](https://bitbucket.org/atlassian/atlassian-frontend/commits/0bccac57db6) - remove mediaUploadApiV2 Feature flag
16
+
17
+ ### Patch Changes
18
+
19
+ - [`5f36954436c`](https://bitbucket.org/atlassian/atlassian-frontend/commits/5f36954436c) - Ensure all secondary errors from backend responses are logged in media card
20
+ - [`2b5f5a740d3`](https://bitbucket.org/atlassian/atlassian-frontend/commits/2b5f5a740d3) - [ux] catch unexpected error in media card error boundary with a fallback error component and fire analytics event
21
+ - [`8b373447406`](https://bitbucket.org/atlassian/atlassian-frontend/commits/8b373447406) - Updated names for Media card examples and updated their references.
22
+ - [`f36a3d972cf`](https://bitbucket.org/atlassian/atlassian-frontend/commits/f36a3d972cf) - Updated Media-Card documentation with new tab structure and simpler usage example
23
+ - [`3d40d5e9b37`](https://bitbucket.org/atlassian/atlassian-frontend/commits/3d40d5e9b37) - Adopt updated version of getRandomHex function for generating traceId
24
+ - Updated dependencies
25
+
3
26
  ## 74.3.2
4
27
 
5
28
  ### Patch Changes
@@ -90,7 +90,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
90
90
  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; } }
91
91
 
92
92
  var packageName = "@atlaskit/media-card";
93
- var packageVersion = "74.3.2";
93
+ var packageVersion = "74.4.1";
94
94
 
95
95
  var CardBase = /*#__PURE__*/function (_Component) {
96
96
  (0, _inherits2.default)(CardBase, _Component);
@@ -123,7 +123,7 @@ var CardBase = /*#__PURE__*/function (_Component) {
123
123
  });
124
124
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "timeElapsedTillCommenced", performance.now());
125
125
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "traceContext", {
126
- traceId: (0, _mediaCommon.getRandomHex)(16)
126
+ traceId: (0, _mediaCommon.getRandomHex)(8)
127
127
  });
128
128
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getImageURLParams", function (_ref) {
129
129
  var collection = _ref.collectionName;
@@ -170,7 +170,7 @@ var CardBase = /*#__PURE__*/function (_Component) {
170
170
  mediaClient: mediaClient,
171
171
  id: id,
172
172
  dimensions: dimensions,
173
- onLocalPreviewError: _this.fireLocalPreviewErrorEvent,
173
+ onLocalPreviewError: _this.fireNonCriticalErrorEvent,
174
174
  filePreview: isBannedLocalPreview ? undefined : (0, _getCardPreview.getFilePreviewFromFileState)(fileState),
175
175
  isRemotePreviewReady: (0, _mediaClient2.isImageRepresentationReady)(fileState),
176
176
  imageUrlParams: _this.getImageURLParams(identifier),
@@ -193,7 +193,7 @@ var CardBase = /*#__PURE__*/function (_Component) {
193
193
  });
194
194
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "refetchSSRPreview", /*#__PURE__*/function () {
195
195
  var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(identifier) {
196
- var _this$props4, mediaClient, _this$props4$dimensio, dimensions, cardPreview;
196
+ var _this$props4, mediaClient, _this$props4$dimensio, dimensions, cardPreview, wrappedError;
197
197
 
198
198
  return _regenerator.default.wrap(function _callee$(_context) {
199
199
  while (1) {
@@ -211,14 +211,17 @@ var CardBase = /*#__PURE__*/function (_Component) {
211
211
  cardPreview: cardPreview
212
212
  });
213
213
 
214
- _context.next = 10;
214
+ _context.next = 12;
215
215
  break;
216
216
 
217
217
  case 8:
218
218
  _context.prev = 8;
219
219
  _context.t0 = _context["catch"](1);
220
+ wrappedError = (0, _errors.ensureMediaCardError)('remote-preview-fetch-ssr', _context.t0, true);
220
221
 
221
- case 10:
222
+ _this.fireNonCriticalErrorEvent(wrappedError);
223
+
224
+ case 12:
222
225
  case "end":
223
226
  return _context.stop();
224
227
  }
@@ -261,6 +264,7 @@ var CardBase = /*#__PURE__*/function (_Component) {
261
264
  // If it's any other error we set status 'error'
262
265
 
263
266
  if ((0, _errors.isLocalPreviewError)(wrappedError)) {
267
+ // This error should already been logged inside the getCardPreview. No need to log it here.
264
268
  _this.safeSetState({
265
269
  isBannedLocalPreview: true
266
270
  });
@@ -337,7 +341,7 @@ var CardBase = /*#__PURE__*/function (_Component) {
337
341
  if (isLocal) {
338
342
  updateState.isBannedLocalPreview = true;
339
343
 
340
- _this.fireLocalPreviewErrorEvent(error);
344
+ _this.fireNonCriticalErrorEvent(error);
341
345
  }
342
346
 
343
347
  var _this$props5 = _this.props,
@@ -395,17 +399,21 @@ var CardBase = /*#__PURE__*/function (_Component) {
395
399
  var createAnalyticsEvent = _this.props.createAnalyticsEvent;
396
400
  createAnalyticsEvent && (0, _cardAnalytics.fireScreenEvent)(createAnalyticsEvent, _this.fileAttributes);
397
401
  });
398
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fireLocalPreviewErrorEvent", function (error) {// TODO: track local preview success rate
399
- // https://product-fabric.atlassian.net/browse/MEX-774
402
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fireNonCriticalErrorEvent", function (error) {
403
+ var createAnalyticsEvent = _this.props.createAnalyticsEvent;
404
+ var fileState = _this.state.fileState;
405
+ createAnalyticsEvent && (0, _cardAnalytics.fireNonCriticalErrorEvent)(createAnalyticsEvent, _this.state.status, _this.fileAttributes, _this.ssrReliability, error, _this.traceContext, fileState === null || fileState === void 0 ? void 0 : fileState.metadataTraceContext);
400
406
  });
401
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "safeSetState", function (state) {
407
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "safeSetState", function (newState) {
402
408
  if (_this.hasBeenMounted) {
403
- // If it's setting the status, we need to use a state updater function,
404
- // which ensures that no non-final status overrides a final status.
405
- // If no status is set, we don't need a sate updater
406
- var updater = !!state.status ? (0, _cardState.createStateUpdater)(state) : state;
407
-
408
- _this.setState(updater);
409
+ /**
410
+ * createStateUpdater helper returns a callback to be passed to setState.
411
+ * It decides wether to update the 'status' depending on the current state vs the input state.
412
+ * From docs: "Both state and props received by the updater function are guaranteed to be up-to-date."
413
+ * If the input state brings an error and it won't be updating the state, the error will be logged as non-critical inside the helper.
414
+ * If the error persists int the state, it means it is a critical error and should be logged as a failed event for Card
415
+ */
416
+ _this.setState((0, _cardState.createStateUpdater)(newState, _this.fireNonCriticalErrorEvent));
409
417
  }
410
418
  });
411
419
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "unsubscribe", function () {
@@ -992,9 +1000,10 @@ var CardBase = /*#__PURE__*/function (_Component) {
992
1000
  value: function fireOperationalEvent() {
993
1001
  var _this$state7 = this.state,
994
1002
  status = _this$state7.status,
995
- error = _this$state7.error;
1003
+ error = _this$state7.error,
1004
+ fileState = _this$state7.fileState;
996
1005
  var createAnalyticsEvent = this.props.createAnalyticsEvent;
997
- createAnalyticsEvent && (0, _cardAnalytics.fireOperationalEvent)(createAnalyticsEvent, status, this.fileAttributes, this.getPerformanceAttributes(), this.ssrReliability, error, this.traceContext);
1006
+ createAnalyticsEvent && (0, _cardAnalytics.fireOperationalEvent)(createAnalyticsEvent, status, this.fileAttributes, this.getPerformanceAttributes(), this.ssrReliability, error, this.traceContext, fileState === null || fileState === void 0 ? void 0 : fileState.metadataTraceContext);
998
1007
  (0, _ufoExperiences.completeUfoExperience)(this.internalOccurrenceKey, status, this.fileAttributes, this.fileStateFlags, this.ssrReliability, error);
999
1008
  }
1000
1009
  }, {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.fireScreenEvent = exports.fireOperationalEvent = exports.fireCopiedEvent = exports.fireCommencedEvent = void 0;
6
+ exports.fireScreenEvent = exports.fireOperationalEvent = exports.fireNonCriticalErrorEvent = exports.fireCopiedEvent = exports.fireCommencedEvent = void 0;
7
7
 
8
8
  var _analytics = require("../utils/analytics");
9
9
 
@@ -12,6 +12,7 @@ var _errors = require("../errors");
12
12
  var fireOperationalEvent = function fireOperationalEvent(createAnalyticsEvent, status, fileAttributes, performanceAttributes, ssrReliability) {
13
13
  var error = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : new _errors.MediaCardError('missing-error-data');
14
14
  var traceContext = arguments.length > 6 ? arguments[6] : undefined;
15
+ var metadataTraceContext = arguments.length > 7 ? arguments[7] : undefined;
15
16
 
16
17
  var fireEvent = function fireEvent(payload) {
17
18
  return (0, _analytics.fireMediaCardEvent)(payload, createAnalyticsEvent);
@@ -19,15 +20,15 @@ var fireOperationalEvent = function fireOperationalEvent(createAnalyticsEvent, s
19
20
 
20
21
  switch (status) {
21
22
  case 'complete':
22
- fireEvent((0, _analytics.getRenderSucceededEventPayload)(fileAttributes, performanceAttributes, ssrReliability, traceContext));
23
+ fireEvent((0, _analytics.getRenderSucceededEventPayload)(fileAttributes, performanceAttributes, ssrReliability, traceContext, metadataTraceContext));
23
24
  break;
24
25
 
25
26
  case 'failed-processing':
26
- fireEvent((0, _analytics.getRenderFailedFileStatusPayload)(fileAttributes, performanceAttributes, ssrReliability, traceContext));
27
+ fireEvent((0, _analytics.getRenderFailedFileStatusPayload)(fileAttributes, performanceAttributes, ssrReliability, traceContext, metadataTraceContext));
27
28
  break;
28
29
 
29
30
  case 'error':
30
- fireEvent((0, _analytics.getRenderErrorEventPayload)(fileAttributes, performanceAttributes, error, ssrReliability, traceContext));
31
+ fireEvent((0, _analytics.getRenderErrorEventPayload)(fileAttributes, performanceAttributes, error, ssrReliability, traceContext, metadataTraceContext));
31
32
  break;
32
33
  }
33
34
  };
@@ -58,4 +59,14 @@ var fireScreenEvent = function fireScreenEvent(createAnalyticsEvent, fileAttribu
58
59
  (0, _analytics.fireMediaCardEvent)((0, _analytics.getRenderPreviewableCardPayload)(fileAttributes), createAnalyticsEvent);
59
60
  };
60
61
 
61
- exports.fireScreenEvent = fireScreenEvent;
62
+ exports.fireScreenEvent = fireScreenEvent;
63
+
64
+ var fireNonCriticalErrorEvent = function fireNonCriticalErrorEvent(createAnalyticsEvent, cardStatus, fileAttributes, ssrReliability) {
65
+ var error = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : new _errors.MediaCardError('missing-error-data');
66
+ var traceContext = arguments.length > 5 ? arguments[5] : undefined;
67
+ var metadataTraceContext = arguments.length > 6 ? arguments[6] : undefined;
68
+ var errorPayload = (0, _analytics.getErrorEventPayload)(cardStatus, fileAttributes, error, ssrReliability, traceContext, metadataTraceContext);
69
+ (0, _analytics.fireMediaCardEvent)(errorPayload, createAnalyticsEvent);
70
+ };
71
+
72
+ exports.fireNonCriticalErrorEvent = fireNonCriticalErrorEvent;
@@ -29,8 +29,6 @@ var _react2 = _interopRequireWildcard(require("react"));
29
29
 
30
30
  var _classnames = _interopRequireDefault(require("classnames"));
31
31
 
32
- var _tokens = require("@atlaskit/tokens");
33
-
34
32
  var _check = _interopRequireDefault(require("@atlaskit/icon/glyph/check"));
35
33
 
36
34
  var _mediaUi = require("@atlaskit/media-ui");
@@ -119,7 +117,7 @@ var CardOverlay = /*#__PURE__*/function (_Component) {
119
117
  selected = _this$props2.selected,
120
118
  actions = _this$props2.actions;
121
119
  var titleText = resolveTitleText(cardStatus, mediaName, error, selected);
122
- var menuTriggerColor = !persistent ? (0, _tokens.token)('color.icon.inverse', 'white') : undefined;
120
+ var menuTriggerColor = !persistent ? "var(--ds-icon-inverse, white)" : undefined;
123
121
  return (0, _react.jsx)(_cardOverlayComponents.Overlay, {
124
122
  hasError: !!error,
125
123
  noHover: noHover,
@@ -19,8 +19,6 @@ var _components = require("@atlaskit/theme/components");
19
19
 
20
20
  var colors = _interopRequireWildcard(require("@atlaskit/theme/colors"));
21
21
 
22
- var _tokens = require("@atlaskit/tokens");
23
-
24
22
  var _styles = require("../../styles");
25
23
 
26
24
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
@@ -29,7 +27,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
29
27
 
30
28
  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; }
31
29
 
32
- var tickBoxStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", "\n ", "\n background-color: ", ";\n position: absolute;\n top: 8px;\n right: 8px;\n border-radius: 20px;\n color: ", "; /* CLEANUP - TODO FIL-3884: Align color with new design */\n display: flex;\n opacity: 0;\n\n &.selected {\n opacity: 1;\n color: ", ";\n background-color: ", "; /* CLEANUP - TODO FIL-3884: Align with tickbox icons */\n }\n\n /* Enforce dimensions of \"tick\" icon */\n svg {\n position: absolute;\n width: 14px;\n }\n"])), (0, _mediaUi.size)(14), (0, _styles.transition)(), (0, _tokens.token)('elevation.surface.overlay', (0, _styles.rgba)('#ffffff', 0.5)), (0, _tokens.token)('color.icon.subtle', '#798599'), (0, _tokens.token)('color.icon.inverse', 'white'), (0, _tokens.token)('color.icon.selected', '#0052cc'));
30
+ var tickBoxStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", "\n ", "\n background-color: ", ";\n position: absolute;\n top: 8px;\n right: 8px;\n border-radius: 20px;\n color: ", "; /* CLEANUP - TODO FIL-3884: Align color with new design */\n display: flex;\n opacity: 0;\n\n &.selected {\n opacity: 1;\n color: ", ";\n background-color: ", "; /* CLEANUP - TODO FIL-3884: Align with tickbox icons */\n }\n\n /* Enforce dimensions of \"tick\" icon */\n svg {\n position: absolute;\n width: 14px;\n }\n"])), (0, _mediaUi.size)(14), (0, _styles.transition)(), "var(--ds-surface-overlay, ".concat((0, _styles.rgba)('#ffffff', 0.5), ")"), "var(--ds-icon-subtle, #798599)", "var(--ds-icon-inverse, white)", "var(--ds-icon-selected, #0052cc)");
33
31
  exports.tickBoxStyles = tickBoxStyles;
34
32
 
35
33
  var getOverlayStyles = function getOverlayStyles(_ref) {
@@ -42,7 +40,7 @@ var getOverlayStyles = function getOverlayStyles(_ref) {
42
40
  };
43
41
 
44
42
  var overlayStyles = function overlayStyles(props) {
45
- return (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n ", "\n ", " display: flex;\n justify-content: space-between;\n flex-direction: column;\n background: transparent;\n transition: 0.3s background ", ", 0.3s border-color;\n padding: 16px;\n\n ", "\n &:not(.persistent):hover, &.active {\n .top-row {\n .title {\n color: ", ";\n }\n }\n }\n\n &.noHover:hover {\n .top-row {\n .title {\n color: ", ";\n }\n }\n }\n\n .file-type-icon {\n display: block;\n }\n\n &:not(.persistent) {\n &:not(.error, .noHover):hover {\n background-color: ", ";\n }\n\n &.selectable {\n &.selected {\n background-color: ", ";\n\n &:hover {\n /* CLEANUP - TODO FIL-3884 add new overlay with rgba(colors.N900, 0.16) */\n background-color: ", ";\n }\n\n .title,\n .bottom-row,\n .file-size {\n color: ", ";\n }\n }\n }\n }\n\n &.persistent {\n &:not(.active) {\n overflow: hidden;\n }\n\n .top-row {\n .title {\n transition: opacity 0.3s;\n opacity: 0;\n color: ", ";\n visibility: hidden;\n }\n }\n\n .bottom-row {\n opacity: 0;\n transition: transform 0.2s, opacity 0.5s;\n /* This is the height of the overlay footer, needs to be present now since the parent uses flex and 100% doesn't look right anymore */\n transform: translateY(35px);\n\n .file-type-icon {\n display: none;\n }\n\n .file-size {\n color: ", ";\n display: none;\n }\n }\n\n &:hover,\n &.active {\n background-color: ", ";\n\n .title {\n opacity: 1;\n visibility: visible;\n }\n\n .file-type-icon,\n .file-size {\n display: block;\n }\n\n .bottom-row {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n /* Selectable */\n &.selectable {\n &:hover {\n .tickbox {\n opacity: 1;\n }\n }\n\n &.selected {\n .tickbox {\n background-color: ", " !important;\n color: ", ";\n }\n }\n }\n }\n\n &.error {\n .top-row {\n overflow: visible;\n }\n &:hover,\n &.active {\n .top-row {\n .title {\n color: ", ";\n }\n }\n }\n }\n"])), (0, _mediaUi.size)(), (0, _mediaUi.absolute)(), _mediaUi.borderRadius, _styles.easeOutCubic, getOverlayStyles(props), (0, _tokens.token)('color.text.information', colors.B400), (0, _tokens.token)('color.text', colors.N800), (0, _tokens.token)('color.background.neutral.hovered', (0, _styles.rgba)(colors.N900, 0.06)), (0, _tokens.token)('color.background.selected', colors.B200), (0, _tokens.token)('color.background.selected.hovered', (0, _styles.rgba)(colors.N900, 0.16)), (0, _tokens.token)('color.text', colors.N900), (0, _tokens.token)('color.text', 'white'), (0, _tokens.token)('color.text', 'white'), (0, _tokens.token)('color.interaction.hovered', (0, _styles.rgba)(colors.N900, 0.5)), (0, _tokens.token)('color.background.selected.bold', colors.B200), (0, _tokens.token)('color.icon.inverse', 'white'), (0, _tokens.token)('color.text', colors.N800));
43
+ return (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n ", "\n ", " display: flex;\n justify-content: space-between;\n flex-direction: column;\n background: transparent;\n transition: 0.3s background ", ", 0.3s border-color;\n padding: 16px;\n\n ", "\n &:not(.persistent):hover, &.active {\n .top-row {\n .title {\n color: ", ";\n }\n }\n }\n\n &.noHover:hover {\n .top-row {\n .title {\n color: ", ";\n }\n }\n }\n\n .file-type-icon {\n display: block;\n }\n\n &:not(.persistent) {\n &:not(.error, .noHover):hover {\n background-color: ", ";\n }\n\n &.selectable {\n &.selected {\n background-color: ", ";\n\n &:hover {\n /* CLEANUP - TODO FIL-3884 add new overlay with rgba(colors.N900, 0.16) */\n background-color: ", ";\n }\n\n .title,\n .bottom-row,\n .file-size {\n color: ", ";\n }\n }\n }\n }\n\n &.persistent {\n &:not(.active) {\n overflow: hidden;\n }\n\n .top-row {\n .title {\n transition: opacity 0.3s;\n opacity: 0;\n color: ", ";\n visibility: hidden;\n }\n }\n\n .bottom-row {\n opacity: 0;\n transition: transform 0.2s, opacity 0.5s;\n /* This is the height of the overlay footer, needs to be present now since the parent uses flex and 100% doesn't look right anymore */\n transform: translateY(35px);\n\n .file-type-icon {\n display: none;\n }\n\n .file-size {\n color: ", ";\n display: none;\n }\n }\n\n &:hover,\n &.active {\n background-color: ", ";\n\n .title {\n opacity: 1;\n visibility: visible;\n }\n\n .file-type-icon,\n .file-size {\n display: block;\n }\n\n .bottom-row {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n /* Selectable */\n &.selectable {\n &:hover {\n .tickbox {\n opacity: 1;\n }\n }\n\n &.selected {\n .tickbox {\n background-color: ", " !important;\n color: ", ";\n }\n }\n }\n }\n\n &.error {\n .top-row {\n overflow: visible;\n }\n &:hover,\n &.active {\n .top-row {\n .title {\n color: ", ";\n }\n }\n }\n }\n"])), (0, _mediaUi.size)(), (0, _mediaUi.absolute)(), _mediaUi.borderRadius, _styles.easeOutCubic, getOverlayStyles(props), "var(--ds-text-information, ".concat(colors.B400, ")"), "var(--ds-text, ".concat(colors.N800, ")"), "var(--ds-background-neutral-hovered, ".concat((0, _styles.rgba)(colors.N900, 0.06), ")"), "var(--ds-background-selected, ".concat(colors.B200, ")"), "var(--ds-background-selected-hovered, ".concat((0, _styles.rgba)(colors.N900, 0.16), ")"), "var(--ds-text, ".concat(colors.N900, ")"), "var(--ds-text, white)", "var(--ds-text, white)", "var(--ds-interaction-hovered, ".concat((0, _styles.rgba)(colors.N900, 0.5), ")"), "var(--ds-background-selected-bold, ".concat(colors.B200, ")"), "var(--ds-icon-inverse, white)", "var(--ds-text, ".concat(colors.N800, ")"));
46
44
  };
47
45
 
48
46
  exports.overlayStyles = overlayStyles;
@@ -56,22 +54,22 @@ var bottomRowStyles = (0, _react.css)(_templateObject6 || (_templateObject6 = (0
56
54
  exports.bottomRowStyles = bottomRowStyles;
57
55
  var rightColumnStyles = (0, _react.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)([""])));
58
56
  exports.rightColumnStyles = rightColumnStyles;
59
- var errorMessageStyles = (0, _react.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n ", " display: inline-block;\n vertical-align: middle;\n font-weight: bold;\n color: ", ";\n font-size: 12px;\n line-height: 15px;\n overflow: hidden;\n max-width: 'calc(100% - 24px)';\n text-overflow: ellipsis;\n white-space: nowrap;\n margin: auto 3px;\n"])), _styles.antialiased, (0, _tokens.token)('color.text.subtlest', colors.N70));
57
+ var errorMessageStyles = (0, _react.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n ", " display: inline-block;\n vertical-align: middle;\n font-weight: bold;\n color: ", ";\n font-size: 12px;\n line-height: 15px;\n overflow: hidden;\n max-width: 'calc(100% - 24px)';\n text-overflow: ellipsis;\n white-space: nowrap;\n margin: auto 3px;\n"])), _styles.antialiased, "var(--ds-text-subtlest, ".concat(colors.N70, ")"));
60
58
  exports.errorMessageStyles = errorMessageStyles;
61
59
  var altWrapperStyles = (0, _react.css)(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n font-weight: normal;\n"])), errorMessageStyles);
62
60
  exports.altWrapperStyles = altWrapperStyles;
63
61
 
64
62
  var titleWrapperStyles = function titleWrapperStyles(theme) {
65
63
  return (0, _react.css)(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["\n box-sizing: border-box;\n word-wrap: break-word;\n color: ", ";\n font-size: 12px;\n line-height: 18px;\n"])), (0, _components.themed)({
66
- light: (0, _tokens.token)('color.text', colors.N800),
67
- dark: (0, _tokens.token)('color.text', colors.DN900)
64
+ light: "var(--ds-text, ".concat(colors.N800, ")"),
65
+ dark: "var(--ds-text, ".concat(colors.DN900, ")")
68
66
  })({
69
67
  theme: theme
70
68
  }));
71
69
  };
72
70
 
73
71
  exports.titleWrapperStyles = titleWrapperStyles;
74
- var subtitleStyles = (0, _react.css)(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["\n ", " font-size: 12px;\n color: ", ";\n"])), (0, _mediaUi.ellipsis)('100px'), (0, _tokens.token)('color.text.subtlest', '#5e6c84'));
72
+ var subtitleStyles = (0, _react.css)(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["\n ", " font-size: 12px;\n color: ", ";\n"])), (0, _mediaUi.ellipsis)('100px'), "var(--ds-text-subtlest, #5e6c84)");
75
73
  exports.subtitleStyles = subtitleStyles;
76
74
  var metadataStyles = (0, _react.css)(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n align-items: center;\n"])));
77
75
  exports.metadataStyles = metadataStyles;
@@ -27,8 +27,6 @@ var _react = require("@emotion/react");
27
27
 
28
28
  var _react2 = _interopRequireWildcard(require("react"));
29
29
 
30
- var _tokens = require("@atlaskit/tokens");
31
-
32
30
  var _mediaUi = require("@atlaskit/media-ui");
33
31
 
34
32
  var _vidPlay = _interopRequireDefault(require("@atlaskit/icon/glyph/vid-play"));
@@ -254,7 +252,7 @@ var FileCardImageView = /*#__PURE__*/function (_Component) {
254
252
  css: _styles.cardActionsWrapperStyles
255
253
  }, actions ? (0, _react.jsx)(_cardActions.default, {
256
254
  actions: actions,
257
- triggerColor: (0, _tokens.token)('color.icon.inverse', 'white')
255
+ triggerColor: "var(--ds-icon-inverse, white)"
258
256
  }) : null))));
259
257
  });
260
258
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderSuccessCardContents", function () {
@@ -11,8 +11,6 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
11
11
 
12
12
  var _react = require("@emotion/react");
13
13
 
14
- var _tokens = require("@atlaskit/tokens");
15
-
16
14
  var _mediaUi = require("@atlaskit/media-ui");
17
15
 
18
16
  var _components = require("@atlaskit/theme/components");
@@ -33,8 +31,8 @@ var getShadowAttribute = function getShadowAttribute(props) {
33
31
  var getBackgroundColor = function getBackgroundColor(props) {
34
32
  var mediaType = props.mediaType;
35
33
  return "background: ".concat(mediaType === 'image' ? 'transparent' : (0, _components.themed)({
36
- light: (0, _tokens.token)('color.background.neutral', _colors.N20),
37
- dark: (0, _tokens.token)('color.background.neutral', _colors.DN50)
34
+ light: "var(--ds-background-neutral, ".concat(_colors.N20, ")"),
35
+ dark: "var(--ds-background-neutral, ".concat(_colors.DN50, ")")
38
36
  })(props), ";");
39
37
  };
40
38
 
@@ -43,18 +41,18 @@ var wrapperStyles = function wrapperStyles(props) {
43
41
  };
44
42
 
45
43
  exports.wrapperStyles = wrapperStyles;
46
- var playIconWrapperStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ", ";\n\n /* we want to override default icon size and hover state */\n &:hover > * {\n width: 64px;\n height: 64px;\n }\n"])), (0, _tokens.token)('color.icon.inverse', 'white'));
44
+ var playIconWrapperStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ", ";\n\n /* we want to override default icon size and hover state */\n &:hover > * {\n width: 64px;\n height: 64px;\n }\n"])), "var(--ds-icon-inverse, white)");
47
45
  exports.playIconWrapperStyles = playIconWrapperStyles;
48
- var playIconBackgroundStyles = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n background: ", ";\n border-radius: 100%;\n padding: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n transition-property: width, height;\n transition-duration: 0.1s;\n width: 56px;\n height: 56px;\n"])), (0, _tokens.token)('color.background.neutral.bold', 'rgba(23, 43, 77, 0.7)'));
46
+ var playIconBackgroundStyles = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n background: ", ";\n border-radius: 100%;\n padding: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n transition-property: width, height;\n transition-duration: 0.1s;\n width: 56px;\n height: 56px;\n"])), "var(--ds-background-neutral-bold, rgba(23, 43, 77, 0.7))");
49
47
  exports.playIconBackgroundStyles = playIconBackgroundStyles;
50
48
  var bodyHeight = 26;
51
49
  var progressBarWrapperStyles = (0, _react.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n height: 100%;\n width: 100%;\n"])));
52
50
  exports.progressBarWrapperStyles = progressBarWrapperStyles;
53
- var overlayStyles = (0, _react.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n ", "\n border-radius: inherit;\n background-color: ", ";\n"])), (0, _mediaUi.absolute)(), (0, _mediaUi.size)(), (0, _tokens.token)('color.blanket', 'rgba(9, 30, 66, 0.5)'));
51
+ var overlayStyles = (0, _react.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n ", "\n border-radius: inherit;\n background-color: ", ";\n"])), (0, _mediaUi.absolute)(), (0, _mediaUi.size)(), "var(--ds-blanket, rgba(9, 30, 66, 0.5))");
54
52
  exports.overlayStyles = overlayStyles;
55
- var titleStyles = (0, _react.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n ", " width: 100%;\n padding: 8px;\n color: ", ";\n font-size: 12px;\n line-height: 18px;\n word-wrap: break-word;\n"])), (0, _mediaUi.absolute)(), (0, _tokens.token)('color.text.inverse', _colors.N0));
53
+ var titleStyles = (0, _react.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n ", " width: 100%;\n padding: 8px;\n color: ", ";\n font-size: 12px;\n line-height: 18px;\n word-wrap: break-word;\n"])), (0, _mediaUi.absolute)(), "var(--ds-text-inverse, ".concat(_colors.N0, ")"));
56
54
  exports.titleStyles = titleStyles;
57
- var bodyStyles = (0, _react.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n position: absolute;\n bottom: 0;\n width: 100%;\n padding: 8px;\n color: ", ";\n"])), (0, _tokens.token)('color.text.inverse', _colors.N0));
55
+ var bodyStyles = (0, _react.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n position: absolute;\n bottom: 0;\n width: 100%;\n padding: 8px;\n color: ", ";\n"])), "var(--ds-text-inverse, ".concat(_colors.N0, ")"));
58
56
  /* eslint-enable @atlaskit/design-system/ensure-design-token-usage */
59
57
 
60
58
  exports.bodyStyles = bodyStyles;
@@ -45,7 +45,7 @@ var MediaCard = (0, _reactLoadable.default)({
45
45
  var MediaCardErrorBoundary = (0, _reactLoadable.default)({
46
46
  loader: function loader() {
47
47
  return Promise.resolve().then(function () {
48
- return _interopRequireWildcard(require('../utils/media-card-analytics-error-boundary'));
48
+ return _interopRequireWildcard(require('./media-card-analytics-error-boundary'));
49
49
  }).then(function (mod) {
50
50
  return mod.default;
51
51
  });
@@ -72,14 +72,23 @@ var MediaCardWithMediaClient = (0, _reactLoadable.default)({
72
72
 
73
73
  var CardWithMediaClient = function CardWithMediaClient(props) {
74
74
  var withMediaClient = props.withMediaClient,
75
- featureFlags = props.featureFlags;
75
+ dimensions = props.dimensions,
76
+ featureFlags = props.featureFlags,
77
+ onClick = props.onClick;
76
78
  var memoizedFeatureFlags = (0, _mediaCommon.useMemoizeFeatureFlags)(featureFlags);
77
79
 
78
80
  var Card = _react.default.useMemo(function () {
79
81
  return withMediaClient(MediaCard, memoizedFeatureFlags);
80
82
  }, [withMediaClient, memoizedFeatureFlags]);
81
83
 
82
- return /*#__PURE__*/_react.default.createElement(MediaCardErrorBoundary, null, /*#__PURE__*/_react.default.createElement(Card, props));
84
+ return (
85
+ /*#__PURE__*/
86
+ // onClick is passed into MediaCardErrorBoundary so MediaGroup items can get the toolbar menu in Editor
87
+ _react.default.createElement(MediaCardErrorBoundary, {
88
+ dimensions: dimensions,
89
+ onClick: onClick
90
+ }, /*#__PURE__*/_react.default.createElement(Card, props))
91
+ );
83
92
  };
84
93
 
85
94
  var CardLoader = function CardLoader(props) {
@@ -1,14 +1,10 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.getCardStateFromFileState = exports.createStateUpdater = void 0;
9
7
 
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
8
  var _mediaClient = require("@atlaskit/media-client");
13
9
 
14
10
  var _errors = require("../errors");
@@ -17,19 +13,21 @@ var _getCardStatus = require("./getCardStatus");
17
13
 
18
14
  var _getCardPreview = require("./getCardPreview");
19
15
 
20
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
-
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
-
24
- var createStateUpdater = function createStateUpdater(newState) {
16
+ /**
17
+ * From docs: "Both state and props received by the updater function are guaranteed to be up-to-date.
18
+ * The output of the updater is shallowly merged with state."
19
+ */
20
+ var createStateUpdater = function createStateUpdater(newState, fireErrorEvent) {
25
21
  return function (prevState) {
26
- // Only override if previous status is non-final
27
- // or new status is 'complete'
28
- if ((0, _getCardStatus.isFinalCardStatus)(prevState.status) && newState.status !== 'complete') {
22
+ // Only override if previous status is non-final or new status is 'complete'
23
+ if (!!newState.status && (0, _getCardStatus.isFinalCardStatus)(prevState.status) && newState.status !== 'complete') {
24
+ // Log the error if the new state is not going to store it.
25
+ // i.e. this is a non critical error
26
+ !!newState.error && fireErrorEvent(newState.error);
29
27
  return prevState;
30
28
  }
31
29
 
32
- return _objectSpread(_objectSpread({}, prevState), newState);
30
+ return newState;
33
31
  };
34
32
  };
35
33
 
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _react = _interopRequireDefault(require("react"));
25
+
26
+ var _mediaCommon = require("@atlaskit/media-common");
27
+
28
+ var _unhandledErrorCard = require("./ui/unhandledErrorCard");
29
+
30
+ var _analyticsNext = require("@atlaskit/analytics-next");
31
+
32
+ var _analytics = require("../utils/analytics");
33
+
34
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
35
+
36
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
37
+
38
+ 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); }; }
39
+
40
+ 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; } }
41
+
42
+ var WrappedMediaCardAnalyticsErrorBoundary = /*#__PURE__*/function (_React$Component) {
43
+ (0, _inherits2.default)(WrappedMediaCardAnalyticsErrorBoundary, _React$Component);
44
+
45
+ var _super = _createSuper(WrappedMediaCardAnalyticsErrorBoundary);
46
+
47
+ function WrappedMediaCardAnalyticsErrorBoundary(props) {
48
+ var _this;
49
+
50
+ (0, _classCallCheck2.default)(this, WrappedMediaCardAnalyticsErrorBoundary);
51
+ _this = _super.call(this, props);
52
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fireOperationalEvent", function (error, info) {
53
+ var _window, _window$navigator;
54
+
55
+ var _this$props = _this.props,
56
+ _this$props$data = _this$props.data,
57
+ data = _this$props$data === void 0 ? {} : _this$props$data,
58
+ createAnalyticsEvent = _this$props.createAnalyticsEvent;
59
+ var payload = {
60
+ eventType: 'operational',
61
+ action: 'failed',
62
+ actionSubject: 'mediaCardRender',
63
+ attributes: _objectSpread({
64
+ browserInfo: (_window = window) !== null && _window !== void 0 && (_window$navigator = _window.navigator) !== null && _window$navigator !== void 0 && _window$navigator.userAgent ? window.navigator.userAgent : 'unknown',
65
+ error: error,
66
+ info: info,
67
+ failReason: 'unexpected-error'
68
+ }, data)
69
+ };
70
+ (0, _analytics.fireMediaCardEvent)(payload, createAnalyticsEvent);
71
+ });
72
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleOnClick", function (event) {
73
+ try {
74
+ var _this$props$onClick, _this$props2;
75
+
76
+ (_this$props$onClick = (_this$props2 = _this.props).onClick) === null || _this$props$onClick === void 0 ? void 0 : _this$props$onClick.call(_this$props2, {
77
+ event: event
78
+ });
79
+ } catch (e) {}
80
+ });
81
+ _this.state = {
82
+ hasError: false
83
+ };
84
+ return _this;
85
+ }
86
+
87
+ (0, _createClass2.default)(WrappedMediaCardAnalyticsErrorBoundary, [{
88
+ key: "componentDidCatch",
89
+ value: function componentDidCatch(error, info) {
90
+ try {
91
+ this.fireOperationalEvent(error, info);
92
+ } catch (e) {}
93
+
94
+ this.setState({
95
+ hasError: true
96
+ });
97
+ }
98
+ }, {
99
+ key: "render",
100
+ value: function render() {
101
+ var hasError = this.state.hasError;
102
+ var _this$props3 = this.props,
103
+ dimensions = _this$props3.dimensions,
104
+ children = _this$props3.children;
105
+
106
+ if (hasError) {
107
+ return /*#__PURE__*/_react.default.createElement(_unhandledErrorCard.UnhandledErrorCard, {
108
+ dimensions: dimensions,
109
+ onClick: this.handleOnClick
110
+ });
111
+ }
112
+
113
+ return children;
114
+ }
115
+ }]);
116
+ return WrappedMediaCardAnalyticsErrorBoundary;
117
+ }(_react.default.Component);
118
+
119
+ (0, _defineProperty2.default)(WrappedMediaCardAnalyticsErrorBoundary, "displayName", 'MediaCardAnalyticsErrorBoundary');
120
+ var packageName = "@atlaskit/media-card";
121
+ var packageVersion = "74.4.1";
122
+ var MediaCardAnalyticsErrorBoundary = (0, _mediaCommon.withMediaAnalyticsContext)({
123
+ packageVersion: packageVersion,
124
+ packageName: packageName,
125
+ componentName: 'mediaCard',
126
+ component: 'mediaCard'
127
+ })((0, _analyticsNext.withAnalyticsEvents)()(WrappedMediaCardAnalyticsErrorBoundary));
128
+ var _default = MediaCardAnalyticsErrorBoundary;
129
+ exports.default = _default;
@@ -114,8 +114,6 @@ var _constants = require("@atlaskit/theme/constants");
114
114
 
115
115
  var _mediaUi = require("@atlaskit/media-ui");
116
116
 
117
- var _tokens = require("@atlaskit/tokens");
118
-
119
117
  var _config = require("./config");
120
118
 
121
119
  var _mixins = require("./mixins");
@@ -131,7 +129,7 @@ var rootStyles = function rootStyles() {
131
129
  };
132
130
 
133
131
  exports.rootStyles = rootStyles;
134
- var cardShadow = "\n box-shadow: ".concat((0, _tokens.token)('elevation.shadow.raised', '0 1px 1px rgba(9, 30, 66, 0.2), 0 0 1px 0 rgba(9, 30, 66, 0.24)'), ";\n");
132
+ var cardShadow = "\n box-shadow: ".concat("var(--ds-shadow-raised, 0 1px 1px rgba(9, 30, 66, 0.2), 0 0 1px 0 rgba(9, 30, 66, 0.24))", ";\n");
135
133
  exports.cardShadow = cardShadow;
136
134
 
137
135
  var fadeinImageStyles = function fadeinImageStyles() {
@@ -9,8 +9,6 @@ exports.fixedBlanketStyles = exports.blanketStyles = exports.blanketClassName =
9
9
 
10
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
11
 
12
- var _tokens = require("@atlaskit/tokens");
13
-
14
12
  var _react = require("@emotion/react");
15
13
 
16
14
  var _styles = require("../../styles");
@@ -21,7 +19,7 @@ var _templateObject;
21
19
 
22
20
  var blanketClassName = 'media-card-blanket';
23
21
  exports.blanketClassName = blanketClassName;
24
- var fixedBlanketStyles = "background-color: ".concat((0, _tokens.token)('color.blanket', _colors.N90A), ";");
22
+ var fixedBlanketStyles = "background-color: ".concat("var(--ds-blanket, ".concat(_colors.N90A, ")"), ";");
25
23
  exports.fixedBlanketStyles = fixedBlanketStyles;
26
24
 
27
25
  var blanketStyles = function blanketStyles(isFixed) {
@@ -9,8 +9,6 @@ exports.iconMessageWrapperStyles = void 0;
9
9
 
10
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
11
 
12
- var _tokens = require("@atlaskit/tokens");
13
-
14
12
  var _react = require("@emotion/react");
15
13
 
16
14
  var _colors = require("@atlaskit/theme/colors");
@@ -23,7 +21,7 @@ var animatedStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0,
23
21
  var getStylesBasedOnProps = function getStylesBasedOnProps(_ref) {
24
22
  var animated = _ref.animated,
25
23
  reducedFont = _ref.reducedFont;
26
- return (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n overflow: hidden;\n opacity: 1;\n font-weight: 450;\n ", "\n color: ", ";\n text-align: center;\n ", "\n margin-bottom: -1em;\n padding: 3px 10px;\n"])), reducedFont ? 'font-size: 0.7em;' : '', (0, _tokens.token)('color.text.subtlest', _colors.N300), animated ? animatedStyles : '');
24
+ return (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n overflow: hidden;\n opacity: 1;\n font-weight: 450;\n ", "\n color: ", ";\n text-align: center;\n ", "\n margin-bottom: -1em;\n padding: 3px 10px;\n"])), reducedFont ? 'font-size: 0.7em;' : '', "var(--ds-text-subtlest, ".concat(_colors.N300, ")"), animated ? animatedStyles : '');
27
25
  };
28
26
 
29
27
  var iconMessageWrapperStyles = function iconMessageWrapperStyles(props) {