@atlaskit/media-card 74.5.1 → 74.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/cjs/card/actions.js +0 -5
  3. package/dist/cjs/card/card.js +263 -322
  4. package/dist/cjs/card/cardAnalytics.js +0 -18
  5. package/dist/cjs/card/cardImageView/cardImageViewWrapper.js +7 -16
  6. package/dist/cjs/card/cardImageView/cardOverlay/cardOverlayComponents.js +3 -15
  7. package/dist/cjs/card/cardImageView/cardOverlay/index.js +20 -52
  8. package/dist/cjs/card/cardImageView/cardOverlay/styles.js +1 -19
  9. package/dist/cjs/card/cardImageView/cardViewWrapper.js +7 -10
  10. package/dist/cjs/card/cardImageView/fileCardImageView.js +66 -111
  11. package/dist/cjs/card/cardImageView/index.js +0 -1
  12. package/dist/cjs/card/cardImageView/styles.js +0 -14
  13. package/dist/cjs/card/cardLoader.js +3 -20
  14. package/dist/cjs/card/cardState.js +0 -9
  15. package/dist/cjs/card/cardView.js +105 -198
  16. package/dist/cjs/card/getCardPreview/cache.js +0 -12
  17. package/dist/cjs/card/getCardPreview/filePreviewStatus.js +8 -16
  18. package/dist/cjs/card/getCardPreview/helpers.js +0 -39
  19. package/dist/cjs/card/getCardPreview/imageRefetchingAnalytics.js +0 -8
  20. package/dist/cjs/card/getCardPreview/index.js +19 -86
  21. package/dist/cjs/card/getCardStatus.js +5 -24
  22. package/dist/cjs/card/index.js +0 -2
  23. package/dist/cjs/card/inlinePlayer.js +19 -102
  24. package/dist/cjs/card/inlinePlayerLazy.js +0 -11
  25. package/dist/cjs/card/inlinePlayerWrapper.js +5 -8
  26. package/dist/cjs/card/media-card-analytics-error-boundary.js +6 -34
  27. package/dist/cjs/card/styles/animations.js +0 -5
  28. package/dist/cjs/card/styles/getSelectedBorderStyle.js +0 -4
  29. package/dist/cjs/card/styles/index.js +0 -14
  30. package/dist/cjs/card/styles/mixins.js +0 -11
  31. package/dist/cjs/card/styles/styles.js +4 -20
  32. package/dist/cjs/card/ui/actionsBar/actionsBar.js +2 -20
  33. package/dist/cjs/card/ui/actionsBar/actionsBarWrapper.js +1 -4
  34. package/dist/cjs/card/ui/actionsBar/styles.js +0 -8
  35. package/dist/cjs/card/ui/blanket/blanket.js +1 -4
  36. package/dist/cjs/card/ui/blanket/styles.js +0 -9
  37. package/dist/cjs/card/ui/common.js +0 -8
  38. package/dist/cjs/card/ui/iconMessage/iconMessageWrapper.js +2 -5
  39. package/dist/cjs/card/ui/iconMessage/index.js +4 -22
  40. package/dist/cjs/card/ui/iconMessage/styles.js +1 -10
  41. package/dist/cjs/card/ui/iconWrapper/iconWrapper.js +2 -5
  42. package/dist/cjs/card/ui/iconWrapper/styles.js +3 -11
  43. package/dist/cjs/card/ui/imageRenderer/imageRenderer.js +8 -21
  44. package/dist/cjs/card/ui/loadingRateLimited/styles.js +1 -10
  45. package/dist/cjs/card/ui/newFileExperience/newFileExperienceWrapper.js +14 -19
  46. package/dist/cjs/card/ui/newFileExperience/styles.js +10 -26
  47. package/dist/cjs/card/ui/playButton/playButton.js +0 -7
  48. package/dist/cjs/card/ui/playButton/playButtonBackground.js +1 -4
  49. package/dist/cjs/card/ui/playButton/playButtonWrapper.js +1 -4
  50. package/dist/cjs/card/ui/playButton/styles.js +0 -6
  51. package/dist/cjs/card/ui/progressBar/progressBar.js +6 -14
  52. package/dist/cjs/card/ui/progressBar/styledBar.js +4 -7
  53. package/dist/cjs/card/ui/progressBar/styles.js +4 -18
  54. package/dist/cjs/card/ui/styles.js +12 -46
  55. package/dist/cjs/card/ui/tickBox/styles.js +0 -11
  56. package/dist/cjs/card/ui/tickBox/tickBox.js +0 -6
  57. package/dist/cjs/card/ui/tickBox/tickBoxWrapper.js +1 -4
  58. package/dist/cjs/card/ui/titleBox/failedTitleBox.js +2 -11
  59. package/dist/cjs/card/ui/titleBox/styles.js +4 -19
  60. package/dist/cjs/card/ui/titleBox/titleBox.js +9 -21
  61. package/dist/cjs/card/ui/titleBox/titleBoxComponents.js +2 -14
  62. package/dist/cjs/card/ui/unhandledErrorCard/index.js +6 -36
  63. package/dist/cjs/classnames.js +0 -1
  64. package/dist/cjs/errors.js +7 -66
  65. package/dist/cjs/index.js +0 -8
  66. package/dist/cjs/inline/index.js +0 -2
  67. package/dist/cjs/inline/loader.js +2 -43
  68. package/dist/cjs/inline/mediaInlineAnalyticsErrorBoundary.js +4 -29
  69. package/dist/cjs/inline/mediaInlineCard.js +21 -57
  70. package/dist/cjs/types.js +0 -2
  71. package/dist/cjs/utils/analytics.js +0 -49
  72. package/dist/cjs/utils/breakpoint.js +0 -10
  73. package/dist/cjs/utils/cardActions/cardActionButton.js +1 -4
  74. package/dist/cjs/utils/cardActions/cardActionIconButton.js +7 -29
  75. package/dist/cjs/utils/cardActions/cardActionsDropdownMenu.js +6 -35
  76. package/dist/cjs/utils/cardActions/cardActionsView.js +7 -34
  77. package/dist/cjs/utils/cardActions/index.js +0 -4
  78. package/dist/cjs/utils/cardActions/styles.js +0 -13
  79. package/dist/cjs/utils/cardDimensions.js +5 -22
  80. package/dist/cjs/utils/containsPixelUnit.js +0 -2
  81. package/dist/cjs/utils/dimensionComparer.js +0 -8
  82. package/dist/cjs/utils/document.js +0 -4
  83. package/dist/cjs/utils/errorIcon/index.js +0 -18
  84. package/dist/cjs/utils/errorIcon/styles.js +0 -5
  85. package/dist/cjs/utils/fileIcon/index.js +3 -21
  86. package/dist/cjs/utils/fileIcon/styles.js +0 -6
  87. package/dist/cjs/utils/generateUniqueId.js +0 -2
  88. package/dist/cjs/utils/getCSSUnitValue.js +0 -1
  89. package/dist/cjs/utils/getDataURIDimension.js +0 -13
  90. package/dist/cjs/utils/getElementDimension.js +0 -2
  91. package/dist/cjs/utils/getErrorMessage.js +0 -6
  92. package/dist/cjs/utils/getMediaCardCursor.js +1 -6
  93. package/dist/cjs/utils/globalScope/getSSRData.js +0 -5
  94. package/dist/cjs/utils/globalScope/globalScope.js +8 -25
  95. package/dist/cjs/utils/globalScope/index.js +0 -2
  96. package/dist/cjs/utils/index.js +0 -12
  97. package/dist/cjs/utils/isRetina.js +0 -1
  98. package/dist/cjs/utils/isValidPercentageUnit.js +0 -2
  99. package/dist/cjs/utils/lightCards/cardError.js +0 -21
  100. package/dist/cjs/utils/lightCards/cardLoading.js +3 -27
  101. package/dist/cjs/utils/lightCards/getDimensionsWithDefault.js +0 -2
  102. package/dist/cjs/utils/lightCards/lightCardWrappers.js +1 -9
  103. package/dist/cjs/utils/lightCards/styles.js +1 -13
  104. package/dist/cjs/utils/metadata.js +0 -7
  105. package/dist/cjs/utils/objectURLCache.js +0 -22
  106. package/dist/cjs/utils/preventClickThrough.js +0 -5
  107. package/dist/cjs/utils/printScript.js +0 -10
  108. package/dist/cjs/utils/progressBar/index.js +0 -17
  109. package/dist/cjs/utils/progressBar/styles.js +0 -6
  110. package/dist/cjs/utils/resizeModeToMediaImageProps.js +0 -1
  111. package/dist/cjs/utils/shouldDisplayImageThumbnail.js +0 -5
  112. package/dist/cjs/utils/ufoExperiences.js +1 -21
  113. package/dist/cjs/utils/videoSnapshot.js +2 -11
  114. package/dist/cjs/utils/viewportDetector.js +5 -24
  115. package/dist/cjs/version.json +1 -1
  116. package/dist/es2019/card/actions.js +2 -1
  117. package/dist/es2019/card/card.js +115 -156
  118. package/dist/es2019/card/cardAnalytics.js +0 -5
  119. package/dist/es2019/card/cardImageView/cardOverlay/index.js +2 -16
  120. package/dist/es2019/card/cardImageView/cardOverlay/styles.js +1 -2
  121. package/dist/es2019/card/cardImageView/fileCardImageView.js +3 -36
  122. package/dist/es2019/card/cardImageView/styles.js +0 -3
  123. package/dist/es2019/card/cardLoader.js +3 -14
  124. package/dist/es2019/card/cardState.js +1 -2
  125. package/dist/es2019/card/cardView.js +24 -68
  126. package/dist/es2019/card/getCardPreview/cache.js +0 -4
  127. package/dist/es2019/card/getCardPreview/filePreviewStatus.js +8 -5
  128. package/dist/es2019/card/getCardPreview/helpers.js +0 -9
  129. package/dist/es2019/card/getCardPreview/imageRefetchingAnalytics.js +0 -3
  130. package/dist/es2019/card/getCardPreview/index.js +20 -32
  131. package/dist/es2019/card/getCardStatus.js +2 -15
  132. package/dist/es2019/card/inlinePlayer.js +2 -35
  133. package/dist/es2019/card/inlinePlayerLazy.js +1 -2
  134. package/dist/es2019/card/media-card-analytics-error-boundary.js +1 -15
  135. package/dist/es2019/card/styles/getSelectedBorderStyle.js +1 -1
  136. package/dist/es2019/card/styles/styles.js +0 -3
  137. package/dist/es2019/card/ui/actionsBar/actionsBar.js +0 -3
  138. package/dist/es2019/card/ui/common.js +0 -2
  139. package/dist/es2019/card/ui/iconMessage/styles.js +0 -2
  140. package/dist/es2019/card/ui/iconWrapper/styles.js +2 -2
  141. package/dist/es2019/card/ui/imageRenderer/imageRenderer.js +0 -3
  142. package/dist/es2019/card/ui/progressBar/styles.js +1 -3
  143. package/dist/es2019/card/ui/styles.js +3 -4
  144. package/dist/es2019/card/ui/titleBox/styles.js +2 -3
  145. package/dist/es2019/card/ui/unhandledErrorCard/index.js +0 -8
  146. package/dist/es2019/errors.js +8 -17
  147. package/dist/es2019/index.js +1 -0
  148. package/dist/es2019/inline/loader.js +1 -18
  149. package/dist/es2019/inline/mediaInlineAnalyticsErrorBoundary.js +1 -12
  150. package/dist/es2019/inline/mediaInlineCard.js +0 -15
  151. package/dist/es2019/types.js +1 -1
  152. package/dist/es2019/utils/analytics.js +0 -3
  153. package/dist/es2019/utils/breakpoint.js +0 -4
  154. package/dist/es2019/utils/cardActions/cardActionIconButton.js +3 -5
  155. package/dist/es2019/utils/cardActions/cardActionsDropdownMenu.js +0 -5
  156. package/dist/es2019/utils/cardActions/cardActionsView.js +0 -10
  157. package/dist/es2019/utils/cardActions/styles.js +0 -3
  158. package/dist/es2019/utils/cardDimensions.js +7 -14
  159. package/dist/es2019/utils/dimensionComparer.js +0 -3
  160. package/dist/es2019/utils/document.js +0 -2
  161. package/dist/es2019/utils/errorIcon/index.js +0 -3
  162. package/dist/es2019/utils/fileIcon/index.js +0 -1
  163. package/dist/es2019/utils/getDataURIDimension.js +0 -4
  164. package/dist/es2019/utils/getMediaCardCursor.js +1 -4
  165. package/dist/es2019/utils/globalScope/getSSRData.js +0 -2
  166. package/dist/es2019/utils/globalScope/globalScope.js +3 -10
  167. package/dist/es2019/utils/lightCards/cardError.js +0 -3
  168. package/dist/es2019/utils/lightCards/cardLoading.js +0 -3
  169. package/dist/es2019/utils/lightCards/lightCardWrappers.js +0 -1
  170. package/dist/es2019/utils/metadata.js +0 -5
  171. package/dist/es2019/utils/objectURLCache.js +0 -10
  172. package/dist/es2019/utils/printScript.js +0 -3
  173. package/dist/es2019/utils/progressBar/index.js +0 -2
  174. package/dist/es2019/utils/shouldDisplayImageThumbnail.js +0 -2
  175. package/dist/es2019/utils/ufoExperiences.js +5 -10
  176. package/dist/es2019/utils/videoSnapshot.js +2 -4
  177. package/dist/es2019/utils/viewportDetector.js +0 -5
  178. package/dist/es2019/version.json +1 -1
  179. package/dist/esm/card/actions.js +0 -3
  180. package/dist/esm/card/card.js +263 -316
  181. package/dist/esm/card/cardAnalytics.js +0 -6
  182. package/dist/esm/card/cardImageView/cardImageViewWrapper.js +6 -6
  183. package/dist/esm/card/cardImageView/cardOverlay/cardOverlayComponents.js +2 -2
  184. package/dist/esm/card/cardImageView/cardOverlay/index.js +22 -37
  185. package/dist/esm/card/cardImageView/cardOverlay/styles.js +2 -6
  186. package/dist/esm/card/cardImageView/cardViewWrapper.js +6 -6
  187. package/dist/esm/card/cardImageView/fileCardImageView.js +66 -104
  188. package/dist/esm/card/cardImageView/styles.js +0 -5
  189. package/dist/esm/card/cardLoader.js +6 -17
  190. package/dist/esm/card/cardState.js +1 -2
  191. package/dist/esm/card/cardView.js +105 -171
  192. package/dist/esm/card/getCardPreview/cache.js +0 -7
  193. package/dist/esm/card/getCardPreview/filePreviewStatus.js +11 -11
  194. package/dist/esm/card/getCardPreview/helpers.js +0 -28
  195. package/dist/esm/card/getCardPreview/imageRefetchingAnalytics.js +0 -3
  196. package/dist/esm/card/getCardPreview/index.js +19 -54
  197. package/dist/esm/card/getCardStatus.js +5 -20
  198. package/dist/esm/card/inlinePlayer.js +19 -85
  199. package/dist/esm/card/inlinePlayerLazy.js +1 -5
  200. package/dist/esm/card/inlinePlayerWrapper.js +4 -4
  201. package/dist/esm/card/media-card-analytics-error-boundary.js +6 -28
  202. package/dist/esm/card/styles/animations.js +0 -2
  203. package/dist/esm/card/styles/getSelectedBorderStyle.js +1 -1
  204. package/dist/esm/card/styles/index.js +0 -2
  205. package/dist/esm/card/styles/styles.js +4 -9
  206. package/dist/esm/card/ui/actionsBar/actionsBar.js +2 -12
  207. package/dist/esm/card/ui/actionsBar/styles.js +0 -2
  208. package/dist/esm/card/ui/blanket/styles.js +0 -2
  209. package/dist/esm/card/ui/common.js +0 -4
  210. package/dist/esm/card/ui/iconMessage/iconMessageWrapper.js +1 -1
  211. package/dist/esm/card/ui/iconMessage/index.js +4 -4
  212. package/dist/esm/card/ui/iconMessage/styles.js +1 -5
  213. package/dist/esm/card/ui/iconWrapper/iconWrapper.js +1 -1
  214. package/dist/esm/card/ui/iconWrapper/styles.js +3 -5
  215. package/dist/esm/card/ui/imageRenderer/imageRenderer.js +8 -11
  216. package/dist/esm/card/ui/loadingRateLimited/styles.js +1 -3
  217. package/dist/esm/card/ui/newFileExperience/newFileExperienceWrapper.js +13 -13
  218. package/dist/esm/card/ui/newFileExperience/styles.js +10 -12
  219. package/dist/esm/card/ui/playButton/styles.js +0 -2
  220. package/dist/esm/card/ui/progressBar/progressBar.js +6 -6
  221. package/dist/esm/card/ui/progressBar/styledBar.js +3 -3
  222. package/dist/esm/card/ui/progressBar/styles.js +4 -8
  223. package/dist/esm/card/ui/styles.js +12 -20
  224. package/dist/esm/card/ui/tickBox/styles.js +0 -2
  225. package/dist/esm/card/ui/titleBox/failedTitleBox.js +2 -2
  226. package/dist/esm/card/ui/titleBox/styles.js +4 -7
  227. package/dist/esm/card/ui/titleBox/titleBox.js +9 -11
  228. package/dist/esm/card/ui/titleBox/titleBoxComponents.js +1 -1
  229. package/dist/esm/card/ui/unhandledErrorCard/index.js +6 -24
  230. package/dist/esm/errors.js +8 -40
  231. package/dist/esm/index.js +1 -0
  232. package/dist/esm/inline/loader.js +3 -40
  233. package/dist/esm/inline/mediaInlineAnalyticsErrorBoundary.js +4 -23
  234. package/dist/esm/inline/mediaInlineCard.js +21 -40
  235. package/dist/esm/types.js +1 -1
  236. package/dist/esm/utils/analytics.js +0 -6
  237. package/dist/esm/utils/breakpoint.js +0 -5
  238. package/dist/esm/utils/cardActions/cardActionIconButton.js +7 -18
  239. package/dist/esm/utils/cardActions/cardActionsDropdownMenu.js +6 -19
  240. package/dist/esm/utils/cardActions/cardActionsView.js +7 -22
  241. package/dist/esm/utils/cardActions/styles.js +0 -5
  242. package/dist/esm/utils/cardDimensions.js +7 -14
  243. package/dist/esm/utils/dimensionComparer.js +0 -3
  244. package/dist/esm/utils/document.js +0 -2
  245. package/dist/esm/utils/errorIcon/index.js +0 -9
  246. package/dist/esm/utils/errorIcon/styles.js +0 -2
  247. package/dist/esm/utils/fileIcon/index.js +3 -11
  248. package/dist/esm/utils/fileIcon/styles.js +0 -2
  249. package/dist/esm/utils/getDataURIDimension.js +0 -4
  250. package/dist/esm/utils/getMediaCardCursor.js +1 -4
  251. package/dist/esm/utils/globalScope/getSSRData.js +0 -2
  252. package/dist/esm/utils/globalScope/globalScope.js +8 -15
  253. package/dist/esm/utils/lightCards/cardError.js +0 -9
  254. package/dist/esm/utils/lightCards/cardLoading.js +3 -13
  255. package/dist/esm/utils/lightCards/lightCardWrappers.js +0 -1
  256. package/dist/esm/utils/lightCards/styles.js +1 -3
  257. package/dist/esm/utils/metadata.js +0 -5
  258. package/dist/esm/utils/objectURLCache.js +0 -15
  259. package/dist/esm/utils/printScript.js +0 -5
  260. package/dist/esm/utils/progressBar/index.js +0 -9
  261. package/dist/esm/utils/progressBar/styles.js +0 -2
  262. package/dist/esm/utils/shouldDisplayImageThumbnail.js +0 -2
  263. package/dist/esm/utils/ufoExperiences.js +1 -12
  264. package/dist/esm/utils/videoSnapshot.js +2 -6
  265. package/dist/esm/utils/viewportDetector.js +5 -16
  266. package/dist/esm/version.json +1 -1
  267. package/dist/types/card/card.d.ts +3 -0
  268. package/dist/types/card/getCardPreview/index.d.ts +2 -1
  269. package/dist/types/types.d.ts +1 -0
  270. package/package.json +6 -4
  271. package/report.api.md +2 -0
