@atlaskit/smart-card 34.6.5 → 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 (170) hide show
  1. package/CHANGELOG.md +16 -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/FlexibleCard/components/container/index.compiled.css +5 -2
  25. package/dist/cjs/view/FlexibleCard/components/container/index.js +1 -1
  26. package/dist/cjs/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-items-group/index.compiled.css +5 -2
  27. package/dist/cjs/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-items-group/index.js +1 -2
  28. package/dist/cjs/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-trigger/index.compiled.css +4 -1
  29. package/dist/cjs/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-trigger/index.js +1 -1
  30. package/dist/cjs/view/HoverCard/components/views/resolving/index.compiled.css +5 -2
  31. package/dist/cjs/view/HoverCard/components/views/resolving/index.js +1 -1
  32. package/dist/cjs/view/InlineCard/ErroredView/index.js +10 -3
  33. package/dist/cjs/view/InlineCard/ForbiddenView/index.js +31 -7
  34. package/dist/cjs/view/InlineCard/Frame/styled.compiled.css +3 -2
  35. package/dist/cjs/view/InlineCard/Frame/styled.js +7 -4
  36. package/dist/cjs/view/InlineCard/IconAndTitleLayout/index.compiled.css +1 -0
  37. package/dist/cjs/view/InlineCard/IconAndTitleLayout/index.js +162 -32
  38. package/dist/cjs/view/InlineCard/IconAndTitleLayout/styled.js +24 -17
  39. package/dist/cjs/view/InlineCard/ResolvedView/index.js +3 -1
  40. package/dist/cjs/view/InlineCard/ResolvingView/index.js +10 -5
  41. package/dist/cjs/view/InlineCard/ResolvingView/styled.js +5 -4
  42. package/dist/cjs/view/InlineCard/UnauthorisedView/index.js +16 -4
  43. package/dist/cjs/view/InlineCard/common/action-button/index.js +61 -0
  44. package/dist/cjs/view/InlineCard/styled.js +4 -3
  45. package/dist/cjs/view/LinkUrl/index.js +1 -1
  46. package/dist/es2019/utils/analytics/analytics.js +1 -1
  47. package/dist/es2019/view/BlockCard/views/ResolvedView.js +2 -1
  48. package/dist/es2019/view/EmbedCard/components/ErrorFrame.compiled.css +28 -0
  49. package/dist/es2019/view/EmbedCard/components/ErrorFrame.js +48 -61
  50. package/dist/es2019/view/EmbedCard/components/ErrorFrameOld.js +91 -0
  51. package/dist/es2019/view/EmbedCard/components/ExpandedFrame.js +48 -32
  52. package/dist/es2019/view/EmbedCard/components/ExpandedFrameOld.js +96 -0
  53. package/dist/es2019/view/EmbedCard/components/Frame.compiled.css +9 -0
  54. package/dist/es2019/view/EmbedCard/components/Frame.js +23 -22
  55. package/dist/es2019/view/EmbedCard/components/FrameOld.js +114 -0
  56. package/dist/es2019/view/EmbedCard/components/ImageIcon.js +20 -9
  57. package/dist/es2019/view/EmbedCard/components/styled.compiled.css +92 -0
  58. package/dist/es2019/view/EmbedCard/components/styled.js +192 -343
  59. package/dist/es2019/view/EmbedCard/components/styledOld.js +362 -0
  60. package/dist/es2019/view/EmbedCard/views/ErroredView.compiled.css +13 -0
  61. package/dist/es2019/view/EmbedCard/views/ErroredView.js +27 -37
  62. package/dist/es2019/view/EmbedCard/views/ErroredViewOld.js +58 -0
  63. package/dist/es2019/view/EmbedCard/views/ResolvedView.js +19 -12
  64. package/dist/es2019/view/EmbedCard/views/ResolvedViewOld.js +72 -0
  65. package/dist/es2019/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.js +119 -0
  66. package/dist/es2019/view/EmbedCard/views/unresolved-view/index.compiled.css +19 -0
  67. package/dist/es2019/view/EmbedCard/views/unresolved-view/index.js +35 -53
  68. package/dist/es2019/view/FlexibleCard/components/container/index.compiled.css +5 -2
  69. package/dist/es2019/view/FlexibleCard/components/container/index.js +1 -1
  70. package/dist/es2019/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-items-group/index.compiled.css +5 -2
  71. package/dist/es2019/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-items-group/index.js +1 -1
  72. package/dist/es2019/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-trigger/index.compiled.css +4 -1
  73. package/dist/es2019/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-trigger/index.js +1 -1
  74. package/dist/es2019/view/HoverCard/components/views/resolving/index.compiled.css +5 -2
  75. package/dist/es2019/view/HoverCard/components/views/resolving/index.js +1 -1
  76. package/dist/es2019/view/InlineCard/ErroredView/index.js +12 -5
  77. package/dist/es2019/view/InlineCard/ForbiddenView/index.js +34 -10
  78. package/dist/es2019/view/InlineCard/Frame/styled.compiled.css +3 -2
  79. package/dist/es2019/view/InlineCard/Frame/styled.js +7 -4
  80. package/dist/es2019/view/InlineCard/IconAndTitleLayout/index.compiled.css +1 -0
  81. package/dist/es2019/view/InlineCard/IconAndTitleLayout/index.js +162 -32
  82. package/dist/es2019/view/InlineCard/IconAndTitleLayout/styled.js +23 -16
  83. package/dist/es2019/view/InlineCard/ResolvedView/index.js +4 -2
  84. package/dist/es2019/view/InlineCard/ResolvingView/index.js +13 -8
  85. package/dist/es2019/view/InlineCard/ResolvingView/styled.js +5 -4
  86. package/dist/es2019/view/InlineCard/UnauthorisedView/index.js +18 -6
  87. package/dist/es2019/view/InlineCard/common/action-button/index.js +50 -0
  88. package/dist/es2019/view/InlineCard/styled.js +3 -2
  89. package/dist/es2019/view/LinkUrl/index.js +1 -1
  90. package/dist/esm/utils/analytics/analytics.js +1 -1
  91. package/dist/esm/view/BlockCard/views/ResolvedView.js +2 -1
  92. package/dist/esm/view/EmbedCard/components/ErrorFrame.compiled.css +28 -0
  93. package/dist/esm/view/EmbedCard/components/ErrorFrame.js +59 -62
  94. package/dist/esm/view/EmbedCard/components/ErrorFrameOld.js +92 -0
  95. package/dist/esm/view/EmbedCard/components/ExpandedFrame.js +13 -2
  96. package/dist/esm/view/EmbedCard/components/ExpandedFrameOld.js +104 -0
  97. package/dist/esm/view/EmbedCard/components/Frame.compiled.css +9 -0
  98. package/dist/esm/view/EmbedCard/components/Frame.js +23 -22
  99. package/dist/esm/view/EmbedCard/components/FrameOld.js +133 -0
  100. package/dist/esm/view/EmbedCard/components/ImageIcon.js +20 -9
  101. package/dist/esm/view/EmbedCard/components/styled.compiled.css +92 -0
  102. package/dist/esm/view/EmbedCard/components/styled.js +197 -234
  103. package/dist/esm/view/EmbedCard/components/styledOld.js +252 -0
  104. package/dist/esm/view/EmbedCard/views/ErroredView.compiled.css +13 -0
  105. package/dist/esm/view/EmbedCard/views/ErroredView.js +27 -37
  106. package/dist/esm/view/EmbedCard/views/ErroredViewOld.js +61 -0
  107. package/dist/esm/view/EmbedCard/views/ResolvedView.js +19 -12
  108. package/dist/esm/view/EmbedCard/views/ResolvedViewOld.js +74 -0
  109. package/dist/esm/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.js +118 -0
  110. package/dist/esm/view/EmbedCard/views/unresolved-view/index.compiled.css +19 -0
  111. package/dist/esm/view/EmbedCard/views/unresolved-view/index.js +35 -53
  112. package/dist/esm/view/FlexibleCard/components/container/index.compiled.css +5 -2
  113. package/dist/esm/view/FlexibleCard/components/container/index.js +1 -1
  114. package/dist/esm/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-items-group/index.compiled.css +5 -2
  115. package/dist/esm/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-items-group/index.js +1 -2
  116. package/dist/esm/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-trigger/index.compiled.css +4 -1
  117. package/dist/esm/view/FlexibleCard/components/elements/lozenge/lozenge-action/lozenge-action-trigger/index.js +1 -1
  118. package/dist/esm/view/HoverCard/components/views/resolving/index.compiled.css +5 -2
  119. package/dist/esm/view/HoverCard/components/views/resolving/index.js +1 -1
  120. package/dist/esm/view/InlineCard/ErroredView/index.js +12 -5
  121. package/dist/esm/view/InlineCard/ForbiddenView/index.js +34 -10
  122. package/dist/esm/view/InlineCard/Frame/styled.compiled.css +3 -2
  123. package/dist/esm/view/InlineCard/Frame/styled.js +7 -4
  124. package/dist/esm/view/InlineCard/IconAndTitleLayout/index.compiled.css +1 -0
  125. package/dist/esm/view/InlineCard/IconAndTitleLayout/index.js +162 -32
  126. package/dist/esm/view/InlineCard/IconAndTitleLayout/styled.js +23 -16
  127. package/dist/esm/view/InlineCard/ResolvedView/index.js +4 -2
  128. package/dist/esm/view/InlineCard/ResolvingView/index.js +13 -8
  129. package/dist/esm/view/InlineCard/ResolvingView/styled.js +5 -4
  130. package/dist/esm/view/InlineCard/UnauthorisedView/index.js +18 -6
  131. package/dist/esm/view/InlineCard/common/action-button/index.js +51 -0
  132. package/dist/esm/view/InlineCard/styled.js +3 -2
  133. package/dist/esm/view/LinkUrl/index.js +1 -1
  134. package/dist/types/view/EmbedCard/components/ErrorFrame.d.ts +3 -4
  135. package/dist/types/view/EmbedCard/components/ErrorFrameOld.d.ts +19 -0
  136. package/dist/types/view/EmbedCard/components/ExpandedFrame.d.ts +2 -2
  137. package/dist/types/view/EmbedCard/components/ExpandedFrameOld.d.ts +40 -0
  138. package/dist/types/view/EmbedCard/components/FrameOld.d.ts +14 -0
  139. package/dist/types/view/EmbedCard/components/styled.d.ts +15 -77
  140. package/dist/types/view/EmbedCard/components/styledOld.d.ts +109 -0
  141. package/dist/types/view/EmbedCard/views/ErroredView.d.ts +2 -2
  142. package/dist/types/view/EmbedCard/views/ErroredViewOld.d.ts +12 -0
  143. package/dist/types/view/EmbedCard/views/ResolvedView.d.ts +0 -4
  144. package/dist/types/view/EmbedCard/views/ResolvedViewOld.d.ts +36 -0
  145. package/dist/types/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.d.ts +4 -0
  146. package/dist/types/view/EmbedCard/views/unresolved-view/index.d.ts +3 -3
  147. package/dist/types/view/InlineCard/IconAndTitleLayout/index.d.ts +10 -2
  148. package/dist/types/view/InlineCard/IconAndTitleLayout/styled.d.ts +8 -8
  149. package/dist/types/view/InlineCard/ResolvingView/styled.d.ts +1 -1
  150. package/dist/types/view/InlineCard/common/action-button/index.d.ts +19 -0
  151. package/dist/types/view/InlineCard/styled.d.ts +1 -1
  152. package/dist/types-ts4.5/view/EmbedCard/components/ErrorFrame.d.ts +3 -4
  153. package/dist/types-ts4.5/view/EmbedCard/components/ErrorFrameOld.d.ts +19 -0
  154. package/dist/types-ts4.5/view/EmbedCard/components/ExpandedFrame.d.ts +2 -2
  155. package/dist/types-ts4.5/view/EmbedCard/components/ExpandedFrameOld.d.ts +40 -0
  156. package/dist/types-ts4.5/view/EmbedCard/components/FrameOld.d.ts +14 -0
  157. package/dist/types-ts4.5/view/EmbedCard/components/styled.d.ts +15 -77
  158. package/dist/types-ts4.5/view/EmbedCard/components/styledOld.d.ts +109 -0
  159. package/dist/types-ts4.5/view/EmbedCard/views/ErroredView.d.ts +2 -2
  160. package/dist/types-ts4.5/view/EmbedCard/views/ErroredViewOld.d.ts +12 -0
  161. package/dist/types-ts4.5/view/EmbedCard/views/ResolvedView.d.ts +0 -4
  162. package/dist/types-ts4.5/view/EmbedCard/views/ResolvedViewOld.d.ts +36 -0
  163. package/dist/types-ts4.5/view/EmbedCard/views/unresolved-view/UnresolvedViewOld.d.ts +4 -0
  164. package/dist/types-ts4.5/view/EmbedCard/views/unresolved-view/index.d.ts +3 -3
  165. package/dist/types-ts4.5/view/InlineCard/IconAndTitleLayout/index.d.ts +10 -2
  166. package/dist/types-ts4.5/view/InlineCard/IconAndTitleLayout/styled.d.ts +8 -8
  167. package/dist/types-ts4.5/view/InlineCard/ResolvingView/styled.d.ts +1 -1
  168. package/dist/types-ts4.5/view/InlineCard/common/action-button/index.d.ts +19 -0
  169. package/dist/types-ts4.5/view/InlineCard/styled.d.ts +1 -1
  170. package/package.json +6 -3
