@atlaskit/media-card 76.1.2 → 76.2.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 (76) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/card/actions.js +2 -2
  3. package/dist/cjs/card/card.js +3 -3
  4. package/dist/cjs/card/cardLoader.js +2 -5
  5. package/dist/cjs/card/cardSwitcher.js +12 -0
  6. package/dist/cjs/card/cardView.js +3 -4
  7. package/dist/cjs/card/getCardPreview/cache.js +3 -0
  8. package/dist/cjs/card/getCardPreview/index.js +2 -2
  9. package/dist/cjs/card/index.js +2 -2
  10. package/dist/cjs/card/media-card-analytics-error-boundary.js +3 -3
  11. package/dist/cjs/card/ui/progressBar/styledBar.js +1 -0
  12. package/dist/cjs/card/ui/titleBox/titleBoxComponents.js +1 -0
  13. package/dist/cjs/card/v2/cardV2.js +1054 -0
  14. package/dist/cjs/card/v2/cardV2Loader.js +95 -0
  15. package/dist/cjs/errors.js +89 -31
  16. package/dist/cjs/inline/loader.js +1 -1
  17. package/dist/cjs/inline/mediaInlineAnalyticsErrorBoundary.js +2 -2
  18. package/dist/cjs/inline/mediaInlineCardAnalytics.js +2 -2
  19. package/dist/cjs/utils/analytics.js +18 -8
  20. package/dist/cjs/utils/objectURLCache.js +5 -0
  21. package/dist/cjs/utils/ufoExperiences.js +3 -3
  22. package/dist/es2019/card/card.js +1 -1
  23. package/dist/es2019/card/cardLoader.js +2 -5
  24. package/dist/es2019/card/cardSwitcher.js +4 -0
  25. package/dist/es2019/card/cardView.js +1 -2
  26. package/dist/es2019/card/getCardPreview/cache.js +3 -0
  27. package/dist/es2019/card/index.js +1 -1
  28. package/dist/es2019/card/media-card-analytics-error-boundary.js +1 -1
  29. package/dist/es2019/card/ui/progressBar/styledBar.js +1 -0
  30. package/dist/es2019/card/ui/titleBox/titleBoxComponents.js +1 -0
  31. package/dist/es2019/card/v2/cardV2.js +1031 -0
  32. package/dist/es2019/card/v2/cardV2Loader.js +58 -0
  33. package/dist/es2019/errors.js +45 -0
  34. package/dist/es2019/inline/loader.js +1 -1
  35. package/dist/es2019/utils/analytics.js +17 -7
  36. package/dist/es2019/utils/objectURLCache.js +3 -0
  37. package/dist/es2019/utils/ufoExperiences.js +1 -1
  38. package/dist/esm/card/actions.js +2 -2
  39. package/dist/esm/card/card.js +3 -3
  40. package/dist/esm/card/cardLoader.js +2 -5
  41. package/dist/esm/card/cardSwitcher.js +4 -0
  42. package/dist/esm/card/cardView.js +3 -4
  43. package/dist/esm/card/getCardPreview/cache.js +3 -0
  44. package/dist/esm/card/getCardPreview/index.js +2 -2
  45. package/dist/esm/card/index.js +1 -1
  46. package/dist/esm/card/media-card-analytics-error-boundary.js +3 -3
  47. package/dist/esm/card/ui/progressBar/styledBar.js +1 -0
  48. package/dist/esm/card/ui/titleBox/titleBoxComponents.js +1 -0
  49. package/dist/esm/card/v2/cardV2.js +1043 -0
  50. package/dist/esm/card/v2/cardV2Loader.js +78 -0
  51. package/dist/esm/errors.js +83 -30
  52. package/dist/esm/inline/loader.js +1 -1
  53. package/dist/esm/inline/mediaInlineAnalyticsErrorBoundary.js +2 -2
  54. package/dist/esm/inline/mediaInlineCardAnalytics.js +2 -2
  55. package/dist/esm/utils/analytics.js +19 -9
  56. package/dist/esm/utils/objectURLCache.js +5 -0
  57. package/dist/esm/utils/ufoExperiences.js +3 -3
  58. package/dist/types/card/cardSwitcher.d.ts +3 -0
  59. package/dist/types/card/getCardPreview/cache.d.ts +2 -0
  60. package/dist/types/card/index.d.ts +1 -1
  61. package/dist/types/card/v2/cardV2.d.ts +62 -0
  62. package/dist/types/card/v2/cardV2Loader.d.ts +4 -0
  63. package/dist/types/errors.d.ts +12 -0
  64. package/dist/types/types.d.ts +1 -0
  65. package/dist/types/utils/objectURLCache.d.ts +1 -0
  66. package/dist/types-ts4.5/card/cardSwitcher.d.ts +3 -0
  67. package/dist/types-ts4.5/card/getCardPreview/cache.d.ts +2 -0
  68. package/dist/types-ts4.5/card/index.d.ts +1 -1
  69. package/dist/types-ts4.5/card/v2/cardV2.d.ts +62 -0
  70. package/dist/types-ts4.5/card/v2/cardV2Loader.d.ts +4 -0
  71. package/dist/types-ts4.5/errors.d.ts +12 -0
  72. package/dist/types-ts4.5/types.d.ts +1 -0
  73. package/dist/types-ts4.5/utils/objectURLCache.d.ts +1 -0
  74. package/package.json +16 -7
  75. package/report.api.md +4 -1
  76. package/tmp/api-report-tmp.d.ts +4 -1