@@ -1,110 +1,66 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.CardBase = exports.Card = void 0;
11
-
12
9
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
-
14
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
-
16
11
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
17
-
18
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
-
20
13
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
21
-
22
14
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
23
-
24
15
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
25
-
26
16
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
27
-
28
17
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
29
-
30
18
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
31
-
32
19
  var _react = _interopRequireWildcard(require("react"));
33
-
34
20
  var _reactDom = _interopRequireDefault(require("react-dom"));
35
-
36
21
  var _analyticsNext = require("@atlaskit/analytics-next");
37
-
38
22
  var _mediaCommon = require("@atlaskit/media-common");
39
-
40
23
  var _download = _interopRequireDefault(require("@atlaskit/icon/glyph/download"));
41
-
42
24
  var _mediaClient2 = require("@atlaskit/media-client");
43
-
44
25
  var _mediaViewer = require("@atlaskit/media-viewer");
45
-
46
26
  var _reactIntlNext = require("react-intl-next");
47
-
48
27
  var _cardView = require("./cardView");
49
-
50
28
  var _viewportDetector = require("../utils/viewportDetector");
51
-
52
29
  var _getDataURIDimension = require("../utils/getDataURIDimension");
53
-
54
30
  var _getCardPreview = require("./getCardPreview");
55
-
56
31
  var _metadata = require("../utils/metadata");
