@atlaskit/media-card 70.10.0 → 72.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/CHANGELOG.md +79 -0
  2. package/dist/cjs/errors.js +76 -5
  3. package/dist/cjs/files/cardImageView/index.js +58 -89
  4. package/dist/cjs/files/index.js +0 -6
  5. package/dist/cjs/index.js +16 -6
  6. package/dist/cjs/root/card/cardAnalytics.js +33 -19
  7. package/dist/cjs/root/card/cardConstants.js +8 -0
  8. package/dist/cjs/root/card/cardLoader.js +66 -124
  9. package/dist/cjs/root/card/cardState.js +50 -0
  10. package/dist/cjs/root/card/getCardPreview/cache.js +5 -0
  11. package/dist/cjs/root/card/getCardPreview/filePreviewStatus.js +50 -0
  12. package/dist/cjs/root/card/getCardPreview/helpers.js +13 -21
  13. package/dist/cjs/root/card/getCardPreview/index.js +171 -100
  14. package/dist/cjs/root/card/getCardStatus.js +7 -1
  15. package/dist/cjs/root/card/index.js +407 -322
  16. package/dist/cjs/root/cardView.js +115 -76
  17. package/dist/cjs/root/index.js +9 -1
  18. package/dist/cjs/root/inline/loader.js +22 -21
  19. package/dist/cjs/root/inline/{inlineMediaCard.js → mediaInlineCard.js} +72 -25
  20. package/dist/cjs/root/inlinePlayer.js +5 -15
  21. package/dist/cjs/root/ui/iconMessage/index.js +17 -9
  22. package/dist/cjs/root/ui/imageRenderer/imageRenderer.js +36 -115
  23. package/dist/cjs/root/ui/styled.js +1 -1
  24. package/dist/cjs/root/ui/titleBox/failedTitleBox.js +7 -3
  25. package/dist/cjs/utils/analytics.js +26 -43
  26. package/dist/cjs/utils/cardActions/cardActionsDropdownMenu.js +16 -9
  27. package/dist/cjs/utils/dimensionComparer.js +1 -1
  28. package/dist/cjs/utils/document.js +12 -0
  29. package/dist/cjs/utils/getDataURIDimension.js +13 -2
  30. package/dist/cjs/utils/metadata.js +11 -3
  31. package/dist/cjs/utils/objectURLCache.js +6 -0
  32. package/dist/cjs/utils/resizeModeToMediaImageProps.js +13 -0
  33. package/dist/cjs/utils/shouldDisplayImageThumbnail.js +1 -1
  34. package/dist/cjs/version.json +1 -1
  35. package/dist/es2019/errors.js +42 -2
  36. package/dist/es2019/files/cardImageView/index.js +12 -46
  37. package/dist/es2019/files/index.js +1 -1
  38. package/dist/es2019/index.js +3 -3
  39. package/dist/es2019/root/card/cardAnalytics.js +23 -17
  40. package/dist/es2019/root/card/cardConstants.js +1 -0
  41. package/dist/es2019/root/card/cardLoader.js +47 -53
  42. package/dist/es2019/root/card/cardState.js +26 -0
  43. package/dist/es2019/root/card/getCardPreview/cache.js +5 -0
  44. package/dist/es2019/root/card/getCardPreview/filePreviewStatus.js +35 -0
  45. package/dist/es2019/root/card/getCardPreview/helpers.js +2 -12
  46. package/dist/es2019/root/card/getCardPreview/index.js +112 -79
  47. package/dist/es2019/root/card/getCardStatus.js +1 -0
  48. package/dist/es2019/root/card/index.js +356 -254
  49. package/dist/es2019/root/cardView.js +98 -58
  50. package/dist/es2019/root/index.js +2 -1
  51. package/dist/es2019/root/inline/loader.js +16 -15
  52. package/dist/es2019/root/inline/mediaInlineCard.js +132 -0
  53. package/dist/es2019/root/inlinePlayer.js +5 -13
  54. package/dist/es2019/root/ui/iconMessage/index.js +10 -6
  55. package/dist/es2019/root/ui/imageRenderer/imageRenderer.js +26 -74
  56. package/dist/es2019/root/ui/styled.js +1 -0
  57. package/dist/es2019/root/ui/titleBox/failedTitleBox.js +5 -3
  58. package/dist/es2019/utils/analytics.js +29 -40
  59. package/dist/es2019/utils/cardActions/cardActionsDropdownMenu.js +8 -4
  60. package/dist/es2019/utils/dimensionComparer.js +1 -1
  61. package/dist/es2019/utils/document.js +1 -0
  62. package/dist/es2019/utils/getDataURIDimension.js +8 -0
  63. package/dist/es2019/utils/metadata.js +12 -4
  64. package/dist/es2019/utils/objectURLCache.js +5 -0
  65. package/dist/es2019/utils/resizeModeToMediaImageProps.js +6 -0
  66. package/dist/es2019/utils/shouldDisplayImageThumbnail.js +1 -1
  67. package/dist/es2019/version.json +1 -1
  68. package/dist/esm/errors.js +60 -1
  69. package/dist/esm/files/cardImageView/index.js +55 -87
  70. package/dist/esm/files/index.js +1 -1
  71. package/dist/esm/index.js +3 -3
  72. package/dist/esm/root/card/cardAnalytics.js +23 -18
  73. package/dist/esm/root/card/cardConstants.js +1 -0
  74. package/dist/esm/root/card/cardLoader.js +66 -126
  75. package/dist/esm/root/card/cardState.js +32 -0
  76. package/dist/esm/root/card/getCardPreview/cache.js +6 -0
  77. package/dist/esm/root/card/getCardPreview/filePreviewStatus.js +35 -0
  78. package/dist/esm/root/card/getCardPreview/helpers.js +13 -21
  79. package/dist/esm/root/card/getCardPreview/index.js +142 -95
  80. package/dist/esm/root/card/getCardStatus.js +3 -0
  81. package/dist/esm/root/card/index.js +416 -325
  82. package/dist/esm/root/cardView.js +114 -73
  83. package/dist/esm/root/index.js +2 -1
  84. package/dist/esm/root/inline/loader.js +23 -22
  85. package/dist/esm/root/inline/mediaInlineCard.js +145 -0
  86. package/dist/esm/root/inlinePlayer.js +5 -13
  87. package/dist/esm/root/ui/iconMessage/index.js +12 -7
  88. package/dist/esm/root/ui/imageRenderer/imageRenderer.js +28 -106
  89. package/dist/esm/root/ui/styled.js +1 -1
  90. package/dist/esm/root/ui/titleBox/failedTitleBox.js +6 -3
  91. package/dist/esm/utils/analytics.js +22 -35
  92. package/dist/esm/utils/cardActions/cardActionsDropdownMenu.js +16 -9
  93. package/dist/esm/utils/dimensionComparer.js +1 -1
  94. package/dist/esm/utils/document.js +3 -0
  95. package/dist/esm/utils/getDataURIDimension.js +8 -0
  96. package/dist/esm/utils/metadata.js +12 -4
  97. package/dist/esm/utils/objectURLCache.js +6 -0
  98. package/dist/esm/utils/resizeModeToMediaImageProps.js +6 -0
  99. package/dist/esm/utils/shouldDisplayImageThumbnail.js +1 -1
  100. package/dist/esm/version.json +1 -1
  101. package/dist/types/errors.d.ts +15 -1
  102. package/dist/types/files/cardImageView/index.d.ts +5 -12
  103. package/dist/types/files/cardImageView/styled.d.ts +1 -1
  104. package/dist/types/files/index.d.ts +1 -1
  105. package/dist/types/index.d.ts +11 -13
  106. package/dist/types/root/card/cardAnalytics.d.ts +5 -7
  107. package/dist/types/root/card/cardConstants.d.ts +1 -0
  108. package/dist/types/root/card/cardLoader.d.ts +4 -18
  109. package/dist/types/root/card/cardState.d.ts +5 -0
  110. package/dist/types/root/card/getCardPreview/cache.d.ts +4 -2
  111. package/dist/types/root/card/getCardPreview/filePreviewStatus.d.ts +5 -0
  112. package/dist/types/root/card/getCardPreview/helpers.d.ts +4 -5
  113. package/dist/types/root/card/getCardPreview/index.d.ts +25 -14
  114. package/dist/types/root/card/getCardStatus.d.ts +1 -0
  115. package/dist/types/root/card/index.d.ts +18 -15
  116. package/dist/types/root/cardView.d.ts +14 -8
  117. package/dist/types/root/index.d.ts +1 -0
  118. package/dist/types/root/inline/loader.d.ts +8 -8
  119. package/dist/types/root/inline/{inlineMediaCard.d.ts → mediaInlineCard.d.ts} +4 -4
  120. package/dist/types/root/inlinePlayer.d.ts +1 -1
  121. package/dist/types/root/ui/iconMessage/index.d.ts +7 -2
  122. package/dist/types/root/ui/imageRenderer/imageRenderer.d.ts +5 -18
  123. package/dist/types/root/ui/titleBox/failedTitleBox.d.ts +2 -0
  124. package/dist/types/types.d.ts +9 -1
  125. package/dist/types/utils/analytics.d.ts +20 -21
  126. package/dist/types/utils/cardDimensions.d.ts +5 -1
  127. package/dist/types/utils/dimensionComparer.d.ts +1 -1
  128. package/dist/types/utils/document.d.ts +2 -0
  129. package/dist/types/utils/getDataURIDimension.d.ts +3 -1
  130. package/dist/types/utils/index.d.ts +1 -0
  131. package/dist/types/utils/lazyContent/styled.d.ts +1 -1
  132. package/dist/types/utils/lightCards/types.d.ts +1 -1
  133. package/dist/types/utils/metadata.d.ts +2 -2
  134. package/dist/types/utils/objectURLCache.d.ts +2 -1
  135. package/dist/types/utils/resizeModeToMediaImageProps.d.ts +5 -0
  136. package/dist/types/utils/shouldDisplayImageThumbnail.d.ts +1 -1
  137. package/example-helpers/developmentUseMessage.tsx +14 -0
  138. package/example-helpers/index.tsx +55 -4
  139. package/example-helpers/selectableCard.tsx +2 -1
  140. package/package.json +18 -14
  141. package/dist/cjs/root/card/getCardPreview/types.js +0 -5
  142. package/dist/cjs/utils/fileAttributesContext.js +0 -40
  143. package/dist/es2019/root/card/getCardPreview/types.js +0 -1
  144. package/dist/es2019/root/inline/inlineMediaCard.js +0 -92
  145. package/dist/es2019/utils/fileAttributesContext.js +0 -19
  146. package/dist/esm/root/card/getCardPreview/types.js +0 -1
  147. package/dist/esm/root/inline/inlineMediaCard.js +0 -100
  148. package/dist/esm/utils/fileAttributesContext.js +0 -18
  149. package/dist/types/root/card/getCardPreview/types.d.ts +0 -5
  150. package/dist/types/utils/fileAttributesContext.d.ts +0 -10