@@ -0,0 +1,58 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React, { useContext } from 'react';
3
+ import Loadable from 'react-loadable';
4
+ import { CardLoading } from '../../utils/lightCards/cardLoading';
5
+ const MediaCardContext = /*#__PURE__*/React.createContext({});
6
+ const CardLoadingWithContext = () => {
7
+ const props = useContext(MediaCardContext);
8
+ return /*#__PURE__*/React.createElement(CardLoading, props);
9
+ };
10
+ const MediaV2Card = Loadable({
11
+ loader: () => import( /* webpackChunkName: "@atlaskit-internal_media-card-v2" */'./cardV2').then(mod => mod.CardV2),
12
+ loading: () => /*#__PURE__*/React.createElement(CardLoadingWithContext, null)
13
+ });
14
+ const MediaCardErrorBoundary = Loadable({
15
+ loader: () => import( /* webpackChunkName: "@atlaskit-internal_media-card-error-boundary" */'../media-card-analytics-error-boundary').then(mod => mod.default),
16
+ loading: () => /*#__PURE__*/React.createElement(CardLoadingWithContext, null)
17
+ });
18
+ const MediaCardWithMediaClient = props => {
19
+ const {
20
+ dimensions,
21
+ onClick,
22
+ useMediaClient,
23
+ featureFlags
24
+ } = props;
25
+ const mediaClient = useMediaClient();
26
+ const featureFlagsWithMediaCardV2 = React.useMemo(() => ({
27
+ ...featureFlags,
28
+ mediaCardV2: true //used for analytics - internal use only
29
+ }), [featureFlags]);
30
+ return /*#__PURE__*/React.createElement(MediaCardErrorBoundary, {
31
+ dimensions: dimensions,
32
+ onClick: onClick
33
+ }, /*#__PURE__*/React.createElement(MediaV2Card, _extends({}, props, {
34
+ featureFlags: featureFlagsWithMediaCardV2,
35
+ mediaClient: mediaClient
36
+ })));
37
+ };
38
+ const MediaCardWithMediaClientProvider = Loadable({
39
+ loader: () => import( /* webpackChunkName: "@atlaskit-internal_media-client-react" */'@atlaskit/media-client-react'),
40
+ loading: () => /*#__PURE__*/React.createElement(CardLoadingWithContext, null),
41
+ render: (loaded, props) => {
42
+ const mediaCard = /*#__PURE__*/React.createElement(MediaCardWithMediaClient, _extends({}, props, {
43
+ useMediaClient: loaded.useMediaClient
44
+ }));
45
+ return /*#__PURE__*/React.createElement(loaded.MediaClientContext.Consumer, null, value => value ? mediaCard :
46
+ /*#__PURE__*/
47
+ // TODO - make clientConfig optional
48
+ React.createElement(loaded.MediaClientProvider, {
49
+ clientConfig: props.mediaClientConfig
50
+ }, mediaCard));
51
+ }
52
+ });
53
+ const CardLoader = props => {
54
+ return /*#__PURE__*/React.createElement(MediaCardContext.Provider, {
55
+ value: props
56
+ }, /*#__PURE__*/React.createElement(MediaCardWithMediaClientProvider, props));
57
+ };
58
+ export default CardLoader;
@@ -1,8 +1,53 @@
1
+ import { isPollingError as isMediaClientPollingError, isRateLimitedError as isMediaClientRateLimitedError } from '@atlaskit/media-client';
2
+
1
3
  /**
2
4
  * Primary reason is logged through Data Portal.
3
5
  * Make sure all the values are whitelisted in Measure -> Event Regitry -> "mediaCardRender failed" event
4
6
  */