57
-
58
32
  var _inlinePlayerLazy = require("./inlinePlayerLazy");
59
-
60
33
  var _analytics = require("../utils/analytics");
61
-
62
34
  var _errors = require("../errors");
63
-
64
35
  var _cardAnalytics = require("./cardAnalytics");
65
-
66
36
  var _document = _interopRequireDefault(require("../utils/document"));
67
-
68
37
  var _globalScope = require("../utils/globalScope");
69
-
70
38
  var _cardState = require("./cardState");
71
-
72
39
  var _dimensionComparer = require("../utils/dimensionComparer");
73
-
74
40
  var _getMediaCardCursor = require("../utils/getMediaCardCursor");
75
-
76
41
  var _ufoExperiences = require("../utils/ufoExperiences");
77
-
78
42
  var _generateUniqueId = require("../utils/generateUniqueId");
79
-
80
43
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
81
-
82
44
  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; }
83
-
84
45
  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; }
85
-
86
46
  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; }
87
-
88
47
  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); }; }
89
-
90
48
  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
-
92
49
  var packageName = "@atlaskit/media-card";
93
- var packageVersion = "74.5.1";
94
-
50
+ var packageVersion = "74.6.0";
95
51
  var CardBase = /*#__PURE__*/function (_Component) {
96
52
  (0, _inherits2.default)(CardBase, _Component);
97
-
98
53
  var _super = _createSuper(CardBase);
99
-
100
54
  // An internalOccurrenceKey is a randomly generated value to differentiate various instances
101
55
  // of Cards regardless of whether it shares the same file (either internal or external)
56
+
102
57
  // We initialise timeElapsedTillCommenced
103
58
  // to avoid extra branching on a possibly undefined value.
59
+
104
60
  // Generate unique traceId for file
61
+
105
62
  function CardBase(props) {
106
63
  var _this;
107
-
108
64
  (0, _classCallCheck2.default)(this, CardBase);
109
65
  _this = _super.call(this, props);
110
66
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "internalOccurrenceKey", (0, _generateUniqueId.generateUniqueId)());
@@ -136,17 +92,15 @@ var CardBase = /*#__PURE__*/function (_Component) {
136
92
  });
137
93
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getMediaBlobUrlAttrs", function (identifier, fileState) {
138
94
  var id = identifier.id,
139
- collection = identifier.collectionName;
95
+ collection = identifier.collectionName;
140
96
  var _this$props = _this.props,
141
- originalDimensions = _this$props.originalDimensions,
142
- contextId = _this$props.contextId,
143
- alt = _this$props.alt;
144
-
97
+ originalDimensions = _this$props.originalDimensions,
98
+ contextId = _this$props.contextId,
99
+ alt = _this$props.alt;
145
100
  var _getFileDetails = (0, _metadata.getFileDetails)(identifier, fileState),
