@atlaskit/media-card 77.6.7 → 77.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/dist/cjs/card/card.js +14 -6
- package/dist/cjs/card/cardView.js +3 -2
- package/dist/cjs/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/cjs/card/v2/cardV2.js +1 -1
- package/dist/cjs/card/v2/fileCard.js +13 -19
- package/dist/cjs/dateOverrideContext.js +13 -0
- package/dist/cjs/index.js +8 -1
- package/dist/cjs/inline/loader.js +1 -1
- package/dist/cjs/utils/ufoExperiences.js +1 -1
- package/dist/es2019/card/card.js +15 -7
- package/dist/es2019/card/cardView.js +3 -2
- package/dist/es2019/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/es2019/card/v2/cardV2.js +1 -1
- package/dist/es2019/card/v2/fileCard.js +5 -8
- package/dist/es2019/dateOverrideContext.js +8 -0
- package/dist/es2019/index.js +2 -1
- package/dist/es2019/inline/loader.js +1 -1
- package/dist/es2019/utils/ufoExperiences.js +1 -1
- package/dist/esm/card/card.js +15 -7
- package/dist/esm/card/cardView.js +3 -2
- package/dist/esm/card/media-card-analytics-error-boundary.js +1 -1
- package/dist/esm/card/v2/cardV2.js +1 -1
- package/dist/esm/card/v2/fileCard.js +15 -21
- package/dist/esm/dateOverrideContext.js +8 -0
- package/dist/esm/index.js +2 -1
- package/dist/esm/inline/loader.js +1 -1
- package/dist/esm/utils/ufoExperiences.js +1 -1
- package/dist/types/card/card.d.ts +3 -1
- package/dist/types/card/cardView.d.ts +1 -0
- package/dist/types/dateOverrideContext.d.ts +7 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types-ts4.5/card/card.d.ts +3 -1
- package/dist/types-ts4.5/card/cardView.d.ts +1 -0
- package/dist/types-ts4.5/dateOverrideContext.d.ts +7 -0
- package/dist/types-ts4.5/index.d.ts +1 -0
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @atlaskit/media-card
|
|
2
2
|
|
|
3
|
+
## 77.7.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#67886](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/67886) [`18c0c2f52a54`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/18c0c2f52a54) - CXP-2880 remove isBannedLocalPreview state from fileCard
|
|
8
|
+
|
|
9
|
+
## 77.7.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- [#66422](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/66422) [`e26fc35ce110`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/e26fc35ce110) - [CXP-2840] Added `DateOverrideContext` to fix inconsistent creation time in film strip (JRACLOUD-77568)
|
|
14
|
+
|
|
3
15
|
## 77.6.7
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/dist/cjs/card/card.js
CHANGED
|
@@ -42,6 +42,7 @@ var _dimensionComparer = require("../utils/dimensionComparer");
|
|
|
42
42
|
var _getMediaCardCursor = require("../utils/getMediaCardCursor");
|
|
43
43
|
var _ufoExperiences = require("../utils/ufoExperiences");
|
|
44
44
|
var _generateUniqueId = require("../utils/generateUniqueId");
|
|
45
|
+
var _dateOverrideContext = require("../dateOverrideContext");
|
|
45
46
|
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); }
|
|
46
47
|
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; }
|
|
47
48
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -49,7 +50,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
49
50
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
50
51
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
51
52
|
var packageName = "@atlaskit/media-card";
|
|
52
|
-
var packageVersion = "77.
|
|
53
|
+
var packageVersion = "77.7.1";
|
|
53
54
|
var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
54
55
|
(0, _inherits2.default)(CardBase, _Component);
|
|
55
56
|
var _super = _createSuper(CardBase);
|
|
@@ -544,7 +545,8 @@ var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
|
544
545
|
ssr = _this$props8.ssr,
|
|
545
546
|
useInlinePlayer = _this$props8.useInlinePlayer,
|
|
546
547
|
shouldOpenMediaViewer = _this$props8.shouldOpenMediaViewer,
|
|
547
|
-
shouldHideTooltip = _this$props8.shouldHideTooltip
|
|
548
|
+
shouldHideTooltip = _this$props8.shouldHideTooltip,
|
|
549
|
+
dateOverride = _this$props8.dateOverride;
|
|
548
550
|
var mediaItemType = identifier.mediaItemType;
|
|
549
551
|
var _this$state3 = _this.state,
|
|
550
552
|
status = _this$state3.status,
|
|
@@ -596,7 +598,8 @@ var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
|
596
598
|
nativeLazyLoad: nativeLazyLoad,
|
|
597
599
|
forceSyncDisplay: forceSyncDisplay,
|
|
598
600
|
mediaCardCursor: mediaCardCursor,
|
|
599
|
-
shouldHideTooltip: shouldHideTooltip
|
|
601
|
+
shouldHideTooltip: shouldHideTooltip,
|
|
602
|
+
overriddenCreationDate: dateOverride
|
|
600
603
|
});
|
|
601
604
|
return isLazyWithOverride ? /*#__PURE__*/_react.default.createElement(_viewportDetector.ViewportDetector, {
|
|
602
605
|
cardEl: cardRef,
|
|
@@ -1015,7 +1018,9 @@ var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
|
1015
1018
|
}
|
|
1016
1019
|
}]);
|
|
1017
1020
|
return CardBase;
|
|
1018
|
-
}(_react.Component); // We require this wrapper in order
|
|
1021
|
+
}(_react.Component); // We require this wrapper in order
|
|
1022
|
+
// 1. To refresh media card state when the identifier is updated
|
|
1023
|
+
// 2. To allow for overriding creation date (https://product-fabric.atlassian.net/browse/CXP-2840)
|
|
1019
1024
|
(0, _defineProperty2.default)(CardBase, "defaultProps", {
|
|
1020
1025
|
appearance: 'auto',
|
|
1021
1026
|
resizeMode: 'crop',
|
|
@@ -1024,10 +1029,13 @@ var CardBase = exports.CardBase = /*#__PURE__*/function (_Component) {
|
|
|
1024
1029
|
// Media Feature Flag defaults are defined in @atlaskit/media-common
|
|
1025
1030
|
featureFlags: {}
|
|
1026
1031
|
});
|
|
1027
|
-
var
|
|
1032
|
+
var CardWithKeyAndDateOverrideContext = function CardWithKeyAndDateOverrideContext(props) {
|
|
1028
1033
|
var identifier = props.identifier;
|
|
1034
|
+
var dateOverrides = (0, _react.useContext)(_dateOverrideContext.DateOverrideContext);
|
|
1029
1035
|
var key = (0, _mediaClient2.isFileIdentifier)(identifier) ? identifier.id : identifier.dataURI;
|
|
1036
|
+
var dateOverride = (0, _mediaClient2.isFileIdentifier)(identifier) ? dateOverrides === null || dateOverrides === void 0 ? void 0 : dateOverrides[identifier.id] : undefined;
|
|
1030
1037
|
return /*#__PURE__*/_react.default.createElement(CardBase, (0, _extends2.default)({}, props, {
|
|
1038
|
+
dateOverride: dateOverride,
|
|
1031
1039
|
key: key
|
|
1032
1040
|
}));
|
|
1033
1041
|
};
|
|
@@ -1036,6 +1044,6 @@ var Card = exports.Card = (0, _mediaCommon.withMediaAnalyticsContext)({
|
|
|
1036
1044
|
packageName: packageName,
|
|
1037
1045
|
componentName: 'mediaCard',
|
|
1038
1046
|
component: 'mediaCard'
|
|
1039
|
-
})((0, _analyticsNext.withAnalyticsEvents)()((0, _reactIntlNext.injectIntl)(
|
|
1047
|
+
})((0, _analyticsNext.withAnalyticsEvents)()((0, _reactIntlNext.injectIntl)(CardWithKeyAndDateOverrideContext, {
|
|
1040
1048
|
enforceContext: false
|
|
1041
1049
|
})));
|
|
@@ -291,13 +291,14 @@ var CardViewBase = exports.CardViewBase = /*#__PURE__*/function (_React$Componen
|
|
|
291
291
|
var _this$props5 = this.props,
|
|
292
292
|
metadata = _this$props5.metadata,
|
|
293
293
|
titleBoxBgColor = _this$props5.titleBoxBgColor,
|
|
294
|
-
titleBoxIcon = _this$props5.titleBoxIcon
|
|
294
|
+
titleBoxIcon = _this$props5.titleBoxIcon,
|
|
295
|
+
overriddenCreationDate = _this$props5.overriddenCreationDate;
|
|
295
296
|
var _ref6 = metadata || {},
|
|
296
297
|
name = _ref6.name,
|
|
297
298
|
createdAt = _ref6.createdAt;
|
|
298
299
|
return !!name && (0, _react.jsx)(_titleBox.TitleBox, {
|
|
299
300
|
name: name,
|
|
300
|
-
createdAt: createdAt,
|
|
301
|
+
createdAt: overriddenCreationDate !== null && overriddenCreationDate !== void 0 ? overriddenCreationDate : createdAt,
|
|
301
302
|
breakpoint: this.breakpoint,
|
|
302
303
|
titleBoxIcon: titleBoxIcon,
|
|
303
304
|
titleBoxBgColor: titleBoxBgColor
|
|
@@ -90,7 +90,7 @@ var WrappedMediaCardAnalyticsErrorBoundary = /*#__PURE__*/function (_React$Compo
|
|
|
90
90
|
}(_react.default.Component);
|
|
91
91
|
(0, _defineProperty2.default)(WrappedMediaCardAnalyticsErrorBoundary, "displayName", 'MediaCardAnalyticsErrorBoundary');
|
|
92
92
|
var packageName = "@atlaskit/media-card";
|
|
93
|
-
var packageVersion = "77.
|
|
93
|
+
var packageVersion = "77.7.1";
|
|
94
94
|
var MediaCardAnalyticsErrorBoundary = (0, _mediaCommon.withMediaAnalyticsContext)({
|
|
95
95
|
packageVersion: packageVersion,
|
|
96
96
|
packageName: packageName,
|
|
@@ -16,7 +16,7 @@ var _externalImageCard = require("./externalImageCard");
|
|
|
16
16
|
var _fileCard = require("./fileCard");
|
|
17
17
|
var _excluded = ["identifier"];
|
|
18
18
|
var packageName = "@atlaskit/media-card";
|
|
19
|
-
var packageVersion = "77.
|
|
19
|
+
var packageVersion = "77.7.1";
|
|
20
20
|
var CardV2Base = exports.CardV2Base = function CardV2Base(_ref) {
|
|
21
21
|
var identifier = _ref.identifier,
|
|
22
22
|
otherProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
@@ -26,7 +26,6 @@ var _metadata = require("../../utils/metadata");
|
|
|
26
26
|
var _ufoExperiences = require("../../utils/ufoExperiences");
|
|
27
27
|
var _useCurrentValueRef = require("../../utils/useCurrentValueRef");
|
|
28
28
|
var _usePrevious = require("../../utils/usePrevious");
|
|
29
|
-
var _videoIsPlayable = require("../../utils/videoIsPlayable");
|
|
30
29
|
var _viewportDetector = require("../../utils/viewportDetector");
|
|
31
30
|
var _cardDimensions = require("../../utils/cardDimensions");
|
|
32
31
|
var _cardAnalytics = require("../cardAnalytics");
|
|
@@ -150,12 +149,8 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
150
149
|
// CXP-2723 TODO: remove isBannedLocalPreview
|
|
151
150
|
var _useState11 = (0, _react.useState)(false),
|
|
152
151
|
_useState12 = (0, _slicedToArray2.default)(_useState11, 2),
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
var _useState13 = (0, _react.useState)(false),
|
|
156
|
-
_useState14 = (0, _slicedToArray2.default)(_useState13, 2),
|
|
157
|
-
previewDidRender = _useState14[0],
|
|
158
|
-
setPreviewDidRender = _useState14[1];
|
|
152
|
+
previewDidRender = _useState12[0],
|
|
153
|
+
setPreviewDidRender = _useState12[1];
|
|
159
154
|
|
|
160
155
|
// CXP-2723 TODO: Do we have tests to validate the use of the below attributes
|
|
161
156
|
var mediaBlobUrlAttrs = (0, _react.useMemo)(function () {
|
|
@@ -193,18 +188,18 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
193
188
|
onImageErrorBase = _useFilePreview.onImageError,
|
|
194
189
|
onImageLoadBase = _useFilePreview.onImageLoad,
|
|
195
190
|
getScriptProps = _useFilePreview.getScriptProps;
|
|
196
|
-
var
|
|
197
|
-
|
|
198
|
-
error =
|
|
199
|
-
setError =
|
|
191
|
+
var _useState13 = (0, _react.useState)(),
|
|
192
|
+
_useState14 = (0, _slicedToArray2.default)(_useState13, 2),
|
|
193
|
+
error = _useState14[0],
|
|
194
|
+
setError = _useState14[1];
|
|
200
195
|
|
|
201
196
|
// CXP-2723 TODO: TEMPORARY VARIABLES
|
|
202
197
|
var finalError = error || previewError;
|
|
203
198
|
var finalStatus = finalError ? 'error' : status;
|
|
204
|
-
var
|
|
205
|
-
|
|
206
|
-
mediaViewerSelectedItem =
|
|
207
|
-
setMediaViewerSelectedItem =
|
|
199
|
+
var _useState15 = (0, _react.useState)(null),
|
|
200
|
+
_useState16 = (0, _slicedToArray2.default)(_useState15, 2),
|
|
201
|
+
mediaViewerSelectedItem = _useState16[0],
|
|
202
|
+
setMediaViewerSelectedItem = _useState16[1];
|
|
208
203
|
var uploadProgressRef = (0, _react.useRef)();
|
|
209
204
|
var metadata = (0, _react.useMemo)(function () {
|
|
210
205
|
var getProcessingStatusFromFileState = function getProcessingStatusFromFileState(status) {
|
|
@@ -407,7 +402,6 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
407
402
|
['loading-preview', 'processing'].includes(finalStatus)) {
|
|
408
403
|
setStatus('complete');
|
|
409
404
|
// TODO MEX-788: add test for "do not remove the card preview when unsubscribing".
|
|
410
|
-
setIsBannedLocalPreview(false);
|
|
411
405
|
}
|
|
412
406
|
}, [previewDidRender, finalStatus]);
|
|
413
407
|
|
|
@@ -419,7 +413,7 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
419
413
|
var isVideo = fileAttributes.fileMediatype === 'video';
|
|
420
414
|
var _getFileDetails2 = (0, _metadata.getFileDetails)(identifier, fileStateValue),
|
|
421
415
|
mimeType = _getFileDetails2.mimeType;
|
|
422
|
-
var isVideoPlayable = (0,
|
|
416
|
+
var isVideoPlayable = mimeType && (0, _mediaCommon.isVideoMimeTypeSupportedByBrowser)(mimeType) || fileStateValue && (0, _mediaClient.isProcessedFileState)(fileStateValue);
|
|
423
417
|
if (
|
|
424
418
|
/**
|
|
425
419
|
* We need to check that the card is visible before switching to inline player
|
|
@@ -429,7 +423,7 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
429
423
|
isCardVisible && isVideo && !isPlayingFile && disableOverlay && useInlinePlayer && isVideoPlayable && finalStatus !== 'error') {
|
|
430
424
|
setIsPlayingFile(true);
|
|
431
425
|
}
|
|
432
|
-
}, [isCardVisible, disableOverlay, fileAttributes.fileMediatype, fileStateValue, identifier,
|
|
426
|
+
}, [isCardVisible, disableOverlay, fileAttributes.fileMediatype, fileStateValue, identifier, isPlayingFile, finalStatus, useInlinePlayer]);
|
|
433
427
|
|
|
434
428
|
//----------------------------------------------------------------//
|
|
435
429
|
//----------------- fireScreenEvent ------------------------------//
|
|
@@ -469,7 +463,7 @@ var FileCard = exports.FileCard = function FileCard(_ref) {
|
|
|
469
463
|
var isPreviewable = !!mediaType && ['audio', 'video', 'image', 'doc'].indexOf(mediaType) > -1;
|
|
470
464
|
var isPreviewableFileState = !!fileState.preview;
|
|
471
465
|
var isSupportedLocalPreview = mediaType === 'image' || mediaType === 'video';
|
|
472
|
-
var hasLocalPreview =
|
|
466
|
+
var hasLocalPreview = isPreviewableFileState &&
|
|
473
467
|
// CXP-2723 TODO: isPreviewableFileState is most likely redundant
|
|
474
468
|
isSupportedLocalPreview && !!fileState.mimeType && (0, _mediaCommon.isMimeTypeSupportedByBrowser)(fileState.mimeType);
|
|
475
469
|
var hasRemotePreview = (0, _mediaClient.isImageRepresentationReady)(fileState);
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.DateOverrideContext = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
/**
|
|
9
|
+
* Provide capacity to override creation date
|
|
10
|
+
* `DateOverrideContext` is a stopgap for a specific bug (https://product-fabric.atlassian.net/browse/CXP-2840)
|
|
11
|
+
* This is a temporal solution, please consult before usage
|
|
12
|
+
*/
|
|
13
|
+
var DateOverrideContext = exports.DateOverrideContext = /*#__PURE__*/(0, _react.createContext)(undefined);
|
package/dist/cjs/index.js
CHANGED
|
@@ -21,6 +21,12 @@ Object.defineProperty(exports, "CardLoading", {
|
|
|
21
21
|
return _cardLoading.CardLoading;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "DateOverrideContext", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function get() {
|
|
27
|
+
return _dateOverrideContext.DateOverrideContext;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
24
30
|
Object.defineProperty(exports, "MediaInlineCard", {
|
|
25
31
|
enumerable: true,
|
|
26
32
|
get: function get() {
|
|
@@ -58,4 +64,5 @@ var _cardError = require("./utils/lightCards/cardError");
|
|
|
58
64
|
var _cardDimensions = require("./utils/cardDimensions");
|
|
59
65
|
var _classnames = require("./card/classnames");
|
|
60
66
|
var _inlinePlayerWrapperStyles = require("./card/inlinePlayerWrapperStyles");
|
|
61
|
-
var _cardConstants = require("./card/cardConstants");
|
|
67
|
+
var _cardConstants = require("./card/cardConstants");
|
|
68
|
+
var _dateOverrideContext = require("./dateOverrideContext");
|
|
@@ -119,7 +119,7 @@ var MediaInlineCardLoader = exports.default = /*#__PURE__*/function (_React$Pure
|
|
|
119
119
|
ErrorBoundary = _this$state.ErrorBoundary;
|
|
120
120
|
var analyticsContext = {
|
|
121
121
|
packageVersion: "@atlaskit/media-card",
|
|
122
|
-
packageName: "77.
|
|
122
|
+
packageName: "77.7.1",
|
|
123
123
|
componentName: 'mediaInlineCard',
|
|
124
124
|
component: 'mediaInlineCard'
|
|
125
125
|
};
|
|
@@ -14,7 +14,7 @@ var _mediaClient = require("@atlaskit/media-client");
|
|
|
14
14
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
15
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
16
16
|
var packageName = "@atlaskit/media-card";
|
|
17
|
-
var packageVersion = "77.
|
|
17
|
+
var packageVersion = "77.7.1";
|
|
18
18
|
var concurrentExperience;
|
|
19
19
|
var getExperience = function getExperience(id) {
|
|
20
20
|
if (!concurrentExperience) {
|
package/dist/es2019/card/card.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
3
|
-
import React, { Component, Suspense } from 'react';
|
|
3
|
+
import React, { Component, Suspense, useContext } from 'react';
|
|
4
4
|
import ReactDOM from 'react-dom';
|
|
5
5
|
import { withAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
6
6
|
import { withMediaAnalyticsContext } from '@atlaskit/media-common';
|
|
@@ -26,8 +26,9 @@ import { isBigger } from '../utils/dimensionComparer';
|
|
|
26
26
|
import { getMediaCardCursor } from '../utils/getMediaCardCursor';
|
|
27
27
|
import { completeUfoExperience, startUfoExperience, abortUfoExperience } from '../utils/ufoExperiences';
|
|
28
28
|
import { generateUniqueId } from '../utils/generateUniqueId';
|
|
29
|
+
import { DateOverrideContext } from '../dateOverrideContext';
|
|
29
30
|
const packageName = "@atlaskit/media-card";
|
|
30
|
-
const packageVersion = "77.
|
|
31
|
+
const packageVersion = "77.7.1";
|
|
31
32
|
export class CardBase extends Component {
|
|
32
33
|
constructor(props) {
|
|
33
34
|
super(props);
|
|
@@ -497,7 +498,8 @@ export class CardBase extends Component {
|
|
|
497
498
|
ssr,
|
|
498
499
|
useInlinePlayer,
|
|
499
500
|
shouldOpenMediaViewer,
|
|
500
|
-
shouldHideTooltip
|
|
501
|
+
shouldHideTooltip,
|
|
502
|
+
dateOverride
|
|
501
503
|
} = this.props;
|
|
502
504
|
const {
|
|
503
505
|
mediaItemType
|
|
@@ -555,7 +557,8 @@ export class CardBase extends Component {
|
|
|
555
557
|
nativeLazyLoad: nativeLazyLoad,
|
|
556
558
|
forceSyncDisplay: forceSyncDisplay,
|
|
557
559
|
mediaCardCursor: mediaCardCursor,
|
|
558
|
-
shouldHideTooltip: shouldHideTooltip
|
|
560
|
+
shouldHideTooltip: shouldHideTooltip,
|
|
561
|
+
overriddenCreationDate: dateOverride
|
|
559
562
|
});
|
|
560
563
|
return isLazyWithOverride ? /*#__PURE__*/React.createElement(ViewportDetector, {
|
|
561
564
|
cardEl: cardRef,
|
|
@@ -989,7 +992,9 @@ export class CardBase extends Component {
|
|
|
989
992
|
}
|
|
990
993
|
}
|
|
991
994
|
|
|
992
|
-
// We require this wrapper in order
|
|
995
|
+
// We require this wrapper in order
|
|
996
|
+
// 1. To refresh media card state when the identifier is updated
|
|
997
|
+
// 2. To allow for overriding creation date (https://product-fabric.atlassian.net/browse/CXP-2840)
|
|
993
998
|
_defineProperty(CardBase, "defaultProps", {
|
|
994
999
|
appearance: 'auto',
|
|
995
1000
|
resizeMode: 'crop',
|
|
@@ -998,12 +1003,15 @@ _defineProperty(CardBase, "defaultProps", {
|
|
|
998
1003
|
// Media Feature Flag defaults are defined in @atlaskit/media-common
|
|
999
1004
|
featureFlags: {}
|
|
1000
1005
|
});
|
|
1001
|
-
const
|
|
1006
|
+
const CardWithKeyAndDateOverrideContext = props => {
|
|
1002
1007
|
const {
|
|
1003
1008
|
identifier
|
|
1004
1009
|
} = props;
|
|
1010
|
+
const dateOverrides = useContext(DateOverrideContext);
|
|
1005
1011
|
const key = isFileIdentifier(identifier) ? identifier.id : identifier.dataURI;
|
|
1012
|
+
const dateOverride = isFileIdentifier(identifier) ? dateOverrides === null || dateOverrides === void 0 ? void 0 : dateOverrides[identifier.id] : undefined;
|
|
1006
1013
|
return /*#__PURE__*/React.createElement(CardBase, _extends({}, props, {
|
|
1014
|
+
dateOverride: dateOverride,
|
|
1007
1015
|
key: key
|
|
1008
1016
|
}));
|
|
1009
1017
|
};
|
|
@@ -1012,6 +1020,6 @@ export const Card = withMediaAnalyticsContext({
|
|
|
1012
1020
|
packageName,
|
|
1013
1021
|
componentName: 'mediaCard',
|
|
1014
1022
|
component: 'mediaCard'
|
|
1015
|
-
})(withAnalyticsEvents()(injectIntl(
|
|
1023
|
+
})(withAnalyticsEvents()(injectIntl(CardWithKeyAndDateOverrideContext, {
|
|
1016
1024
|
enforceContext: false
|
|
1017
1025
|
})));
|
|
@@ -279,7 +279,8 @@ export class CardViewBase extends React.Component {
|
|
|
279
279
|
const {
|
|
280
280
|
metadata,
|
|
281
281
|
titleBoxBgColor,
|
|
282
|
-
titleBoxIcon
|
|
282
|
+
titleBoxIcon,
|
|
283
|
+
overriddenCreationDate
|
|
283
284
|
} = this.props;
|
|
284
285
|
const {
|
|
285
286
|
name,
|
|
@@ -287,7 +288,7 @@ export class CardViewBase extends React.Component {
|
|
|
287
288
|
} = metadata || {};
|
|
288
289
|
return !!name && jsx(TitleBox, {
|
|
289
290
|
name: name,
|
|
290
|
-
createdAt: createdAt,
|
|
291
|
+
createdAt: overriddenCreationDate !== null && overriddenCreationDate !== void 0 ? overriddenCreationDate : createdAt,
|
|
291
292
|
breakpoint: this.breakpoint,
|
|
292
293
|
titleBoxIcon: titleBoxIcon,
|
|
293
294
|
titleBoxBgColor: titleBoxBgColor
|
|
@@ -66,7 +66,7 @@ class WrappedMediaCardAnalyticsErrorBoundary extends React.Component {
|
|
|
66
66
|
}
|
|
67
67
|
_defineProperty(WrappedMediaCardAnalyticsErrorBoundary, "displayName", 'MediaCardAnalyticsErrorBoundary');
|
|
68
68
|
const packageName = "@atlaskit/media-card";
|
|
69
|
-
const packageVersion = "77.
|
|
69
|
+
const packageVersion = "77.7.1";
|
|
70
70
|
const MediaCardAnalyticsErrorBoundary = withMediaAnalyticsContext({
|
|
71
71
|
packageVersion,
|
|
72
72
|
packageName,
|
|
@@ -7,7 +7,7 @@ import { IntlProvider, injectIntl } from 'react-intl-next';
|
|
|
7
7
|
import { ExternalImageCard } from './externalImageCard';
|
|
8
8
|
import { FileCard } from './fileCard';
|
|
9
9
|
const packageName = "@atlaskit/media-card";
|
|
10
|
-
const packageVersion = "77.
|
|
10
|
+
const packageVersion = "77.7.1";
|
|
11
11
|
export const CardV2Base = ({
|
|
12
12
|
identifier,
|
|
13
13
|
...otherProps
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
2
2
|
import DownloadIcon from '@atlaskit/icon/glyph/download';
|
|
3
|
-
import { globalMediaEventEmitter, isImageRepresentationReady, RECENTS_COLLECTION, imageResizeModeToFileImageMode } from '@atlaskit/media-client';
|
|
3
|
+
import { globalMediaEventEmitter, isImageRepresentationReady, RECENTS_COLLECTION, imageResizeModeToFileImageMode, isProcessedFileState } from '@atlaskit/media-client';
|
|
4
4
|
import { MediaFileStateError, useFileState, useMediaClient } from '@atlaskit/media-client-react';
|
|
5
|
-
import { getRandomHex, isMimeTypeSupportedByBrowser } from '@atlaskit/media-common';
|
|
5
|
+
import { getRandomHex, isMimeTypeSupportedByBrowser, isVideoMimeTypeSupportedByBrowser } from '@atlaskit/media-common';
|
|
6
6
|
import { MediaViewer } from '@atlaskit/media-viewer';
|
|
7
7
|
import React, { Suspense, useEffect, useMemo, useRef, useState } from 'react';
|
|
8
8
|
import ReactDOM from 'react-dom';
|
|
@@ -15,7 +15,6 @@ import { getFileDetails } from '../../utils/metadata';
|
|
|
15
15
|
import { abortUfoExperience, completeUfoExperience, startUfoExperience } from '../../utils/ufoExperiences';
|
|
16
16
|
import { useCurrentValueRef } from '../../utils/useCurrentValueRef';
|
|
17
17
|
import { usePrevious } from '../../utils/usePrevious';
|
|
18
|
-
import { videoIsPlayable } from '../../utils/videoIsPlayable';
|
|
19
18
|
import { ViewportDetector } from '../../utils/viewportDetector';
|
|
20
19
|
import { getDefaultCardDimensions } from '../../utils/cardDimensions';
|
|
21
20
|
import { fireCommencedEvent, fireCopiedEvent, fireNonCriticalErrorEvent, fireOperationalEvent, fireScreenEvent } from '../cardAnalytics';
|
|
@@ -107,7 +106,6 @@ export const FileCard = ({
|
|
|
107
106
|
const [shouldAutoplay, setShouldAutoplay] = useState(false);
|
|
108
107
|
|
|
109
108
|
// CXP-2723 TODO: remove isBannedLocalPreview
|
|
110
|
-
const [isBannedLocalPreview, setIsBannedLocalPreview] = useState(false);
|
|
111
109
|
const [previewDidRender, setPreviewDidRender] = useState(false);
|
|
112
110
|
|
|
113
111
|
// CXP-2723 TODO: Do we have tests to validate the use of the below attributes
|
|
@@ -356,7 +354,6 @@ export const FileCard = ({
|
|
|
356
354
|
['loading-preview', 'processing'].includes(finalStatus)) {
|
|
357
355
|
setStatus('complete');
|
|
358
356
|
// TODO MEX-788: add test for "do not remove the card preview when unsubscribing".
|
|
359
|
-
setIsBannedLocalPreview(false);
|
|
360
357
|
}
|
|
361
358
|
}, [previewDidRender, finalStatus]);
|
|
362
359
|
|
|
@@ -369,7 +366,7 @@ export const FileCard = ({
|
|
|
369
366
|
const {
|
|
370
367
|
mimeType
|
|
371
368
|
} = getFileDetails(identifier, fileStateValue);
|
|
372
|
-
const isVideoPlayable =
|
|
369
|
+
const isVideoPlayable = mimeType && isVideoMimeTypeSupportedByBrowser(mimeType) || fileStateValue && isProcessedFileState(fileStateValue);
|
|
373
370
|
if (
|
|
374
371
|
/**
|
|
375
372
|
* We need to check that the card is visible before switching to inline player
|
|
@@ -379,7 +376,7 @@ export const FileCard = ({
|
|
|
379
376
|
isCardVisible && isVideo && !isPlayingFile && disableOverlay && useInlinePlayer && isVideoPlayable && finalStatus !== 'error') {
|
|
380
377
|
setIsPlayingFile(true);
|
|
381
378
|
}
|
|
382
|
-
}, [isCardVisible, disableOverlay, fileAttributes.fileMediatype, fileStateValue, identifier,
|
|
379
|
+
}, [isCardVisible, disableOverlay, fileAttributes.fileMediatype, fileStateValue, identifier, isPlayingFile, finalStatus, useInlinePlayer]);
|
|
383
380
|
|
|
384
381
|
//----------------------------------------------------------------//
|
|
385
382
|
//----------------- fireScreenEvent ------------------------------//
|
|
@@ -419,7 +416,7 @@ export const FileCard = ({
|
|
|
419
416
|
const isPreviewable = !!mediaType && ['audio', 'video', 'image', 'doc'].indexOf(mediaType) > -1;
|
|
420
417
|
const isPreviewableFileState = !!fileState.preview;
|
|
421
418
|
const isSupportedLocalPreview = mediaType === 'image' || mediaType === 'video';
|
|
422
|
-
const hasLocalPreview =
|
|
419
|
+
const hasLocalPreview = isPreviewableFileState &&
|
|
423
420
|
// CXP-2723 TODO: isPreviewableFileState is most likely redundant
|
|
424
421
|
isSupportedLocalPreview && !!fileState.mimeType && isMimeTypeSupportedByBrowser(fileState.mimeType);
|
|
425
422
|
const hasRemotePreview = isImageRepresentationReady(fileState);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { createContext } from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Provide capacity to override creation date
|
|
5
|
+
* `DateOverrideContext` is a stopgap for a specific bug (https://product-fabric.atlassian.net/browse/CXP-2840)
|
|
6
|
+
* This is a temporal solution, please consult before usage
|
|
7
|
+
*/
|
|
8
|
+
export const DateOverrideContext = /*#__PURE__*/createContext(undefined);
|
package/dist/es2019/index.js
CHANGED
|
@@ -10,4 +10,5 @@ export { CardError } from './utils/lightCards/cardError';
|
|
|
10
10
|
export { defaultImageCardDimensions } from './utils/cardDimensions';
|
|
11
11
|
export { fileCardImageViewSelector } from './card/classnames';
|
|
12
12
|
export { inlinePlayerClassName } from './card/inlinePlayerWrapperStyles';
|
|
13
|
-
export { newFileExperienceClassName } from './card/cardConstants';
|
|
13
|
+
export { newFileExperienceClassName } from './card/cardConstants';
|
|
14
|
+
export { DateOverrideContext } from './dateOverrideContext';
|
|
@@ -37,7 +37,7 @@ export default class MediaInlineCardLoader extends React.PureComponent {
|
|
|
37
37
|
} = this.state;
|
|
38
38
|
const analyticsContext = {
|
|
39
39
|
packageVersion: "@atlaskit/media-card",
|
|
40
|
-
packageName: "77.
|
|
40
|
+
packageName: "77.7.1",
|
|
41
41
|
componentName: 'mediaInlineCard',
|
|
42
42
|
component: 'mediaInlineCard'
|
|
43
43
|
};
|
|
@@ -4,7 +4,7 @@ import { extractErrorInfo, getRenderErrorRequestMetadata } from './analytics';
|
|
|
4
4
|
import { MediaCardError } from '../errors';
|
|
5
5
|
import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
|
|
6
6
|
const packageName = "@atlaskit/media-card";
|
|
7
|
-
const packageVersion = "77.
|
|
7
|
+
const packageVersion = "77.7.1";
|
|
8
8
|
let concurrentExperience;
|
|
9
9
|
const getExperience = id => {
|
|
10
10
|
if (!concurrentExperience) {
|
package/dist/esm/card/card.js
CHANGED
|
@@ -13,7 +13,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
13
13
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
14
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
15
15
|
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; } }
|
|
16
|
-
import React, { Component, Suspense } from 'react';
|
|
16
|
+
import React, { Component, Suspense, useContext } from 'react';
|
|
17
17
|
import ReactDOM from 'react-dom';
|
|
18
18
|
import { withAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
19
19
|
import { withMediaAnalyticsContext } from '@atlaskit/media-common';
|
|
@@ -39,8 +39,9 @@ import { isBigger } from '../utils/dimensionComparer';
|
|
|
39
39
|
import { getMediaCardCursor } from '../utils/getMediaCardCursor';
|
|
40
40
|
import { completeUfoExperience, startUfoExperience, abortUfoExperience } from '../utils/ufoExperiences';
|
|
41
41
|
import { generateUniqueId } from '../utils/generateUniqueId';
|
|
42
|
+
import { DateOverrideContext } from '../dateOverrideContext';
|
|
42
43
|
var packageName = "@atlaskit/media-card";
|
|
43
|
-
var packageVersion = "77.
|
|
44
|
+
var packageVersion = "77.7.1";
|
|
44
45
|
export var CardBase = /*#__PURE__*/function (_Component) {
|
|
45
46
|
_inherits(CardBase, _Component);
|
|
46
47
|
var _super = _createSuper(CardBase);
|
|
@@ -535,7 +536,8 @@ export var CardBase = /*#__PURE__*/function (_Component) {
|
|
|
535
536
|
ssr = _this$props8.ssr,
|
|
536
537
|
useInlinePlayer = _this$props8.useInlinePlayer,
|
|
537
538
|
shouldOpenMediaViewer = _this$props8.shouldOpenMediaViewer,
|
|
538
|
-
shouldHideTooltip = _this$props8.shouldHideTooltip
|
|
539
|
+
shouldHideTooltip = _this$props8.shouldHideTooltip,
|
|
540
|
+
dateOverride = _this$props8.dateOverride;
|
|
539
541
|
var mediaItemType = identifier.mediaItemType;
|
|
540
542
|
var _this$state3 = _this.state,
|
|
541
543
|
status = _this$state3.status,
|
|
@@ -587,7 +589,8 @@ export var CardBase = /*#__PURE__*/function (_Component) {
|
|
|
587
589
|
nativeLazyLoad: nativeLazyLoad,
|
|
588
590
|
forceSyncDisplay: forceSyncDisplay,
|
|
589
591
|
mediaCardCursor: mediaCardCursor,
|
|
590
|
-
shouldHideTooltip: shouldHideTooltip
|
|
592
|
+
shouldHideTooltip: shouldHideTooltip,
|
|
593
|
+
overriddenCreationDate: dateOverride
|
|
591
594
|
});
|
|
592
595
|
return isLazyWithOverride ? /*#__PURE__*/React.createElement(ViewportDetector, {
|
|
593
596
|
cardEl: cardRef,
|
|
@@ -1008,7 +1011,9 @@ export var CardBase = /*#__PURE__*/function (_Component) {
|
|
|
1008
1011
|
return CardBase;
|
|
1009
1012
|
}(Component);
|
|
1010
1013
|
|
|
1011
|
-
// We require this wrapper in order
|
|
1014
|
+
// We require this wrapper in order
|
|
1015
|
+
// 1. To refresh media card state when the identifier is updated
|
|
1016
|
+
// 2. To allow for overriding creation date (https://product-fabric.atlassian.net/browse/CXP-2840)
|
|
1012
1017
|
_defineProperty(CardBase, "defaultProps", {
|
|
1013
1018
|
appearance: 'auto',
|
|
1014
1019
|
resizeMode: 'crop',
|
|
@@ -1017,10 +1022,13 @@ _defineProperty(CardBase, "defaultProps", {
|
|
|
1017
1022
|
// Media Feature Flag defaults are defined in @atlaskit/media-common
|
|
1018
1023
|
featureFlags: {}
|
|
1019
1024
|
});
|
|
1020
|
-
var
|
|
1025
|
+
var CardWithKeyAndDateOverrideContext = function CardWithKeyAndDateOverrideContext(props) {
|
|
1021
1026
|
var identifier = props.identifier;
|
|
1027
|
+
var dateOverrides = useContext(DateOverrideContext);
|
|
1022
1028
|
var key = isFileIdentifier(identifier) ? identifier.id : identifier.dataURI;
|
|
1029
|
+
var dateOverride = isFileIdentifier(identifier) ? dateOverrides === null || dateOverrides === void 0 ? void 0 : dateOverrides[identifier.id] : undefined;
|
|
1023
1030
|
return /*#__PURE__*/React.createElement(CardBase, _extends({}, props, {
|
|
1031
|
+
dateOverride: dateOverride,
|
|
1024
1032
|
key: key
|
|
1025
1033
|
}));
|
|
1026
1034
|
};
|
|
@@ -1029,6 +1037,6 @@ export var Card = withMediaAnalyticsContext({
|
|
|
1029
1037
|
packageName: packageName,
|
|
1030
1038
|
componentName: 'mediaCard',
|
|
1031
1039
|
component: 'mediaCard'
|
|
1032
|
-
})(withAnalyticsEvents()(injectIntl(
|
|
1040
|
+
})(withAnalyticsEvents()(injectIntl(CardWithKeyAndDateOverrideContext, {
|
|
1033
1041
|
enforceContext: false
|
|
1034
1042
|
})));
|
|
@@ -285,13 +285,14 @@ export var CardViewBase = /*#__PURE__*/function (_React$Component) {
|
|
|
285
285
|
var _this$props5 = this.props,
|
|
286
286
|
metadata = _this$props5.metadata,
|
|
287
287
|
titleBoxBgColor = _this$props5.titleBoxBgColor,
|
|
288
|
-
titleBoxIcon = _this$props5.titleBoxIcon
|
|
288
|
+
titleBoxIcon = _this$props5.titleBoxIcon,
|
|
289
|
+
overriddenCreationDate = _this$props5.overriddenCreationDate;
|
|
289
290
|
var _ref6 = metadata || {},
|
|
290
291
|
name = _ref6.name,
|
|
291
292
|
createdAt = _ref6.createdAt;
|
|
292
293
|
return !!name && jsx(TitleBox, {
|
|
293
294
|
name: name,
|
|
294
|
-
createdAt: createdAt,
|
|
295
|
+
createdAt: overriddenCreationDate !== null && overriddenCreationDate !== void 0 ? overriddenCreationDate : createdAt,
|
|
295
296
|
breakpoint: this.breakpoint,
|
|
296
297
|
titleBoxIcon: titleBoxIcon,
|
|
297
298
|
titleBoxBgColor: titleBoxBgColor
|
|
@@ -83,7 +83,7 @@ var WrappedMediaCardAnalyticsErrorBoundary = /*#__PURE__*/function (_React$Compo
|
|
|
83
83
|
}(React.Component);
|
|
84
84
|
_defineProperty(WrappedMediaCardAnalyticsErrorBoundary, "displayName", 'MediaCardAnalyticsErrorBoundary');
|
|
85
85
|
var packageName = "@atlaskit/media-card";
|
|
86
|
-
var packageVersion = "77.
|
|
86
|
+
var packageVersion = "77.7.1";
|
|
87
87
|
var MediaCardAnalyticsErrorBoundary = withMediaAnalyticsContext({
|
|
88
88
|
packageVersion: packageVersion,
|
|
89
89
|
packageName: packageName,
|
|
@@ -9,7 +9,7 @@ import { IntlProvider, injectIntl } from 'react-intl-next';
|
|
|
9
9
|
import { ExternalImageCard } from './externalImageCard';
|
|
10
10
|
import { FileCard } from './fileCard';
|
|
11
11
|
var packageName = "@atlaskit/media-card";
|
|
12
|
-
var packageVersion = "77.
|
|
12
|
+
var packageVersion = "77.7.1";
|
|
13
13
|
export var CardV2Base = function CardV2Base(_ref) {
|
|
14
14
|
var identifier = _ref.identifier,
|
|
15
15
|
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
@@ -5,9 +5,9 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
5
5
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
6
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
7
7
|
import DownloadIcon from '@atlaskit/icon/glyph/download';
|
|
8
|
-
import { globalMediaEventEmitter, isImageRepresentationReady, RECENTS_COLLECTION, imageResizeModeToFileImageMode } from '@atlaskit/media-client';
|
|
8
|
+
import { globalMediaEventEmitter, isImageRepresentationReady, RECENTS_COLLECTION, imageResizeModeToFileImageMode, isProcessedFileState } from '@atlaskit/media-client';
|
|
9
9
|
import { MediaFileStateError, useFileState, useMediaClient } from '@atlaskit/media-client-react';
|
|
10
|
-
import { getRandomHex, isMimeTypeSupportedByBrowser } from '@atlaskit/media-common';
|
|
10
|
+
import { getRandomHex, isMimeTypeSupportedByBrowser, isVideoMimeTypeSupportedByBrowser } from '@atlaskit/media-common';
|
|
11
11
|
import { MediaViewer } from '@atlaskit/media-viewer';
|
|
12
12
|
import React, { Suspense, useEffect, useMemo, useRef, useState } from 'react';
|
|
13
13
|
import ReactDOM from 'react-dom';
|
|
@@ -20,7 +20,6 @@ import { getFileDetails } from '../../utils/metadata';
|
|
|
20
20
|
import { abortUfoExperience, completeUfoExperience, startUfoExperience } from '../../utils/ufoExperiences';
|
|
21
21
|
import { useCurrentValueRef } from '../../utils/useCurrentValueRef';
|
|
22
22
|
import { usePrevious } from '../../utils/usePrevious';
|
|
23
|
-
import { videoIsPlayable } from '../../utils/videoIsPlayable';
|
|
24
23
|
import { ViewportDetector } from '../../utils/viewportDetector';
|
|
25
24
|
import { getDefaultCardDimensions } from '../../utils/cardDimensions';
|
|
26
25
|
import { fireCommencedEvent, fireCopiedEvent, fireNonCriticalErrorEvent, fireOperationalEvent, fireScreenEvent } from '../cardAnalytics';
|
|
@@ -140,12 +139,8 @@ export var FileCard = function FileCard(_ref) {
|
|
|
140
139
|
// CXP-2723 TODO: remove isBannedLocalPreview
|
|
141
140
|
var _useState11 = useState(false),
|
|
142
141
|
_useState12 = _slicedToArray(_useState11, 2),
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
var _useState13 = useState(false),
|
|
146
|
-
_useState14 = _slicedToArray(_useState13, 2),
|
|
147
|
-
previewDidRender = _useState14[0],
|
|
148
|
-
setPreviewDidRender = _useState14[1];
|
|
142
|
+
previewDidRender = _useState12[0],
|
|
143
|
+
setPreviewDidRender = _useState12[1];
|
|
149
144
|
|
|
150
145
|
// CXP-2723 TODO: Do we have tests to validate the use of the below attributes
|
|
151
146
|
var mediaBlobUrlAttrs = useMemo(function () {
|
|
@@ -183,18 +178,18 @@ export var FileCard = function FileCard(_ref) {
|
|
|
183
178
|
onImageErrorBase = _useFilePreview.onImageError,
|
|
184
179
|
onImageLoadBase = _useFilePreview.onImageLoad,
|
|
185
180
|
getScriptProps = _useFilePreview.getScriptProps;
|
|
186
|
-
var
|
|
187
|
-
|
|
188
|
-
error =
|
|
189
|
-
setError =
|
|
181
|
+
var _useState13 = useState(),
|
|
182
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
183
|
+
error = _useState14[0],
|
|
184
|
+
setError = _useState14[1];
|
|
190
185
|
|
|
191
186
|
// CXP-2723 TODO: TEMPORARY VARIABLES
|
|
192
187
|
var finalError = error || previewError;
|
|
193
188
|
var finalStatus = finalError ? 'error' : status;
|
|
194
|
-
var
|
|
195
|
-
|
|
196
|
-
mediaViewerSelectedItem =
|
|
197
|
-
setMediaViewerSelectedItem =
|
|
189
|
+
var _useState15 = useState(null),
|
|
190
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
|
191
|
+
mediaViewerSelectedItem = _useState16[0],
|
|
192
|
+
setMediaViewerSelectedItem = _useState16[1];
|
|
198
193
|
var uploadProgressRef = useRef();
|
|
199
194
|
var metadata = useMemo(function () {
|
|
200
195
|
var getProcessingStatusFromFileState = function getProcessingStatusFromFileState(status) {
|
|
@@ -397,7 +392,6 @@ export var FileCard = function FileCard(_ref) {
|
|
|
397
392
|
['loading-preview', 'processing'].includes(finalStatus)) {
|
|
398
393
|
setStatus('complete');
|
|
399
394
|
// TODO MEX-788: add test for "do not remove the card preview when unsubscribing".
|
|
400
|
-
setIsBannedLocalPreview(false);
|
|
401
395
|
}
|
|
402
396
|
}, [previewDidRender, finalStatus]);
|
|
403
397
|
|
|
@@ -409,7 +403,7 @@ export var FileCard = function FileCard(_ref) {
|
|
|
409
403
|
var isVideo = fileAttributes.fileMediatype === 'video';
|
|
410
404
|
var _getFileDetails2 = getFileDetails(identifier, fileStateValue),
|
|
411
405
|
mimeType = _getFileDetails2.mimeType;
|
|
412
|
-
var isVideoPlayable =
|
|
406
|
+
var isVideoPlayable = mimeType && isVideoMimeTypeSupportedByBrowser(mimeType) || fileStateValue && isProcessedFileState(fileStateValue);
|
|
413
407
|
if (
|
|
414
408
|
/**
|
|
415
409
|
* We need to check that the card is visible before switching to inline player
|
|
@@ -419,7 +413,7 @@ export var FileCard = function FileCard(_ref) {
|
|
|
419
413
|
isCardVisible && isVideo && !isPlayingFile && disableOverlay && useInlinePlayer && isVideoPlayable && finalStatus !== 'error') {
|
|
420
414
|
setIsPlayingFile(true);
|
|
421
415
|
}
|
|
422
|
-
}, [isCardVisible, disableOverlay, fileAttributes.fileMediatype, fileStateValue, identifier,
|
|
416
|
+
}, [isCardVisible, disableOverlay, fileAttributes.fileMediatype, fileStateValue, identifier, isPlayingFile, finalStatus, useInlinePlayer]);
|
|
423
417
|
|
|
424
418
|
//----------------------------------------------------------------//
|
|
425
419
|
//----------------- fireScreenEvent ------------------------------//
|
|
@@ -459,7 +453,7 @@ export var FileCard = function FileCard(_ref) {
|
|
|
459
453
|
var isPreviewable = !!mediaType && ['audio', 'video', 'image', 'doc'].indexOf(mediaType) > -1;
|
|
460
454
|
var isPreviewableFileState = !!fileState.preview;
|
|
461
455
|
var isSupportedLocalPreview = mediaType === 'image' || mediaType === 'video';
|
|
462
|
-
var hasLocalPreview =
|
|
456
|
+
var hasLocalPreview = isPreviewableFileState &&
|
|
463
457
|
// CXP-2723 TODO: isPreviewableFileState is most likely redundant
|
|
464
458
|
isSupportedLocalPreview && !!fileState.mimeType && isMimeTypeSupportedByBrowser(fileState.mimeType);
|
|
465
459
|
var hasRemotePreview = isImageRepresentationReady(fileState);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { createContext } from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Provide capacity to override creation date
|
|
5
|
+
* `DateOverrideContext` is a stopgap for a specific bug (https://product-fabric.atlassian.net/browse/CXP-2840)
|
|
6
|
+
* This is a temporal solution, please consult before usage
|
|
7
|
+
*/
|
|
8
|
+
export var DateOverrideContext = /*#__PURE__*/createContext(undefined);
|
package/dist/esm/index.js
CHANGED
|
@@ -10,4 +10,5 @@ export { CardError } from './utils/lightCards/cardError';
|
|
|
10
10
|
export { defaultImageCardDimensions } from './utils/cardDimensions';
|
|
11
11
|
export { fileCardImageViewSelector } from './card/classnames';
|
|
12
12
|
export { inlinePlayerClassName } from './card/inlinePlayerWrapperStyles';
|
|
13
|
-
export { newFileExperienceClassName } from './card/cardConstants';
|
|
13
|
+
export { newFileExperienceClassName } from './card/cardConstants';
|
|
14
|
+
export { DateOverrideContext } from './dateOverrideContext';
|
|
@@ -103,7 +103,7 @@ var MediaInlineCardLoader = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
103
103
|
ErrorBoundary = _this$state.ErrorBoundary;
|
|
104
104
|
var analyticsContext = {
|
|
105
105
|
packageVersion: "@atlaskit/media-card",
|
|
106
|
-
packageName: "77.
|
|
106
|
+
packageName: "77.7.1",
|
|
107
107
|
componentName: 'mediaInlineCard',
|
|
108
108
|
component: 'mediaInlineCard'
|
|
109
109
|
};
|
|
@@ -7,7 +7,7 @@ import { extractErrorInfo, getRenderErrorRequestMetadata } from './analytics';
|
|
|
7
7
|
import { MediaCardError } from '../errors';
|
|
8
8
|
import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
|
|
9
9
|
var packageName = "@atlaskit/media-card";
|
|
10
|
-
var packageVersion = "77.
|
|
10
|
+
var packageVersion = "77.7.1";
|
|
11
11
|
var concurrentExperience;
|
|
12
12
|
var getExperience = function getExperience(id) {
|
|
13
13
|
if (!concurrentExperience) {
|
|
@@ -4,7 +4,9 @@ import { FileIdentifier, FileState, MediaSubscription } from '@atlaskit/media-cl
|
|
|
4
4
|
import { WrappedComponentProps } from 'react-intl-next';
|
|
5
5
|
import { CardAction } from './actions';
|
|
6
6
|
import { CardProps, CardState, CardStatus } from '../types';
|
|
7
|
-
export type CardBaseProps = CardProps & WithAnalyticsEventsProps & Partial<WrappedComponentProps
|
|
7
|
+
export type CardBaseProps = CardProps & WithAnalyticsEventsProps & Partial<WrappedComponentProps> & {
|
|
8
|
+
dateOverride?: number;
|
|
9
|
+
};
|
|
8
10
|
export declare class CardBase extends Component<CardBaseProps, CardState> {
|
|
9
11
|
private internalOccurrenceKey;
|
|
10
12
|
private hasBeenMounted;
|
|
@@ -26,6 +26,7 @@ export interface CardViewOwnProps extends SharedCardProps {
|
|
|
26
26
|
readonly forceSyncDisplay?: boolean;
|
|
27
27
|
disableAnimation?: boolean;
|
|
28
28
|
shouldHideTooltip?: boolean;
|
|
29
|
+
overriddenCreationDate?: number;
|
|
29
30
|
}
|
|
30
31
|
export interface CardViewState {
|
|
31
32
|
elementWidth?: number;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
/**
|
|
3
|
+
* Provide capacity to override creation date
|
|
4
|
+
* `DateOverrideContext` is a stopgap for a specific bug (https://product-fabric.atlassian.net/browse/CXP-2840)
|
|
5
|
+
* This is a temporal solution, please consult before usage
|
|
6
|
+
*/
|
|
7
|
+
export declare const DateOverrideContext: import("react").Context<Record<string, number> | undefined>;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -13,3 +13,4 @@ export { defaultImageCardDimensions } from './utils/cardDimensions';
|
|
|
13
13
|
export { fileCardImageViewSelector } from './card/classnames';
|
|
14
14
|
export { inlinePlayerClassName } from './card/inlinePlayerWrapperStyles';
|
|
15
15
|
export { newFileExperienceClassName } from './card/cardConstants';
|
|
16
|
+
export { DateOverrideContext } from './dateOverrideContext';
|
|
@@ -4,7 +4,9 @@ import { FileIdentifier, FileState, MediaSubscription } from '@atlaskit/media-cl
|
|
|
4
4
|
import { WrappedComponentProps } from 'react-intl-next';
|
|
5
5
|
import { CardAction } from './actions';
|
|
6
6
|
import { CardProps, CardState, CardStatus } from '../types';
|
|
7
|
-
export type CardBaseProps = CardProps & WithAnalyticsEventsProps & Partial<WrappedComponentProps
|
|
7
|
+
export type CardBaseProps = CardProps & WithAnalyticsEventsProps & Partial<WrappedComponentProps> & {
|
|
8
|
+
dateOverride?: number;
|
|
9
|
+
};
|
|
8
10
|
export declare class CardBase extends Component<CardBaseProps, CardState> {
|
|
9
11
|
private internalOccurrenceKey;
|
|
10
12
|
private hasBeenMounted;
|
|
@@ -26,6 +26,7 @@ export interface CardViewOwnProps extends SharedCardProps {
|
|
|
26
26
|
readonly forceSyncDisplay?: boolean;
|
|
27
27
|
disableAnimation?: boolean;
|
|
28
28
|
shouldHideTooltip?: boolean;
|
|
29
|
+
overriddenCreationDate?: number;
|
|
29
30
|
}
|
|
30
31
|
export interface CardViewState {
|
|
31
32
|
elementWidth?: number;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
/**
|
|
3
|
+
* Provide capacity to override creation date
|
|
4
|
+
* `DateOverrideContext` is a stopgap for a specific bug (https://product-fabric.atlassian.net/browse/CXP-2840)
|
|
5
|
+
* This is a temporal solution, please consult before usage
|
|
6
|
+
*/
|
|
7
|
+
export declare const DateOverrideContext: import("react").Context<Record<string, number> | undefined>;
|
|
@@ -13,3 +13,4 @@ export { defaultImageCardDimensions } from './utils/cardDimensions';
|
|
|
13
13
|
export { fileCardImageViewSelector } from './card/classnames';
|
|
14
14
|
export { inlinePlayerClassName } from './card/inlinePlayerWrapperStyles';
|
|
15
15
|
export { newFileExperienceClassName } from './card/cardConstants';
|
|
16
|
+
export { DateOverrideContext } from './dateOverrideContext';
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/media-card",
|
|
3
|
-
"version": "77.
|
|
3
|
+
"version": "77.7.1",
|
|
4
4
|
"description": "Includes all media card related components, CardView, CardViewSmall, Card...",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
7
7
|
},
|
|
8
|
-
"repository": "https://bitbucket.org/atlassian/atlassian-frontend",
|
|
8
|
+
"repository": "https://bitbucket.org/atlassian/atlassian-frontend-mirror",
|
|
9
9
|
"author": "Atlassian Pty Ltd",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"main": "dist/cjs/index.js",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"@atlaskit/platform-feature-flags": "^0.2.2",
|
|
50
50
|
"@atlaskit/spinner": "^16.0.0",
|
|
51
51
|
"@atlaskit/theme": "^12.6.0",
|
|
52
|
-
"@atlaskit/tokens": "^1.
|
|
52
|
+
"@atlaskit/tokens": "^1.34.0",
|
|
53
53
|
"@atlaskit/tooltip": "^18.1.0",
|
|
54
54
|
"@atlaskit/ufo": "^0.2.0",
|
|
55
55
|
"@babel/runtime": "^7.0.0",
|