@atlaskit/smart-card 34.6.6 → 34.7.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 (97) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/cjs/utils/analytics/analytics.js +1 -1
  3. package/dist/cjs/view/BlockCard/views/ResolvedView.js +2 -1
  4. package/dist/cjs/view/EmbedCard/components/ErrorFrame.compiled.css +28 -0
  5. package/dist/cjs/view/EmbedCard/components/ErrorFrame.js +59 -63
  6. package/dist/cjs/view/EmbedCard/components/ErrorFrameOld.js +100 -0
  7. package/dist/cjs/view/EmbedCard/components/ExpandedFrame.js +24 -10
  8. package/dist/cjs/view/EmbedCard/components/ExpandedFrameOld.js +114 -0
  9. package/dist/cjs/view/EmbedCard/components/Frame.compiled.css +9 -0
  10. package/dist/cjs/view/EmbedCard/components/Frame.js +23 -23
  11. package/dist/cjs/view/EmbedCard/components/FrameOld.js +144 -0
  12. package/dist/cjs/view/EmbedCard/components/ImageIcon.js +20 -9
  13. package/dist/cjs/view/EmbedCard/components/styled.compiled.css +92 -0
  14. package/dist/cjs/view/EmbedCard/components/styled.js +197 -234
  15. package/dist/cjs/view/EmbedCard/components/styledOld.js +261 -0
  16. package/dist/cjs/view/EmbedCard/views/ErroredView.compiled.css +13 -0
  17. package/dist/cjs/view/EmbedCard/views/ErroredView.js +30 -38
  18. package/dist/cjs/view/EmbedCard/views/ErroredViewOld.js +69 -0
  19. package/dist/cjs/view/EmbedCard/views/ResolvedView.js +19 -13
  20. package/dist/cjs/view/EmbedCard/views/ResolvedViewOld.js +82 -0
  21. package/dist/cjs/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.js +129 -0
  22. package/dist/cjs/view/EmbedCard/views/unresolved-view/index.compiled.css +19 -0
  23. package/dist/cjs/view/EmbedCard/views/unresolved-view/index.js +36 -55
  24. package/dist/cjs/view/LinkUrl/index.js +1 -1
  25. package/dist/es2019/utils/analytics/analytics.js +1 -1
  26. package/dist/es2019/view/BlockCard/views/ResolvedView.js +2 -1
  27. package/dist/es2019/view/EmbedCard/components/ErrorFrame.compiled.css +28 -0
  28. package/dist/es2019/view/EmbedCard/components/ErrorFrame.js +48 -61
  29. package/dist/es2019/view/EmbedCard/components/ErrorFrameOld.js +91 -0
  30. package/dist/es2019/view/EmbedCard/components/ExpandedFrame.js +48 -32
  31. package/dist/es2019/view/EmbedCard/components/ExpandedFrameOld.js +96 -0
  32. package/dist/es2019/view/EmbedCard/components/Frame.compiled.css +9 -0
  33. package/dist/es2019/view/EmbedCard/components/Frame.js +23 -22
  34. package/dist/es2019/view/EmbedCard/components/FrameOld.js +114 -0
  35. package/dist/es2019/view/EmbedCard/components/ImageIcon.js +20 -9
  36. package/dist/es2019/view/EmbedCard/components/styled.compiled.css +92 -0
  37. package/dist/es2019/view/EmbedCard/components/styled.js +192 -343
  38. package/dist/es2019/view/EmbedCard/components/styledOld.js +362 -0
  39. package/dist/es2019/view/EmbedCard/views/ErroredView.compiled.css +13 -0
  40. package/dist/es2019/view/EmbedCard/views/ErroredView.js +27 -37
  41. package/dist/es2019/view/EmbedCard/views/ErroredViewOld.js +58 -0
  42. package/dist/es2019/view/EmbedCard/views/ResolvedView.js +19 -12
  43. package/dist/es2019/view/EmbedCard/views/ResolvedViewOld.js +72 -0
  44. package/dist/es2019/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.js +119 -0
  45. package/dist/es2019/view/EmbedCard/views/unresolved-view/index.compiled.css +19 -0
  46. package/dist/es2019/view/EmbedCard/views/unresolved-view/index.js +35 -53
  47. package/dist/es2019/view/LinkUrl/index.js +1 -1
  48. package/dist/esm/utils/analytics/analytics.js +1 -1
  49. package/dist/esm/view/BlockCard/views/ResolvedView.js +2 -1
  50. package/dist/esm/view/EmbedCard/components/ErrorFrame.compiled.css +28 -0
  51. package/dist/esm/view/EmbedCard/components/ErrorFrame.js +59 -62
  52. package/dist/esm/view/EmbedCard/components/ErrorFrameOld.js +92 -0
  53. package/dist/esm/view/EmbedCard/components/ExpandedFrame.js +13 -2
  54. package/dist/esm/view/EmbedCard/components/ExpandedFrameOld.js +104 -0
  55. package/dist/esm/view/EmbedCard/components/Frame.compiled.css +9 -0
  56. package/dist/esm/view/EmbedCard/components/Frame.js +23 -22
  57. package/dist/esm/view/EmbedCard/components/FrameOld.js +133 -0
  58. package/dist/esm/view/EmbedCard/components/ImageIcon.js +20 -9
  59. package/dist/esm/view/EmbedCard/components/styled.compiled.css +92 -0
  60. package/dist/esm/view/EmbedCard/components/styled.js +197 -234
  61. package/dist/esm/view/EmbedCard/components/styledOld.js +252 -0
  62. package/dist/esm/view/EmbedCard/views/ErroredView.compiled.css +13 -0
  63. package/dist/esm/view/EmbedCard/views/ErroredView.js +27 -37
  64. package/dist/esm/view/EmbedCard/views/ErroredViewOld.js +61 -0
  65. package/dist/esm/view/EmbedCard/views/ResolvedView.js +19 -12
  66. package/dist/esm/view/EmbedCard/views/ResolvedViewOld.js +74 -0
  67. package/dist/esm/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.js +118 -0
  68. package/dist/esm/view/EmbedCard/views/unresolved-view/index.compiled.css +19 -0
  69. package/dist/esm/view/EmbedCard/views/unresolved-view/index.js +35 -53
  70. package/dist/esm/view/LinkUrl/index.js +1 -1
  71. package/dist/types/view/EmbedCard/components/ErrorFrame.d.ts +3 -4
  72. package/dist/types/view/EmbedCard/components/ErrorFrameOld.d.ts +19 -0
  73. package/dist/types/view/EmbedCard/components/ExpandedFrame.d.ts +2 -2
  74. package/dist/types/view/EmbedCard/components/ExpandedFrameOld.d.ts +40 -0
  75. package/dist/types/view/EmbedCard/components/FrameOld.d.ts +14 -0
  76. package/dist/types/view/EmbedCard/components/styled.d.ts +15 -77
  77. package/dist/types/view/EmbedCard/components/styledOld.d.ts +109 -0
  78. package/dist/types/view/EmbedCard/views/ErroredView.d.ts +2 -2
  79. package/dist/types/view/EmbedCard/views/ErroredViewOld.d.ts +12 -0
  80. package/dist/types/view/EmbedCard/views/ResolvedView.d.ts +0 -4
  81. package/dist/types/view/EmbedCard/views/ResolvedViewOld.d.ts +36 -0
  82. package/dist/types/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.d.ts +4 -0
  83. package/dist/types/view/EmbedCard/views/unresolved-view/index.d.ts +3 -3
  84. package/dist/types-ts4.5/view/EmbedCard/components/ErrorFrame.d.ts +3 -4
  85. package/dist/types-ts4.5/view/EmbedCard/components/ErrorFrameOld.d.ts +19 -0
  86. package/dist/types-ts4.5/view/EmbedCard/components/ExpandedFrame.d.ts +2 -2
  87. package/dist/types-ts4.5/view/EmbedCard/components/ExpandedFrameOld.d.ts +40 -0
  88. package/dist/types-ts4.5/view/EmbedCard/components/FrameOld.d.ts +14 -0
  89. package/dist/types-ts4.5/view/EmbedCard/components/styled.d.ts +15 -77
  90. package/dist/types-ts4.5/view/EmbedCard/components/styledOld.d.ts +109 -0
  91. package/dist/types-ts4.5/view/EmbedCard/views/ErroredView.d.ts +2 -2
  92. package/dist/types-ts4.5/view/EmbedCard/views/ErroredViewOld.d.ts +12 -0
  93. package/dist/types-ts4.5/view/EmbedCard/views/ResolvedView.d.ts +0 -4
  94. package/dist/types-ts4.5/view/EmbedCard/views/ResolvedViewOld.d.ts +36 -0
  95. package/dist/types-ts4.5/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.d.ts +4 -0
  96. package/dist/types-ts4.5/view/EmbedCard/views/unresolved-view/index.d.ts +3 -3
  97. package/package.json +2 -2