146
- mimeType = _getFileDetails.mimeType,
147
- name = _getFileDetails.name,
148
- size = _getFileDetails.size;
149
-
101
+ mimeType = _getFileDetails.mimeType,
102
+ name = _getFileDetails.name,
103
+ size = _getFileDetails.size;
150
104
  return contextId ? _objectSpread(_objectSpread({
151
105
  id: id,
152
106
  collection: collection,
@@ -162,10 +116,10 @@ var CardBase = /*#__PURE__*/function (_Component) {
162
116
  var isBannedLocalPreview = _this.state.isBannedLocalPreview;
163
117
  var id = identifier.id;
164
118
  var _this$props2 = _this.props,
165
- _this$props2$dimensio = _this$props2.dimensions,
166
- dimensions = _this$props2$dimensio === void 0 ? {} : _this$props2$dimensio,
167
- mediaClient = _this$props2.mediaClient,
168
- createAnalyticsEvent = _this$props2.createAnalyticsEvent;
119
+ _this$props2$dimensio = _this$props2.dimensions,
120
+ dimensions = _this$props2$dimensio === void 0 ? {} : _this$props2$dimensio,
121
+ mediaClient = _this$props2.mediaClient,
122
+ createAnalyticsEvent = _this$props2.createAnalyticsEvent;
169
123
  return {
170
124
  mediaClient: mediaClient,
171
125
  id: id,
@@ -181,11 +135,8 @@ var CardBase = /*#__PURE__*/function (_Component) {
181
135
  };
182
136
  });
183
137
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setCacheSSRPreview", function (identifier) {
184
- var _this$props3 = _this.props,
185
- mediaClient = _this$props3.mediaClient,
186
- _this$props3$dimensio = _this$props3.dimensions,
187
- dimensions = _this$props3$dimensio === void 0 ? {} : _this$props3$dimensio;
188
- (0, _getCardPreview.fetchAndCacheRemotePreview)(mediaClient, identifier.id, dimensions, _this.getImageURLParams(identifier), _this.getMediaBlobUrlAttrs(identifier)).catch(function () {// No need to log this error.
138
+ _this.fetchAndCacheRemotePreview(identifier).catch(function () {
139
+ // No need to log this error.
189
140
  // If preview fails, it will be refetched later
190
141
  //TODO: test this catch
191
142
  // https://product-fabric.atlassian.net/browse/MEX-1071
@@ -193,76 +144,116 @@ var CardBase = /*#__PURE__*/function (_Component) {
193
144
  });
194
145
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "refetchSSRPreview", /*#__PURE__*/function () {
195
146
  var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(identifier) {
196
- var _this$props4, mediaClient, _this$props4$dimensio, dimensions, cardPreview, wrappedError;
197
-
147
+ var cardPreview, wrappedError;
198
148
  return _regenerator.default.wrap(function _callee$(_context) {
199
149
  while (1) {
200
150
  switch (_context.prev = _context.next) {
201
151
  case 0:
202
- _this$props4 = _this.props, mediaClient = _this$props4.mediaClient, _this$props4$dimensio = _this$props4.dimensions, dimensions = _this$props4$dimensio === void 0 ? {} : _this$props4$dimensio;
203
- _context.prev = 1;
204
- _context.next = 4;
205
- return (0, _getCardPreview.fetchAndCacheRemotePreview)(mediaClient, identifier.id, dimensions, _this.getImageURLParams(identifier), _this.getMediaBlobUrlAttrs(identifier));
206
-
207
- case 4:
152
+ _context.prev = 0;
153
+ _context.next = 3;
154
+ return _this.fetchAndCacheRemotePreview(identifier);
155
+ case 3:
208
156
  cardPreview = _context.sent;
209
-
210
157
  _this.safeSetState({
211
158
  cardPreview: cardPreview
212
159
  });
213
-
214
- _context.next = 12;
160
+ _context.next = 11;
215
161
  break;
216
-
217
- case 8:
218
- _context.prev = 8;
219
- _context.t0 = _context["catch"](1);
162
+ case 7:
163
+ _context.prev = 7;
164
+ _context.t0 = _context["catch"](0);
220
165
  wrappedError = (0, _errors.ensureMediaCardError)('remote-preview-fetch-ssr', _context.t0, true);
221
-
222
166
  _this.fireNonCriticalErrorEvent(wrappedError);
223
-
224
- case 12:
167
+ case 11:
225
168
  case "end":
226
169
  return _context.stop();
227
170
  }
228
171
  }
229
- }, _callee, null, [[1, 8]]);
172
+ }, _callee, null, [[0, 7]]);
230
173
  }));
231
-
232
174
  return function (_x) {
233
175
  return _ref2.apply(this, arguments);
234
176
  };
235
177
  }());
236
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "resolvePreview", /*#__PURE__*/function () {
237
- var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(identifier, fileState) {
238
- var params, cardPreview, wrappedError;
178
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "resolveUpfrontPreview", /*#__PURE__*/function () {
179
+ var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(identifier) {
180
+ var requestedDimensions, cardPreview, currentDimensions, areValidRequestedDimensions;
239
181
  return _regenerator.default.wrap(function _callee2$(_context2) {
240
182
  while (1) {
241
183
  switch (_context2.prev = _context2.next) {
242
184
  case 0:
243
- _context2.prev = 0;
244
- params = _this.getCardPreviewParams(identifier, fileState);
185
+ requestedDimensions = _objectSpread({}, _this.props.dimensions);
186
+ _context2.prev = 1;
245
187
  _context2.next = 4;
246
- return (0, _getCardPreview.getCardPreview)(params);
247
-
188
+ return _this.fetchAndCacheRemotePreview(identifier);
248
189
  case 4:
249
190
  cardPreview = _context2.sent;
250
-
191
+ currentDimensions = _this.props.dimensions;
192
+ areValidRequestedDimensions = !(0, _dimensionComparer.isBigger)(requestedDimensions, currentDimensions); // If there are new and bigger dimensions in the props, and the upfront preview is still resolving,
193
+ // the fetched preview is no longer valid, and thus, we dismiss it and set the flag wasResolvedUpfrontPreview = true
194
+ // to trigger a normal preview fetch.
195
+ if (areValidRequestedDimensions) {
196
+ _this.safeSetState({
197
+ cardPreview: cardPreview,
198
+ wasResolvedUpfrontPreview: true
199
+ });
200
+ } else {
201
+ _this.safeSetState({
202
+ wasResolvedUpfrontPreview: true
203
+ });
204
+ }
205
+ _context2.next = 13;
206
+ break;
207
+ case 10:
208
+ _context2.prev = 10;
209
+ _context2.t0 = _context2["catch"](1);
210
+ _this.safeSetState({
211
+ wasResolvedUpfrontPreview: true
212
+ });
213
+ // NO need to log error. If this call fails, a refetch will happen after
214
+ case 13:
215
+ case "end":
216
+ return _context2.stop();
217
+ }
218
+ }
219
+ }, _callee2, null, [[1, 10]]);
220
+ }));
221
+ return function (_x2) {
222
+ return _ref3.apply(this, arguments);
223
+ };
224
+ }());
225
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fetchAndCacheRemotePreview", function (identifier) {
226
+ var _this$props3 = _this.props,
227
+ mediaClient = _this$props3.mediaClient,
228
+ _this$props3$dimensio = _this$props3.dimensions,
229
+ dimensions = _this$props3$dimensio === void 0 ? {} : _this$props3$dimensio;
230
+ return (0, _getCardPreview.fetchAndCacheRemotePreview)(mediaClient, identifier.id, dimensions, _this.getImageURLParams(identifier), _this.getMediaBlobUrlAttrs(identifier));
231
+ });
232
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "resolvePreview", /*#__PURE__*/function () {
233
+ var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(identifier, fileState) {
234
+ var params, cardPreview, wrappedError;
235
+ return _regenerator.default.wrap(function _callee3$(_context3) {
236
+ while (1) {
237
+ switch (_context3.prev = _context3.next) {
238
+ case 0:
239
+ _context3.prev = 0;
240
+ params = _this.getCardPreviewParams(identifier, fileState);
241
+ _context3.next = 4;
242
+ return (0, _getCardPreview.getCardPreview)(params);
243
+ case 4:
244
+ cardPreview = _context3.sent;
251
245
  _this.safeSetState({
252
246
  cardPreview: cardPreview
253
247
  });
254
-
255
- _context2.next = 12;
248
+ _context3.next = 12;
256
249
  break;
257
-
258
250
  case 8:
259
- _context2.prev = 8;
260
- _context2.t0 = _context2["catch"](0);
261
- wrappedError = (0, _errors.ensureMediaCardError)('preview-fetch', _context2.t0); // If remote preview fails, we set status 'error'
251
+ _context3.prev = 8;
252
+ _context3.t0 = _context3["catch"](0);
253
+ wrappedError = (0, _errors.ensureMediaCardError)('preview-fetch', _context3.t0); // If remote preview fails, we set status 'error'
262
254
  // If local preview fails (i.e, no remote preview available),
263
255
  // we can stay in the same status until there is a remote preview available
264
256
  // If it's any other error we set status 'error'
265
-
266
257
  if ((0, _errors.isLocalPreviewError)(wrappedError)) {
267
258
  // This error should already been logged inside the getCardPreview. No need to log it here.
268
259
  _this.safeSetState({
@@ -274,23 +265,20 @@ var CardBase = /*#__PURE__*/function (_Component) {
274
265
  error: wrappedError
275
266
  });
276
267
  }
277
-
278
268
  case 12:
279
269
  case "end":
280
- return _context2.stop();
270
+ return _context3.stop();
281
271
  }
282
272
  }
283
- }, _callee2, null, [[0, 8]]);
273
+ }, _callee3, null, [[0, 8]]);
284
274
  }));
285
-
286
- return function (_x2, _x3) {
287
- return _ref3.apply(this, arguments);
275
+ return function (_x3, _x4) {
276
+ return _ref4.apply(this, arguments);
288
277
  };
289
278
  }());
290
279
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getPerformanceAttributes", function () {
291
280
  var _assertThisInitialize = (0, _assertThisInitialized2.default)(_this),
292
- timeElapsedTillCommenced = _assertThisInitialize.timeElapsedTillCommenced;
293
-
281
+ timeElapsedTillCommenced = _assertThisInitialize.timeElapsedTillCommenced;
294
282
  var timeElapsedTillEvent = performance.now();
295
283
  var durationSinceCommenced = timeElapsedTillCommenced && timeElapsedTillEvent - timeElapsedTillCommenced;
