@atlaskit/media-card 74.3.2 → 74.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cjs/card/card.js +27 -18
  3. package/dist/cjs/card/cardAnalytics.js +16 -5
  4. package/dist/cjs/card/cardImageView/cardOverlay/index.js +1 -3
  5. package/dist/cjs/card/cardImageView/cardOverlay/styles.js +6 -8
  6. package/dist/cjs/card/cardImageView/fileCardImageView.js +1 -3
  7. package/dist/cjs/card/cardImageView/styles.js +7 -9
  8. package/dist/cjs/card/cardLoader.js +12 -3
  9. package/dist/cjs/card/cardState.js +11 -13
  10. package/dist/cjs/card/media-card-analytics-error-boundary.js +129 -0
  11. package/dist/cjs/card/styles/index.js +1 -3
  12. package/dist/cjs/card/ui/blanket/styles.js +1 -3
  13. package/dist/cjs/card/ui/iconMessage/styles.js +1 -3
  14. package/dist/cjs/card/ui/loadingRateLimited/styles.js +1 -3
  15. package/dist/cjs/card/ui/newFileExperience/newFileExperienceWrapper.js +5 -1
  16. package/dist/cjs/card/ui/newFileExperience/styles.js +12 -4
  17. package/dist/cjs/card/ui/playButton/styles.js +2 -4
  18. package/dist/cjs/card/ui/styles.js +1 -3
  19. package/dist/cjs/card/ui/tickBox/styles.js +2 -4
  20. package/dist/cjs/card/ui/titleBox/failedTitleBox.js +1 -3
  21. package/dist/cjs/card/ui/titleBox/styles.js +19 -5
  22. package/dist/cjs/card/ui/titleBox/titleBoxComponents.js +5 -1
  23. package/dist/cjs/card/ui/unhandledErrorCard/index.js +112 -0
  24. package/dist/cjs/card/ui/unhandledErrorCard/types.js +5 -0
  25. package/dist/cjs/errors.js +12 -3
  26. package/dist/cjs/inline/loader.js +4 -4
  27. package/dist/cjs/inline/mediaInlineAnalyticsErrorBoundary.js +113 -0
  28. package/dist/cjs/utils/analytics.js +41 -10
  29. package/dist/cjs/utils/cardActions/styles.js +2 -4
  30. package/dist/cjs/utils/errorIcon/styles.js +1 -3
  31. package/dist/cjs/utils/lightCards/styles.js +4 -6
  32. package/dist/cjs/utils/ufoExperiences.js +1 -1
  33. package/dist/cjs/version.json +1 -1
  34. package/dist/es2019/card/card.js +29 -17
  35. package/dist/es2019/card/cardAnalytics.js +9 -5
  36. package/dist/es2019/card/cardImageView/cardOverlay/index.js +1 -2
  37. package/dist/es2019/card/cardImageView/cardOverlay/styles.js +20 -21
  38. package/dist/es2019/card/cardImageView/fileCardImageView.js +1 -2
  39. package/dist/es2019/card/cardImageView/styles.js +7 -8
  40. package/dist/es2019/card/cardLoader.js +12 -3
  41. package/dist/es2019/card/cardState.js +12 -7
  42. package/dist/es2019/card/media-card-analytics-error-boundary.js +90 -0
  43. package/dist/es2019/card/styles/index.js +1 -2
  44. package/dist/es2019/card/ui/blanket/styles.js +1 -2
  45. package/dist/es2019/card/ui/iconMessage/styles.js +1 -2
  46. package/dist/es2019/card/ui/loadingRateLimited/styles.js +1 -2
  47. package/dist/es2019/card/ui/newFileExperience/newFileExperienceWrapper.js +4 -1
  48. package/dist/es2019/card/ui/newFileExperience/styles.js +10 -3
  49. package/dist/es2019/card/ui/playButton/styles.js +2 -3
  50. package/dist/es2019/card/ui/styles.js +1 -2
  51. package/dist/es2019/card/ui/tickBox/styles.js +4 -5
  52. package/dist/es2019/card/ui/titleBox/failedTitleBox.js +1 -2
  53. package/dist/es2019/card/ui/titleBox/styles.js +20 -7
  54. package/dist/es2019/card/ui/titleBox/titleBoxComponents.js +4 -1
  55. package/dist/es2019/card/ui/unhandledErrorCard/index.js +79 -0
  56. package/dist/es2019/card/ui/unhandledErrorCard/types.js +1 -0
  57. package/dist/es2019/errors.js +13 -2
  58. package/dist/es2019/inline/loader.js +4 -4
  59. package/dist/es2019/inline/mediaInlineAnalyticsErrorBoundary.js +75 -0
  60. package/dist/es2019/utils/analytics.js +32 -9
  61. package/dist/es2019/utils/cardActions/styles.js +4 -5
  62. package/dist/es2019/utils/errorIcon/styles.js +1 -2
  63. package/dist/es2019/utils/lightCards/styles.js +4 -5
  64. package/dist/es2019/utils/ufoExperiences.js +1 -1
  65. package/dist/es2019/version.json +1 -1
  66. package/dist/esm/card/card.js +28 -19
  67. package/dist/esm/card/cardAnalytics.js +12 -4
  68. package/dist/esm/card/cardImageView/cardOverlay/index.js +1 -2
  69. package/dist/esm/card/cardImageView/cardOverlay/styles.js +6 -7
  70. package/dist/esm/card/cardImageView/fileCardImageView.js +1 -2
  71. package/dist/esm/card/cardImageView/styles.js +7 -8
  72. package/dist/esm/card/cardLoader.js +12 -3
  73. package/dist/esm/card/cardState.js +12 -11
  74. package/dist/esm/card/media-card-analytics-error-boundary.js +115 -0
  75. package/dist/esm/card/styles/index.js +1 -2
  76. package/dist/esm/card/ui/blanket/styles.js +1 -2
  77. package/dist/esm/card/ui/iconMessage/styles.js +1 -2
  78. package/dist/esm/card/ui/loadingRateLimited/styles.js +1 -2
  79. package/dist/esm/card/ui/newFileExperience/newFileExperienceWrapper.js +4 -1
  80. package/dist/esm/card/ui/newFileExperience/styles.js +10 -3
  81. package/dist/esm/card/ui/playButton/styles.js +2 -3
  82. package/dist/esm/card/ui/styles.js +1 -2
  83. package/dist/esm/card/ui/tickBox/styles.js +2 -3
  84. package/dist/esm/card/ui/titleBox/failedTitleBox.js +1 -2
  85. package/dist/esm/card/ui/titleBox/styles.js +19 -5
  86. package/dist/esm/card/ui/titleBox/titleBoxComponents.js +4 -1
  87. package/dist/esm/card/ui/unhandledErrorCard/index.js +93 -0
  88. package/dist/esm/card/ui/unhandledErrorCard/types.js +1 -0
  89. package/dist/esm/errors.js +12 -3
  90. package/dist/esm/inline/loader.js +5 -5
  91. package/dist/esm/inline/mediaInlineAnalyticsErrorBoundary.js +99 -0
  92. package/dist/esm/utils/analytics.js +34 -9
  93. package/dist/esm/utils/cardActions/styles.js +2 -3
  94. package/dist/esm/utils/errorIcon/styles.js +1 -2
  95. package/dist/esm/utils/lightCards/styles.js +4 -5
  96. package/dist/esm/utils/ufoExperiences.js +1 -1
  97. package/dist/esm/version.json +1 -1
  98. package/dist/types/card/card.d.ts +1 -1
  99. package/dist/types/card/cardAnalytics.d.ts +2 -1
  100. package/dist/types/card/cardState.d.ts +6 -1
  101. package/dist/types/card/getCardPreview/index.d.ts +1 -1
  102. package/dist/types/card/media-card-analytics-error-boundary.d.ts +14 -0
  103. package/dist/types/card/ui/newFileExperience/styles.d.ts +1 -1
  104. package/dist/types/card/ui/newFileExperience/types.d.ts +2 -0
  105. package/dist/types/card/ui/titleBox/styles.d.ts +1 -1
  106. package/dist/types/card/ui/titleBox/types.d.ts +2 -0
  107. package/dist/types/card/ui/unhandledErrorCard/index.d.ts +7 -0
  108. package/dist/types/card/ui/unhandledErrorCard/types.d.ts +6 -0
  109. package/dist/types/errors.d.ts +2 -2
  110. package/dist/types/inline/mediaInlineAnalyticsErrorBoundary.d.ts +11 -0
  111. package/dist/types/types.d.ts +3 -0
  112. package/dist/types/utils/analytics.d.ts +26 -6
  113. package/example-helpers/styles.ts +13 -0
  114. package/package.json +9 -8
  115. package/report.api.md +18 -2
  116. package/dist/cjs/utils/media-card-analytics-error-boundary.js +0 -59
  117. package/dist/es2019/utils/media-card-analytics-error-boundary.js +0 -19
  118. package/dist/esm/utils/media-card-analytics-error-boundary.js +0 -46
  119. package/dist/types/utils/media-card-analytics-error-boundary.d.ts +0 -10