5
7
 
8
+ export class MediaFileStateError extends Error {
9
+ constructor(id, reason, message = '', details) {
10
+ super(reason);
11
+ // https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-2.html#support-for-newtarget
12
+ this.id = id;
13
+ this.reason = reason;
14
+ this.message = message;
15
+ this.details = details;
16
+ Object.setPrototypeOf(this, new.target.prototype);
17
+
18
+ // https://v8.dev/docs/stack-trace-api
19
+ if ('captureStackTrace' in Error) {
20
+ Error.captureStackTrace(this, new.target);
21
+ }
22
+ }
23
+ }
24
+ export function isMediaFileStateError(err) {
25
+ return err instanceof MediaFileStateError;
26
+ }
27
+ export function getFileStateErrorReason(err) {
28
+ var _err$details$reason, _err$details;
29
+ return (_err$details$reason = (_err$details = err.details) === null || _err$details === void 0 ? void 0 : _err$details.reason) !== null && _err$details$reason !== void 0 ? _err$details$reason : 'unknown';
30
+ }
31
+ const POLLING_REASON = 'pollingMaxAttemptsExceeded';
32
+ export function isPollingError(err) {
33
+ if (!err) {
34
+ return false;
35
+ }
36
+ return isMediaClientPollingError(err) || isMediaFileStateError(err) && err.reason === POLLING_REASON;
37
+ }
38
+ export function isRateLimitedError(error) {
39
+ if (!error) {
40
+ return false;
41
+ }
42
+ if (isMediaClientRateLimitedError(error)) {
43
+ return true;
44
+ }
45
+ if (isMediaFileStateError(error)) {
46
+ var _error$details, _error$message;
47
+ return ((_error$details = error.details) === null || _error$details === void 0 ? void 0 : _error$details.statusCode) === 429 || ((_error$message = error.message) === null || _error$message === void 0 ? void 0 : _error$message.includes('429'));
48
+ }
49
+ return false;
50
+ }
6
51
  export class MediaCardError extends Error {
7
52
  constructor(primaryReason, secondaryError) {
8
53
  super(primaryReason);
@@ -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: "76.1.2",
40
+ packageName: "76.2.0",
41
41
  componentName: 'mediaInlineCard',
42
42
  component: 'mediaInlineCard'
43
43
  };
@@ -1,7 +1,7 @@
1
1
  import { getMediaClientErrorReason, isRequestError } from '@atlaskit/media-client';
2
2
  import { ANALYTICS_MEDIA_CHANNEL } from '@atlaskit/media-common';
3
3
  import { createAndFireEvent } from '@atlaskit/analytics-next';
4
- import { isMediaCardError } from '../errors';
4
+ import { isMediaCardError, getFileStateErrorReason, isMediaFileStateError } from '../errors';
5
5
  export const getFileAttributes = (metadata, fileStatus) => ({
6
6
  fileMediatype: metadata.mediaType,
7
7
  fileMimetype: metadata.mimeType,
@@ -82,7 +82,7 @@ export const getRenderErrorFailReason = error => {
82
82
  };
83
83
  export const getRenderErrorErrorReason = error => {
84
84
  if (isMediaCardError(error) && error.secondaryError) {
85
- const mediaClientReason = getMediaClientErrorReason(error.secondaryError);
85
+ const mediaClientReason = isMediaFileStateError(error.secondaryError) ? getFileStateErrorReason(error.secondaryError) : getMediaClientErrorReason(error.secondaryError);
86
86
  if (mediaClientReason !== 'unknown') {
87
87
  return mediaClientReason;
88
88
  }
@@ -97,14 +97,24 @@ export const getRenderErrorErrorDetail = error => {
97
97
  }
98
98
  };
99
99
  export const getErrorTraceContext = error => {
100
- if (isMediaCardError(error) && !!error.secondaryError && isRequestError(error.secondaryError)) {
101
- var _error$secondaryError;
102
- return (_error$secondaryError = error.secondaryError.metadata) === null || _error$secondaryError === void 0 ? void 0 : _error$secondaryError.traceContext;
100
+ if (isMediaCardError(error) && !!error.secondaryError) {
101
+ if (isRequestError(error.secondaryError)) {
102
+ var _error$secondaryError;
103
+ return (_error$secondaryError = error.secondaryError.metadata) === null || _error$secondaryError === void 0 ? void 0 : _error$secondaryError.traceContext;
104
+ } else if (isMediaFileStateError(error.secondaryError)) {
105
+ var _error$secondaryError2, _error$secondaryError3;
106
+ return (_error$secondaryError2 = error.secondaryError.details) === null || _error$secondaryError2 === void 0 ? void 0 : (_error$secondaryError3 = _error$secondaryError2.metadata) === null || _error$secondaryError3 === void 0 ? void 0 : _error$secondaryError3.traceContext;
107
+ }
103
108
  }
104
109
  };
105
110
  export const getRenderErrorRequestMetadata = error => {
106
- if (isMediaCardError(error) && !!error.secondaryError && isRequestError(error.secondaryError)) {
107
- return error.secondaryError.metadata;
111
+ if (isMediaCardError(error) && !!error.secondaryError) {
112
+ if (isRequestError(error.secondaryError)) {
113
+ return error.secondaryError.metadata;
114
+ } else if (isMediaFileStateError(error.secondaryError)) {
115
+ var _error$secondaryError4;
116
+ return (_error$secondaryError4 = error.secondaryError.details) === null || _error$secondaryError4 === void 0 ? void 0 : _error$secondaryError4.metadata;
117
+ }
108
118
  }
109
119
  };
110
120
  export const extractErrorInfo = (error, metadataTraceContext) => {
@@ -37,5 +37,8 @@ export class ObjectURLCache {
37
37
  const removed = this.cache.delete(key);
38
38
  removed && URL.revokeObjectURL(removed.dataURI);
39
39
  }
40
+ clear() {
41
+ this.cache.clear();
42
+ }
40
43
  }
41
44
  export const createObjectURLCache = () => new ObjectURLCache(PREVIEW_CACHE_LRU_SIZE);
@@ -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 = "76.1.2";
7
+ const packageVersion = "76.2.0";
8
8
  let concurrentExperience;
9
9
  const getExperience = id => {
10
10
  if (!concurrentExperience) {
@@ -1,6 +1,6 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- 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; }
3
- 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) { _defineProperty(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; }
2
+ 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; }
3
+ 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; }
4
4
  export function attachDetailsToActions(actions, details) {
5
5
  return actions.map(function (action) {
6
6
  return _objectSpread(_objectSpread({}, action), {}, {
@@ -9,8 +9,8 @@ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstruct
9
9
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
10
10
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
11
11
  import _regeneratorRuntime from "@babel/runtime/regenerator";
12
- 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; }
13
- 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) { _defineProperty(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; }
12
+ 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; }
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
16
  import React, { Component, Suspense } from 'react';
@@ -40,7 +40,7 @@ import { getMediaCardCursor } from '../utils/getMediaCardCursor';
40
40
  import { completeUfoExperience, startUfoExperience } from '../utils/ufoExperiences';
41
41
  import { generateUniqueId } from '../utils/generateUniqueId';
42
42
  var packageName = "@atlaskit/media-card";
43
- var packageVersion = "76.1.2";
43
+ var packageVersion = "76.2.0";
44
44
  export var CardBase = /*#__PURE__*/function (_Component) {
45
45
  _inherits(CardBase, _Component);
46
46
  var _super = _createSuper(CardBase);
@@ -1,6 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import React, { useContext } from 'react';
3
- import { useMemoizeFeatureFlags } from '@atlaskit/media-common';
4
3
  import Loadable from 'react-loadable';
5
4
  import { CardLoading } from '../utils/lightCards/cardLoading';
6
5
  var MediaCardContext = /*#__PURE__*/React.createContext({});
@@ -44,12 +43,10 @@ var MediaCardWithMediaClient = Loadable({
44
43
  var CardWithMediaClient = function CardWithMediaClient(props) {
45
44
  var withMediaClient = props.withMediaClient,
46
45
  dimensions = props.dimensions,
47
- featureFlags = props.featureFlags,
48
46
  onClick = props.onClick;
49
- var memoizedFeatureFlags = useMemoizeFeatureFlags(featureFlags);
50
47
  var Card = React.useMemo(function () {
51
- return withMediaClient(MediaCard, memoizedFeatureFlags);
52
- }, [withMediaClient, memoizedFeatureFlags]);
48
+ return withMediaClient(MediaCard);
49
+ }, [withMediaClient]);
53
50
  return (
54
51
  /*#__PURE__*/
55
52
  // onClick is passed into MediaCardErrorBoundary so MediaGroup items can get the toolbar menu in Editor
@@ -0,0 +1,4 @@
1
+ import { getBooleanFF } from '@atlaskit/platform-feature-flags';
2
+ import CardLoader from './cardLoader';
3
+ import CardV2Loader from './v2/cardV2Loader';
4
+ export default getBooleanFF('platform.media-experience.cardv2_7zann') ? CardV2Loader : CardLoader;
@@ -5,8 +5,8 @@ import _inherits from "@babel/runtime/helpers/inherits";
5
5
  import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
6
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
7
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
- 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; }
9
- 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) { _defineProperty(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; }
8
+ 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; }
9
+ 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; }
10
10
  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); }; }
11
11
  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; } }
12
12
  /** @jsx jsx */
@@ -17,7 +17,6 @@ import { MimeTypeIcon } from '@atlaskit/media-ui/mime-type-icon';
17
17
  import SpinnerIcon from '@atlaskit/spinner';
18
18
  import Tooltip from '@atlaskit/tooltip';
19
19
  import { messages } from '@atlaskit/media-ui';
20
- import { isRateLimitedError, isPollingError } from '@atlaskit/media-client';
21
20
  import { defaultImageCardDimensions } from '../utils/cardDimensions';
22
21
  import { isValidPercentageUnit } from '../utils/isValidPercentageUnit';
23
22
  import { getElementDimension } from '../utils/getElementDimension';
@@ -34,7 +33,7 @@ import { Blanket } from './ui/blanket/blanket';
34
33
  import { ActionsBar } from './ui/actionsBar/actionsBar';
35
34
  import { IconWrapper } from './ui/iconWrapper/iconWrapper';
36
35
  import { PreviewUnavailable, CreatingPreview, FailedToUpload, PreviewCurrentlyUnavailable, FailedToLoad } from './ui/iconMessage';
37
- import { isUploadError } from '../errors';
36
+ import { isUploadError, isRateLimitedError, isPollingError } from '../errors';
38
37
  import { Wrapper } from './ui/wrapper';
39
38
  import { fileCardImageViewSelector } from './classnames';
40
39
  /**
@@ -24,6 +24,9 @@ export var CardPreviewCacheImpl = /*#__PURE__*/_createClass(function CardPreview
24
24
  var cacheKey = getCacheKey(id, mode);
25
25
  _this.previewCache.remove(cacheKey);
26
26
  });
27
+ _defineProperty(this, "clear", function () {
28
+ _this.previewCache.clear();
29
+ });
27
30
  this.previewCache = previewCache;
28
31
  });