296
284
  return {
@@ -305,15 +293,14 @@ var CardBase = /*#__PURE__*/function (_Component) {
305
293
  var failedSSRObject = _objectSpread({
306
294
  status: 'fail'
307
295
  }, (0, _analytics.extractErrorInfo)(new _errors.ImageLoadError(cardPreview.source)));
308
-
309
296
  if ((0, _getCardPreview.isSSRClientPreview)(cardPreview)) {
310
297
  _this.ssrReliability.client = failedSSRObject;
311
298
  }
299
+
312
300
  /*
313
301
  If the cardPreview failed and it comes from server (global scope / ssrData), it means that we have reused it in client and the error counts for both: server & client.
314
302
  */
315
303
 
316
-
317
304
  if ((0, _getCardPreview.isSSRDataPreview)(cardPreview)) {
318
305
  _this.ssrReliability.server = failedSSRObject;
319
306
  _this.ssrReliability.client = failedSSRObject;
@@ -322,34 +309,27 @@ var CardBase = /*#__PURE__*/function (_Component) {
322
309
  });
323
310
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onImageError", function (cardPreview) {
324
311
  _this.logSSRImageError(cardPreview);
325
-
326
- var currentPreview = _this.state.cardPreview; // If the dataURI has been replaced, we can dismiss this error
327
-
312
+ var currentPreview = _this.state.cardPreview;
313
+ // If the dataURI has been replaced, we can dismiss this error
328
314
  if ((cardPreview === null || cardPreview === void 0 ? void 0 : cardPreview.dataURI) !== (currentPreview === null || currentPreview === void 0 ? void 0 : currentPreview.dataURI)) {
329
315
  return;
330
316
  }
331
-
332
317
  var error = new _errors.ImageLoadError(cardPreview === null || cardPreview === void 0 ? void 0 : cardPreview.source);
333
318
  var isLocal = cardPreview && (0, _getCardPreview.isLocalPreview)(cardPreview);
334
319
  var isSSR = cardPreview && ((0, _getCardPreview.isSSRClientPreview)(cardPreview) || (0, _getCardPreview.isSSRDataPreview)(cardPreview));
335
-
336
320
  if (isLocal || isSSR) {
337
321
  var updateState = {
338
322
  cardPreview: undefined
339
323
  };
340
-
341
324
  if (isLocal) {
342
325
  updateState.isBannedLocalPreview = true;
343
-
344
326
  _this.fireNonCriticalErrorEvent(error);
345
327
  }
346
-
347
- var _this$props5 = _this.props,
348
- identifier = _this$props5.identifier,
349
- resizeMode = _this$props5.resizeMode;
328
+ var _this$props4 = _this.props,
329
+ identifier = _this$props4.identifier,
330
+ resizeMode = _this$props4.resizeMode;
350
331
  var fileImageMode = (0, _mediaClient2.imageResizeModeToFileImageMode)(resizeMode);
351
332
  (0, _mediaClient2.isFileIdentifier)(identifier) && (0, _getCardPreview.removeCardPreviewFromCache)(identifier.id, fileImageMode);
352
-
353
333
  _this.safeSetState(updateState);
354
334
  } else {
355
335
  _this.safeSetState({
@@ -365,11 +345,11 @@ var CardBase = /*#__PURE__*/function (_Component) {
365
345
  status: 'success'
366
346
  };
367
347
  }
348
+
368
349
  /*
369
350
  If the image loads successfully and it comes from server (global scope / ssrData), it means that we have reused it in client and the success counts for both: server & client.
370
351
  */
371
352
 
372
-
373
353
  if ((0, _getCardPreview.isSSRDataPreview)(cardPreview) && _this.ssrReliability.server.status === 'unknown') {
374
354
  _this.ssrReliability.server = {
375
355
  status: 'success'
@@ -379,13 +359,11 @@ var CardBase = /*#__PURE__*/function (_Component) {
379
359
  };
380
360
  }
381
361
  }
382
-
383
- var currentPreview = _this.state.cardPreview; // If the dataURI has been replaced, we can dismiss this callback
384
-
362
+ var currentPreview = _this.state.cardPreview;
363
+ // If the dataURI has been replaced, we can dismiss this callback
385
364
  if ((cardPreview === null || cardPreview === void 0 ? void 0 : cardPreview.dataURI) !== (currentPreview === null || currentPreview === void 0 ? void 0 : currentPreview.dataURI)) {
386
365
  return;
387
366
  }
388
-
389
367
  _this.safeSetState({
390
368
  previewDidRender: true
391
369
  });
@@ -420,7 +398,6 @@ var CardBase = /*#__PURE__*/function (_Component) {
420
398
  if (_this.subscription) {
421
399
  _this.subscription.unsubscribe();
422
400
  }
423
-
424
401
  if (_this.hasBeenMounted) {
425
402
  // TODO MEX-788: add test for "do not remove the card preview when unsubscribing".
426
403
  _this.setState({
@@ -429,23 +406,18 @@ var CardBase = /*#__PURE__*/function (_Component) {
429
406
  }
430
407
  });
431
408
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onCardViewClick", function (event, analyticsEvent) {
432
- var _this$props6 = _this.props,
433
- identifier = _this$props6.identifier,
434
- useInlinePlayer = _this$props6.useInlinePlayer,
435
- shouldOpenMediaViewer = _this$props6.shouldOpenMediaViewer;
409
+ var _this$props5 = _this.props,
410
+ identifier = _this$props5.identifier,
411
+ useInlinePlayer = _this$props5.useInlinePlayer,
412
+ shouldOpenMediaViewer = _this$props5.shouldOpenMediaViewer;
436
413
  var cardPreview = _this.state.cardPreview;
437
-
438
414
  var _assertThisInitialize2 = (0, _assertThisInitialized2.default)(_this),
439
- metadata = _assertThisInitialize2.metadata;
440
-
415
+ metadata = _assertThisInitialize2.metadata;
441
416
  _this.onClick(event, analyticsEvent);
442
-
443
417
  if (!metadata) {
444
418
  return;
445
419
  }
446
-
447
420
  var isVideo = metadata && metadata.mediaType === 'video';
448
-
449
421
  if (useInlinePlayer && isVideo && !!cardPreview) {
450
422
  _this.setState({
451
423
  isPlayingFile: true,
@@ -453,7 +425,6 @@ var CardBase = /*#__PURE__*/function (_Component) {
453
425
  });
454
426
  } else if (shouldOpenMediaViewer) {
455
427
  var mediaViewerSelectedItem;
456
-
457
428
  if ((0, _mediaClient2.isFileIdentifier)(identifier)) {
458
429
  mediaViewerSelectedItem = {
459
430
  id: identifier.id,
@@ -468,7 +439,6 @@ var CardBase = /*#__PURE__*/function (_Component) {
468
439
  name: identifier.name
469
440
  };
470
441
  }
471
-
472
442
  _this.setState({
473
443
  mediaViewerSelectedItem: mediaViewerSelectedItem
474
444
  });
@@ -485,20 +455,18 @@ var CardBase = /*#__PURE__*/function (_Component) {
485
455
  });
486
456
  });
487
457
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderInlinePlayer", function () {
488
- var _this$props7 = _this.props,
489
- identifier = _this$props7.identifier,
490
- mediaClient = _this$props7.mediaClient,
491
- dimensions = _this$props7.dimensions,
492
- selected = _this$props7.selected,
493
- testId = _this$props7.testId,
494
- originalDimensions = _this$props7.originalDimensions,
495
- onFullscreenChange = _this$props7.onFullscreenChange;
458
+ var _this$props6 = _this.props,
459
+ identifier = _this$props6.identifier,
460
+ mediaClient = _this$props6.mediaClient,
461
+ dimensions = _this$props6.dimensions,
462
+ selected = _this$props6.selected,
463
+ testId = _this$props6.testId,
464
+ originalDimensions = _this$props6.originalDimensions,
465
+ onFullscreenChange = _this$props6.onFullscreenChange;
496
466
  var _this$state = _this.state,
497
- shouldAutoplay = _this$state.shouldAutoplay,
498
- cardPreview = _this$state.cardPreview;
499
-
467
+ shouldAutoplay = _this$state.shouldAutoplay,
468
+ cardPreview = _this$state.cardPreview;
500
469
  var card = _this.renderCard(false, 'loading', false);
501
-
502
470
  return /*#__PURE__*/_react.default.createElement(_react.Suspense, {
503
471
  fallback: card
504
472
  }, /*#__PURE__*/_react.default.createElement(_inlinePlayerLazy.InlinePlayerLazy, {
@@ -524,7 +492,6 @@ var CardBase = /*#__PURE__*/function (_Component) {
524
492
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onDisplayImage", function () {
525
493
  var identifier = _this.props.identifier;
526
494
  var payloadPart;
527
-
528
495
  if ((0, _mediaClient2.isFileIdentifier)(identifier)) {
529
496
  payloadPart = {
530
497
  fileId: identifier.id,
@@ -536,24 +503,21 @@ var CardBase = /*#__PURE__*/function (_Component) {
536
503
  isUserCollection: false
537
504
  };
538
505
  }
539
-
540
506
  _mediaClient2.globalMediaEventEmitter.emit('media-viewed', _objectSpread({
541
507
  viewingLevel: 'minimal'
542
508
  }, payloadPart));
543
509
  });
544
510
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderMediaViewer", function () {
545
511
  var mediaViewerSelectedItem = _this.state.mediaViewerSelectedItem;
546
- var _this$props8 = _this.props,
547
- mediaClient = _this$props8.mediaClient,
548
- identifier = _this$props8.identifier,
549
- mediaViewerDataSource = _this$props8.mediaViewerDataSource,
550
- contextId = _this$props8.contextId,
551
- featureFlags = _this$props8.featureFlags;
552
-
512
+ var _this$props7 = _this.props,
513
+ mediaClient = _this$props7.mediaClient,
514
+ identifier = _this$props7.identifier,
515
+ mediaViewerDataSource = _this$props7.mediaViewerDataSource,
516
+ contextId = _this$props7.contextId,
517
+ featureFlags = _this$props7.featureFlags;
553
518
  if (!mediaViewerSelectedItem) {
554
519
  return;
555
520
  }
556
-
557
521
  var collectionName = (0, _mediaClient2.isFileIdentifier)(identifier) ? identifier.collectionName || '' : '';
558
522
  var dataSource = mediaViewerDataSource || {
559
523
  list: []
@@ -572,49 +536,46 @@ var CardBase = /*#__PURE__*/function (_Component) {
572
536
  var withCallbacks = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
573
537
  var cardStatusOverride = arguments.length > 1 ? arguments[1] : undefined;
574
538
  var izLazyOverride = arguments.length > 2 ? arguments[2] : undefined;
575
- var _this$props9 = _this.props,
576
- identifier = _this$props9.identifier,
577
- isLazy = _this$props9.isLazy,
578
- appearance = _this$props9.appearance,
579
- resizeMode = _this$props9.resizeMode,
580
- dimensions = _this$props9.dimensions,
581
- selectable = _this$props9.selectable,
582
- selected = _this$props9.selected,
583
- disableOverlay = _this$props9.disableOverlay,
584
- alt = _this$props9.alt,
585
- testId = _this$props9.testId,
586
- featureFlags = _this$props9.featureFlags,
587
- titleBoxBgColor = _this$props9.titleBoxBgColor,
588
- titleBoxIcon = _this$props9.titleBoxIcon,
589
- ssr = _this$props9.ssr,
590
- useInlinePlayer = _this$props9.useInlinePlayer,
591
- shouldOpenMediaViewer = _this$props9.shouldOpenMediaViewer;
539
+ var _this$props8 = _this.props,
540
+ identifier = _this$props8.identifier,
541
+ isLazy = _this$props8.isLazy,
542
+ appearance = _this$props8.appearance,
543
+ resizeMode = _this$props8.resizeMode,
544
+ dimensions = _this$props8.dimensions,
545
+ selectable = _this$props8.selectable,
546
+ selected = _this$props8.selected,
547
+ disableOverlay = _this$props8.disableOverlay,
548
+ alt = _this$props8.alt,
549
+ testId = _this$props8.testId,
550
+ featureFlags = _this$props8.featureFlags,
551
+ titleBoxBgColor = _this$props8.titleBoxBgColor,
552
+ titleBoxIcon = _this$props8.titleBoxIcon,
553
+ ssr = _this$props8.ssr,
554
+ useInlinePlayer = _this$props8.useInlinePlayer,
555
+ shouldOpenMediaViewer = _this$props8.shouldOpenMediaViewer;
592
556
  var mediaItemType = identifier.mediaItemType;
593
557
  var _this$state2 = _this.state,
594
- status = _this$state2.status,
595
- progress = _this$state2.progress,
596
- cardPreview = _this$state2.cardPreview,
597
- error = _this$state2.error,
598
- cardRef = _this$state2.cardRef,
599
- isCardVisible = _this$state2.isCardVisible;
600
-
558
+ status = _this$state2.status,
559
+ progress = _this$state2.progress,
560
+ cardPreview = _this$state2.cardPreview,
561
+ error = _this$state2.error,
562
+ cardRef = _this$state2.cardRef,
563
+ isCardVisible = _this$state2.isCardVisible;
601
564
  var _assertThisInitialize3 = (0, _assertThisInitialized2.default)(_this),
602
- metadata = _assertThisInitialize3.metadata;
603
-
565
+ metadata = _assertThisInitialize3.metadata;
604
566
  var _assertThisInitialize4 = (0, _assertThisInitialized2.default)(_this),
605
- onCardViewClick = _assertThisInitialize4.onCardViewClick,
606
- onDisplayImage = _assertThisInitialize4.onDisplayImage,
607
- actions = _assertThisInitialize4.actions,
608
- onMouseEnter = _assertThisInitialize4.onMouseEnter;
567
+ onCardViewClick = _assertThisInitialize4.onCardViewClick,
568
+ onDisplayImage = _assertThisInitialize4.onDisplayImage,
569
+ actions = _assertThisInitialize4.actions,
570
+ onMouseEnter = _assertThisInitialize4.onMouseEnter;
571
+ var isLazyWithOverride = izLazyOverride === undefined ? isLazy : izLazyOverride;
609
572
 
610
- var isLazyWithOverride = izLazyOverride === undefined ? isLazy : izLazyOverride; // Card can be artificially turned visible before entering the viewport
573
+ // Card can be artificially turned visible before entering the viewport
611
574
  // For example, when we have the image in cache
612
-
613
- var nativeLazyLoad = isLazyWithOverride && !isCardVisible; // Force Media Image to always display img for SSR
614
-
575
+ var nativeLazyLoad = isLazyWithOverride && !isCardVisible;
576
+ // Force Media Image to always display img for SSR
615
577
  var forceSyncDisplay = !!ssr;
616
578
  var mediaCardCursor = (0, _getMediaCardCursor.getMediaCardCursor)(!!useInlinePlayer, !!shouldOpenMediaViewer, status === 'error' || status === 'failed-processing', !!_this.state.cardPreview, metadata.mediaType);
617
-
618
579
  var card = /*#__PURE__*/_react.default.createElement(_cardView.CardView, {
619
580
  status: cardStatusOverride || status,
620
581
  error: error,
@@ -644,7 +605,6 @@ var CardBase = /*#__PURE__*/function (_Component) {
644
605
  forceSyncDisplay: forceSyncDisplay,
645
606
  mediaCardCursor: mediaCardCursor
646
607
  });
647
-
648
608
  return isLazyWithOverride ? /*#__PURE__*/_react.default.createElement(_viewportDetector.ViewportDetector, {
649
609
  cardEl: cardRef,
650
610
  onVisible: _this.onCardInViewport
@@ -652,10 +612,9 @@ var CardBase = /*#__PURE__*/function (_Component) {
652
612
  });
653
613
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "storeSSRData", function () {
654
614
  var _this$ssrReliability$;
655
-
656
- var _this$props10 = _this.props,
657
- ssr = _this$props10.ssr,
658
- identifier = _this$props10.identifier;
615
+ var _this$props9 = _this.props,
616
+ ssr = _this$props9.ssr,
617
+ identifier = _this$props9.identifier;
659
618
  var _this$state$cardPrevi = _this.state.cardPreview;
660
619
  _this$state$cardPrevi = _this$state$cardPrevi === void 0 ? {} : _this$state$cardPrevi;
661
620
  var dataURI = _this$state$cardPrevi.dataURI;
@@ -673,10 +632,8 @@ var CardBase = /*#__PURE__*/function (_Component) {
673
632
  });
674
633
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onClick", function (event, analyticsEvent) {
675
634
  var onClick = _this.props.onClick;
676
-
677
635
  var _assertThisInitialize5 = (0, _assertThisInitialized2.default)(_this),
678
- metadata = _assertThisInitialize5.metadata;
679
-
636
+ metadata = _assertThisInitialize5.metadata;
680
637
  if (onClick) {
681
638
  var cardEvent = {
682
639
  event: event,
@@ -687,10 +644,8 @@ var CardBase = /*#__PURE__*/function (_Component) {
687
644
  });
688
645
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onMouseEnter", function (event) {
689
646
  var onMouseEnter = _this.props.onMouseEnter;
690
-
691
647
  var _assertThisInitialize6 = (0, _assertThisInitialized2.default)(_this),
692
- metadata = _assertThisInitialize6.metadata;
693
-
648
+ metadata = _assertThisInitialize6.metadata;
694
649
  if (onMouseEnter) {
695
650
  var cardEvent = {
696
651
  event: event,
@@ -700,51 +655,22 @@ var CardBase = /*#__PURE__*/function (_Component) {
700
655
  }
701
656
  });
702
657
  var _status = 'loading';
703
-
704
658
  var _cardPreview;
705
-
706
659
  var _error;
707
-
708
- var _this$props11 = _this.props,
709
- _identifier = _this$props11.identifier,
710
- _resizeMode = _this$props11.resizeMode,
711
- _ssr = _this$props11.ssr,
712
- _mediaClient = _this$props11.mediaClient;
713
-
660
+ var _this$props10 = _this.props,
661
+ _identifier = _this$props10.identifier,
662
+ _resizeMode = _this$props10.resizeMode,
663
+ _ssr = _this$props10.ssr,
664
+ _mediaClient = _this$props10.mediaClient;
714
665
  if ((0, _mediaClient2.isFileIdentifier)(_identifier)) {
715
666
  var id = _identifier.id;
716
667
  var fileImageMode = (0, _mediaClient2.imageResizeModeToFileImageMode)(_resizeMode);
717
668
  _cardPreview = (0, _getCardPreview.getCardPreviewFromCache)(id, fileImageMode);
718
-
719
669
  if (!_cardPreview && _ssr) {
720
- var _this$ssrData, _this$ssrData2;
721
-
722
- _this.ssrData = (0, _globalScope.getSSRData)(_identifier);
723
-
724
- if ((_this$ssrData = _this.ssrData) !== null && _this$ssrData !== void 0 && _this$ssrData.error) {
725
- _this.ssrReliability.server = _objectSpread({
726
- status: 'fail'
727
- }, _this.ssrData.error);
728
- }
729
-
730
- if (!((_this$ssrData2 = _this.ssrData) !== null && _this$ssrData2 !== void 0 && _this$ssrData2.dataURI)) {
731
- try {
732
- _cardPreview = (0, _getCardPreview.getSSRCardPreview)(_ssr, _mediaClient, _identifier.id, _this.getImageURLParams(_identifier), _this.getMediaBlobUrlAttrs(_identifier));
733
- } catch (e) {
734
- _this.ssrReliability[_ssr] = _objectSpread({
735
- status: 'fail'
736
- }, (0, _analytics.extractErrorInfo)(e));
737
- }
738
- } else {
739
- _cardPreview = {
740
- dataURI: _this.ssrData.dataURI,
741
- source: 'ssr-data'
742
- };
743
- }
670
+ _cardPreview = _this.getSSRPreview(_ssr, _identifier, _mediaClient);
744
671
  }
745
672
  } else if ((0, _mediaClient2.isExternalImageIdentifier)(_identifier)) {
746
673
  _this.fireCommencedEvent();
747
-
748
674
  _status = 'loading-preview';
749
675
  var dataURI = _identifier.dataURI;
750
676
  _cardPreview = {
@@ -752,14 +678,13 @@ var CardBase = /*#__PURE__*/function (_Component) {
752
678
  orientation: 1,
753
679
  source: 'external'
754
680
  };
755
- } // If cardPreview is available from local cache or external, `isCardVisible`
681
+ }
682
+
683
+ // If cardPreview is available from local cache or external, `isCardVisible`
756
684
  // should be true to avoid flickers during re-mount of the component
757
685
  // should not be visible for SSR preview, otherwise we'll fire the metadata fetch from
758
686
  // outside the viewport
759
-
760
-
761
687
  var _isCardVisible = !_this.props.isLazy || !!_cardPreview && !(0, _getCardPreview.isSSRPreview)(_cardPreview);
762
-
763
688
  _this.state = {
764
689
  status: _status,
765
690
  isCardVisible: _isCardVisible,
@@ -769,80 +694,114 @@ var CardBase = /*#__PURE__*/function (_Component) {
769
694
  cardRef: null,
770
695
  isBannedLocalPreview: false,
771
696
  previewDidRender: false,
772
- error: _error
697
+ error: _error,
698
+ wasResolvedUpfrontPreview: false
773
699
  };
774
700
  return _this;
775
701
  }
776
-
777
702
  (0, _createClass2.default)(CardBase, [{
703
+ key: "getSSRPreview",
704
+ value: function getSSRPreview(ssr, identifier, mediaClient) {
705
+ var _this$ssrData, _this$ssrData2;
706
+ this.ssrData = (0, _globalScope.getSSRData)(identifier);
707
+ if ((_this$ssrData = this.ssrData) !== null && _this$ssrData !== void 0 && _this$ssrData.error) {
708
+ this.ssrReliability.server = _objectSpread({
709
+ status: 'fail'
710
+ }, this.ssrData.error);
711
+ }
712
+ if (!((_this$ssrData2 = this.ssrData) !== null && _this$ssrData2 !== void 0 && _this$ssrData2.dataURI)) {
713
+ try {
714
+ return (0, _getCardPreview.getSSRCardPreview)(ssr, mediaClient, identifier.id, this.getImageURLParams(identifier), this.getMediaBlobUrlAttrs(identifier));
715
+ } catch (e) {
716
+ this.ssrReliability[ssr] = _objectSpread({
717
+ status: 'fail'
718
+ }, (0, _analytics.extractErrorInfo)(e));
719
+ }
720
+ } else {
721
+ return {
722
+ dataURI: this.ssrData.dataURI,
723
+ source: 'ssr-data'
724
+ };
725
+ }
726
+ }
727
+ }, {
778
728
  key: "componentDidMount",
779
729
  value: function componentDidMount() {
780
730
  var _getDocument;
781
-
782
731
  this.hasBeenMounted = true;
783
732
  var _this$state3 = this.state,
784
- isCardVisible = _this$state3.isCardVisible,
785
- cardPreview = _this$state3.cardPreview;
786
- var _this$props12 = this.props,
787
- identifier = _this$props12.identifier,
788
- ssr = _this$props12.ssr,
789
- dimensions = _this$props12.dimensions;
790
-
733
+ isCardVisible = _this$state3.isCardVisible,
734
+ cardPreview = _this$state3.cardPreview;
735
+ var _this$props11 = this.props,
736
+ identifier = _this$props11.identifier,
737
+ ssr = _this$props11.ssr,
738
+ dimensions = _this$props11.dimensions;
791
739
  if (isCardVisible && (0, _mediaClient2.isFileIdentifier)(identifier)) {
792
740
  this.updateStateForIdentifier(identifier);
741
+ if (!cardPreview) {
742
+ this.resolveUpfrontPreview(identifier);
743
+ }
793
744
  }
794
-
795
745
  if (isCardVisible && !!ssr && !!cardPreview && (0, _mediaClient2.isFileIdentifier)(identifier)) {
796
746
  var _this$ssrData3;
797
-
798
747
  if ((0, _getCardPreview.isSSRClientPreview)(cardPreview)) {
799
748
  // Since the SSR preview brings the token in the query params,
800
749
  // We need to fetch the remote preview to be able to cache it,
801
750
  this.setCacheSSRPreview(identifier);
802
751
  }
803
-
804
752
  if ((0, _getCardPreview.isSSRDataPreview)(cardPreview) && (0, _dimensionComparer.isBigger)((_this$ssrData3 = this.ssrData) === null || _this$ssrData3 === void 0 ? void 0 : _this$ssrData3.dimensions, dimensions)) {
805
753
  // If dimensions from Server have changed and are bigger,
806
754
  // we need to refetch
807
755
  this.refetchSSRPreview(identifier);
808
756
  }
809
- } // we add a listener for each of the cards on the page
757
+ }
758
+ // we add a listener for each of the cards on the page
810
759
  // and then check if the triggered listener is from the card
811
760
  // that contains a div in current window.getSelection()
812
761
  // won't work in IE11
813
-
814
-
815
762
  (_getDocument = (0, _document.default)()) === null || _getDocument === void 0 ? void 0 : _getDocument.addEventListener('copy', this.fireCopiedEvent);
816
763
  }
817
764
  }, {
818
765
  key: "componentDidUpdate",
819
766
  value: function componentDidUpdate(prevProps, prevState) {
820
767
  var prevMediaClient = prevProps.mediaClient,
821
- prevIdentifier = prevProps.identifier,
822
- prevDimensions = prevProps.dimensions;
768
+ prevIdentifier = prevProps.identifier,
769
+ prevDimensions = prevProps.dimensions;
823
770
  var prevIsCardVisible = prevState.isCardVisible;
824
- var _this$props13 = this.props,
825
- mediaClient = _this$props13.mediaClient,
826
- identifier = _this$props13.identifier,
827
- dimensions = _this$props13.dimensions,
828
- featureFlags = _this$props13.featureFlags,
829
- useInlinePlayer = _this$props13.useInlinePlayer,
830
- disableOverlay = _this$props13.disableOverlay,
831
- resizeMode = _this$props13.resizeMode;
771
+ var _this$props12 = this.props,
772
+ mediaClient = _this$props12.mediaClient,
773
+ identifier = _this$props12.identifier,
774
+ dimensions = _this$props12.dimensions,
775
+ featureFlags = _this$props12.featureFlags,
776
+ useInlinePlayer = _this$props12.useInlinePlayer,
777
+ disableOverlay = _this$props12.disableOverlay,
778
+ resizeMode = _this$props12.resizeMode;
832
779
  var _this$state4 = this.state,
833
- isCardVisible = _this$state4.isCardVisible,
834
- cardPreview = _this$state4.cardPreview,
835
- status = _this$state4.status,
836
- fileState = _this$state4.fileState,
837
- isBannedLocalPreview = _this$state4.isBannedLocalPreview,
838
- previewDidRender = _this$state4.previewDidRender,
839
- isPlayingFile = _this$state4.isPlayingFile;
780
+ isCardVisible = _this$state4.isCardVisible,
781
+ cardPreview = _this$state4.cardPreview,
782
+ status = _this$state4.status,
783
+ fileState = _this$state4.fileState,
784
+ isBannedLocalPreview = _this$state4.isBannedLocalPreview,
785
+ previewDidRender = _this$state4.previewDidRender,
786
+ isPlayingFile = _this$state4.isPlayingFile,
787
+ wasResolvedUpfrontPreview = _this$state4.wasResolvedUpfrontPreview;
840
788
  var isDifferent = (0, _mediaClient2.isDifferentIdentifier)(prevIdentifier, identifier);
789
+ /**
790
+ * Variable turnedVisible should only be true when media card
791
+ * was invisible in the previous state and is visible in the current one
792
+ *
793
+ * prevIsCardVisible | isCardVisible | turnedVisible
794
+ * ----------------------------------------------------
795
+ * false | false | false
796
+ * false | true | true
797
+ * true | true | false
798
+ * true | false | false (unreachable case)
799
+ * ----------------------------------------------------
800
+ */
841
801
  var turnedVisible = !prevIsCardVisible && isCardVisible;
842
802
  var isNewMediaClient = prevMediaClient !== mediaClient;
843
803
  var fileImageMode = (0, _mediaClient2.imageResizeModeToFileImageMode)(resizeMode);
844
804
  this.updateFileStateFlag(fileState);
845
-
846
805
  if ((0, _mediaClient2.isExternalImageIdentifier)(identifier) && isDifferent) {
847
806
  this.fireCommencedEvent();
848
807
  var dataURI = identifier.dataURI;
@@ -856,20 +815,19 @@ var CardBase = /*#__PURE__*/function (_Component) {
856
815
  isCardVisible: true
857
816
  });
858
817
  }
859
-
860
818
  if ((0, _mediaClient2.isFileIdentifier)(identifier) && (turnedVisible || !!this.subscription && (isNewMediaClient || isDifferent))) {
861
819
  this.updateStateForIdentifier(identifier);
862
820
  }
863
-
864
821
  if (this.state.status !== prevState.status) {
865
822
  this.fireOperationalEvent();
866
-
867
823
  if (this.state.status === 'complete' || this.fileAttributes.fileMediatype === 'video' && !!cardPreview && this.state.status === 'processing') {
868
824
  this.fireScreenEvent();
869
825
  }
870
826
  }
871
-
872
- if ((0, _mediaClient2.isFileIdentifier)(identifier) && fileState && (0, _getCardPreview.shouldResolvePreview)({
827
+ if ((0, _mediaClient2.isFileIdentifier)(identifier) && turnedVisible && !cardPreview && !wasResolvedUpfrontPreview) {
828
+ // This is a one-off call, only meant to happen when turnedVisible = true (only once in the component's lifecycle)
829
+ this.resolveUpfrontPreview(identifier);
830
+ } else if ((0, _mediaClient2.isFileIdentifier)(identifier) && fileState && (0, _getCardPreview.shouldResolvePreview)({
873
831
  status: status,
874
832
  fileState: fileState,
875
833
  prevDimensions: prevDimensions,
@@ -878,28 +836,26 @@ var CardBase = /*#__PURE__*/function (_Component) {
878
836
  fileImageMode: fileImageMode,
879
837
  featureFlags: featureFlags,
880
838
  hasCardPreview: !!cardPreview,
881
- isBannedLocalPreview: isBannedLocalPreview
839
+ isBannedLocalPreview: isBannedLocalPreview,
840
+ wasResolvedUpfrontPreview: wasResolvedUpfrontPreview
882
841
  })) {
883
842
  this.resolvePreview(identifier, fileState);
884
843
  }
885
-
886
844
  if (turnedVisible && this.props.ssr && !!cardPreview && (0, _getCardPreview.isSSRClientPreview)(cardPreview) && (0, _mediaClient2.isFileIdentifier)(identifier)) {
887
845
  // Since the SSR preview brings the token in the query params,
888
846
  // We need to fetch the remote preview to be able to cache it,
889
847
  this.setCacheSSRPreview(identifier);
890
848
  }
891
-
892
- if (previewDidRender && // We should't complete if status is uploading
849
+ if (previewDidRender &&
850
+ // We should't complete if status is uploading
893
851
  ['loading-preview', 'processing'].includes(status)) {
894
852
  this.safeSetState({
895
853
  status: 'complete'
896
854
  });
897
855
  this.unsubscribe();
898
856
  }
899
-
900
857
  var isVideo = this.fileAttributes.fileMediatype === 'video';
901
858
  var videoAvailableToPlay = fileState && (0, _mediaClient2.isProcessedFileState)(fileState);
902
-
903
859
  if (isVideo && !isPlayingFile && disableOverlay && useInlinePlayer && videoAvailableToPlay && (0, _mediaCommon.getMediaFeatureFlag)('timestampOnVideo', this.props.featureFlags)) {
904
860
  this.setState({
905
861
  isPlayingFile: true
@@ -910,7 +866,6 @@ var CardBase = /*#__PURE__*/function (_Component) {
910
866
  key: "componentWillUnmount",
911
867
  value: function componentWillUnmount() {
912
868
  var _getDocument2;
913
-
914
869
  this.hasBeenMounted = false;
915
870
  this.unsubscribe();
916
871
  (_getDocument2 = (0, _document.default)()) === null || _getDocument2 === void 0 ? void 0 : _getDocument2.removeEventListener('copy', this.fireCopiedEvent);
@@ -927,9 +882,7 @@ var CardBase = /*#__PURE__*/function (_Component) {
927
882
  if (!fileState) {
928
883
  return;
929
884
  }
930
-
931
885
  var status = fileState.status;
932
-
933
886
  if (status === 'processing') {
934
887
  this.fileStateFlags.wasStatusProcessing = true;
935
888
  } else if (status === 'uploading') {
@@ -940,12 +893,11 @@ var CardBase = /*#__PURE__*/function (_Component) {
940
893
  key: "subscribeInternalFile",
941
894
  value: function subscribeInternalFile(identifier) {
942
895
  var _this2 = this;
943
-
944
896
  var mediaClient = this.props.mediaClient;
945
897
  var isBannedLocalPreview = this.state.isBannedLocalPreview;
946
898
  var id = identifier.id,
947
- collectionName = identifier.collectionName,
948
- occurrenceKey = identifier.occurrenceKey;
899
+ collectionName = identifier.collectionName,
900
+ occurrenceKey = identifier.occurrenceKey;
949
901
  this.unsubscribe();
950
902
  this.subscription = mediaClient.file.getFileState(id, {
951
903
  collectionName: collectionName,
@@ -954,13 +906,11 @@ var CardBase = /*#__PURE__*/function (_Component) {
954
906
  next: function next(fileState) {
955
907
  var featureFlags = _this2.props.featureFlags;
956
908
  var newState = (0, _cardState.getCardStateFromFileState)(fileState, isBannedLocalPreview, featureFlags);
957
-
958
909
  _this2.safeSetState(newState);
959
910
  },
960
911
  error: function error(e) {
961
912
  var errorReason = _this2.state.status === 'uploading' ? 'upload' : 'metadata-fetch';
962
913
  var error = new _errors.MediaCardError(errorReason, e);
963
-
964
914
  _this2.safeSetState({
965
915
  error: error,
966
916
  status: 'error'
@@ -972,10 +922,8 @@ var CardBase = /*#__PURE__*/function (_Component) {
972
922
  key: "requestedDimensions",
973
923
  get: function get() {
974
924
  var dimensions = this.props.dimensions;
975
-
976
- var _ref4 = this.state || {},
977
- element = _ref4.cardRef;
978
-
925
+ var _ref5 = this.state || {},
926
+ element = _ref5.cardRef;
979
927
  return (0, _getDataURIDimension.getRequestedDimensions)({
980
928
  dimensions: dimensions,
981
929
  element: element
@@ -985,23 +933,21 @@ var CardBase = /*#__PURE__*/function (_Component) {
985
933
  key: "metadata",
986
934
  get: function get() {
987
935
  var _this$state5;
988
-
989
936
  return (0, _metadata.getFileDetails)(this.props.identifier, (_this$state5 = this.state) === null || _this$state5 === void 0 ? void 0 : _this$state5.fileState);
990
937
  }
991
938
  }, {
992
939
  key: "fileAttributes",
993
940
  get: function get() {
994
941
  var _this$state6, _this$state6$fileStat;
995
-
996
942
  return (0, _analytics.getFileAttributes)(this.metadata, (_this$state6 = this.state) === null || _this$state6 === void 0 ? void 0 : (_this$state6$fileStat = _this$state6.fileState) === null || _this$state6$fileStat === void 0 ? void 0 : _this$state6$fileStat.status);
997
943
  }
998
944
  }, {
999
945
  key: "fireOperationalEvent",
1000
946
  value: function fireOperationalEvent() {
1001
947
  var _this$state7 = this.state,
1002
- status = _this$state7.status,
1003
- error = _this$state7.error,
1004
- fileState = _this$state7.fileState;
948
+ status = _this$state7.status,
949
+ error = _this$state7.error,
950
+ fileState = _this$state7.fileState;
1005
951
  var createAnalyticsEvent = this.props.createAnalyticsEvent;
1006
952
  createAnalyticsEvent && (0, _cardAnalytics.fireOperationalEvent)(createAnalyticsEvent, status, this.fileAttributes, this.getPerformanceAttributes(), this.ssrReliability, error, this.traceContext, fileState === null || fileState === void 0 ? void 0 : fileState.metadataTraceContext);
1007
953
  (0, _ufoExperiences.completeUfoExperience)(this.internalOccurrenceKey, status, this.fileAttributes, this.fileStateFlags, this.ssrReliability, error);
@@ -1022,15 +968,13 @@ var CardBase = /*#__PURE__*/function (_Component) {
1022
968
  key: "actions",
1023
969
  get: function get() {
1024
970
  var _this3 = this;
1025
-
1026
- var _this$props14 = this.props,
1027
- _this$props14$actions = _this$props14.actions,
1028
- actions = _this$props14$actions === void 0 ? [] : _this$props14$actions,
1029
- identifier = _this$props14.identifier,
1030
- shouldEnableDownloadButton = _this$props14.shouldEnableDownloadButton;
971
+ var _this$props13 = this.props,
972
+ _this$props13$actions = _this$props13.actions,
973
+ actions = _this$props13$actions === void 0 ? [] : _this$props13$actions,
974
+ identifier = _this$props13.identifier,
975
+ shouldEnableDownloadButton = _this$props13.shouldEnableDownloadButton;
1031
976
  var status = this.state.status;
1032
977
  var metadata = this.metadata;
1033
-
1034
978
  if ((0, _mediaClient2.isFileIdentifier)(identifier) && (status === 'failed-processing' || shouldEnableDownloadButton)) {
1035
979
  var downloadAction = {
1036
980
  label: 'Download',
@@ -1050,11 +994,9 @@ var CardBase = /*#__PURE__*/function (_Component) {
1050
994
  key: "render",
1051
995
  value: function render() {
1052
996
  var _this$state8 = this.state,
1053
- isPlayingFile = _this$state8.isPlayingFile,
1054
- mediaViewerSelectedItem = _this$state8.mediaViewerSelectedItem;
1055
-
997
+ isPlayingFile = _this$state8.isPlayingFile,
998
+ mediaViewerSelectedItem = _this$state8.mediaViewerSelectedItem;
1056
999
  var innerContent = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isPlayingFile ? this.renderInlinePlayer() : this.renderCard(), mediaViewerSelectedItem ? this.renderMediaViewer() : null, this.storeSSRData());
1057
-
1058
1000
  return this.props.intl ? innerContent : /*#__PURE__*/_react.default.createElement(_reactIntlNext.IntlProvider, {
1059
1001
  locale: "en"
1060
1002
  }, innerContent);
@@ -1062,7 +1004,6 @@ var CardBase = /*#__PURE__*/function (_Component) {
1062
1004
  }]);
1063
1005
  return CardBase;
1064
1006
  }(_react.Component);
1065
-
1066
1007
  exports.CardBase = CardBase;
1067
1008
  (0, _defineProperty2.default)(CardBase, "defaultProps", {
1068
1009
  appearance: 'auto',