@atlaskit/smart-card 34.1.0 → 34.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.
- package/CHANGELOG.md +16 -0
- package/dist/cjs/utils/analytics/analytics.js +1 -1
- package/dist/cjs/view/EmbedCard/components/IFrame.js +6 -3
- package/dist/cjs/view/EmbedModal/components/embed-content/index.compiled.css +2 -0
- package/dist/cjs/view/EmbedModal/components/embed-content/index.js +23 -14
- package/dist/cjs/view/EmbedModal/components/embed-content/indexOld.js +37 -0
- package/dist/cjs/view/EmbedModal/components/link-info/index.compiled.css +35 -0
- package/dist/cjs/view/EmbedModal/components/link-info/index.js +58 -49
- package/dist/cjs/view/EmbedModal/components/link-info/indexOld.js +131 -0
- package/dist/cjs/view/FlexibleCard/components/common/image-icon/index.js +9 -11
- package/dist/cjs/view/FlexibleCard/components/common/loading-skeleton/LoadingSkeletonOld.js +52 -0
- package/dist/cjs/view/FlexibleCard/components/common/loading-skeleton/index.compiled.css +15 -0
- package/dist/cjs/view/FlexibleCard/components/common/loading-skeleton/index.js +27 -38
- package/dist/cjs/view/FlexibleCard/components/container/index.compiled.css +38 -0
- package/dist/cjs/view/FlexibleCard/components/container/index.js +94 -87
- package/dist/cjs/view/FlexibleCard/components/container/indexOld.js +226 -0
- package/dist/cjs/view/FlexibleCard/components/container/layered-link/LayeredLinkOld.js +75 -0
- package/dist/cjs/view/FlexibleCard/components/container/layered-link/index.compiled.css +11 -0
- package/dist/cjs/view/FlexibleCard/components/container/layered-link/index.js +20 -46
- package/dist/cjs/view/LinkUrl/index.js +1 -1
- package/dist/es2019/utils/analytics/analytics.js +1 -1
- package/dist/es2019/view/EmbedCard/components/IFrame.js +5 -2
- package/dist/es2019/view/EmbedModal/components/embed-content/index.compiled.css +2 -0
- package/dist/es2019/view/EmbedModal/components/embed-content/index.js +19 -13
- package/dist/es2019/view/EmbedModal/components/embed-content/indexOld.js +31 -0
- package/dist/es2019/view/EmbedModal/components/link-info/index.compiled.css +35 -0
- package/dist/es2019/view/EmbedModal/components/link-info/index.js +59 -49
- package/dist/es2019/view/EmbedModal/components/link-info/indexOld.js +122 -0
- package/dist/es2019/view/FlexibleCard/components/common/image-icon/index.js +6 -10
- package/dist/es2019/view/FlexibleCard/components/common/loading-skeleton/LoadingSkeletonOld.js +46 -0
- package/dist/es2019/view/FlexibleCard/components/common/loading-skeleton/index.compiled.css +15 -0
- package/dist/es2019/view/FlexibleCard/components/common/loading-skeleton/index.js +22 -37
- package/dist/es2019/view/FlexibleCard/components/container/index.compiled.css +38 -0
- package/dist/es2019/view/FlexibleCard/components/container/index.js +88 -105
- package/dist/es2019/view/FlexibleCard/components/container/indexOld.js +229 -0
- package/dist/es2019/view/FlexibleCard/components/container/layered-link/LayeredLinkOld.js +69 -0
- package/dist/es2019/view/FlexibleCard/components/container/layered-link/index.compiled.css +11 -0
- package/dist/es2019/view/FlexibleCard/components/container/layered-link/index.js +16 -45
- package/dist/es2019/view/LinkUrl/index.js +1 -1
- package/dist/esm/utils/analytics/analytics.js +1 -1
- package/dist/esm/view/EmbedCard/components/IFrame.js +6 -3
- package/dist/esm/view/EmbedModal/components/embed-content/index.compiled.css +2 -0
- package/dist/esm/view/EmbedModal/components/embed-content/index.js +19 -13
- package/dist/esm/view/EmbedModal/components/embed-content/indexOld.js +30 -0
- package/dist/esm/view/EmbedModal/components/link-info/index.compiled.css +35 -0
- package/dist/esm/view/EmbedModal/components/link-info/index.js +59 -49
- package/dist/esm/view/EmbedModal/components/link-info/indexOld.js +120 -0
- package/dist/esm/view/FlexibleCard/components/common/image-icon/index.js +6 -10
- package/dist/esm/view/FlexibleCard/components/common/loading-skeleton/LoadingSkeletonOld.js +45 -0
- package/dist/esm/view/FlexibleCard/components/common/loading-skeleton/index.compiled.css +15 -0
- package/dist/esm/view/FlexibleCard/components/common/loading-skeleton/index.js +23 -37
- package/dist/esm/view/FlexibleCard/components/container/index.compiled.css +38 -0
- package/dist/esm/view/FlexibleCard/components/container/index.js +88 -87
- package/dist/esm/view/FlexibleCard/components/container/indexOld.js +217 -0
- package/dist/esm/view/FlexibleCard/components/container/layered-link/LayeredLinkOld.js +68 -0
- package/dist/esm/view/FlexibleCard/components/container/layered-link/index.compiled.css +11 -0
- package/dist/esm/view/FlexibleCard/components/container/layered-link/index.js +16 -45
- package/dist/esm/view/LinkUrl/index.js +1 -1
- package/dist/types/view/EmbedCard/components/IFrame.d.ts +2 -1
- package/dist/types/view/EmbedModal/components/embed-content/index.d.ts +3 -7
- package/dist/types/view/EmbedModal/components/embed-content/indexOld.d.ts +8 -0
- package/dist/types/view/EmbedModal/components/link-info/index.d.ts +3 -3
- package/dist/types/view/EmbedModal/components/link-info/indexOld.d.ts +4 -0
- package/dist/types/view/FlexibleCard/components/common/image-icon/index.d.ts +2 -6
- package/dist/types/view/FlexibleCard/components/common/loading-skeleton/LoadingSkeletonOld.d.ts +8 -0
- package/dist/types/view/FlexibleCard/components/common/loading-skeleton/index.d.ts +2 -6
- package/dist/types/view/FlexibleCard/components/container/index.d.ts +10 -10
- package/dist/types/view/FlexibleCard/components/container/indexOld.d.ts +24 -0
- package/dist/types/view/FlexibleCard/components/container/layered-link/LayeredLinkOld.d.ts +13 -0
- package/dist/types/view/FlexibleCard/components/container/layered-link/index.d.ts +2 -11
- package/dist/types/view/HoverCard/components/CustomPopupContainer.d.ts +1 -1
- package/dist/types-ts4.5/view/EmbedCard/components/IFrame.d.ts +2 -1
- package/dist/types-ts4.5/view/EmbedModal/components/embed-content/index.d.ts +3 -7
- package/dist/types-ts4.5/view/EmbedModal/components/embed-content/indexOld.d.ts +8 -0
- package/dist/types-ts4.5/view/EmbedModal/components/link-info/index.d.ts +3 -3
- package/dist/types-ts4.5/view/EmbedModal/components/link-info/indexOld.d.ts +4 -0
- package/dist/types-ts4.5/view/FlexibleCard/components/common/image-icon/index.d.ts +2 -6
- package/dist/types-ts4.5/view/FlexibleCard/components/common/loading-skeleton/LoadingSkeletonOld.d.ts +8 -0
- package/dist/types-ts4.5/view/FlexibleCard/components/common/loading-skeleton/index.d.ts +2 -6
- package/dist/types-ts4.5/view/FlexibleCard/components/container/index.d.ts +10 -10
- package/dist/types-ts4.5/view/FlexibleCard/components/container/indexOld.d.ts +24 -0
- package/dist/types-ts4.5/view/FlexibleCard/components/container/layered-link/LayeredLinkOld.d.ts +13 -0
- package/dist/types-ts4.5/view/FlexibleCard/components/container/layered-link/index.d.ts +2 -11
- package/dist/types-ts4.5/view/HoverCard/components/CustomPopupContainer.d.ts +1 -1
- package/package.json +1 -1
- /package/dist/cjs/view/EmbedModal/components/link-info/{styled.js → styledOld.js} +0 -0
- /package/dist/es2019/view/EmbedModal/components/link-info/{styled.js → styledOld.js} +0 -0
- /package/dist/esm/view/EmbedModal/components/link-info/{styled.js → styledOld.js} +0 -0
- /package/dist/types/view/EmbedModal/components/link-info/{styled.d.ts → styledOld.d.ts} +0 -0
- /package/dist/types-ts4.5/view/EmbedModal/components/link-info/{styled.d.ts → styledOld.d.ts} +0 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jsxRuntime classic
|
|
3
|
+
* @jsx jsx
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
7
|
+
import { css, jsx, keyframes } from '@emotion/react';
|
|
8
|
+
var LoadingSkeletonOld = function LoadingSkeletonOld(_ref) {
|
|
9
|
+
var testId = _ref.testId,
|
|
10
|
+
width = _ref.width,
|
|
11
|
+
height = _ref.height;
|
|
12
|
+
var animationNameStyles = keyframes({
|
|
13
|
+
'0%': {
|
|
14
|
+
backgroundPosition: '50% 0'
|
|
15
|
+
},
|
|
16
|
+
'100%': {
|
|
17
|
+
backgroundPosition: '-50% 0'
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
var styles = css({
|
|
21
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
22
|
+
width: "".concat(width, "rem"),
|
|
23
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
24
|
+
height: "".concat(height, "rem"),
|
|
25
|
+
borderRadius: '2px',
|
|
26
|
+
userSelect: 'none',
|
|
27
|
+
background: "var(--ds-skeleton-subtle, #f6f7f8)",
|
|
28
|
+
backgroundImage: "linear-gradient( to right, transparent 0%, ".concat("var(--ds-skeleton, #edeef1)", " 20%, transparent 40%, transparent 100% )"),
|
|
29
|
+
backgroundRepeat: 'no-repeat',
|
|
30
|
+
backgroundSize: '280% 100%',
|
|
31
|
+
display: 'inline-block',
|
|
32
|
+
animationDuration: '1s',
|
|
33
|
+
animationFillMode: 'forwards',
|
|
34
|
+
animationIterationCount: 'infinite',
|
|
35
|
+
animationName: animationNameStyles,
|
|
36
|
+
animationTimingFunction: 'linear'
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage -- needs dynamic css
|
|
40
|
+
return jsx("span", {
|
|
41
|
+
css: styles,
|
|
42
|
+
"data-testid": testId
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
export default LoadingSkeletonOld;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
._2rkoyh40{border-radius:2px}._12vemgnk{background-repeat:no-repeat}
|
|
3
|
+
._1bsb9a7u{width:var(--_uc2kr6)}
|
|
4
|
+
._1e0c1o8l{display:inline-block}
|
|
5
|
+
._1itkx3i8{background-image:var(--_16116mi)}
|
|
6
|
+
._1lrw6rms{background-size:280% 100%}
|
|
7
|
+
._1o51q7pw{animation-fill-mode:forwards}
|
|
8
|
+
._1pglp3kn{animation-timing-function:linear}
|
|
9
|
+
._4t3iaym7{height:var(--_1nl18gq)}
|
|
10
|
+
._5sag9cwz{animation-duration:1s}
|
|
11
|
+
._bfhk178v{background-color:var(--ds-skeleton-subtle,#f6f7f8)}
|
|
12
|
+
._j7hqqkar{animation-name:kc09ee}
|
|
13
|
+
._tip812c5{animation-iteration-count:infinite}
|
|
14
|
+
._uiztglyw{-webkit-user-select:none;-ms-user-select:none;user-select:none}
|
|
15
|
+
@keyframes kc09ee{0%{background-position:50% 0}to{background-position:-50% 0}}
|
|
@@ -1,45 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var
|
|
1
|
+
/* index.tsx generated by @compiled/babel-plugin v0.35.0 */
|
|
2
|
+
import "./index.compiled.css";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { ax, ix } from "@compiled/react/runtime";
|
|
5
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
6
|
+
import LoadingSkeletonOld from './LoadingSkeletonOld';
|
|
7
|
+
var animationNameStyles = null;
|
|
8
|
+
var LoadingSkeletonNew = function LoadingSkeletonNew(_ref) {
|
|
9
9
|
var testId = _ref.testId,
|
|
10
10
|
width = _ref.width,
|
|
11
11
|
height = _ref.height;
|
|
12
|
-
var
|
|
13
|
-
'0%': {
|
|
14
|
-
backgroundPosition: '50% 0'
|
|
15
|
-
},
|
|
16
|
-
'100%': {
|
|
17
|
-
backgroundPosition: '-50% 0'
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
var styles = css({
|
|
21
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
22
|
-
width: "".concat(width, "rem"),
|
|
23
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
24
|
-
height: "".concat(height, "rem"),
|
|
25
|
-
borderRadius: '2px',
|
|
26
|
-
userSelect: 'none',
|
|
27
|
-
background: "var(--ds-skeleton-subtle, #f6f7f8)",
|
|
28
|
-
backgroundImage: "linear-gradient( to right, transparent 0%, ".concat("var(--ds-skeleton, #edeef1)", " 20%, transparent 40%, transparent 100% )"),
|
|
29
|
-
backgroundRepeat: 'no-repeat',
|
|
30
|
-
backgroundSize: '280% 100%',
|
|
31
|
-
display: 'inline-block',
|
|
32
|
-
animationDuration: '1s',
|
|
33
|
-
animationFillMode: 'forwards',
|
|
34
|
-
animationIterationCount: 'infinite',
|
|
35
|
-
animationName: animationNameStyles,
|
|
36
|
-
animationTimingFunction: 'linear'
|
|
37
|
-
});
|
|
12
|
+
var styles = null;
|
|
38
13
|
|
|
39
14
|
// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage -- needs dynamic css
|
|
40
|
-
return
|
|
41
|
-
|
|
42
|
-
"
|
|
15
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
16
|
+
"data-testid": testId,
|
|
17
|
+
className: ax(["_2rkoyh40 _1bsb9a7u _4t3iaym7 _uiztglyw _bfhk178v _1itkx3i8 _12vemgnk _1lrw6rms _1e0c1o8l _5sag9cwz _1o51q7pw _tip812c5 _j7hqqkar _1pglp3kn"]),
|
|
18
|
+
style: {
|
|
19
|
+
"--_uc2kr6": ix("".concat(width, "rem")),
|
|
20
|
+
"--_1nl18gq": ix("".concat(height, "rem")),
|
|
21
|
+
"--_16116mi": ix("linear-gradient( to right, transparent 0%, ".concat("var(--ds-skeleton, #edeef1)", " 20%, transparent 40%, transparent 100% )"))
|
|
22
|
+
}
|
|
43
23
|
});
|
|
44
24
|
};
|
|
25
|
+
var LoadingSkeleton = function LoadingSkeleton(props) {
|
|
26
|
+
if (fg('bandicoots-compiled-migration-smartcard')) {
|
|
27
|
+
return /*#__PURE__*/React.createElement(LoadingSkeletonNew, props);
|
|
28
|
+
}
|
|
29
|
+
return /*#__PURE__*/React.createElement(LoadingSkeletonOld, props);
|
|
30
|
+
};
|
|
45
31
|
export default LoadingSkeleton;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
._18s8v77o{margin:var(--ds-space-025,2px)}
|
|
2
|
+
._19itn8v0{border:var(--_vzvmm2)}
|
|
3
|
+
._1yt418y6{padding:var(--_1xumd0e)}
|
|
4
|
+
._2rkopd34{border-radius:var(--ds-border-radius-200,8px)}
|
|
5
|
+
._zulp1jvo{gap:1.25rem 0}
|
|
6
|
+
._zulp1qos{gap:.5rem 0}
|
|
7
|
+
._zulpfzsm{gap:.25rem 0}
|
|
8
|
+
._zulph3jc{gap:1rem 0}
|
|
9
|
+
._19bv15sf{padding-left:calc(var(--preview-block-width) + 1.25rem)}
|
|
10
|
+
._19bv1ltm{padding-left:calc(var(--preview-block-width) + .25rem)}
|
|
11
|
+
._19bvf557{padding-left:calc(var(--preview-block-width) + 1rem)}
|
|
12
|
+
._19bvqox2{padding-left:calc(var(--preview-block-width) + .5rem)}
|
|
13
|
+
._1e0c1txw{display:flex}
|
|
14
|
+
._1pcmkb7n:hover~.actions-button-group{opacity:1}
|
|
15
|
+
._1reo15vq{overflow-x:hidden}
|
|
16
|
+
._1t4ckb7n .has-action, ._1nxdkb7n a, ._xnbykb7n button{z-index:1}
|
|
17
|
+
._1ul9idpf{min-width:0}
|
|
18
|
+
._1yob1j6v{--container-gap-right:1rem}
|
|
19
|
+
._1yob1k92{--container-gap-right:1.25rem}
|
|
20
|
+
._1yob1kwk{--container-gap-right:.5rem}
|
|
21
|
+
._1yob1wow{--container-gap-right:var(--_12k13bg)}
|
|
22
|
+
._1yob6mu8{--container-gap-right:.25rem}
|
|
23
|
+
._2lx21bp4{flex-direction:column}
|
|
24
|
+
._bfhkhp5a{background-color:var(--ds-surface-raised,#fff)}
|
|
25
|
+
._jb7v18y6{--container-padding:var(--_1xumd0e)}
|
|
26
|
+
._kqswh2mm{position:relative}
|
|
27
|
+
._nqwih2mm .has-action, ._18ywh2mm a, ._1nq3h2mm button{position:relative}
|
|
28
|
+
._r37x1r5k{--preview-block-width:30%}
|
|
29
|
+
._u5f315sf{padding-right:calc(var(--preview-block-width) + 1.25rem)}
|
|
30
|
+
._u5f31ltm{padding-right:calc(var(--preview-block-width) + .25rem)}
|
|
31
|
+
._u5f3f557{padding-right:calc(var(--preview-block-width) + 1rem)}
|
|
32
|
+
._u5f3qox2{padding-right:calc(var(--preview-block-width) + .5rem)}
|
|
33
|
+
._y5vk167t{--container-gap-left:var(--_73mooq)}
|
|
34
|
+
._y5vk1j6v{--container-gap-left:1rem}
|
|
35
|
+
._y5vk1k92{--container-gap-left:1.25rem}
|
|
36
|
+
._y5vk1kwk{--container-gap-left:.5rem}
|
|
37
|
+
._y5vk6mu8{--container-gap-left:.25rem}
|
|
38
|
+
._1v7y1i6y .has-action:focus, ._ufn21i6y a:focus{outline-offset:var(--ds-space-negative-025,-2px)}
|
|
@@ -1,87 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*/
|
|
1
|
+
/* index.tsx generated by @compiled/babel-plugin v0.35.0 */
|
|
2
|
+
/* eslint-disable @atlaskit/design-system/consistent-css-prop-usage */
|
|
3
|
+
/* eslint-disable @atlaskit/ui-styling-standard/no-unsafe-values */
|
|
4
|
+
import "./index.compiled.css";
|
|
5
|
+
import { ax, ix } from "@compiled/react/runtime";
|
|
7
6
|
import React, { useContext } from 'react';
|
|
8
|
-
|
|
9
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
10
|
-
import { css, jsx } from '@emotion/react';
|
|
11
7
|
import { di } from 'react-magnetic-di';
|
|
8
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
12
9
|
import { N40 } from '@atlaskit/theme/colors';
|
|
13
10
|
import { MediaPlacement, SmartLinkSize, SmartLinkTheme } from '../../../../constants';
|
|
14
11
|
import { FlexibleUiContext } from '../../../../state/flexible-ui-context';
|
|
15
12
|
import { isFlexUiPreviewPresent } from '../../../../state/flexible-ui-context/utils';
|
|
16
13
|
import { isFlexibleUiBlock, isFlexibleUiPreviewBlock, isFlexibleUiTitleBlock } from '../../../../utils/flexible';
|
|
17
14
|
import HoverCardControl from './hover-card-control';
|
|
15
|
+
import ContainerOld from './indexOld';
|
|
18
16
|
import LayeredLink from './layered-link';
|
|
19
|
-
var elevationStyles = css({
|
|
20
|
-
border: "1px solid ".concat("var(--ds-border, ".concat(N40, ")")),
|
|
21
|
-
borderRadius: "var(--ds-border-radius-200, 8px)",
|
|
22
|
-
margin: "var(--ds-space-025, 2px)"
|
|
23
|
-
});
|
|
24
|
-
var getGap = function getGap(size) {
|
|
25
|
-
switch (size) {
|
|
26
|
-
case SmartLinkSize.XLarge:
|
|
27
|
-
return '1.25rem';
|
|
28
|
-
case SmartLinkSize.Large:
|
|
29
|
-
return '1rem';
|
|
30
|
-
case SmartLinkSize.Medium:
|
|
31
|
-
return '.5rem';
|
|
32
|
-
case SmartLinkSize.Small:
|
|
33
|
-
default:
|
|
34
|
-
return '.25rem';
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
|
|
38
17
|
/**
|
|
39
|
-
*
|
|
40
|
-
* Equivalent version for DS primitives space token is getPrimitivesPaddingSpaceBySize()
|
|
41
|
-
* at view/FlexibleCard/components/utils.tsx
|
|
18
|
+
* Eventually these exports should be removed on FF clean up bandicoots-compiled-migration-smartcard
|
|
42
19
|
*/
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
case SmartLinkSize.XLarge:
|
|
46
|
-
return '1.5rem';
|
|
47
|
-
case SmartLinkSize.Large:
|
|
48
|
-
return '1.25rem';
|
|
49
|
-
case SmartLinkSize.Medium:
|
|
50
|
-
return '1rem';
|
|
51
|
-
case SmartLinkSize.Small:
|
|
52
|
-
default:
|
|
53
|
-
return '.5rem';
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
var clickableContainerStyles = css({
|
|
57
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
58
|
-
'a, button, .has-action': {
|
|
59
|
-
position: 'relative',
|
|
60
|
-
zIndex: 1
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
var getContainerPaddingStyles = function getContainerPaddingStyles(size, hidePadding, childrenOptions) {
|
|
64
|
-
var padding = hidePadding ? '0rem' : getPadding(size);
|
|
65
|
-
var gap = getGap(size);
|
|
66
|
-
var previewOnLeft = childrenOptions.previewOnLeft,
|
|
67
|
-
previewOnRight = childrenOptions.previewOnRight;
|
|
68
|
-
return css({
|
|
69
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
70
|
-
'--container-padding': padding,
|
|
71
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
72
|
-
'--container-gap-left': previewOnLeft ? gap : padding,
|
|
73
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
74
|
-
'--container-gap-right': previewOnRight ? gap : padding,
|
|
75
|
-
'--preview-block-width': '30%',
|
|
76
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
77
|
-
padding: padding
|
|
78
|
-
},
|
|
79
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
80
|
-
previewOnLeft ? "padding-left: calc(var(--preview-block-width) + ".concat(gap, ");") : '',
|
|
81
|
-
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
82
|
-
previewOnRight ? "padding-right: calc(var(--preview-block-width) + ".concat(gap, ");") : '');
|
|
83
|
-
};
|
|
84
|
-
var getChildrenOptions = function getChildrenOptions(children, context) {
|
|
20
|
+
export { getContainerStyles } from './indexOld';
|
|
21
|
+
export var getChildrenOptions = function getChildrenOptions(children, context) {
|
|
85
22
|
var options = {};
|
|
86
23
|
if (isFlexUiPreviewPresent(context)) {
|
|
87
24
|
React.Children.map(children, function (child) {
|
|
@@ -100,12 +37,6 @@ var getChildrenOptions = function getChildrenOptions(children, context) {
|
|
|
100
37
|
}
|
|
101
38
|
return options;
|
|
102
39
|
};
|
|
103
|
-
export var getContainerStyles = function getContainerStyles(size, hideBackground, hideElevation, hidePadding, clickableContainer, childrenOptions) {
|
|
104
|
-
var paddingCss = getContainerPaddingStyles(size, hidePadding, childrenOptions);
|
|
105
|
-
|
|
106
|
-
// eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression -- needs manual remediation
|
|
107
|
-
return css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n\t\tdisplay: flex;\n\t\tgap: ", " 0;\n\t\tflex-direction: column;\n\t\tmin-width: 0;\n\t\toverflow-x: hidden;\n\t\tposition: relative;\n\t\t", "\n\t\t", "\n ", "\n ", "\n &:hover ~ .actions-button-group {\n\t\t\topacity: 1;\n\t\t}\n\t\ta:focus,\n\t\t.has-action:focus {\n\t\t\toutline-offset: -2px;\n\t\t}\n\t"])), getGap(size), hideBackground ? '' : "background-color: ".concat("var(--ds-surface-raised, #FFFFFF)", ";"), paddingCss, hideElevation ? '' : elevationStyles, clickableContainer ? clickableContainerStyles : '');
|
|
108
|
-
};
|
|
109
40
|
var renderChildren = function renderChildren(children, containerSize, containerTheme, status, retry, onClick) {
|
|
110
41
|
return React.Children.map(children, function (child) {
|
|
111
42
|
// TODO: EDM-6468: Use useFlexibleUiOptionContext for rendering options inside block/element instead
|
|
@@ -146,7 +77,7 @@ var getLayeredLink = function getLayeredLink(testId, context, children, onClick)
|
|
|
146
77
|
var _ref2 = getTitleBlockProps(children) || {},
|
|
147
78
|
target = _ref2.anchorTarget,
|
|
148
79
|
text = _ref2.text;
|
|
149
|
-
return
|
|
80
|
+
return /*#__PURE__*/React.createElement(LayeredLink, {
|
|
150
81
|
onClick: onClick,
|
|
151
82
|
target: target,
|
|
152
83
|
testId: testId,
|
|
@@ -154,6 +85,60 @@ var getLayeredLink = function getLayeredLink(testId, context, children, onClick)
|
|
|
154
85
|
url: url
|
|
155
86
|
});
|
|
156
87
|
};
|
|
88
|
+
var baseStyleCommon = null;
|
|
89
|
+
var backgroundStyle = null;
|
|
90
|
+
var elevationStyles = null;
|
|
91
|
+
var clickableContainerStyles = null;
|
|
92
|
+
var gapStyleMap = {
|
|
93
|
+
xlarge: "_zulp1jvo",
|
|
94
|
+
large: "_zulph3jc",
|
|
95
|
+
medium: "_zulp1qos",
|
|
96
|
+
small: "_zulpfzsm"
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Get container padding based on smart link size
|
|
101
|
+
* Equivalent version for DS primitives space token is getPrimitivesPaddingSpaceBySize()
|
|
102
|
+
* at view/FlexibleCard/components/utils.tsx
|
|
103
|
+
*/
|
|
104
|
+
var getPadding = function getPadding(size) {
|
|
105
|
+
switch (size) {
|
|
106
|
+
case SmartLinkSize.XLarge:
|
|
107
|
+
return '1.5rem';
|
|
108
|
+
case SmartLinkSize.Large:
|
|
109
|
+
return '1.25rem';
|
|
110
|
+
case SmartLinkSize.Medium:
|
|
111
|
+
return '1rem';
|
|
112
|
+
case SmartLinkSize.Small:
|
|
113
|
+
default:
|
|
114
|
+
return '.5rem';
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
var getGap = function getGap(size) {
|
|
118
|
+
switch (size) {
|
|
119
|
+
case SmartLinkSize.XLarge:
|
|
120
|
+
return '1.25rem';
|
|
121
|
+
case SmartLinkSize.Large:
|
|
122
|
+
return '1rem';
|
|
123
|
+
case SmartLinkSize.Medium:
|
|
124
|
+
return '.5rem';
|
|
125
|
+
case SmartLinkSize.Small:
|
|
126
|
+
default:
|
|
127
|
+
return '.25rem';
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
var previewOnLeftStyleMap = {
|
|
131
|
+
xlarge: "_19bv15sf _y5vk1k92",
|
|
132
|
+
large: "_19bvf557 _y5vk1j6v",
|
|
133
|
+
medium: "_19bvqox2 _y5vk1kwk",
|
|
134
|
+
small: "_19bv1ltm _y5vk6mu8"
|
|
135
|
+
};
|
|
136
|
+
var previewOnRightStyleMap = {
|
|
137
|
+
xlarge: "_u5f315sf _1yob1k92",
|
|
138
|
+
large: "_u5f3f557 _1yob1j6v",
|
|
139
|
+
medium: "_u5f3qox2 _1yob1kwk",
|
|
140
|
+
small: "_u5f31ltm _1yob6mu8"
|
|
141
|
+
};
|
|
157
142
|
|
|
158
143
|
/**
|
|
159
144
|
* A container is a hidden component that build the Flexible Smart Link.
|
|
@@ -163,7 +148,7 @@ var getLayeredLink = function getLayeredLink(testId, context, children, onClick)
|
|
|
163
148
|
* @internal
|
|
164
149
|
* @see Block
|
|
165
150
|
*/
|
|
166
|
-
var
|
|
151
|
+
var ContainerNew = function ContainerNew(_ref3) {
|
|
167
152
|
var children = _ref3.children,
|
|
168
153
|
_ref3$clickableContai = _ref3.clickableContainer,
|
|
169
154
|
clickableContainer = _ref3$clickableContai === void 0 ? false : _ref3$clickableContai,
|
|
@@ -186,20 +171,30 @@ var Container = function Container(_ref3) {
|
|
|
186
171
|
testId = _ref3$testId === void 0 ? 'smart-links-container' : _ref3$testId,
|
|
187
172
|
_ref3$theme = _ref3.theme,
|
|
188
173
|
theme = _ref3$theme === void 0 ? SmartLinkTheme.Link : _ref3$theme;
|
|
174
|
+
var padding = hidePadding ? '0rem' : getPadding(size);
|
|
175
|
+
var gap = getGap(size);
|
|
189
176
|
var context = useContext(FlexibleUiContext);
|
|
190
|
-
var
|
|
177
|
+
var _getChildrenOptions = getChildrenOptions(children, context),
|
|
178
|
+
previewOnLeft = _getChildrenOptions.previewOnLeft,
|
|
179
|
+
previewOnRight = _getChildrenOptions.previewOnRight;
|
|
191
180
|
var canShowHoverPreview = showHoverPreview && status === 'resolved';
|
|
192
181
|
// `retry` object contains action that can be performed on
|
|
193
182
|
// unresolved link (unauthorized, forbidden, not found, etc.)
|
|
194
183
|
var canShowAuthTooltip = showHoverPreview && status === 'unauthorized' && retry !== undefined;
|
|
195
|
-
var
|
|
196
|
-
|
|
197
|
-
css: getContainerStyles(size, hideBackground, hideElevation, hidePadding, clickableContainer, childrenOptions),
|
|
184
|
+
var containerPaddingStyles = null;
|
|
185
|
+
var container = /*#__PURE__*/React.createElement("div", {
|
|
198
186
|
"data-smart-link-container": true,
|
|
199
|
-
"data-testid": testId
|
|
187
|
+
"data-testid": testId,
|
|
188
|
+
className: ax(["_1e0c1txw _2lx21bp4 _1ul9idpf _1reo15vq _kqswh2mm _1pcmkb7n _1v7y1i6y _ufn21i6y", gapStyleMap[size], !hideBackground && "_bfhkhp5a", "_1yt418y6 _jb7v18y6 _y5vk167t _1yob1wow _r37x1r5k", previewOnLeft && previewOnLeftStyleMap[size], previewOnRight && previewOnRightStyleMap[size], !hideElevation && "_19itn8v0 _2rkopd34 _18s8v77o", clickableContainer && "_nqwih2mm _18ywh2mm _1nq3h2mm _1t4ckb7n _1nxdkb7n _xnbykb7n"]),
|
|
189
|
+
style: {
|
|
190
|
+
"--_1xumd0e": ix(padding),
|
|
191
|
+
"--_73mooq": ix(previewOnLeft ? gap : padding),
|
|
192
|
+
"--_12k13bg": ix(previewOnRight ? gap : padding),
|
|
193
|
+
"--_vzvmm2": ix("1px solid ".concat("var(--ds-border, ".concat(N40, ")")))
|
|
194
|
+
}
|
|
200
195
|
}, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick));
|
|
201
196
|
if (context !== null && context !== void 0 && context.url && (canShowHoverPreview || canShowAuthTooltip)) {
|
|
202
|
-
return
|
|
197
|
+
return /*#__PURE__*/React.createElement(HoverCardControl, {
|
|
203
198
|
isHoverPreview: canShowHoverPreview,
|
|
204
199
|
isAuthTooltip: canShowAuthTooltip,
|
|
205
200
|
actionOptions: actionOptions,
|
|
@@ -210,4 +205,10 @@ var Container = function Container(_ref3) {
|
|
|
210
205
|
}
|
|
211
206
|
return container;
|
|
212
207
|
};
|
|
208
|
+
var Container = function Container(props) {
|
|
209
|
+
if (fg('bandicoots-compiled-migration-smartcard')) {
|
|
210
|
+
return /*#__PURE__*/React.createElement(ContainerNew, props);
|
|
211
|
+
}
|
|
212
|
+
return /*#__PURE__*/React.createElement(ContainerOld, props);
|
|
213
|
+
};
|
|
213
214
|
export default Container;
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
|
|
2
|
+
var _templateObject;
|
|
3
|
+
/**
|
|
4
|
+
* @jsxRuntime classic
|
|
5
|
+
* @jsx jsx
|
|
6
|
+
*/
|
|
7
|
+
import React, { useContext } from 'react';
|
|
8
|
+
|
|
9
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
10
|
+
import { css, jsx } from '@emotion/react';
|
|
11
|
+
import { di } from 'react-magnetic-di';
|
|
12
|
+
import { N40 } from '@atlaskit/theme/colors';
|
|
13
|
+
import { MediaPlacement, SmartLinkSize, SmartLinkTheme } from '../../../../constants';
|
|
14
|
+
import { FlexibleUiContext } from '../../../../state/flexible-ui-context';
|
|
15
|
+
import { isFlexUiPreviewPresent } from '../../../../state/flexible-ui-context/utils';
|
|
16
|
+
import { isFlexibleUiBlock, isFlexibleUiPreviewBlock, isFlexibleUiTitleBlock } from '../../../../utils/flexible';
|
|
17
|
+
import HoverCardControl from './hover-card-control';
|
|
18
|
+
import LayeredLink from './layered-link';
|
|
19
|
+
var elevationStyles = css({
|
|
20
|
+
border: "1px solid ".concat("var(--ds-border, ".concat(N40, ")")),
|
|
21
|
+
borderRadius: "var(--ds-border-radius-200, 8px)",
|
|
22
|
+
margin: "var(--ds-space-025, 2px)"
|
|
23
|
+
});
|
|
24
|
+
var clickableContainerStyles = css({
|
|
25
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
26
|
+
'a, button, .has-action': {
|
|
27
|
+
position: 'relative',
|
|
28
|
+
zIndex: 1
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
var getGap = function getGap(size) {
|
|
32
|
+
switch (size) {
|
|
33
|
+
case SmartLinkSize.XLarge:
|
|
34
|
+
return '1.25rem';
|
|
35
|
+
case SmartLinkSize.Large:
|
|
36
|
+
return '1rem';
|
|
37
|
+
case SmartLinkSize.Medium:
|
|
38
|
+
return '.5rem';
|
|
39
|
+
case SmartLinkSize.Small:
|
|
40
|
+
default:
|
|
41
|
+
return '.25rem';
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Get container padding based on smart link size
|
|
47
|
+
* Equivalent version for DS primitives space token is getPrimitivesPaddingSpaceBySize()
|
|
48
|
+
* at view/FlexibleCard/components/utils.tsx
|
|
49
|
+
*/
|
|
50
|
+
var getPadding = function getPadding(size) {
|
|
51
|
+
switch (size) {
|
|
52
|
+
case SmartLinkSize.XLarge:
|
|
53
|
+
return '1.5rem';
|
|
54
|
+
case SmartLinkSize.Large:
|
|
55
|
+
return '1.25rem';
|
|
56
|
+
case SmartLinkSize.Medium:
|
|
57
|
+
return '1rem';
|
|
58
|
+
case SmartLinkSize.Small:
|
|
59
|
+
default:
|
|
60
|
+
return '.5rem';
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
var getContainerPaddingStyles = function getContainerPaddingStyles(size, hidePadding, childrenOptions) {
|
|
64
|
+
var padding = hidePadding ? '0rem' : getPadding(size);
|
|
65
|
+
var gap = getGap(size);
|
|
66
|
+
var previewOnLeft = childrenOptions.previewOnLeft,
|
|
67
|
+
previewOnRight = childrenOptions.previewOnRight;
|
|
68
|
+
return css({
|
|
69
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
70
|
+
'--container-padding': padding,
|
|
71
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
72
|
+
'--container-gap-left': previewOnLeft ? gap : padding,
|
|
73
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
74
|
+
'--container-gap-right': previewOnRight ? gap : padding,
|
|
75
|
+
'--preview-block-width': '30%',
|
|
76
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
77
|
+
padding: padding
|
|
78
|
+
},
|
|
79
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
80
|
+
previewOnLeft ? "padding-left: calc(var(--preview-block-width) + ".concat(gap, ");") : '',
|
|
81
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
|
|
82
|
+
previewOnRight ? "padding-right: calc(var(--preview-block-width) + ".concat(gap, ");") : '');
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* @deprecated consider removing on FF bandicoots-compiled-migration-smartcard
|
|
87
|
+
*/
|
|
88
|
+
export var getContainerStyles = function getContainerStyles(size, hideBackground, hideElevation, hidePadding, clickableContainer, childrenOptions) {
|
|
89
|
+
var paddingCss = getContainerPaddingStyles(size, hidePadding, childrenOptions);
|
|
90
|
+
|
|
91
|
+
// eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression -- needs manual remediation
|
|
92
|
+
return css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n\t\tdisplay: flex;\n\t\tgap: ", " 0;\n\t\tflex-direction: column;\n\t\tmin-width: 0;\n\t\toverflow-x: hidden;\n\t\tposition: relative;\n\t\t", "\n\t\t", "\n ", "\n ", "\n &:hover ~ .actions-button-group {\n\t\t\topacity: 1;\n\t\t}\n\t\ta:focus,\n\t\t.has-action:focus {\n\t\t\toutline-offset: -2px;\n\t\t}\n\t"])), getGap(size), hideBackground ? '' : "background-color: ".concat("var(--ds-surface-raised, #FFFFFF)", ";"), paddingCss, hideElevation ? '' : elevationStyles, clickableContainer ? clickableContainerStyles : '');
|
|
93
|
+
};
|
|
94
|
+
var getLayeredLink = function getLayeredLink(testId, context, children, onClick) {
|
|
95
|
+
var _ref = context || {},
|
|
96
|
+
title = _ref.title,
|
|
97
|
+
_ref$url = _ref.url,
|
|
98
|
+
url = _ref$url === void 0 ? '' : _ref$url;
|
|
99
|
+
var _ref2 = getTitleBlockProps(children) || {},
|
|
100
|
+
target = _ref2.anchorTarget,
|
|
101
|
+
text = _ref2.text;
|
|
102
|
+
return jsx(LayeredLink, {
|
|
103
|
+
onClick: onClick,
|
|
104
|
+
target: target,
|
|
105
|
+
testId: testId,
|
|
106
|
+
text: text || title,
|
|
107
|
+
url: url
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
var getTitleBlockProps = function getTitleBlockProps(children) {
|
|
111
|
+
var block = React.Children.toArray(children).find(function (child) {
|
|
112
|
+
return isFlexibleUiTitleBlock(child);
|
|
113
|
+
});
|
|
114
|
+
if ( /*#__PURE__*/React.isValidElement(block)) {
|
|
115
|
+
return block.props;
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
export var getChildrenOptions = function getChildrenOptions(children, context) {
|
|
119
|
+
var options = {};
|
|
120
|
+
if (isFlexUiPreviewPresent(context)) {
|
|
121
|
+
React.Children.map(children, function (child) {
|
|
122
|
+
if ( /*#__PURE__*/React.isValidElement(child)) {
|
|
123
|
+
if (isFlexibleUiPreviewBlock(child)) {
|
|
124
|
+
var placement = child.props.placement;
|
|
125
|
+
if (placement === MediaPlacement.Left) {
|
|
126
|
+
options.previewOnLeft = true;
|
|
127
|
+
}
|
|
128
|
+
if (placement === MediaPlacement.Right) {
|
|
129
|
+
options.previewOnRight = true;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
return options;
|
|
136
|
+
};
|
|
137
|
+
var renderChildren = function renderChildren(children, containerSize, containerTheme, status, retry, onClick) {
|
|
138
|
+
return React.Children.map(children, function (child) {
|
|
139
|
+
// TODO: EDM-6468: Use useFlexibleUiOptionContext for rendering options inside block/element instead
|
|
140
|
+
if ( /*#__PURE__*/React.isValidElement(child) && isFlexibleUiBlock(child)) {
|
|
141
|
+
var blockSize = child.props.size;
|
|
142
|
+
var size = blockSize || containerSize;
|
|
143
|
+
if (isFlexibleUiTitleBlock(child)) {
|
|
144
|
+
return /*#__PURE__*/React.cloneElement(child, {
|
|
145
|
+
// @ts-expect-error
|
|
146
|
+
onClick: onClick,
|
|
147
|
+
retry: retry,
|
|
148
|
+
size: size,
|
|
149
|
+
status: status,
|
|
150
|
+
theme: containerTheme
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
// @ts-expect-error
|
|
154
|
+
return /*#__PURE__*/React.cloneElement(child, {
|
|
155
|
+
size: size,
|
|
156
|
+
status: status
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
};
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* A container is a hidden component that build the Flexible Smart Link.
|
|
164
|
+
* All the Flexible UI components are wrapped inside the container.
|
|
165
|
+
* It inherits the ui props from Card component and applies the custom styling
|
|
166
|
+
* accordingly.
|
|
167
|
+
* @internal
|
|
168
|
+
* @see Block
|
|
169
|
+
*/
|
|
170
|
+
var ContainerOld = function ContainerOld(_ref3) {
|
|
171
|
+
var children = _ref3.children,
|
|
172
|
+
_ref3$clickableContai = _ref3.clickableContainer,
|
|
173
|
+
clickableContainer = _ref3$clickableContai === void 0 ? false : _ref3$clickableContai,
|
|
174
|
+
_ref3$hideBackground = _ref3.hideBackground,
|
|
175
|
+
hideBackground = _ref3$hideBackground === void 0 ? false : _ref3$hideBackground,
|
|
176
|
+
_ref3$hideElevation = _ref3.hideElevation,
|
|
177
|
+
hideElevation = _ref3$hideElevation === void 0 ? false : _ref3$hideElevation,
|
|
178
|
+
_ref3$hidePadding = _ref3.hidePadding,
|
|
179
|
+
hidePadding = _ref3$hidePadding === void 0 ? false : _ref3$hidePadding,
|
|
180
|
+
onClick = _ref3.onClick,
|
|
181
|
+
retry = _ref3.retry,
|
|
182
|
+
_ref3$showHoverPrevie = _ref3.showHoverPreview,
|
|
183
|
+
showHoverPreview = _ref3$showHoverPrevie === void 0 ? false : _ref3$showHoverPrevie,
|
|
184
|
+
hoverPreviewOptions = _ref3.hoverPreviewOptions,
|
|
185
|
+
actionOptions = _ref3.actionOptions,
|
|
186
|
+
_ref3$size = _ref3.size,
|
|
187
|
+
size = _ref3$size === void 0 ? SmartLinkSize.Medium : _ref3$size,
|
|
188
|
+
status = _ref3.status,
|
|
189
|
+
_ref3$testId = _ref3.testId,
|
|
190
|
+
testId = _ref3$testId === void 0 ? 'smart-links-container' : _ref3$testId,
|
|
191
|
+
_ref3$theme = _ref3.theme,
|
|
192
|
+
theme = _ref3$theme === void 0 ? SmartLinkTheme.Link : _ref3$theme;
|
|
193
|
+
var context = useContext(FlexibleUiContext);
|
|
194
|
+
var childrenOptions = getChildrenOptions(children, context);
|
|
195
|
+
var canShowHoverPreview = showHoverPreview && status === 'resolved';
|
|
196
|
+
// `retry` object contains action that can be performed on
|
|
197
|
+
// unresolved link (unauthorized, forbidden, not found, etc.)
|
|
198
|
+
var canShowAuthTooltip = showHoverPreview && status === 'unauthorized' && retry !== undefined;
|
|
199
|
+
var container = jsx("div", {
|
|
200
|
+
// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage -- Ignored via go/DSP-18766
|
|
201
|
+
css: getContainerStyles(size, hideBackground, hideElevation, hidePadding, clickableContainer, childrenOptions),
|
|
202
|
+
"data-smart-link-container": true,
|
|
203
|
+
"data-testid": testId
|
|
204
|
+
}, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick));
|
|
205
|
+
if (context !== null && context !== void 0 && context.url && (canShowHoverPreview || canShowAuthTooltip)) {
|
|
206
|
+
return jsx(HoverCardControl, {
|
|
207
|
+
isHoverPreview: canShowHoverPreview,
|
|
208
|
+
isAuthTooltip: canShowAuthTooltip,
|
|
209
|
+
actionOptions: actionOptions,
|
|
210
|
+
testId: testId,
|
|
211
|
+
url: context.url,
|
|
212
|
+
hoverPreviewOptions: hoverPreviewOptions
|
|
213
|
+
}, container);
|
|
214
|
+
}
|
|
215
|
+
return container;
|
|
216
|
+
};
|
|
217
|
+
export default ContainerOld;
|