@@ -0,0 +1,104 @@
1
+ /* ExpandedFrameOld.tsx generated by @compiled/babel-plugin v0.36.0 */
2
+ import * as React from 'react';
3
+ import { ax, ix } from "@compiled/react/runtime";
4
+ import Tooltip from '@atlaskit/tooltip';
5
+ import { useMouseDownEvent } from '../../../state/analytics/useLinkClicked';
6
+ import { handleClickCommon } from '../../common/utils';
7
+ import { className, Content, Header, IconWrapper, LinkWrapper, TextWrapper, TooltipWrapper, Wrapper } from './styledOld';
8
+ export var ExpandedFrameOld = function ExpandedFrameOld(_ref) {
9
+ var _ref$isPlaceholder = _ref.isPlaceholder,
10
+ isPlaceholder = _ref$isPlaceholder === void 0 ? false : _ref$isPlaceholder,
11
+ children = _ref.children,
12
+ onClick = _ref.onClick,
13
+ icon = _ref.icon,
14
+ text = _ref.text,
15
+ isSelected = _ref.isSelected,
16
+ _ref$frameStyle = _ref.frameStyle,
17
+ frameStyle = _ref$frameStyle === void 0 ? 'showOnHover' : _ref$frameStyle,
18
+ href = _ref.href,
19
+ minWidth = _ref.minWidth,
20
+ maxWidth = _ref.maxWidth,
21
+ _ref$testId = _ref.testId,
22
+ testId = _ref$testId === void 0 ? 'expanded-frame' : _ref$testId,
23
+ inheritDimensions = _ref.inheritDimensions,
24
+ _ref$allowScrollBar = _ref.allowScrollBar,
25
+ allowScrollBar = _ref$allowScrollBar === void 0 ? false : _ref$allowScrollBar,
26
+ _ref$setOverflow = _ref.setOverflow,
27
+ setOverflow = _ref$setOverflow === void 0 ? true : _ref$setOverflow;
28
+ var isInteractive = function isInteractive() {
29
+ return !isPlaceholder && (Boolean(href) || Boolean(onClick));
30
+ };
31
+ var handleClick = function handleClick(event) {
32
+ return handleClickCommon(event, onClick);
33
+ };
34
+ var handleMouseDown = useMouseDownEvent();
35
+ var renderHeader = function renderHeader() {
36
+ return (
37
+ /*#__PURE__*/
38
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
39
+ React.createElement(Header, {
40
+ className: "embed-header",
41
+ frameStyle: frameStyle
42
+ }, /*#__PURE__*/React.createElement(IconWrapper, {
43
+ isPlaceholder: isPlaceholder
44
+ }, !isPlaceholder && icon), /*#__PURE__*/React.createElement(TooltipWrapper, null, /*#__PURE__*/React.createElement(Tooltip, {
45
+ content: text,
46
+ hideTooltipOnMouseDown: true
47
+ }, /*#__PURE__*/React.createElement(TextWrapper, {
48
+ isPlaceholder: isPlaceholder
49
+ }, !isPlaceholder && /*#__PURE__*/React.createElement("a", {
50
+ href: href,
51
+ onClick: handleClick,
52
+ onMouseDown: handleMouseDown
53
+ }, text)))))
54
+ );
55
+ };
56
+ var renderContent = function renderContent() {
57
+ return /*#__PURE__*/React.createElement(Content, {
58
+ "data-testid": "embed-content-wrapper",
59
+ allowScrollBar: allowScrollBar,
60
+ removeOverflow: !setOverflow,
61
+ isInteractive: isInteractive(),
62
+ frameStyle: frameStyle
63
+ // This fixes an issue with input fields in cross domain iframes (ie. databases and jira fields from different domains)
64
+ // See: HOT-107830
65
+ ,
66
+ contentEditable: 'false',
67
+ suppressContentEditableWarning: true
68
+ }, children);
69
+ };
70
+ if (!isPlaceholder && href) {
71
+ return /*#__PURE__*/React.createElement(LinkWrapper
72
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
73
+ , {
74
+ className: className,
75
+ isInteractive: isInteractive(),
76
+ isSelected: isSelected,
77
+ frameStyle: frameStyle,
78
+ minWidth: minWidth,
79
+ maxWidth: maxWidth,
80
+ "data-testid": testId,
81
+ "data-trello-do-not-use-override": testId
82
+ // Due to limitations of testing library, we can't assert ::after
83
+ ,
84
+ "data-is-selected": isSelected,
85
+ inheritDimensions: inheritDimensions
86
+ }, renderHeader(), renderContent());
87
+ } else {
88
+ return /*#__PURE__*/React.createElement(Wrapper
89
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
90
+ , {
91
+ className: className,
92
+ isInteractive: isInteractive(),
93
+ isSelected: isSelected,
94
+ minWidth: minWidth,
95
+ frameStyle: frameStyle,
96
+ maxWidth: maxWidth,
97
+ "data-testid": testId,
98
+ "data-trello-do-not-use-override": testId,
99
+ "data-is-selected": isSelected,
100
+ "data-wrapper-type": "default",
101
+ "data-is-interactive": isInteractive()
102
+ }, renderHeader(), renderContent());
103
+ }
104
+ };
@@ -0,0 +1,9 @@
1
+
2
+ ._19itidpf{border:0}
3
+ ._2rko1l7b{border-radius:3px}._154iidpf{top:0}
4
+ ._18m915vq{overflow-y:hidden}
5
+ ._1bsb1osq{width:100%}
6
+ ._1ltvidpf{left:0}
7
+ ._1reo15vq{overflow-x:hidden}
8
+ ._4t3i1osq{height:100%}
9
+ ._kqswh2mm{position:relative}
@@ -1,14 +1,13 @@
1
+ /* Frame.tsx generated by @compiled/babel-plugin v0.36.0 */
2
+ import _extends from "@babel/runtime/helpers/extends";
1
3
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- /**
3
- * @jsxRuntime classic
4
- * @jsx jsx
5
- */
4
+ import "./Frame.compiled.css";
5
+ import { ax, ix } from "@compiled/react/runtime";
6
6
  import React, { useEffect, useRef, useState } from 'react';