@@ -9,8 +9,6 @@ exports.warningIconWrapperStyles = exports.loadingRateLimitedTextWrapperStyles =
9
9
 
10
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
11
 
12
- var _tokens = require("@atlaskit/tokens");
13
-
14
12
  var _react = require("@emotion/react");
15
13
 
16
14
  var _styles = require("../progressBar/styles");
@@ -27,7 +25,7 @@ exports.warningIconWrapperStyles = warningIconWrapperStyles;
27
25
  var loadingRateLimitedTextWrapperStyles = function loadingRateLimitedTextWrapperStyles(_ref) {
28
26
  var breakpoint = _ref.breakpoint,
29
27
  positionBottom = _ref.positionBottom;
30
- return (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n margin-top: 10px;\n overflow: hidden;\n color: ", ";\n display: block;\n width: 100%;\n text-align: center;\n ", "\n"])), (0, _tokens.token)('color.text.subtlest', _colors.N300), (0, _styles.generateResponsiveStyles)(breakpoint, positionBottom, false, 1));
28
+ return (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n margin-top: 10px;\n overflow: hidden;\n color: ", ";\n display: block;\n width: 100%;\n text-align: center;\n ", "\n"])), "var(--ds-text-subtlest, ".concat(_colors.N300, ")"), (0, _styles.generateResponsiveStyles)(breakpoint, positionBottom, false, 1));
31
29
  };
32
30
 
33
31
  exports.loadingRateLimitedTextWrapperStyles = loadingRateLimitedTextWrapperStyles;
@@ -11,6 +11,8 @@ var _cardConstants = require("../../cardConstants");
11
11
 
12
12
  var _styles = require("./styles");
13
13
 
14
+ var _components = require("@atlaskit/theme/components");
15
+
14
16
  /**@jsx jsx */
15
17
  var NewFileExperienceWrapper = function NewFileExperienceWrapper(props) {
16
18
  var testId = props.testId,
@@ -27,6 +29,7 @@ var NewFileExperienceWrapper = function NewFileExperienceWrapper(props) {
27
29
  isPlayButtonClickable = props.isPlayButtonClickable,
28
30
  isTickBoxSelectable = props.isTickBoxSelectable,
29
31
  shouldDisplayTooltip = props.shouldDisplayTooltip;
32
+ var theme = (0, _components.useGlobalTheme)();
30
33
  return (0, _react.jsx)("div", {
31
34
  id: "newFileExperienceWrapper",
32
35
  className: _cardConstants.newFileExperienceClassName,
@@ -41,7 +44,8 @@ var NewFileExperienceWrapper = function NewFileExperienceWrapper(props) {
41
44
  isPlayButtonClickable: isPlayButtonClickable,
42
45
  isTickBoxSelectable: isTickBoxSelectable,
43
46
  shouldDisplayTooltip: shouldDisplayTooltip,
44
- mediaCardCursor: mediaCardCursor
47
+ mediaCardCursor: mediaCardCursor,
48
+ theme: theme
45
49
  }),
46
50
  ref: innerRef,
47
51
  onClick: onClick,
@@ -17,10 +17,10 @@ var _mediaUi = require("@atlaskit/media-ui");
17
17
 
18
18
  var _colors = require("@atlaskit/theme/colors");
19
19
 
20
- var _tokens = require("@atlaskit/tokens");
21
-
22
20
  var _selection = require("@atlaskit/editor-shared-styles/selection");
23
21
 
22
+ var _components = require("@atlaskit/theme/components");
23
+
24
24
  var _styles = require("../../styles");
25
25
 
26
26
  var _styles2 = require("../blanket/styles");
@@ -31,6 +31,8 @@ var _styles4 = require("../styles");
31
31
 
32
32
  var _templateObject;
33
33
 
34
+ var BACKGROUND_COLOR_DARK = '#22272C';
35
+
34
36
  var newFileExperienceWrapperStyles = function newFileExperienceWrapperStyles(_ref) {
35
37
  var breakpoint = _ref.breakpoint,
36
38
  dimensions = _ref.dimensions,
@@ -41,8 +43,14 @@ var newFileExperienceWrapperStyles = function newFileExperienceWrapperStyles(_re
41
43
  isPlayButtonClickable = _ref.isPlayButtonClickable,
42
44
  isTickBoxSelectable = _ref.isTickBoxSelectable,
43
45
  shouldDisplayTooltip = _ref.shouldDisplayTooltip,
44
- mediaCardCursor = _ref.mediaCardCursor;
45
- return (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", "\n box-sizing: border-box;\n * {\n box-sizing: border-box;\n }\n position: relative;\n font-family: ", ";\n ", "\n ", "\n ", "\n ", "\n ", "\n ", ";\n ", "\n\n /* We use classnames from here exceptionally to be able to handle styles when the Card is on hover */\n ", "\n ", "\n &:hover .", " {\n ", "\n }\n &:hover .", " {\n ", "\n }\n\n /* Tooltip does not support percentage dimensions. We enforce them here */\n ", "\n"])), (0, _styles.transition)(), (0, _constants.fontFamily)(), (0, _styles4.getWrapperDimensions)(dimensions, appearance), displayBackground && "background-color: ".concat((0, _tokens.token)('color.background.neutral', _colors.N20), ";"), _mediaUi.borderRadius, (0, _styles4.getCursorStyle)(mediaCardCursor), (0, _styles4.getWrapperShadow)(disableOverlay, selected), (0, _styles4.generateResponsiveStyles)(breakpoint), _selection.hideNativeBrowserTextSelectionStyles, (0, _styles4.getClickablePlayButtonStyles)(isPlayButtonClickable), (0, _styles4.getSelectableTickBoxStyles)(isTickBoxSelectable), _styles2.blanketClassName, _styles2.fixedBlanketStyles, _styles3.actionsBarClassName, _styles3.fixedActionBarStyles, shouldDisplayTooltip && "> div { width: 100%; height: 100%; }");
46
+ mediaCardCursor = _ref.mediaCardCursor,
47
+ theme = _ref.theme;
48
+ return (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", "\n box-sizing: border-box;\n * {\n box-sizing: border-box;\n }\n position: relative;\n font-family: ", ";\n ", "\n ", "\n ", "\n ", "\n ", "\n ", ";\n ", "\n\n /* We use classnames from here exceptionally to be able to handle styles when the Card is on hover */\n ", "\n ", "\n &:hover .", " {\n ", "\n }\n &:hover .", " {\n ", "\n }\n\n /* Tooltip does not support percentage dimensions. We enforce them here */\n ", "\n"])), (0, _styles.transition)(), (0, _constants.fontFamily)(), (0, _styles4.getWrapperDimensions)(dimensions, appearance), displayBackground && "background: ".concat((0, _components.themed)({
49
+ light: "var(--ds-background-neutral, ".concat(_colors.N20, ")"),
50
+ dark: "var(--ds-background-neutral, ".concat(BACKGROUND_COLOR_DARK, ")")
51
+ })({
52
+ theme: theme
53
+ }), ";"), _mediaUi.borderRadius, (0, _styles4.getCursorStyle)(mediaCardCursor), (0, _styles4.getWrapperShadow)(disableOverlay, selected), (0, _styles4.generateResponsiveStyles)(breakpoint), _selection.hideNativeBrowserTextSelectionStyles, (0, _styles4.getClickablePlayButtonStyles)(isPlayButtonClickable), (0, _styles4.getSelectableTickBoxStyles)(isTickBoxSelectable), _styles2.blanketClassName, _styles2.fixedBlanketStyles, _styles3.actionsBarClassName, _styles3.fixedActionBarStyles, shouldDisplayTooltip && "> div { width: 100%; height: 100%; }");
46
54
  };
47
55
 
48
56
  exports.newFileExperienceWrapperStyles = newFileExperienceWrapperStyles;
@@ -13,8 +13,6 @@ var _react = require("@emotion/react");
13
13
 
14
14
  var _colors = require("@atlaskit/theme/colors");
15
15
 
16
- var _tokens = require("@atlaskit/tokens");
17
-
18
16
  var _templateObject, _templateObject2;
19
17
 
20
18
  var playButtonClassName = 'media-card-play-button';
@@ -25,7 +23,7 @@ var discSize = 48;
25
23
  var discSizeHover = 56;
26
24
  var fixedPlayButtonStyles = "\n .".concat(bkgClassName, " {\n width: ").concat(discSizeHover, "px;\n height: ").concat(discSizeHover, "px;\n }\n");
27
25
  exports.fixedPlayButtonStyles = fixedPlayButtonStyles;
28
- var playButtonWrapperStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ", ";\n span {\n position: absolute;\n }\n"])), (0, _tokens.token)('color.icon.inverse', _colors.N0));
26
+ var playButtonWrapperStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ", ";\n span {\n position: absolute;\n }\n"])), "var(--ds-icon-inverse, ".concat(_colors.N0, ")"));
29
27
  exports.playButtonWrapperStyles = playButtonWrapperStyles;
30
- var backgroundStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n transition-property: width, height;\n transition-duration: 0.1s;\n position: absolute;\n width: ", "px;\n height: ", "px;\n background: ", ";\n border-radius: 100%;\n"])), discSize, discSize, (0, _tokens.token)('color.background.neutral.bold', _colors.N90A));
28
+ var backgroundStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n transition-property: width, height;\n transition-duration: 0.1s;\n position: absolute;\n width: ", "px;\n height: ", "px;\n background: ", ";\n border-radius: 100%;\n"])), discSize, discSize, "var(--ds-background-neutral-bold, ".concat(_colors.N90A, ")"));
31
29
  exports.backgroundStyles = backgroundStyles;
@@ -17,8 +17,6 @@ var _mediaUi = require("@atlaskit/media-ui");
17
17
 
18
18
  var _colors = require("@atlaskit/theme/colors");
19
19
 
20
- var _tokens = require("@atlaskit/tokens");
21
-
22
20
  var _consts = require("@atlaskit/editor-shared-styles/consts");
23
21
 
24
22
  var _getCSSUnitValue = require("../../utils/getCSSUnitValue");
@@ -78,7 +76,7 @@ var getWrapperDimensions = function getWrapperDimensions(dimensions, appearance)
78
76
  exports.getWrapperDimensions = getWrapperDimensions;
79
77
 
80
78
  var getWrapperShadow = function getWrapperShadow(disableOverlay, selected) {
81
- var withOverlayShadow = !disableOverlay ? "".concat((0, _tokens.token)('elevation.shadow.raised', "0 1px 1px ".concat(_colors.N60A, ", 0 0 1px 0 ").concat(_colors.N60A))) : '';
79
+ var withOverlayShadow = !disableOverlay ? "".concat("var(--ds-shadow-raised, ".concat("0 1px 1px ".concat(_colors.N60A, ", 0 0 1px 0 ").concat(_colors.N60A), ")")) : '';
82
80
  var selectedShadow = selected ? _consts.akEditorSelectedBoxShadow : '';
83
81
  var shadow = [selectedShadow, withOverlayShadow].filter(Boolean).join(', ');
84
82
  return shadow ? "box-shadow: ".concat(shadow, ";") : '';
@@ -15,17 +15,15 @@ var _styles = require("../../styles");
15
15
 
16
16
  var _colors = require("@atlaskit/theme/colors");
17
17
 
18
- var _tokens = require("@atlaskit/tokens");
19
-
20
18
  var _templateObject;
21
19
 
22
20
  var tickBoxClassName = 'media-card-tickbox';
23
21
  exports.tickBoxClassName = tickBoxClassName;
24
- var tickboxFixedStyles = "\n background-color: ".concat((0, _tokens.token)('color.background.input', _colors.N0), ";\n color: ").concat((0, _tokens.token)('color.icon.subtle', _colors.N100), ";\n");
22
+ var tickboxFixedStyles = "\n background-color: ".concat("var(--ds-background-input, ".concat(_colors.N0, ")"), ";\n color: ", "var(--ds-icon-subtle, ".concat(_colors.N100, ")"), ";\n");
25
23
  exports.tickboxFixedStyles = tickboxFixedStyles;
26
24
 
27
25
  var getSelectedStyles = function getSelectedStyles(selected) {
28
- return selected ? "background-color: ".concat((0, _tokens.token)('color.icon.information', _colors.B200), ";\n color: ").concat((0, _tokens.token)('color.icon.inverse', 'white'), ";") : "";
26
+ return selected ? "background-color: ".concat("var(--ds-icon-information, ".concat(_colors.B200, ")"), ";\n color: ", "var(--ds-icon-inverse, white)", ";") : "";
29
27
  };
30
28
 
31
29
  exports.getSelectedStyles = getSelectedStyles;
@@ -17,8 +17,6 @@ var _mediaUi = require("@atlaskit/media-ui");
17
17
 
18
18
  var _colors = require("@atlaskit/theme/colors");
19
19
 
20
- var _tokens = require("@atlaskit/tokens");
21
-
22
20
  var _titleBoxComponents = require("./titleBoxComponents");
23
21
 
24
22
  var FailedTitleBox = function FailedTitleBox(_ref) {
@@ -30,7 +28,7 @@ var FailedTitleBox = function FailedTitleBox(_ref) {
30
28
  }, /*#__PURE__*/_react.default.createElement(_titleBoxComponents.ErrorMessageWrapper, null, /*#__PURE__*/_react.default.createElement(_warning.default, {
31
29
  label: 'Warning',
32
30
  size: 'small',
33
- primaryColor: (0, _tokens.token)('color.text.danger', _colors.R300)
31
+ primaryColor: "var(--ds-text-danger, ".concat(_colors.R300, ")")
34
32
  }), /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, customMessage))));
35
33
  };
36
34
 
@@ -11,14 +11,14 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
11
11
 
12
12
  var _react = require("@emotion/react");
13
13
 
14
- var _tokens = require("@atlaskit/tokens");
15
-
16
14
  var _common = require("../common");
17
15
 
18
16
  var _colors = require("@atlaskit/theme/colors");
19
17
 
20
18
  var _mixins = require("../../styles/mixins");
21
19
 
20
+ var _components = require("@atlaskit/theme/components");
21
+
22
22
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
23
23
 
24
24
  var generateResponsiveStyles = function generateResponsiveStyles() {
@@ -31,16 +31,30 @@ var generateResponsiveStyles = function generateResponsiveStyles() {
31
31
  };
32
32
 
33
33
  var HEX_REGEX = /^#[0-9A-F]{6}$/i;
34
+ var BACKGROUND_COLOR_DARK = '#161a1d';
35
+ var TEXT_COLOR_DARK = '#C7D1DB';
34
36
 
35
37
  var titleBoxWrapperStyles = function titleBoxWrapperStyles(_ref) {
36
38
  var breakpoint = _ref.breakpoint,
37
- titleBoxBgColor = _ref.titleBoxBgColor;
38
- return (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n bottom: 0;\n width: 100%;\n background-color: ", ";\n color: inherit;\n cursor: inherit;\n pointer-events: none;\n display: flex;\n flex-direction: column;\n justify-content: center;\n ", "\n"])), (0, _tokens.token)('elevation.surface', (0, _mixins.rgba)(titleBoxBgColor && HEX_REGEX.test(titleBoxBgColor) ? titleBoxBgColor : _colors.N0, 0.8)), generateResponsiveStyles(breakpoint));
39
+ titleBoxBgColor = _ref.titleBoxBgColor,
40
+ theme = _ref.theme;
41
+ return (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n bottom: 0;\n width: 100%;\n background-color: ", ";\n color: ", ";\n cursor: inherit;\n pointer-events: none;\n display: flex;\n flex-direction: column;\n justify-content: center;\n ", "\n"])), (0, _components.themed)({
42
+ light: "var(--ds-surface, ".concat((0, _mixins.rgba)(titleBoxBgColor && HEX_REGEX.test(titleBoxBgColor) ? titleBoxBgColor : _colors.N0, 1), ")"),
43
+ dark: "var(--ds-surface, ".concat((0, _mixins.rgba)( // theme does not contain this color, use constant instead
44
+ titleBoxBgColor && HEX_REGEX.test(titleBoxBgColor) ? titleBoxBgColor : BACKGROUND_COLOR_DARK, 1), ")")
45
+ })({
46
+ theme: theme
47
+ }), (0, _components.themed)({
48
+ light: "var(--ds-text, ".concat(_colors.N800, ")"),
49
+ dark: "var(--ds-text, ".concat(TEXT_COLOR_DARK, ")")
50
+ })({
51
+ theme: theme
52
+ }), generateResponsiveStyles(breakpoint));
39
53
  };
40
54
 
41
55
  exports.titleBoxWrapperStyles = titleBoxWrapperStyles;
42
56
  titleBoxWrapperStyles.displayName = 'TitleBoxWrapper';
43
- var infoStyles = "white-space: nowrap;\n overflow: hidden;";
57
+ var infoStyles = "white-space: nowrap;overflow: hidden;";
44
58
  var iconOverlapStyles = "padding-right: 10px;";
45
59
 
46
60
  var titleBoxHeaderStyles = function titleBoxHeaderStyles(_ref2) {
@@ -9,15 +9,19 @@ var _react = require("@emotion/react");
9
9
 
10
10
  var _styles = require("./styles");
11
11
 
12
+ var _components = require("@atlaskit/theme/components");
13
+
12
14
  /** @jsx jsx */
13
15
  var TitleBoxWrapper = function TitleBoxWrapper(props) {
14
16
  var breakpoint = props.breakpoint,
15
17
  titleBoxBgColor = props.titleBoxBgColor;
18
+ var theme = (0, _components.useGlobalTheme)();
16
19
  return (0, _react.jsx)("div", {
17
20
  id: "titleBoxWrapper",
18
21
  css: (0, _styles.titleBoxWrapperStyles)({
19
22
  breakpoint: breakpoint,
20
- titleBoxBgColor: titleBoxBgColor
23
+ titleBoxBgColor: titleBoxBgColor,
24
+ theme: theme
21
25
  })
22
26
  }, props.children);
23
27
  };
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.UnhandledErrorCard = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+
16
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
+
18
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
+
20
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
21
+
22
+ var _react = require("react");
23
+
24
+ var _react2 = require("@emotion/react");
25
+
26
+ var _warning = _interopRequireDefault(require("@atlaskit/icon/glyph/editor/warning"));
27
+
28
+ var _colors = require("@atlaskit/theme/colors");
29
+
30
+ var _constants = require("@atlaskit/theme/constants");
31
+
32
+ var _mediaUi = require("@atlaskit/media-ui");
33
+
34
+ var _utils = require("../../../utils");
35
+
36
+ var _templateObject;
37
+
38
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
39
+
40
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
41
+
42
+ var isPercentage = function isPercentage(value) {
43
+ return /^\d+(\.\d+)?%$/.test(value);
44
+ };
45
+
46
+ var shouldShowText = function shouldShowText(_ref) {
47
+ var width = _ref.width,
48
+ height = _ref.height;
49
+
50
+ if (isPercentage(width) || isPercentage(height)) {
51
+ return false;
52
+ }
53
+
54
+ return parseInt(width, 10) >= 240 && parseInt(height, 10) >= 90;
55
+ };
56
+
57
+ var normalizeDimension = function normalizeDimension(value, defaultValue) {
58
+ var sValue = value.toString();
59
+ return isPercentage(sValue) ? sValue : isNaN(parseInt(sValue, 10)) ? defaultValue + 'px' : parseInt(sValue, 10) + 'px';
60
+ };
61
+
62
+ var getConvertedDimension = function getConvertedDimension(dimensions) {
63
+ var _dimensions$width = dimensions.width,
64
+ width = _dimensions$width === void 0 ? _utils.defaultImageCardDimensions.width : _dimensions$width,
65
+ _dimensions$height = dimensions.height,
66
+ height = _dimensions$height === void 0 ? _utils.defaultImageCardDimensions.height : _dimensions$height;
67
+ return {
68
+ width: normalizeDimension(width, _utils.defaultImageCardDimensions.width),
69
+ height: normalizeDimension(height, _utils.defaultImageCardDimensions.height)
70
+ };
71
+ };
72
+
73
+ var wrapperStyles = function wrapperStyles() {
74
+ var dimensions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _utils.defaultImageCardDimensions;
75
+
76
+ try {
77
+ return (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n ", ";\n background: ", ";\n color: ", ";\n max-height: 100%;\n max-width: 100%;\n ", ";\n display: flex;\n flex-direction: column;\n\n p {\n font-size: ", "px;\n text-align: center;\n display: ", ";\n }\n "])), _mediaUi.center, _mediaUi.borderRadius, "var(--ds-background-neutral, ".concat(_colors.N20, ")"), "var(--ds-text-subtle, ".concat(_colors.N800, ")"), getConvertedDimension(dimensions), (0, _constants.fontSize)(), shouldShowText(getConvertedDimension(dimensions)) ? 'block' : 'none');
78
+ } catch (e) {
79
+ return null;
80
+ }
81
+ };
82
+
83
+ var UnhandledErrorCard = /*#__PURE__*/function (_Component) {
84
+ (0, _inherits2.default)(UnhandledErrorCard, _Component);
85
+
86
+ var _super = _createSuper(UnhandledErrorCard);
87
+
88
+ function UnhandledErrorCard() {
89
+ (0, _classCallCheck2.default)(this, UnhandledErrorCard);
90
+ return _super.apply(this, arguments);
91
+ }
92
+
93
+ (0, _createClass2.default)(UnhandledErrorCard, [{
94
+ key: "render",
95
+ value: function render() {
96
+ var _this$props = this.props,
97
+ dimensions = _this$props.dimensions,
98
+ onClick = _this$props.onClick;
99
+ return (0, _react2.jsx)("div", {
100
+ css: wrapperStyles(dimensions),
101
+ onClick: onClick
102
+ }, (0, _react2.jsx)(_warning.default, {
103
+ label: "Error",
104
+ primaryColor: "var(--ds-icon-warning, ".concat(_colors.Y500, ")"),
105
+ size: "medium"
106
+ }), (0, _react2.jsx)("p", null, "We couldn't load this content"));
107
+ }
108
+ }]);
109
+ return UnhandledErrorCard;
110
+ }(_react.Component);
111
+
112
+ exports.UnhandledErrorCard = UnhandledErrorCard;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -184,12 +184,21 @@ exports.isUnsupportedLocalPreviewError = isUnsupportedLocalPreviewError;
184
184
 
185
185
  function isImageLoadError(err) {
186
186
  return err instanceof ImageLoadError;
187
- } // In a try/catch statement, the error caught is the type of any.
187
+ } // In a try/catch statement, the error caught is the type of unknown.
188
188
  // We can use this helper to ensure that the error handled is the type of MediaCardError if unsure
189
+ // If updatePrimaryReason is true, if it's a MediaCardError already, it will update it's primary reason
189
190
 
190
191
 
191
- var ensureMediaCardError = function ensureMediaCardError(primaryReason, error) {
192
- return isMediaCardError(error) ? error : new MediaCardError(primaryReason, error);
192
+ var ensureMediaCardError = function ensureMediaCardError(primaryReason, error, updatePrimaryReason) {
193
+ if (isMediaCardError(error)) {
194
+ if (updatePrimaryReason && error.primaryReason !== primaryReason) {
195
+ return new MediaCardError(primaryReason, error.secondaryError);
196
+ }
197
+
198
+ return error;
199
+ }
200
+
201
+ return new MediaCardError(primaryReason, error);
193
202
  };
194
203
 
195
204
  exports.ensureMediaCardError = ensureMediaCardError;
@@ -68,7 +68,7 @@ var MediaInlineCardLoader = /*#__PURE__*/function (_React$PureComponent) {
68
68
  key: "componentDidMount",
69
69
  value: function () {
70
70
  var _componentDidMount = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
71
- var _yield$Promise$all, _yield$Promise$all2, mediaClient, cardModule, mediaCardErrorBoundaryModule;
71
+ var _yield$Promise$all, _yield$Promise$all2, mediaClient, cardModule, mediaInlineErrorBoundaryModule;
72
72
 
73
73
  return _regenerator.default.wrap(function _callee$(_context) {
74
74
  while (1) {
@@ -88,7 +88,7 @@ var MediaInlineCardLoader = /*#__PURE__*/function (_React$PureComponent) {
88
88
  }), Promise.resolve().then(function () {
89
89
  return _interopRequireWildcard(require('./mediaInlineCard'));
90
90
  }), Promise.resolve().then(function () {
91
- return _interopRequireWildcard(require('../utils/media-card-analytics-error-boundary'));
91
+ return _interopRequireWildcard(require('./mediaInlineAnalyticsErrorBoundary'));
92
92
  })]);
93
93
 
94
94
  case 5:
@@ -96,9 +96,9 @@ var MediaInlineCardLoader = /*#__PURE__*/function (_React$PureComponent) {
96
96
  _yield$Promise$all2 = (0, _slicedToArray2.default)(_yield$Promise$all, 3);
97
97
  mediaClient = _yield$Promise$all2[0];
98
98
  cardModule = _yield$Promise$all2[1];
99
- mediaCardErrorBoundaryModule = _yield$Promise$all2[2];
99
+ mediaInlineErrorBoundaryModule = _yield$Promise$all2[2];
100
100
  MediaInlineCardLoader.MediaInlineCard = mediaClient.withMediaClient(cardModule.MediaInlineCard);
101
- MediaInlineCardLoader.ErrorBoundary = mediaCardErrorBoundaryModule.default;
101
+ MediaInlineCardLoader.ErrorBoundary = mediaInlineErrorBoundaryModule.default;
102
102
 
103
103
  if (this.isMounted) {
104
104
  this.setState({
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _react = _interopRequireDefault(require("react"));
25
+
26
+ var _mediaCommon = require("@atlaskit/media-common");
27
+
28
+ var _analyticsNext = require("@atlaskit/analytics-next");
29
+
30
+ var _analytics = require("../utils/analytics");
31
+
32
+ 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; }
33
+
34
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
35
+
36
+ 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); }; }
37
+
38
+ 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; } }
39
+
40
+ var WrappedMediaInlineAnalyticsErrorBoundary = /*#__PURE__*/function (_React$Component) {
41
+ (0, _inherits2.default)(WrappedMediaInlineAnalyticsErrorBoundary, _React$Component);
42
+
43
+ var _super = _createSuper(WrappedMediaInlineAnalyticsErrorBoundary);
44
+
45
+ function WrappedMediaInlineAnalyticsErrorBoundary(props) {
46
+ var _this;
47
+
48
+ (0, _classCallCheck2.default)(this, WrappedMediaInlineAnalyticsErrorBoundary);
49
+ _this = _super.call(this, props);
50
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fireOperationalEvent", function (error, info) {
51
+ var _window, _window$navigator;
52
+
53
+ var _this$props = _this.props,
54
+ _this$props$data = _this$props.data,
55
+ data = _this$props$data === void 0 ? {} : _this$props$data,
56
+ createAnalyticsEvent = _this$props.createAnalyticsEvent;
57
+ var payload = {
58
+ eventType: 'operational',
59
+ action: 'failed',
60
+ actionSubject: 'mediaInlineRender',
61
+ attributes: _objectSpread({
62
+ browserInfo: (_window = window) !== null && _window !== void 0 && (_window$navigator = _window.navigator) !== null && _window$navigator !== void 0 && _window$navigator.userAgent ? window.navigator.userAgent : 'unknown',
63
+ error: error,
64
+ failReason: 'unexpected-error',
65
+ info: info
66
+ }, data)
67
+ };
68
+ (0, _analytics.fireMediaCardEvent)(payload, createAnalyticsEvent);
69
+ });
70
+ _this.state = {
71
+ hasError: false
72
+ };
73
+ return _this;
74
+ }
75
+
76
+ (0, _createClass2.default)(WrappedMediaInlineAnalyticsErrorBoundary, [{
77
+ key: "componentDidCatch",
78
+ value: function componentDidCatch(error, info) {
79
+ try {
80
+ this.fireOperationalEvent(error, info);
81
+ this.setState({
82
+ hasError: true
83
+ });
84
+ } catch (e) {}
85
+ }
86
+ }, {
87
+ key: "render",
88
+ value: function render() {
89
+ var hasError = this.state.hasError;
90
+ var children = this.props.children;
91
+
92
+ if (hasError) {
93
+ // TODO refactor error boundary for inline card https://product-fabric.atlassian.net/browse/MEX-2140
94
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
95
+ }
96
+
97
+ return children;
98
+ }
99
+ }]);
100
+ return WrappedMediaInlineAnalyticsErrorBoundary;
101
+ }(_react.default.Component);
102
+
103
+ (0, _defineProperty2.default)(WrappedMediaInlineAnalyticsErrorBoundary, "displayName", 'MediaInlineAnalyticsErrorBoundary');
104
+ var packageName = "@atlaskit/media-card";
105
+ var packageVersion = "74.4.1";
106
+ var MediaInlineAnalyticsErrorBoundary = (0, _mediaCommon.withMediaAnalyticsContext)({
107
+ packageVersion: packageVersion,
108
+ packageName: packageName,
109
+ componentName: 'mediaInlineCard',
110
+ component: 'mediaInlineCard'
111
+ })((0, _analyticsNext.withAnalyticsEvents)()(WrappedMediaInlineAnalyticsErrorBoundary));
112
+ var _default = MediaInlineAnalyticsErrorBoundary;
113
+ exports.default = _default;