package/CHANGELOG.md CHANGED
@@ -1,5 +1,84 @@
1
1
  # @atlaskit/media-card
2
2
 
3
+ ## 72.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`1724e1b8277`](https://bitbucket.org/atlassian/atlassian-frontend/commits/1724e1b8277) - Added SSR capabilities to Media Card
8
+ - [`ca519a86b1d`](https://bitbucket.org/atlassian/atlassian-frontend/commits/ca519a86b1d) - Add new prop forceSyncDisplay in MediaImage to provide an option of always showing images.
9
+ Enable MediaCard to turn on forceSyncDisplay when server side rendering is enabled.
10
+ - [`ac4846d0f3f`](https://bitbucket.org/atlassian/atlassian-frontend/commits/ac4846d0f3f) - Added native lazy load support
11
+
12
+ ### Patch Changes
13
+
14
+ - [`fc70978492a`](https://bitbucket.org/atlassian/atlassian-frontend/commits/fc70978492a) - Using type for SSR prop to reduce dependency on media-common
15
+ - [`dc1f9d42903`](https://bitbucket.org/atlassian/atlassian-frontend/commits/dc1f9d42903) - Fixed error message logic
16
+ - [`27c61b8cdd8`](https://bitbucket.org/atlassian/atlassian-frontend/commits/27c61b8cdd8) - revert CardSSRView component
17
+ - [`12bfc09a21e`](https://bitbucket.org/atlassian/atlassian-frontend/commits/12bfc09a21e) - Fixing internal prop calls for testId and removing references to the old DropdownMenuStateless export when using the new default export.
18
+ - [`2b24fcc59f2`](https://bitbucket.org/atlassian/atlassian-frontend/commits/2b24fcc59f2) - Removed Code Viewer and Zip Previews Feature Flags
19
+ - [`bccde8a4127`](https://bitbucket.org/atlassian/atlassian-frontend/commits/bccde8a4127) - Update dependency of dropdown menu to the lite mode version. Update all usages to cater to the new API. The padding within dropdown menu items is 8px more, which makes the menu look bigger.
20
+ - [`3a56ce8792b`](https://bitbucket.org/atlassian/atlassian-frontend/commits/3a56ce8792b) - [ux] Show selected for mediaInline in other states
21
+ - [`f461edcfd05`](https://bitbucket.org/atlassian/atlassian-frontend/commits/f461edcfd05) - Update CardLoader to use react-loadable
22
+ Add SSR feature prop to be passed in renderer and media card
23
+ - Updated dependencies
24
+
25
+ ## 72.0.0
26
+
27
+ ### Major Changes
28
+
29
+ - [`b3606652fa1`](https://bitbucket.org/atlassian/atlassian-frontend/commits/b3606652fa1) - [ux] Editor integration for Media Inline component
30
+
31
+ ### Minor Changes
32
+
33
+ - [`269ee940b87`](https://bitbucket.org/atlassian/atlassian-frontend/commits/269ee940b87) - redesign error UI on new media card experience
34
+
35
+ ### Patch Changes
36
+
37
+ - [`a81fdad4b7b`](https://bitbucket.org/atlassian/atlassian-frontend/commits/a81fdad4b7b) - Refactored the internal status logic based on file processing status and preview render outcome
38
+ - [`b51fc0a9062`](https://bitbucket.org/atlassian/atlassian-frontend/commits/b51fc0a9062) - Refactored internal helpers to match common type definitions from Media Client
39
+ - [`ebad8bc86e5`](https://bitbucket.org/atlassian/atlassian-frontend/commits/ebad8bc86e5) - Moved analytics from image renderer to root component
40
+ - [`fe9ced0cd70`](https://bitbucket.org/atlassian/atlassian-frontend/commits/fe9ced0cd70) - Removed feature flags for polling settings
41
+ - Updated dependencies
42
+
43
+ ## 71.0.0
44
+
45
+ ### Major Changes
46
+
47
+ - [`cf853e39278`](https://bitbucket.org/atlassian/atlassian-frontend/commits/cf853e39278) - [ux] Updated and refreshed media inline component
48
+
49
+ ### Minor Changes
50
+
51
+ - [`cf853e39278`](https://bitbucket.org/atlassian/atlassian-frontend/commits/cf853e39278) - [ux] Skip forward and backward buttons are added to inline media player
52
+ - [`cf853e39278`](https://bitbucket.org/atlassian/atlassian-frontend/commits/cf853e39278) - Added analytics event to track total impressions of successfully rendered mediacards
53
+
54
+ ### Patch Changes
55
+
56
+ - [`cf853e39278`](https://bitbucket.org/atlassian/atlassian-frontend/commits/cf853e39278) - Adding lazy loading as the default for the SSR media card
57
+ - [`cf853e39278`](https://bitbucket.org/atlassian/atlassian-frontend/commits/cf853e39278) - fix modification for media card flow example
58
+ - [`f3547c79d81`](https://bitbucket.org/atlassian/atlassian-frontend/commits/f3547c79d81) - Updated in-code comment
59
+ - Updated dependencies
60
+
61
+ ## 70.11.0
62
+
63
+ ### Minor Changes
64
+
65
+ - [`5559b9ca1b4`](https://bitbucket.org/atlassian/atlassian-frontend/commits/5559b9ca1b4) - Media CardView component renders consistent views in error and failed-processing status regardless of thumbnail image.
66
+ - [`9ecd471f124`](https://bitbucket.org/atlassian/atlassian-frontend/commits/9ecd471f124) - Adding a dedicated server side media card
67
+ - [`ab905c0e924`](https://bitbucket.org/atlassian/atlassian-frontend/commits/ab905c0e924) - [ux] EDM-1641: add floating toolbar to media card and view switcher for inline view
68
+ - [`46d9d2872b4`](https://bitbucket.org/atlassian/atlassian-frontend/commits/46d9d2872b4) - Video Analytics - Add UI events for CustomMediaPlayer
69
+
70
+ ### Patch Changes
71
+
72
+ - [`d0357a98b97`](https://bitbucket.org/atlassian/atlassian-frontend/commits/d0357a98b97) - Small code refactor
73
+ - [`4777a174e6d`](https://bitbucket.org/atlassian/atlassian-frontend/commits/4777a174e6d) - Added analytics support for customMediaPlayer + screen event + entrypoint for locales
74
+ - [`b77bfe8e99c`](https://bitbucket.org/atlassian/atlassian-frontend/commits/b77bfe8e99c) - Add performance attributes to Commenced, Succeeded, Failed events for media card
75
+ - [`2debd2fdf3d`](https://bitbucket.org/atlassian/atlassian-frontend/commits/2debd2fdf3d) - Remove the default type icon rendered in media card background
76
+ - [`26ef709f133`](https://bitbucket.org/atlassian/atlassian-frontend/commits/26ef709f133) - Refactored Copy & Commenced Analytics events
77
+ - [`b90c0237824`](https://bitbucket.org/atlassian/atlassian-frontend/commits/b90c0237824) - Update package.jsons to remove unused dependencies.
78
+ - [`493b1b43d50`](https://bitbucket.org/atlassian/atlassian-frontend/commits/493b1b43d50) - Modify file card flow example
79
+ - [`e7d1eb5cd0a`](https://bitbucket.org/atlassian/atlassian-frontend/commits/e7d1eb5cd0a) - handle loading-preview status for card view
80
+ - Updated dependencies
81
+
3
82
  ## 70.10.0
4
83
 
5
84
  ### Minor Changes
@@ -6,7 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.isMediaCardError = isMediaCardError;
9
- exports.ensureMediaCardError = exports.isUnsupportedLocalPreviewError = exports.isRemotePreviewError = exports.isLocalPreviewError = exports.RemotePreviewError = exports.LocalPreviewError = exports.MediaCardError = void 0;
9
+ exports.isImageLoadError = isImageLoadError;
10
+ exports.isUploadError = exports.ensureMediaCardError = exports.isUnsupportedLocalPreviewError = exports.isRemotePreviewError = exports.isLocalPreviewError = exports.ImageLoadError = exports.getImageLoadPrimaryReason = exports.SsrPreviewError = exports.RemotePreviewError = exports.LocalPreviewError = exports.MediaCardError = void 0;
10
11
 
11
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
13
 
@@ -91,6 +92,66 @@ var RemotePreviewError = /*#__PURE__*/function (_MediaCardError2) {
91
92
 
92
93
  exports.RemotePreviewError = RemotePreviewError;
93
94
 
95
+ var SsrPreviewError = /*#__PURE__*/function (_MediaCardError3) {
96
+ (0, _inherits2.default)(SsrPreviewError, _MediaCardError3);
97
+
98
+ var _super4 = _createSuper(SsrPreviewError);
99
+
100
+ function SsrPreviewError(primaryReason, secondaryError) {
101
+ var _this4;
102
+
103
+ (0, _classCallCheck2.default)(this, SsrPreviewError);
104
+ _this4 = _super4.call(this, primaryReason, secondaryError);
105
+ _this4.primaryReason = primaryReason;
106
+ _this4.secondaryError = secondaryError;
107
+ return _this4;
108
+ }
109
+
110
+ return SsrPreviewError;
111
+ }(MediaCardError);
112
+
113
+ exports.SsrPreviewError = SsrPreviewError;
114
+
115
+ var getImageLoadPrimaryReason = function getImageLoadPrimaryReason(source) {
116
+ switch (source) {
117
+ case 'cache-remote':
118
+ return 'cache-remote-uri';
119
+
120
+ case 'cache-local':
121
+ return 'cache-local-uri';
122
+
123
+ case 'external':
124
+ return 'external-uri';
125
+
126
+ case 'local':
127
+ return 'local-uri';
128
+
129
+ case 'remote':
130
+ return 'remote-uri';
131
+ // This fail reason will come from a bug, most likely.
132
+
133
+ default:
134
+ return "unknown-uri";
135
+ }
136
+ };
137
+
138
+ exports.getImageLoadPrimaryReason = getImageLoadPrimaryReason;
139
+
140
+ var ImageLoadError = /*#__PURE__*/function (_MediaCardError4) {
141
+ (0, _inherits2.default)(ImageLoadError, _MediaCardError4);
142
+
143
+ var _super5 = _createSuper(ImageLoadError);
144
+
145
+ function ImageLoadError(source) {
146
+ (0, _classCallCheck2.default)(this, ImageLoadError);
147
+ return _super5.call(this, getImageLoadPrimaryReason(source));
148
+ }
149
+
150
+ return ImageLoadError;
151
+ }(MediaCardError);
152
+
153
+ exports.ImageLoadError = ImageLoadError;
154
+
94
155
  function isMediaCardError(err) {
95
156
  return err instanceof MediaCardError;
96
157
  }
@@ -109,14 +170,24 @@ exports.isRemotePreviewError = isRemotePreviewError;
109
170
 
110
171
  var isUnsupportedLocalPreviewError = function isUnsupportedLocalPreviewError(err) {
111
172
  return isMediaCardError(err) && err.primaryReason === 'local-preview-unsupported';
112
- }; // In a try/catch statement, the error caught is the type of any.
113
- // We can use this helper to ensure that the error handled is the type of MediaCardError if unsure
114
-
173
+ };
115
174
 
116
175
  exports.isUnsupportedLocalPreviewError = isUnsupportedLocalPreviewError;
117
176
 
177
+ function isImageLoadError(err) {
178
+ return err instanceof ImageLoadError;
179
+ } // In a try/catch statement, the error caught is the type of any.
180
+ // We can use this helper to ensure that the error handled is the type of MediaCardError if unsure
181
+
182
+
118
183
  var ensureMediaCardError = function ensureMediaCardError(primaryReason, error) {
119
184
  return isMediaCardError(error) ? error : new MediaCardError(primaryReason, error);
120
185
  };
121
186
 
122
- exports.ensureMediaCardError = ensureMediaCardError;
187
+ exports.ensureMediaCardError = ensureMediaCardError;
188
+
189
+ var isUploadError = function isUploadError(error) {
190
+ return error && error.primaryReason === 'upload';
191
+ };
192
+
193
+ exports.isUploadError = isUploadError;
@@ -7,7 +7,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports.FileCardImageView = exports.FileCardImageViewBase = exports.fileCardImageViewSelector = void 0;
10
+ exports.FileCardImageView = exports.fileCardImageViewSelectedSelector = exports.fileCardImageViewSelector = void 0;
11
11
 
12
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
13
 
@@ -41,12 +41,6 @@ var _progressBar = require("../../utils/progressBar");
41
41
 
42
42
  var _cardActions = _interopRequireDefault(require("../../utils/cardActions"));
43
43
 
44
- var _analyticsNext = require("@atlaskit/analytics-next");
45
-
46
- var _analytics = require("../../utils/analytics");
47
-
48
- var _fileAttributesContext = require("../../utils/fileAttributesContext");
49
-
50
44
  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); }
51
45
 
52
46
  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; }
@@ -57,16 +51,18 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
57
51
 
58
52
  var fileCardImageViewSelector = 'media-file-card-view';
59
53
  exports.fileCardImageViewSelector = fileCardImageViewSelector;
54
+ var fileCardImageViewSelectedSelector = 'media-file-card-view-selected';
55
+ exports.fileCardImageViewSelectedSelector = fileCardImageViewSelectedSelector;
60
56
 
61
- var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
62
- (0, _inherits2.default)(FileCardImageViewBase, _Component);
57
+ var FileCardImageView = /*#__PURE__*/function (_Component) {
58
+ (0, _inherits2.default)(FileCardImageView, _Component);
63
59
 
64
- var _super = _createSuper(FileCardImageViewBase);
60
+ var _super = _createSuper(FileCardImageView);
65
61
 
66
- function FileCardImageViewBase() {
62
+ function FileCardImageView() {
67
63
  var _this;
68
64
 
69
- (0, _classCallCheck2.default)(this, FileCardImageViewBase);
65
+ (0, _classCallCheck2.default)(this, FileCardImageView);
70
66
 
71
67
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
72
68
  args[_key] = arguments[_key];
@@ -88,7 +84,7 @@ var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
88
84
  // immediately, even if there's no image preview
89
85
 
90
86
 
91
- var isZeroSize = fileSize === '' && status === 'processing';
87
+ var isZeroSize = fileSize === '' && ['processing', 'loading-preview'].includes(status);
92
88
 
93
89
  if (mediaType !== 'video' && !_this.isFileCardImageReadyForDisplay && !isZeroSize) {
94
90
  return _this.renderLoadingContents();
@@ -184,40 +180,18 @@ var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
184
180
  size: "large"
185
181
  })));
186
182
  });
187
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onImageLoad", function () {
188
- var _this$props6 = _this.props,
189
- createAnalyticsEvent = _this$props6.createAnalyticsEvent,
190
- fileAttributes = _this$props6.fileAttributes;
191
-
192
- if (fileAttributes && _this.shouldFireEvent(_analytics.RenderEventAction.SUCCEEDED)) {
193
- (0, _analytics.fireMediaCardEvent)((0, _analytics.getRenderSucceededEventPayload)(fileAttributes), createAnalyticsEvent);
194
- }
195
- });
196
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onImageError", function () {
197
- var fileAttributes = _this.props.fileAttributes;
198
-
199
- if (fileAttributes && _this.shouldFireEvent(_analytics.RenderEventAction.FAILED)) {
200
- var _this$props7 = _this.props,
201
- createAnalyticsEvent = _this$props7.createAnalyticsEvent,
202
- mediaItemType = _this$props7.mediaItemType;
203
-
204
- if (mediaItemType === 'file') {
205
- (0, _analytics.fireMediaCardEvent)((0, _analytics.getRenderFailedFileUriPayload)(fileAttributes), createAnalyticsEvent);
206
- } else if (mediaItemType === 'external-image') {
207
- (0, _analytics.fireMediaCardEvent)((0, _analytics.getRenderFailedExternalUriPayload)(fileAttributes), createAnalyticsEvent);
208
- }
209
- }
210
- });
211
183
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderMediaImage", function () {
212
- var _this$props8 = _this.props,
213
- status = _this$props8.status,
214
- mediaItemType = _this$props8.mediaItemType,
215
- dataURI = _this$props8.dataURI,
216
- mediaType = _this$props8.mediaType,
217
- mimeType = _this$props8.mimeType,
218
- previewOrientation = _this$props8.previewOrientation,
219
- onDisplayImage = _this$props8.onDisplayImage,
220
- alt = _this$props8.alt;
184
+ var _this$props6 = _this.props,
185
+ status = _this$props6.status,
186
+ mediaItemType = _this$props6.mediaItemType,
187
+ dataURI = _this$props6.dataURI,
188
+ mediaType = _this$props6.mediaType,
189
+ mimeType = _this$props6.mimeType,
190
+ previewOrientation = _this$props6.previewOrientation,
191
+ onDisplayImage = _this$props6.onDisplayImage,
192
+ alt = _this$props6.alt,
193
+ onImageLoad = _this$props6.onImageLoad,
194
+ onImageError = _this$props6.onImageError;
221
195
 
222
196
  if (!(0, _shouldDisplayImageThumbnail.shouldDisplayImageThumbnail)(status, mediaItemType, dataURI, mediaType, mimeType)) {
223
197
  return null;
@@ -234,19 +208,16 @@ var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
234
208
  crop: _this.isCropped,
235
209
  stretch: _this.isStretched,
236
210
  previewOrientation: previewOrientation,
237
- onImageLoad: _this.onImageLoad,
238
- onImageError: _this.onImageError
211
+ onImageLoad: onImageLoad,
212
+ onImageError: onImageError
239
213
  });
240
214
  });
241
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "shouldFireEvent", function (action) {
242
- return !_this.lastAnalyticsAction || _this.lastAnalyticsAction !== action;
243
- });
244
215
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderProgressBar", function () {
245
- var _this$props9 = _this.props,
246
- mediaName = _this$props9.mediaName,
247
- progress = _this$props9.progress,
248
- actions = _this$props9.actions,
249
- status = _this$props9.status;
216
+ var _this$props7 = _this.props,
217
+ mediaName = _this$props7.mediaName,
218
+ progress = _this$props7.progress,
219
+ actions = _this$props7.actions,
220
+ status = _this$props7.status;
250
221
 
251
222
  if (status !== 'uploading') {
252
223
  return null;
@@ -264,10 +235,10 @@ var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
264
235
  }) : null))));
265
236
  });
266
237
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderSuccessCardContents", function () {
267
- var _this$props10 = _this.props,
268
- disableOverlay = _this$props10.disableOverlay,
269
- selectable = _this$props10.selectable,
270
- status = _this$props10.status;
238
+ var _this$props8 = _this.props,
239
+ disableOverlay = _this$props8.disableOverlay,
240
+ selectable = _this$props8.selectable,
241
+ status = _this$props8.status;
271
242
  var overlay = null;
272
243
 
273
244
  if (!disableOverlay) {
@@ -287,15 +258,15 @@ var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
287
258
  }, _this.renderMediaImage(), _this.renderProgressBar(), _this.renderPlayButton()), overlay);
288
259
  });
289
260
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderSuccessCardOverlay", function () {
290
- var _this$props11 = _this.props,
291
- status = _this$props11.status,
292
- mediaName = _this$props11.mediaName,
293
- mediaType = _this$props11.mediaType,
294
- fileSize = _this$props11.fileSize,
295
- dataURI = _this$props11.dataURI,
296
- selectable = _this$props11.selectable,
297
- selected = _this$props11.selected,
298
- actions = _this$props11.actions;
261
+ var _this$props9 = _this.props,
262
+ status = _this$props9.status,
263
+ mediaName = _this$props9.mediaName,
264
+ mediaType = _this$props9.mediaType,
265
+ fileSize = _this$props9.fileSize,
266
+ dataURI = _this$props9.dataURI,
267
+ selectable = _this$props9.selectable,
268
+ selected = _this$props9.selected,
269
+ actions = _this$props9.actions;
299
270
  var isPersistent = mediaType === 'doc' || !dataURI;
300
271
  return /*#__PURE__*/_react.default.createElement(_cardOverlay.CardOverlay, {
301
272
  cardStatus: status,
@@ -311,17 +282,17 @@ var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
311
282
  return _this;
312
283
  }
313
284
 
314
- (0, _createClass2.default)(FileCardImageViewBase, [{
285
+ (0, _createClass2.default)(FileCardImageView, [{
315
286
  key: "render",
316
287
  value: function render() {
317
- var _this$props12 = this.props,
318
- disableOverlay = _this$props12.disableOverlay,
319
- selectable = _this$props12.selectable,
320
- selected = _this$props12.selected,
321
- mediaType = _this$props12.mediaType,
322
- progress = _this$props12.progress,
323
- status = _this$props12.status,
324
- mediaName = _this$props12.mediaName;
288
+ var _this$props10 = this.props,
289
+ disableOverlay = _this$props10.disableOverlay,
290
+ selectable = _this$props10.selectable,
291
+ selected = _this$props10.selected,
292
+ mediaType = _this$props10.mediaType,
293
+ progress = _this$props10.progress,
294
+ status = _this$props10.status,
295
+ mediaName = _this$props10.mediaName;
325
296
  return /*#__PURE__*/_react.default.createElement(_styled.Wrapper, {
326
297
  "data-testid": "media-file-card-view",
327
298
  "data-test-media-name": mediaName,
@@ -332,16 +303,16 @@ var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
332
303
  selectable: selectable,
333
304
  selected: selected,
334
305
  mediaType: mediaType,
335
- className: fileCardImageViewSelector
306
+ className: "".concat(fileCardImageViewSelector, " ").concat(selected ? fileCardImageViewSelectedSelector : '')
336
307
  }, this.renderCardContents());
337
308
  }
338
309
  }, {
339
310
  key: "isFileCardImageReadyForDisplay",
340
311
  get: function get() {
341
- var _this$props13 = this.props,
342
- dataURI = _this$props13.dataURI,
343
- status = _this$props13.status;
344
- return !!dataURI || !['loading', 'processing'].includes(status);
312
+ var _this$props11 = this.props,
313
+ dataURI = _this$props11.dataURI,
314
+ status = _this$props11.status;
315
+ return !!dataURI || !['loading', 'processing', 'loading-preview'].includes(status);
345
316
  }
346
317
  }, {
347
318
  key: "isCropped",
@@ -356,13 +327,11 @@ var FileCardImageViewBase = /*#__PURE__*/function (_Component) {
356
327
  return resizeMode === 'stretchy-fit';
357
328
  }
358
329
  }]);
359
- return FileCardImageViewBase;
330
+ return FileCardImageView;
360
331
  }(_react.Component);
361
332
 
362
- exports.FileCardImageViewBase = FileCardImageViewBase;
363
- (0, _defineProperty2.default)(FileCardImageViewBase, "defaultProps", {
333
+ exports.FileCardImageView = FileCardImageView;
334
+ (0, _defineProperty2.default)(FileCardImageView, "defaultProps", {
364
335
  resizeMode: 'crop',
365
336
  disableOverlay: false
366
- });
367
- var FileCardImageView = (0, _analyticsNext.withAnalyticsEvents)()((0, _fileAttributesContext.withFileAttributes)(FileCardImageViewBase));
368
- exports.FileCardImageView = FileCardImageView;
337
+ });
@@ -9,11 +9,5 @@ Object.defineProperty(exports, "FileCardImageView", {
9
9
  return _cardImageView.FileCardImageView;
10
10
  }
11
11
  });
12
- Object.defineProperty(exports, "FileCardImageViewBase", {
13
- enumerable: true,
14
- get: function get() {
15
- return _cardImageView.FileCardImageViewBase;
16
- }
17
- });
18
12
 
19
13
  var _cardImageView = require("./cardImageView");
package/dist/cjs/index.js CHANGED
@@ -1,14 +1,18 @@
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
  Object.defineProperty(exports, "Card", {
9
7
  enumerable: true,
10
8
  get: function get() {
11
- return _cardLoader.default;
9
+ return _root.Card;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "MediaInlineCard", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _root.MediaInlineCard;
12
16
  }
13
17
  });
14
18
  Object.defineProperty(exports, "CardLoading", {
@@ -35,6 +39,12 @@ Object.defineProperty(exports, "fileCardImageViewSelector", {
35
39
  return _cardImageView.fileCardImageViewSelector;
36
40
  }
37
41
  });
42
+ Object.defineProperty(exports, "fileCardImageViewSelectedSelector", {
43
+ enumerable: true,
44
+ get: function get() {
45
+ return _cardImageView.fileCardImageViewSelectedSelector;
46
+ }
47
+ });
38
48
  Object.defineProperty(exports, "inlinePlayerClassName", {
39
49
  enumerable: true,
40
50
  get: function get() {
@@ -44,11 +54,11 @@ Object.defineProperty(exports, "inlinePlayerClassName", {
44
54
  Object.defineProperty(exports, "newFileExperienceClassName", {
45
55
  enumerable: true,
46
56
  get: function get() {
47
- return _cardView.newFileExperienceClassName;
57
+ return _cardConstants.newFileExperienceClassName;
48
58
  }
49
59
  });
50
60
 
51
- var _cardLoader = _interopRequireDefault(require("./root/card/cardLoader"));
61
+ var _root = require("./root");
52
62
 
53
63
  var _cardLoading = require("./utils/lightCards/cardLoading");
54
64
 
@@ -60,4 +70,4 @@ var _cardImageView = require("./files/cardImageView");
60
70
 
61
71
  var _inlinePlayer = require("./root/inlinePlayer");
62
72
 
63
- var _cardView = require("./root/cardView");
73
+ var _cardConstants = require("./root/card/cardConstants");
@@ -3,43 +3,57 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.fireOperationalEvent = exports.relevantFeatureFlagNames = void 0;
6
+ exports.fireScreenEvent = exports.fireCopiedEvent = exports.fireCommencedEvent = exports.fireOperationalEvent = exports.relevantFeatureFlagNames = void 0;
7
7
 
8
8
  var _analytics = require("../../utils/analytics");
9
9
 
10
- var relevantFeatureFlagNames = ['newCardExperience', 'poll_intervalMs', 'poll_maxAttempts', 'poll_backoffFactor', 'poll_maxIntervalMs', 'captions'];
10
+ var relevantFeatureFlagNames = ['newCardExperience', 'captions'];
11
11
  exports.relevantFeatureFlagNames = relevantFeatureFlagNames;
12
12
 
13
- var fireOperationalEvent = function fireOperationalEvent(createAnalyticsEvent, status, fileAttributes) {
14
- var _ref = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
15
- cardPreview = _ref.cardPreview,
16
- error = _ref.error;
17
-
13
+ var fireOperationalEvent = function fireOperationalEvent(createAnalyticsEvent, status, fileAttributes, performanceAttributes, error) {
18
14
  var fireEvent = function fireEvent(payload) {
19
15
  return (0, _analytics.fireMediaCardEvent)(payload, createAnalyticsEvent);
20
16
  };
21
17
 
22
18
  switch (status) {
23
19
  case 'complete':
24
- /**
25
- * A Card that is considered Complete and has no preview,
26
- * reflects an expected behaviour, and thus a legitimate
27
- * success case to be logged.
28
- */
29
- if (!(cardPreview !== null && cardPreview !== void 0 && cardPreview.dataURI)) {
30
- fireEvent((0, _analytics.getRenderSucceededEventPayload)(fileAttributes));
31
- }
32
-
20
+ fireEvent((0, _analytics.getRenderSucceededEventPayload)(fileAttributes, performanceAttributes));
33
21
  break;
34
22
 
35
23
  case 'failed-processing':
36
- fireEvent((0, _analytics.getRenderFailedFileStatusPayload)(fileAttributes));
24
+ fireEvent((0, _analytics.getRenderFailedFileStatusPayload)(fileAttributes, performanceAttributes));
37
25
  break;
38
26
 
39
27
  case 'error':
40
- error && fireEvent((0, _analytics.getRenderErrorEventPayload)(fileAttributes, error));
28
+ error && fireEvent((0, _analytics.getRenderErrorEventPayload)(fileAttributes, performanceAttributes, error));
41
29
  break;
42
30
  }
43
31
  };
44
32
 
45
- exports.fireOperationalEvent = fireOperationalEvent;
33
+ exports.fireOperationalEvent = fireOperationalEvent;
34
+
35
+ var fireCommencedEvent = function fireCommencedEvent(createAnalyticsEvent, fileAttributes, performanceAttributes) {
36
+ (0, _analytics.fireMediaCardEvent)((0, _analytics.getRenderCommencedEventPayload)(fileAttributes, performanceAttributes), createAnalyticsEvent);
37
+ };
38
+
39
+ exports.fireCommencedEvent = fireCommencedEvent;
40
+
41
+ var fireCopiedEvent = function fireCopiedEvent(createAnalyticsEvent, fileId, cardRef) {
42
+ if (typeof window.getSelection === 'function') {
43
+ var _selection$containsNo;
44
+
45
+ var selection = window.getSelection();
46
+
47
+ if (selection !== null && selection !== void 0 && (_selection$containsNo = selection.containsNode) !== null && _selection$containsNo !== void 0 && _selection$containsNo.call(selection, cardRef, true)) {
48
+ (0, _analytics.fireMediaCardEvent)((0, _analytics.getCopiedFilePayload)(fileId), createAnalyticsEvent);
49
+ }
50
+ }
51
+ };
52
+
53
+ exports.fireCopiedEvent = fireCopiedEvent;
54
+
55
+ var fireScreenEvent = function fireScreenEvent(createAnalyticsEvent, fileAttributes) {
56
+ (0, _analytics.fireMediaCardEvent)((0, _analytics.getRenderPreviewableCardPayload)(fileAttributes), createAnalyticsEvent);
57
+ };
58
+
59
+ exports.fireScreenEvent = fireScreenEvent;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.newFileExperienceClassName = void 0;
7
+ var newFileExperienceClassName = 'new-file-experience-wrapper';
8
+ exports.newFileExperienceClassName = newFileExperienceClassName;