7
-
8
- // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
9
- import { css, jsx } from '@emotion/react';
10
7
  import { di } from 'react-magnetic-di';
8
+ import { fg } from '@atlaskit/platform-feature-flags';
11
9
  import { getIframeSandboxAttribute } from '../../../utils';
10
+ import { FrameOld } from './FrameOld';
12
11
  import { IFrame } from './IFrame';
13
12
  import { IframeDwellTracker } from './IframeDwellTracker';
14
13
  function mergeRefs(refs) {
@@ -22,17 +21,8 @@ function mergeRefs(refs) {
22
21
  });
23
22
  };
24
23
  }
25
- var iframeStyles = css({
26
- border: 0,
27
- top: 0,
28
- left: 0,
29
- width: '100%',
30
- height: '100%',
31
- position: 'relative',
32
- overflow: 'hidden',
33
- borderRadius: '3px'
34
- });
35
- export var Frame = /*#__PURE__*/React.forwardRef(function (_ref, iframeRef) {
24
+ var iframeStyles = null;
25
+ var FrameNew = /*#__PURE__*/React.forwardRef(function (_ref, iframeRef) {
36
26
  var url = _ref.url,
37
27
  _ref$isTrusted = _ref.isTrusted,
38
28
  isTrusted = _ref$isTrusted === void 0 ? false : _ref$isTrusted,
@@ -103,18 +93,17 @@ export var Frame = /*#__PURE__*/React.forwardRef(function (_ref, iframeRef) {
103
93
  if (!url) {
104
94
  return null;
105
95
  }
106
- return jsx(React.Fragment, null, jsx(IframeDwellTracker, {
96
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IframeDwellTracker, {
107
97
  isIframeLoaded: isIframeLoaded,
108
98
  isMouseOver: isMouseOver,
109
99
  isWindowFocused: isWindowFocused,
110
100
  iframePercentVisible: percentVisible,
111
101
  onIframeDwell: onIframeDwell
112
- }), jsx(IFrame, {
102
+ }), /*#__PURE__*/React.createElement(IFrame, {
113
103
  childRef: mergedRef,
114
104
  src: url,
115
105
  "data-testid": "".concat(testId, "-frame"),
116
106
  "data-iframe-loaded": isIframeLoaded,
117
- css: iframeStyles,
118
107
  onMouseEnter: function onMouseEnter() {
119
108
  return setMouseOver(true);
120
109
  },
@@ -128,6 +117,18 @@ export var Frame = /*#__PURE__*/React.forwardRef(function (_ref, iframeRef) {
128
117
  setIframeLoaded(true);
129
118
  },
130
119
  sandbox: getIframeSandboxAttribute(isTrusted),
131
- title: title
120
+ title: title,
121
+ className: ax(["_19itidpf _1reo15vq _18m915vq _2rko1l7b _154iidpf _1ltvidpf _1bsb1osq _4t3i1osq _kqswh2mm"])
132
122
  }));
123
+ });
124
+ export var Frame = /*#__PURE__*/React.forwardRef(function (props, ref) {
125
+ if (fg('bandicoots-compiled-migration-smartcard')) {
126
+ return /*#__PURE__*/React.createElement(FrameNew, _extends({}, props, {
127
+ ref: ref
128
+ }));
129
+ } else {
130
+ return /*#__PURE__*/React.createElement(FrameOld, _extends({}, props, {
131
+ ref: ref
132
+ }));
133
+ }
133
134
  });
@@ -0,0 +1,133 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ /**
3
+ * @jsxRuntime classic
4
+ * @jsx jsx
5
+ */
6
+ import React, { useEffect, useRef, useState } from 'react';
7
+
8
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
9
+ import { css, jsx } from '@emotion/react';
10
+ import { di } from 'react-magnetic-di';
11
+ import { getIframeSandboxAttribute } from '../../../utils';
12
+ import { IFrame } from './IFrame';
13
+ import { IframeDwellTracker } from './IframeDwellTracker';
14
+ function mergeRefs(refs) {
15
+ return function (value) {
16
+ refs.forEach(function (ref) {
17
+ if (typeof ref === 'function') {
18
+ ref(value);
19
+ } else if (ref !== null) {
20
+ ref.current = value;
21
+ }
22
+ });
23
+ };
24
+ }
25
+ var iframeStyles = css({
26
+ border: 0,
27
+ top: 0,
28
+ left: 0,
29
+ width: '100%',
30
+ height: '100%',
31
+ position: 'relative',
32
+ overflow: 'hidden',
33
+ borderRadius: '3px'
34
+ });
35
+ export var FrameOld = /*#__PURE__*/React.forwardRef(function (_ref, iframeRef) {
36
+ var url = _ref.url,
37
+ _ref$isTrusted = _ref.isTrusted,
38
+ isTrusted = _ref$isTrusted === void 0 ? false : _ref$isTrusted,
39
+ testId = _ref.testId,
40
+ onIframeDwell = _ref.onIframeDwell,
41
+ onIframeFocus = _ref.onIframeFocus,
42
+ title = _ref.title;
43
+ var _useState = useState(false),
44
+ _useState2 = _slicedToArray(_useState, 2),
45
+ isIframeLoaded = _useState2[0],
46
+ setIframeLoaded = _useState2[1];
47
+ var _useState3 = useState(false),
48
+ _useState4 = _slicedToArray(_useState3, 2),
49
+ isMouseOver = _useState4[0],
50
+ setMouseOver = _useState4[1];
51
+ var _useState5 = useState(true),
52
+ _useState6 = _slicedToArray(_useState5, 2),
53
+ isWindowFocused = _useState6[0],
54
+ setWindowFocused = _useState6[1];
55
+ var ref = useRef();
56
+ var mergedRef = mergeRefs([iframeRef, ref]);
57
+ var _useState7 = useState(0),
58
+ _useState8 = _slicedToArray(_useState7, 2),
59
+ percentVisible = _useState8[0],
60
+ setPercentVisible = _useState8[1];
61
+
62
+ /**
63
+ * These are the 'percent visible' thresholds at which the intersectionObserver will
64
+ * trigger a state change. Eg. when the user scrolls and moves from 74% to 76%, or
65
+ * vice versa. It's in a state object so that its static for the useEffect
66
+ */
67
+ var _useState9 = useState([0.75, 0.8, 0.85, 0.9, 0.95, 1]),
68
+ _useState10 = _slicedToArray(_useState9, 1),
69
+ threshold = _useState10[0];
70
+ useEffect(function () {
71
+ if (!ref || !ref.current) {
72
+ return;
73
+ }
74
+ var observer = new IntersectionObserver(function (entries) {
75
+ entries.forEach(function (entry) {
76
+ setPercentVisible(entry === null || entry === void 0 ? void 0 : entry.intersectionRatio);
77
+ });
78
+ }, {
79
+ threshold: threshold
80
+ });
81
+ observer.observe(ref.current);
82
+ return function () {
83
+ observer.disconnect();
84
+ };
85
+ }, [threshold, mergedRef]);
86
+ useEffect(function () {
87
+ var onBlur = function onBlur() {
88
+ setWindowFocused(false);
89
+ if (document.activeElement === ref.current) {
90
+ onIframeFocus && onIframeFocus();
91
+ }
92
+ };
93
+ var onFocus = function onFocus() {
94
+ setWindowFocused(true);
95
+ };
96
+ window.addEventListener('blur', onBlur);
97
+ window.addEventListener('focus', onFocus);
98
+ return function () {
99
+ window.removeEventListener('blur', onBlur);
100
+ window.removeEventListener('focus', onFocus);
101
+ };
102
+ }, [ref, onIframeFocus]);
103
+ if (!url) {
104
+ return null;
105
+ }
106
+ return jsx(React.Fragment, null, jsx(IframeDwellTracker, {
107
+ isIframeLoaded: isIframeLoaded,
108
+ isMouseOver: isMouseOver,
109
+ isWindowFocused: isWindowFocused,
110
+ iframePercentVisible: percentVisible,
111
+ onIframeDwell: onIframeDwell
112
+ }), jsx(IFrame, {
113
+ childRef: mergedRef,
114
+ src: url,
115
+ "data-testid": "".concat(testId, "-frame"),
116
+ "data-iframe-loaded": isIframeLoaded,
117
+ css: iframeStyles,
118
+ onMouseEnter: function onMouseEnter() {
119
+ return setMouseOver(true);
120
+ },
121
+ onMouseLeave: function onMouseLeave() {
122
+ return setMouseOver(false);
123
+ },
124
+ allowFullScreen: true,
125
+ scrolling: "yes",
126
+ allow: "autoplay; encrypted-media; clipboard-write",
127
+ onLoad: function onLoad() {
128
+ setIframeLoaded(true);
129
+ },
130
+ sandbox: getIframeSandboxAttribute(isTrusted),
131
+ title: title
132
+ }));
133
+ });
@@ -1,6 +1,8 @@
1
1
  import React from 'react';
2
2
  import ImageLoader from 'react-render-image';
3
+ import { fg } from '@atlaskit/platform-feature-flags';
3
4
  import { Image } from './styled';
5
+ import { Image as ImageOld } from './styledOld';
4
6
  export var ImageIcon = function ImageIcon(_ref) {
5
7
  var _ref$alt = _ref.alt,
6
8
  alt = _ref$alt === void 0 ? '' : _ref$alt,
@@ -13,18 +15,27 @@ export var ImageIcon = function ImageIcon(_ref) {
13
15
  if (!src) {
14
16
  return defaultIcon || null;
15
17
  }
18
+ var LoadedImageComponent = fg('bandicoots-compiled-migration-smartcard') ? /*#__PURE__*/React.createElement(Image
19
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
20
+ , {
21
+ className: "smart-link-icon",
22
+ src: src,
23
+ alt: alt,
24
+ size: size,
25
+ title: title
26
+ }) : /*#__PURE__*/React.createElement(ImageOld
27
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
28
+ , {
29
+ className: "smart-link-icon",
30
+ src: src,
31
+ alt: alt,
32
+ size: size,
33
+ title: title
34
+ });
16
35
  return /*#__PURE__*/React.createElement(ImageLoader, {
17
36
  src: src,
18
37
  loading: defaultIcon,
19
- loaded: /*#__PURE__*/React.createElement(Image
20
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
21
- , {
22
- className: "smart-link-icon",
23
- src: src,
24
- alt: alt,
25
- size: size,
26
- title: title
27
- }),
38
+ loaded: LoadedImageComponent,
28
39
  errored: defaultIcon
29
40
  });
30
41
  };
@@ -0,0 +1,92 @@
1
+ ._11c8qk37{font:var(--ds-font-body-UNSAFE_small,normal 400 9pt/1pc ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,system-ui,"Helvetica Neue",sans-serif)}
2
+ ._14mjpd34:after{border-radius:var(--ds-border-radius-200,8px)}
3
+ ._18s81cq1{margin:var(--ds-space-050,4px) 0 var(--ds-space-150,9pt) var(--ds-space-150,9pt)}
4
+ ._18s81xf9{margin:0 var(--ds-space-100,8px) var(--ds-space-100,8px)}
5
+ ._19ith6cr{border:1px solid var(--ds-border,#dfe1e6)}
6
+ ._1u3rh6cr:hover:after{border:1px solid var(--ds-border,#dfe1e6)}
7
+ ._1yt4h8dc{padding:0 var(--ds-space-100,8px)}
8
+ ._2rko1sit{border-radius:var(--ds-border-radius,3px)}
9
+ ._2rkoiti9{border-radius:var(--ds-border-radius-100,4px)}
10
+ ._2rkopd34{border-radius:var(--ds-border-radius-200,8px)}
11
+ ._eq431kw7:after{border:inherit}
12
+ ._eq43h6cr:after{border:1px solid var(--ds-border,#dfe1e6)}
13
+ ._qc5o94zs:after{transition:background .3s,box-shadow .3s}
14
+ ._v56414ba{transition:box-shadow .3s}
15
+ ._v5641y8x{transition:background .3s}
16
+ ._v564ojwh{transition:opacity .3s cubic-bezier(.15,1,.3,1)}
17
+ ._154ixy5q{top:var(--ds-space-400,2pc)}
18
+ ._18m915vq{overflow-y:hidden}
19
+ ._18m91wug{overflow-y:auto}
20
+ ._18postnw:after{position:absolute}
21
+ ._18u01wug{margin-left:auto}
22
+ ._19do1kw7:after{left:inherit}
23
+ ._19doidpf:after{left:0}
24
+ ._19dox0bf:after{left:var(--ds-space-negative-100,-8px)}
25
+ ._19pk19bv{margin-top:10px}
26
+ ._19pkidpf{margin-top:0}
27
+ ._1aaxusic{float:right}
28
+ ._1bsb176v{width:125px}
29
+ ._1bsb17ym{width:var(--_rcxkve)}
30
+ ._1bsb1osq{width:100%}
31
+ ._1bsb7vkz{width:1pc}
32
+ ._1bsbckbl{width:3pc}
33
+ ._1bsbwgg2{width:calc(100% - var(--ds-space-200, 1pc) - 2px)}
34
+ ._1bto1l2s{text-overflow:ellipsis}
35
+ ._1e0c116y{display:inline-flex}
36
+ ._1e0c1txw{display:flex}
37
+ ._1g4jidpf >.embed-preview>div{margin-bottom:0}
38
+ ._1hfk1kw7:after{background-color:inherit}
39
+ ._1hfkhp5a:after{background-color:var(--ds-surface-raised,#fff)}
40
+ ._1ifiidpf .embed-header{opacity:0}
41
+ ._1ifikb7n .embed-header{opacity:1}
42
+ ._1itk2pcs{background-image:var(--_13orr8u)}
43
+ ._1lrw1dfr{background-size:cover}
44
+ ._1pbykb7n{z-index:1}
45
+ ._1qdg1rgy:after{height:calc(100% + var(--ds-space-100, 8px))}
46
+ ._1reo15vq{overflow-x:hidden}
47
+ ._1reo1wug{overflow-x:auto}
48
+ ._1ul91pd6{min-width:var(--_10q0298)}
49
+ ._2hwx1b66{margin-right:var(--ds-space-050,4px)}
50
+ ._2hwx1wug{margin-right:auto}
51
+ ._2lx21bp4{flex-direction:column}
52
+ ._4cvr1h6o{align-items:center}
53
+ ._4t3i17ym{height:var(--_rcxkve)}
54
+ ._4t3i1crf{height:9pt}
55
+ ._4t3i1j2a{height:calc(100% - var(--ds-space-400, 2pc))}
56
+ ._4t3i1osq{height:100%}
57
+ ._4t3i7vkz{height:1pc}
58
+ ._4t3ickbl{height:3pc}
59
+ ._4t3ik5xz{height:27pc}
60
+ ._4t3izwfg{height:2pc}
61
+ ._4tpuhp5a:hover:after{background-color:var(--ds-surface-raised,#fff)}
62
+ ._631ousvi:after{box-sizing:border-box}
63
+ ._6syz1kw7:after{cursor:inherit}
64
+ ._6syztlke:after{cursor:pointer}
65
+ ._8x3u1kw7:after{box-shadow:inherit}
66
+ ._8x3umqxb:after{box-shadow:0 0 0 3px var(--ds-border-selected,#4c9aff)}
67
+ ._aetrb3bt:after{content:""}
68
+ ._bfhkhp5a{background-color:var(--ds-surface-raised,#fff)}
69
+ ._bfhkqrzy{background-color:var(--ds-skeleton,#ebecf0)}
70
+ ._ect41sbm{font-family:var(--ds-font-family-body,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,system-ui,"Helvetica Neue",sans-serif)}
71
+ ._hlq8idpf >.embed-preview>div{margin-top:0}
72
+ ._jk3p1wug >.embed-preview>div{margin-left:auto}
73
+ ._kqswh2mm{position:relative}
74
+ ._kqswstnw{position:absolute}
75
+ ._o5721q9c{white-space:nowrap}
76
+ ._otyridpf{margin-bottom:0}
77
+ ._p12f1ayu{max-width:var(--_1et2rhb)}
78
+ ._rd9b1wug >.embed-preview>div{margin-right:auto}
79
+ ._syaz1rc1{color:var(--ds-text-subtlest,#5e6c84)}
80
+ ._syazqjbk{color:var(--ds-icon,#5e6c84)}
81
+ ._tzy4idpf{opacity:0}
82
+ ._uiztglyw{-webkit-user-select:none;-ms-user-select:none;user-select:none}
83
+ ._vchhusvi{box-sizing:border-box}
84
+ ._vwz44jg8{line-height:normal}
85
+ ._x148idpf:hover .embed-header{opacity:0}
86
+ ._x148kb7n:hover .embed-header{opacity:1}
87
+ ._z0ai1osq:after{width:100%}
88
+ ._z0aie9lw:after{width:calc(100% + var(--ds-space-200, 1pc))}
89
+ ._1bnxglyw:hover{text-decoration-line:none}
90
+ ._9oik18uv:hover{text-decoration-color:initial}
91
+ ._jf4cnqa1:hover{text-decoration-style:solid}
92
+ ._1di629zg:active{background-color:var(--ds-background-selected,#deebff)}