@@ -0,0 +1,114 @@
1
+ /**
2
+ * @jsxRuntime classic
3
+ * @jsx jsx
4
+ */
5
+ import React, { useEffect, useRef, useState } from 'react';
6
+
7
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
8
+ import { css, jsx } from '@emotion/react';
9
+ import { di } from 'react-magnetic-di';
10
+ import { getIframeSandboxAttribute } from '../../../utils';
11
+ import { IFrame } from './IFrame';
12
+ import { IframeDwellTracker } from './IframeDwellTracker';
13
+ function mergeRefs(refs) {
14
+ return value => {
15
+ refs.forEach(ref => {
16
+ if (typeof ref === 'function') {
17
+ ref(value);
18
+ } else if (ref !== null) {
19
+ ref.current = value;
20
+ }
21
+ });
22
+ };
23
+ }
24
+ const iframeStyles = css({
25
+ border: 0,
26
+ top: 0,
27
+ left: 0,
28
+ width: '100%',
29
+ height: '100%',
30
+ position: 'relative',
31
+ overflow: 'hidden',
32
+ borderRadius: '3px'
33
+ });
34
+ export const FrameOld = /*#__PURE__*/React.forwardRef(({
35
+ url,
36
+ isTrusted = false,
37
+ testId,
38
+ onIframeDwell,
39
+ onIframeFocus,
40
+ title
41
+ }, iframeRef) => {
42
+ const [isIframeLoaded, setIframeLoaded] = useState(false);
43
+ const [isMouseOver, setMouseOver] = useState(false);
44
+ const [isWindowFocused, setWindowFocused] = useState(true);
45
+ const ref = useRef();
46
+ const mergedRef = mergeRefs([iframeRef, ref]);
47
+ const [percentVisible, setPercentVisible] = useState(0);
48
+
49
+ /**
50
+ * These are the 'percent visible' thresholds at which the intersectionObserver will
51
+ * trigger a state change. Eg. when the user scrolls and moves from 74% to 76%, or
52
+ * vice versa. It's in a state object so that its static for the useEffect
53
+ */
54
+ const [threshold] = useState([0.75, 0.8, 0.85, 0.9, 0.95, 1]);
55
+ useEffect(() => {
56
+ if (!ref || !ref.current) {
57
+ return;
58
+ }
59
+ const observer = new IntersectionObserver(entries => {
60
+ entries.forEach(entry => {
61
+ setPercentVisible(entry === null || entry === void 0 ? void 0 : entry.intersectionRatio);
62
+ });
63
+ }, {
64
+ threshold
65
+ });
66
+ observer.observe(ref.current);
67
+ return () => {
68
+ observer.disconnect();
69
+ };
70
+ }, [threshold, mergedRef]);
71
+ useEffect(() => {
72
+ const onBlur = () => {
73
+ setWindowFocused(false);
74
+ if (document.activeElement === ref.current) {
75
+ onIframeFocus && onIframeFocus();
76
+ }
77
+ };
78
+ const onFocus = () => {
79
+ setWindowFocused(true);
80
+ };
81
+ window.addEventListener('blur', onBlur);
82
+ window.addEventListener('focus', onFocus);
83
+ return () => {
84
+ window.removeEventListener('blur', onBlur);
85
+ window.removeEventListener('focus', onFocus);
86
+ };
87
+ }, [ref, onIframeFocus]);
88
+ if (!url) {
89
+ return null;
90
+ }
91
+ return jsx(React.Fragment, null, jsx(IframeDwellTracker, {
92
+ isIframeLoaded: isIframeLoaded,
93
+ isMouseOver: isMouseOver,
94
+ isWindowFocused: isWindowFocused,
95
+ iframePercentVisible: percentVisible,
96
+ onIframeDwell: onIframeDwell
97
+ }), jsx(IFrame, {
98
+ childRef: mergedRef,
99
+ src: url,
100
+ "data-testid": `${testId}-frame`,
101
+ "data-iframe-loaded": isIframeLoaded,
102
+ css: iframeStyles,
103
+ onMouseEnter: () => setMouseOver(true),
104
+ onMouseLeave: () => setMouseOver(false),
105
+ allowFullScreen: true,
106
+ scrolling: "yes",
107
+ allow: "autoplay; encrypted-media; clipboard-write",
108
+ onLoad: () => {
109
+ setIframeLoaded(true);
110
+ },
111
+ sandbox: getIframeSandboxAttribute(isTrusted),
112
+ title: title
113
+ }));
114
+ });
@@ -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 const ImageIcon = ({
5
7
  alt = '',
6
8
  src,
@@ -12,18 +14,27 @@ export const ImageIcon = ({
12
14
  if (!src) {
13
15
  return defaultIcon || null;
14
16
  }
17
+ const LoadedImageComponent = fg('bandicoots-compiled-migration-smartcard') ? /*#__PURE__*/React.createElement(Image
18
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
19
+ , {
20
+ className: "smart-link-icon",
21
+ src: src,
22
+ alt: alt,
23
+ size: size,
24
+ title: title
25
+ }) : /*#__PURE__*/React.createElement(ImageOld
26
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
27
+ , {
28
+ className: "smart-link-icon",
29
+ src: src,
30
+ alt: alt,
31
+ size: size,
32
+ title: title
33
+ });
15
34
  return /*#__PURE__*/React.createElement(ImageLoader, {
16
35
  src: src,
17
36
  loading: defaultIcon,
18
- loaded: /*#__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
- }),
37
+ loaded: LoadedImageComponent,
27
38
  errored: defaultIcon
28
39
  });
29
40
  };
@@ -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)}