29
32
  export default new CardPreviewCacheImpl(createObjectURLCache());
@@ -1,8 +1,8 @@
1
1
  import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _regeneratorRuntime from "@babel/runtime/regenerator";
4
- 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; }
5
- 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) { _defineProperty(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; }
4
+ 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; }
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 { isPreviewableFileState, addFileAttrsToUrl } from '@atlaskit/media-client';
7
7
  import { isMimeTypeSupportedByBrowser } from '@atlaskit/media-common';
8
8
  import cardPreviewCache from './cache';
@@ -1 +1 @@
1
- export { default as Card } from './cardLoader';
1
+ export { default as Card } from './cardSwitcher';
@@ -5,8 +5,8 @@ import _inherits from "@babel/runtime/helpers/inherits";
5
5
  import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
6
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
7
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
- 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; }
9
- 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) { _defineProperty(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; }
8
+ 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; }
9
+ 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; }
10
10
  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); }; }
11
11
  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; } }
12
12
  import React from 'react';
@@ -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 = "76.1.2";
86
+ var packageVersion = "76.2.0";
87
87
  var MediaCardAnalyticsErrorBoundary = withMediaAnalyticsContext({
88
88
  packageVersion: packageVersion,
89
89
  packageName: packageName,
@@ -8,6 +8,7 @@ export var StyledBar = function StyledBar(props) {
8
8
  showOnTop = props.showOnTop;
9
9
  return jsx("div", {
10
10
  id: "styledBar",
11
+ "data-testid": "media-progress-bar",
11
12
  css: styledBarStyles({
12
13
  progress: progress,
13
14
  breakpoint: breakpoint,
@@ -8,6 +8,7 @@ export var TitleBoxWrapper = function TitleBoxWrapper(props) {
8
8
  var theme = useGlobalTheme();
9
9
  return jsx("div", {
10
10
  id: "titleBoxWrapper",
11
+ "data-testid": "media-title-box",
11
12
  css: titleBoxWrapperStyles({
12
13
  breakpoint: breakpoint,
13
14
  titleBoxBgColor: titleBoxBgColor,