@atlaskit/smart-card 36.5.0 → 36.6.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 (45) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/index.js +205 -0
  3. package/dist/cjs/utils/analytics/analytics.js +1 -1
  4. package/dist/cjs/utils/flexible.js +8 -1
  5. package/dist/cjs/view/CardWithUrl/component.js +4 -3
  6. package/dist/cjs/view/CardWithUrl/loader.js +2 -1
  7. package/dist/cjs/view/FlexibleCard/components/container/index.js +10 -3
  8. package/dist/cjs/view/FlexibleCard/external.js +131 -0
  9. package/dist/cjs/view/LinkUrl/index.js +1 -1
  10. package/dist/cjs/view/RelatedLinksModal/components/related-link-item/index.compiled.css +4 -8
  11. package/dist/cjs/view/RelatedLinksModal/components/related-link-item/index.js +2 -2
  12. package/dist/cjs/view/RelatedLinksModal/views/errored/error-svg/search-no-result/index.js +34 -1
  13. package/dist/es2019/index.js +1 -0
  14. package/dist/es2019/utils/analytics/analytics.js +1 -1
  15. package/dist/es2019/utils/flexible.js +8 -1
  16. package/dist/es2019/view/CardWithUrl/component.js +3 -2
  17. package/dist/es2019/view/CardWithUrl/loader.js +2 -1
  18. package/dist/es2019/view/FlexibleCard/components/container/index.js +9 -3
  19. package/dist/es2019/view/FlexibleCard/external.js +55 -0
  20. package/dist/es2019/view/LinkUrl/index.js +1 -1
  21. package/dist/es2019/view/RelatedLinksModal/components/related-link-item/index.compiled.css +4 -8
  22. package/dist/es2019/view/RelatedLinksModal/components/related-link-item/index.js +1 -1
  23. package/dist/es2019/view/RelatedLinksModal/views/errored/error-svg/search-no-result/index.js +32 -1
  24. package/dist/esm/index.js +1 -0
  25. package/dist/esm/utils/analytics/analytics.js +1 -1
  26. package/dist/esm/utils/flexible.js +8 -1
  27. package/dist/esm/view/CardWithUrl/component.js +4 -3
  28. package/dist/esm/view/CardWithUrl/loader.js +2 -1
  29. package/dist/esm/view/FlexibleCard/components/container/index.js +10 -3
  30. package/dist/esm/view/FlexibleCard/external.js +123 -0
  31. package/dist/esm/view/LinkUrl/index.js +1 -1
  32. package/dist/esm/view/RelatedLinksModal/components/related-link-item/index.compiled.css +4 -8
  33. package/dist/esm/view/RelatedLinksModal/components/related-link-item/index.js +2 -2
  34. package/dist/esm/view/RelatedLinksModal/views/errored/error-svg/search-no-result/index.js +34 -1
  35. package/dist/types/index.d.ts +1 -0
  36. package/dist/types/utils/flexible.d.ts +2 -1
  37. package/dist/types/view/FlexibleCard/components/container/index.d.ts +1 -1
  38. package/dist/types/view/FlexibleCard/external.d.ts +49 -0
  39. package/dist/types/view/FlexibleCard/types.d.ts +7 -0
  40. package/dist/types-ts4.5/index.d.ts +1 -0
  41. package/dist/types-ts4.5/utils/flexible.d.ts +2 -1
  42. package/dist/types-ts4.5/view/FlexibleCard/components/container/index.d.ts +1 -1
  43. package/dist/types-ts4.5/view/FlexibleCard/external.d.ts +49 -0
  44. package/dist/types-ts4.5/view/FlexibleCard/types.d.ts +7 -0
  45. package/package.json +6 -3
@@ -1,8 +1,15 @@
1
1
  import React from 'react';
2
+ import { fg } from '@atlaskit/platform-feature-flags';
2
3
  import * as Blocks from '../view/FlexibleCard/components/blocks';
3
4
  import { FooterBlock, PreviewBlock, TitleBlock } from '../view/FlexibleCard/components/blocks';
4
5
  import * as Elements from '../view/FlexibleCard/components/elements';
5
- export const isFlexibleUiCard = children => {
6
+ export const isFlexibleUiCard = (children, ui) => {
7
+ if (fg('platform-linking-flexible-card-openness')) {
8
+ if (ui !== null && ui !== void 0 && ui.removeBlockRestriction) {
9
+ var _React$Children$toArr;
10
+ return children && ((_React$Children$toArr = React.Children.toArray(children)) === null || _React$Children$toArr === void 0 ? void 0 : _React$Children$toArr.length) > 0 ? true : false;
11
+ }
12
+ }
6
13
  if (children && React.Children.toArray(children).some(child => isFlexibleUiTitleBlock(child))) {
7
14
  return true;
8
15
  }
@@ -1,5 +1,6 @@
1
1
  import React, { useCallback, useEffect, useMemo } from 'react';
2
2
  import { useAnalyticsEvents as useAnalyticsEventsNext } from '@atlaskit/analytics-next';
3
+ import { fg } from '@atlaskit/platform-feature-flags';
3
4
  import { useAnalyticsEvents } from '../../common/analytics/generated/use-analytics-events';
4
5
  import { CardDisplay } from '../../constants';
5
6
  import { useSmartLink } from '../../state';
@@ -60,7 +61,7 @@ function Component({
60
61
  const extensionKey = getExtensionKey(state.details);
61
62
  const resourceType = getResourceType(state.details);
62
63
  const services = getServices(state.details);
63
- let isFlexibleUi = useMemo(() => isFlexibleUiCard(children), [children]);
64
+ let isFlexibleUi = useMemo(() => isFlexibleUiCard(children, fg('platform-linking-flexible-card-openness') ? ui : undefined), [children, ui]);
64
65
  const actionOptions = combineActionOptions({
65
66
  actionOptions: actionOptionsProp,
66
67
  platform
@@ -260,7 +261,7 @@ function Component({
260
261
  }
261
262
  }
262
263
  export const CardWithUrlContent = props => {
263
- const display = isFlexibleUiCard(props.children) ? CardDisplay.Flexible : props.appearance;
264
+ const display = isFlexibleUiCard(props.children, fg('platform-linking-flexible-card-openness') ? props === null || props === void 0 ? void 0 : props.ui : undefined) ? CardDisplay.Flexible : props.appearance;
264
265
  return /*#__PURE__*/React.createElement(SmartLinkModalProvider, null, /*#__PURE__*/React.createElement(SmartLinkAnalyticsContext, {
265
266
  url: props.url,
266
267
  id: props.id,
@@ -2,6 +2,7 @@ import React, { lazy, Suspense, useCallback, useEffect, useState } from 'react';
2
2
  import { ErrorBoundary } from 'react-error-boundary';
3
3
  import { di } from 'react-magnetic-di';
4
4
  import uuid from 'uuid';
5
+ import { fg } from '@atlaskit/platform-feature-flags';
5
6
  import { useAnalyticsEvents } from '../../common/analytics/generated/use-analytics-events';
6
7
  import { failUfoExperience, startUfoExperience } from '../../state/analytics';
7
8
  import { importWithRetry } from '../../utils';
@@ -49,7 +50,7 @@ export function CardWithURLRenderer(props) {
49
50
  resolvingPlaceholder,
50
51
  truncateInline
51
52
  } = props;
52
- const isFlexibleUi = isFlexibleUiCard(children);
53
+ const isFlexibleUi = isFlexibleUiCard(children, fg('platform-linking-flexible-card-openness') ? ui : undefined);
53
54
  const analyticsContext = useSmartLinkAnalyticsContext({
54
55
  display: isFlexibleUi ? 'flexible' : appearance,
55
56
  id,
@@ -35,7 +35,7 @@ export const getChildrenOptions = (children, context) => {
35
35
  }
36
36
  return options;
37
37
  };
38
- const renderChildren = (children, containerSize, containerTheme, status, retry, onClick) => {
38
+ const renderChildren = (children, containerSize, containerTheme, status, retry, onClick, removeBlockRestriction) => {
39
39
  return React.Children.map(children, child => {
40
40
  if ( /*#__PURE__*/React.isValidElement(child) && isFlexibleUiBlock(child)) {
41
41
  if (isFlexibleUiTitleBlock(child)) {
@@ -76,6 +76,11 @@ const renderChildren = (children, containerSize, containerTheme, status, retry,
76
76
  status
77
77
  });
78
78
  }
79
+ if (fg('platform-linking-flexible-card-openness')) {
80
+ if (removeBlockRestriction) {
81
+ return child;
82
+ }
83
+ }
79
84
  });
80
85
  };
81
86
  const updateChildrenBlock = (node, size, status) => {
@@ -295,6 +300,7 @@ const Container = ({
295
300
  showHoverPreview = false,
296
301
  hoverPreviewOptions,
297
302
  actionOptions,
303
+ removeBlockRestriction = false,
298
304
  size = SmartLinkSize.Medium,
299
305
  status,
300
306
  testId = 'smart-links-container',
@@ -321,7 +327,7 @@ const Container = ({
321
327
  "--_73mooq": ix(previewOnLeft ? gap : padding),
322
328
  "--_12k13bg": ix(previewOnRight ? gap : padding)
323
329
  }
324
- }, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick)) : /*#__PURE__*/React.createElement("div", {
330
+ }, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick, removeBlockRestriction)) : /*#__PURE__*/React.createElement("div", {
325
331
  "data-smart-link-container": true,
326
332
  "data-testid": testId,
327
333
  className: ax(["_1e0c1txw _2lx21bp4 _1ul9idpf _1reo15vq _kqswh2mm _1pcmkb7n _1v7y1i6y _ufn21i6y", gapStyleMapOld[size], !hideBackground && "_bfhkhp5a", "_1yt418y6 _jb7v18y6 _y5vk167t _1yob1wow _r37x1r5k", previewOnLeft && previewOnLeftStyleMapOld[size], previewOnRight && previewOnRightStyleMapOld[size], !hideElevation && "_19ith6cr _2rkopd34 _19pkv77o _2hwxv77o _otyrv77o _18u0v77o", clickableContainer && "_nqwih2mm _18ywh2mm _1nq3h2mm _1t4ckb7n _1nxdkb7n _xnbykb7n"]),
@@ -330,7 +336,7 @@ const Container = ({
330
336
  "--_73mooq": ix(previewOnLeft ? gap : padding),
331
337
  "--_12k13bg": ix(previewOnRight ? gap : padding)
332
338
  }
333
- }, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick));
339
+ }, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick, removeBlockRestriction));
334
340
  if (context !== null && context !== void 0 && context.url && (canShowHoverPreview || canShowAuthTooltip)) {
335
341
  return /*#__PURE__*/React.createElement(HoverCardControl, {
336
342
  isHoverPreview: canShowHoverPreview,
@@ -0,0 +1,55 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ /**
3
+ * This file contains export components and API for FlexibleCard components.
4
+ * For internal usage for access to all available props, please use following
5
+ * - ./components/elements for metadata component
6
+ * - ./components/actions for action component
7
+ *
8
+ * DO NOT add a new prop to these components until we are ready to support it externally.
9
+ */
10
+ import React from 'react';
11
+ import { AssignedTo, AssignedToGroup, AttachmentCount, AuthorGroup, ChecklistProgress, CollaboratorGroup, CommentCount, CreatedBy, CreatedOn, DueOn, LatestCommit, LinkIcon, Location, ModifiedBy, ModifiedOn, OwnedBy, OwnedByGroup, Preview, Priority, ProgrammingLanguage, Provider, ReactCount, ReadTime, SentOn, Snippet, SourceBranch, State, StoryPoints, SubscriberCount, SubTasksProgress, TargetBranch, Title, ViewCount, VoteCount } from './components/elements';
12
+ // ---- EXPORTED METADATA COMPONENT ---- //
13
+ export const AssignedToElement = () => /*#__PURE__*/React.createElement(AssignedTo, null);
14
+ export const AssignedToGroupElement = () => /*#__PURE__*/React.createElement(AssignedToGroup, null);
15
+ export const AttachmentCountElement = () => /*#__PURE__*/React.createElement(AttachmentCount, null);
16
+ export const AuthorGroupElement = () => /*#__PURE__*/React.createElement(AuthorGroup, null);
17
+ export const ChecklistProgressElement = () => /*#__PURE__*/React.createElement(ChecklistProgress, null);
18
+ export const CollaboratorGroupElement = () => /*#__PURE__*/React.createElement(CollaboratorGroup, null);
19
+ export const CommentCountElement = () => /*#__PURE__*/React.createElement(CommentCount, null);
20
+ export const CreatedOnElement = () => /*#__PURE__*/React.createElement(CreatedOn, null);
21
+ export const CreatedByElement = () => /*#__PURE__*/React.createElement(CreatedBy, null);
22
+ export const DueOnElement = () => /*#__PURE__*/React.createElement(DueOn, null);
23
+ export const LatestCommitElement = () => /*#__PURE__*/React.createElement(LatestCommit, null);
24
+ export const LinkIconElement = () => /*#__PURE__*/React.createElement(LinkIcon, null);
25
+ export const LocationElement = () => /*#__PURE__*/React.createElement(Location, null);
26
+ export const ModifiedByElement = () => /*#__PURE__*/React.createElement(ModifiedBy, null);
27
+ export const ModifiedOnElement = () => /*#__PURE__*/React.createElement(ModifiedOn, null);
28
+ export const OwnedByElement = () => /*#__PURE__*/React.createElement(OwnedBy, null);
29
+ export const OwnedByGroupElement = () => /*#__PURE__*/React.createElement(OwnedByGroup, null);
30
+ export const PreviewElement = () => /*#__PURE__*/React.createElement(Preview, null);
31
+ export const PriorityElement = () => /*#__PURE__*/React.createElement(Priority, null);
32
+ export const ProgrammingLanguageElement = () => /*#__PURE__*/React.createElement(ProgrammingLanguage, null);
33
+ export const ProviderElement = () => /*#__PURE__*/React.createElement(Provider, null);
34
+ export const ReactCountElement = () => /*#__PURE__*/React.createElement(ReactCount, null);
35
+ export const ReadTimeElement = () => /*#__PURE__*/React.createElement(ReadTime, null);
36
+ export const SentOnElement = () => /*#__PURE__*/React.createElement(SentOn, null);
37
+ export const SnippetElement = props => /*#__PURE__*/React.createElement(Snippet, {
38
+ maxLines: props.maxLines,
39
+ content: props.text
40
+ });
41
+ export const SourceBranchElement = () => /*#__PURE__*/React.createElement(SourceBranch, null);
42
+ export const StateElement = () => /*#__PURE__*/React.createElement(State, null);
43
+ export const StoryPointsElement = () => /*#__PURE__*/React.createElement(StoryPoints, null);
44
+ export const SubscriberCountElement = () => /*#__PURE__*/React.createElement(SubscriberCount, null);
45
+ export const SubTasksProgressElement = () => /*#__PURE__*/React.createElement(SubTasksProgress, null);
46
+ export const TargetBranchElement = () => /*#__PURE__*/React.createElement(TargetBranch, null);
47
+ export const TitleElement = props => /*#__PURE__*/React.createElement(Title, _extends({
48
+ hideTooltip: props === null || props === void 0 ? void 0 : props.hideTooltip,
49
+ maxLines: props === null || props === void 0 ? void 0 : props.maxLines,
50
+ target: props === null || props === void 0 ? void 0 : props.target
51
+ }, props !== null && props !== void 0 && props.text ? {
52
+ text: props === null || props === void 0 ? void 0 : props.text
53
+ } : undefined));
54
+ export const ViewCountElement = () => /*#__PURE__*/React.createElement(ViewCount, null);
55
+ export const VoteCountElement = () => /*#__PURE__*/React.createElement(VoteCount, null);
@@ -10,7 +10,7 @@ import LinkWarningModal from './LinkWarningModal';
10
10
  import { useLinkWarningModal } from './LinkWarningModal/hooks/use-link-warning-modal';
11
11
  const PACKAGE_DATA = {
12
12
  packageName: "@atlaskit/smart-card",
13
- packageVersion: "36.5.0",
13
+ packageVersion: "36.6.0",
14
14
  componentName: 'linkUrl'
15
15
  };
16
16
  const Anchor = withLinkClickedEvent('a');
@@ -1,10 +1,9 @@
1
1
 
2
2
  ._11c81o8v{font:var(--ds-font-body-small,normal 400 11px/1pc ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
3
3
  ._zulputpp{gap:var(--ds-space-150,9pt)}
4
- ._18zrpxbi{padding-inline:var(--ds-space-200,1pc)}
5
- ._195gmgjw{margin-inline:var(--ds-space-negative-200,-1pc)}
6
- ._1kl71vrj{border-left:2px solid transparent}
7
- ._1kl7neh2{border-left:2px solid var(--ds-border-selected,#0c66e4)}
4
+ ._18zr1ejb{padding-inline:var(--ds-space-300,24px)}
5
+ ._195g10v4{margin-inline:var(--ds-space-negative-300,-24px)}
6
+ ._16qs1kf8{box-shadow:inset 2px 0 0 0 var(--ds-border-selected,#0c66e4)}
8
7
  ._bfhkfg4m{background-color:var(--ds-background-selected,#e9f2ff)}
9
8
  ._ca0qu2gc{padding-top:var(--ds-space-100,8px)}
10
9
  ._n3tdu2gc{padding-bottom:var(--ds-space-100,8px)}
@@ -14,7 +13,4 @@
14
13
  ._irr31d5g:hover{background-color:var(--ds-background-input-hovered,#f7f8f9)}
15
14
  ._irr3i1yw:hover{background-color:var(--ds-background-selected-hovered,#cce0ff)}
16
15
  ._1di619ru:active{background-color:var(--ds-background-selected-pressed,#85b8ff)}
17
- ._1di61dty:active{background-color:var(--ds-background-neutral-subtle-pressed,#091e4224)}
18
- ._1ohyglyw:active{outline-style:none}
19
- ._1q5t1r31:active{outline-color:currentColor}
20
- ._1r9x1o36:active{outline-width:medium}
16
+ ._1di61dty:active{background-color:var(--ds-background-neutral-subtle-pressed,#091e4224)}
@@ -31,7 +31,7 @@ const RelatedLinkItem = ({
31
31
  return /*#__PURE__*/React.createElement("div", {
32
32
  "data-testId": testId,
33
33
  onFocus: onFocus,
34
- className: ax([fg('platform-linking-visual-refresh-v2') && "_195gmgjw _18zrpxbi _1kl71vrj", fg('platform-linking-visual-refresh-v2') ? "_irr3166n _1di61dty" : "_8vu4iti9 _1mxox0bf _10swu2gc _irr31d5g", isSelected && fg('platform-linking-visual-refresh-v2') && "_1kl7neh2 _bfhkfg4m _irr3i1yw _1q5t1r31 _1ohyglyw _1r9x1o36 _1di619ru"])
34
+ className: ax([fg('platform-linking-visual-refresh-v2') && "_195g10v4 _18zr1ejb", fg('platform-linking-visual-refresh-v2') ? "_irr3166n _1di61dty" : "_8vu4iti9 _1mxox0bf _10swu2gc _irr31d5g", isSelected && fg('platform-linking-visual-refresh-v2') && "_bfhkfg4m _16qs1kf8 _irr3i1yw _1di619ru"])
35
35
  }, /*#__PURE__*/React.createElement(Card, {
36
36
  appearance: "block",
37
37
  ui: ui,
@@ -3,11 +3,42 @@ import _extends from "@babel/runtime/helpers/extends";
3
3
  import "./index.compiled.css";
4
4
  import * as React from 'react';
5
5
  import { ax, ix } from "@compiled/react/runtime";
6
+ import { useThemeObserver } from "@atlaskit/tokens";
6
7
  const SIZE = 100;
7
8
  const genericErrorStyles = null;
8
9
  const id = 'related-links-unavailable-svg';
9
10
  export const SpotSearchNoResult = props => {
10
- return /*#__PURE__*/React.createElement("svg", _extends({
11
+ const {
12
+ colorMode
13
+ } = useThemeObserver();
14
+ return colorMode === 'dark' ? /*#__PURE__*/React.createElement("svg", _extends({
15
+ "data-testid": id,
16
+ viewBox: "0 0 275 275",
17
+ fill: "none",
18
+ xmlns: "http://www.w3.org/2000/svg"
19
+ }, props, {
20
+ className: ax(["_1bsb53f4 _4t3i53f4 _1e0c1ule"])
21
+ }), /*#__PURE__*/React.createElement("path", {
22
+ d: "M123.44 191.28C108.24 191.28 93.7 185.56 81.19 174.27C77.54 170.97 74.05 167.18 70.82 163.01C67.55 158.78 64.72 154.39 62.43 149.97C49.09 124.3 53.13 96.9499 73.52 74.9399C76.97 71.2199 80.85 67.6799 85.05 64.4299C89.1 61.2999 93.32 58.5299 97.59 56.2099C123.97 41.8999 151.49 44.8899 173.08 64.3999C176.77 67.7399 180.3 71.5699 183.58 75.7999C186.81 79.9699 189.6 84.2999 191.88 88.6599C205.36 114.45 201.32 141.84 180.8 163.8C177.49 167.35 173.75 170.74 169.69 173.87C165.48 177.12 161.08 179.99 156.62 182.39C145.57 188.33 134.33 191.27 123.44 191.27V191.28ZM130.69 60.9799C122.04 60.9799 113.08 63.3899 104.12 68.2599C100.5 70.2299 96.9 72.5899 93.42 75.2699C89.81 78.0599 86.49 81.0799 83.56 84.2499C67.1 102.02 63.91 123.11 74.58 143.65C76.5 147.34 78.88 151.04 81.66 154.62C84.39 158.15 87.32 161.34 90.38 164.1C107.54 179.6 128.76 181.81 150.14 170.33C153.94 168.29 157.7 165.84 161.31 163.04C164.79 160.35 167.97 157.46 170.79 154.45C187.34 136.74 190.51 115.63 179.74 95.0099C177.84 91.3699 175.48 87.7199 172.75 84.1899C169.97 80.5999 167 77.3599 163.91 74.5699C153.91 65.5399 142.59 60.9799 130.71 60.9799H130.69Z",
23
+ fill: "#4B4D51"
24
+ }), /*#__PURE__*/React.createElement("path", {
25
+ d: "M179.96 171C176.42 166.07 172.62 166.1 168.91 168.97C165.43 171.66 164.5 175.3 168.21 180.09L172.45 185.57L184.2 176.48L179.96 171Z",
26
+ fill: "#4B4D51"
27
+ }), /*#__PURE__*/React.createElement("path", {
28
+ d: "M187.155 174.199L169.513 187.839L202.665 230.717L220.307 217.077L187.155 174.199Z",
29
+ fill: "#4B4D51"
30
+ }), /*#__PURE__*/React.createElement("path", {
31
+ d: "M184.32 176.391L172.35 185.646L183.593 200.186L195.562 190.932L184.32 176.391Z",
32
+ fill: "#7E8188"
33
+ }), /*#__PURE__*/React.createElement("path", {
34
+ d: "M133.191 135.999H123.188V135.365C122.847 128.249 126.886 120.545 132.628 117.392L132.735 117.335C132.891 117.254 133.041 117.16 133.187 117.063C136.32 115.043 138.103 111.565 137.993 107.733C137.884 103.937 135.925 100.598 132.753 98.8051C130.749 97.6711 128.515 97.0723 126.29 97.0723C119.516 97.0723 114.005 102.622 114.005 109.443H104C104 97.0689 113.999 87 126.289 87C130.227 87 134.156 88.0454 137.652 90.0226C143.914 93.5645 147.78 100.077 147.991 107.443C148.204 114.843 144.699 121.603 138.619 125.524C138.21 125.793 137.793 126.041 137.38 126.258C134.995 127.598 132.999 131.723 133.183 134.947L133.191 136V135.999Z",
35
+ fill: "#4B4D51"
36
+ }), /*#__PURE__*/React.createElement("path", {
37
+ fillRule: "evenodd",
38
+ clipRule: "evenodd",
39
+ d: "M127.222 141.775C127.726 141.691 128.277 141.64 128.84 141.64C129.318 141.64 129.859 141.668 130.429 141.765C133.69 142.3 136.342 144.587 136.986 148.149L136.991 148.175L136.996 148.203C137.078 148.699 137.13 149.24 137.13 149.81C137.13 150.377 137.079 150.924 136.992 151.43L136.99 151.44C136.36 155.039 133.666 157.318 130.418 157.847C129.857 157.94 129.334 157.97 128.84 157.97C128.267 157.97 127.732 157.918 127.243 157.839L127.241 157.839C123.977 157.31 121.312 155.027 120.665 151.466L120.659 151.437L120.654 151.408C120.573 150.919 120.52 150.387 120.52 149.81C120.52 149.24 120.572 148.699 120.654 148.203L120.659 148.174L120.665 148.145C121.315 144.567 123.99 142.316 127.219 141.775L127.222 141.775Z",
40
+ fill: "#4B4D51"
41
+ })) : /*#__PURE__*/React.createElement("svg", _extends({
11
42
  "data-testid": id,
12
43
  viewBox: "0 0 275 275",
13
44
  fill: "none",
package/dist/esm/index.js CHANGED
@@ -14,5 +14,6 @@ export { loadingPlaceholderClassName } from './view/CardWithUrl/component-lazy/L
14
14
  // Flexible UI
15
15
  export { ActionName, ElementName, MediaPlacement, SmartLinkDirection, SmartLinkPosition, SmartLinkSize, SmartLinkTheme } from './constants';
16
16
  export { MetadataBlock, PreviewBlock, SnippetBlock, TitleBlock, FooterBlock, CustomBlock } from './view/FlexibleCard/components/blocks';
17
+ export { AssignedToElement, AssignedToGroupElement, AttachmentCountElement, AuthorGroupElement, ChecklistProgressElement, CollaboratorGroupElement, CommentCountElement, CreatedOnElement, CreatedByElement, DueOnElement, LatestCommitElement, LinkIconElement, LocationElement, ModifiedByElement, ModifiedOnElement, OwnedByElement, OwnedByGroupElement, PreviewElement, PriorityElement, ProgrammingLanguageElement, ProviderElement, ReactCountElement, ReadTimeElement, SentOnElement, SnippetElement, SourceBranchElement, StateElement, StoryPointsElement, SubscriberCountElement, SubTasksProgressElement, TargetBranchElement, TitleElement, ViewCountElement, VoteCountElement } from './view/FlexibleCard/external';
17
18
  /** @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-661 Internal documentation for deprecation (no external access)} */
18
19
  export { editorCardProvider, EditorCardProvider } from '@atlaskit/link-provider';
@@ -4,7 +4,7 @@ export var ANALYTICS_CHANNEL = 'media';
4
4
  export var context = {
5
5
  componentName: 'smart-cards',
6
6
  packageName: "@atlaskit/smart-card",
7
- packageVersion: "36.5.0"
7
+ packageVersion: "36.6.0"
8
8
  };
9
9
  export var TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
10
10
  TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
@@ -1,8 +1,15 @@
1
1
  import React from 'react';
2
+ import { fg } from '@atlaskit/platform-feature-flags';
2
3
  import * as Blocks from '../view/FlexibleCard/components/blocks';
3
4
  import { FooterBlock, PreviewBlock, TitleBlock } from '../view/FlexibleCard/components/blocks';
4
5
  import * as Elements from '../view/FlexibleCard/components/elements';
5
- export var isFlexibleUiCard = function isFlexibleUiCard(children) {
6
+ export var isFlexibleUiCard = function isFlexibleUiCard(children, ui) {
7
+ if (fg('platform-linking-flexible-card-openness')) {
8
+ if (ui !== null && ui !== void 0 && ui.removeBlockRestriction) {
9
+ var _React$Children$toArr;
10
+ return children && ((_React$Children$toArr = React.Children.toArray(children)) === null || _React$Children$toArr === void 0 ? void 0 : _React$Children$toArr.length) > 0 ? true : false;
11
+ }
12
+ }
6
13
  if (children && React.Children.toArray(children).some(function (child) {
7
14
  return _isFlexibleUiTitleBlock(child);
8
15
  })) {
@@ -1,5 +1,6 @@
1
1
  import React, { useCallback, useEffect, useMemo } from 'react';
2
2
  import { useAnalyticsEvents as useAnalyticsEventsNext } from '@atlaskit/analytics-next';
3
+ import { fg } from '@atlaskit/platform-feature-flags';
3
4
  import { useAnalyticsEvents } from '../../common/analytics/generated/use-analytics-events';
4
5
  import { CardDisplay } from '../../constants';
5
6
  import { useSmartLink } from '../../state';
@@ -57,8 +58,8 @@ function Component(_ref) {
57
58
  var resourceType = getResourceType(state.details);
58
59
  var services = getServices(state.details);
59
60
  var isFlexibleUi = useMemo(function () {
60
- return isFlexibleUiCard(children);
61
- }, [children]);
61
+ return isFlexibleUiCard(children, fg('platform-linking-flexible-card-openness') ? ui : undefined);
62
+ }, [children, ui]);
62
63
  var actionOptions = combineActionOptions({
63
64
  actionOptions: actionOptionsProp,
64
65
  platform: platform
@@ -262,7 +263,7 @@ function Component(_ref) {
262
263
  }
263
264
  }
264
265
  export var CardWithUrlContent = function CardWithUrlContent(props) {
265
- var display = isFlexibleUiCard(props.children) ? CardDisplay.Flexible : props.appearance;
266
+ var display = isFlexibleUiCard(props.children, fg('platform-linking-flexible-card-openness') ? props === null || props === void 0 ? void 0 : props.ui : undefined) ? CardDisplay.Flexible : props.appearance;
266
267
  return /*#__PURE__*/React.createElement(SmartLinkModalProvider, null, /*#__PURE__*/React.createElement(SmartLinkAnalyticsContext, {
267
268
  url: props.url,
268
269
  id: props.id,
@@ -6,6 +6,7 @@ import React, { lazy, Suspense, useCallback, useEffect, useState } from 'react';
6
6
  import { ErrorBoundary } from 'react-error-boundary';
7
7
  import { di } from 'react-magnetic-di';
8
8
  import uuid from 'uuid';
9
+ import { fg } from '@atlaskit/platform-feature-flags';
9
10
  import { useAnalyticsEvents } from '../../common/analytics/generated/use-analytics-events';
10
11
  import { failUfoExperience, startUfoExperience } from '../../state/analytics';
11
12
  import { importWithRetry } from '../../utils';
@@ -58,7 +59,7 @@ export function CardWithURLRenderer(props) {
58
59
  removeTextHighlightingFromTitle = props.removeTextHighlightingFromTitle,
59
60
  resolvingPlaceholder = props.resolvingPlaceholder,
60
61
  truncateInline = props.truncateInline;
61
- var isFlexibleUi = isFlexibleUiCard(children);
62
+ var isFlexibleUi = isFlexibleUiCard(children, fg('platform-linking-flexible-card-openness') ? ui : undefined);
62
63
  var analyticsContext = useSmartLinkAnalyticsContext({
63
64
  display: isFlexibleUi ? 'flexible' : appearance,
64
65
  id: id,
@@ -39,7 +39,7 @@ export var getChildrenOptions = function getChildrenOptions(children, context) {
39
39
  }
40
40
  return options;
41
41
  };
42
- var renderChildren = function renderChildren(children, containerSize, containerTheme, status, retry, onClick) {
42
+ var renderChildren = function renderChildren(children, containerSize, containerTheme, status, retry, onClick, removeBlockRestriction) {
43
43
  return React.Children.map(children, function (child) {
44
44
  if ( /*#__PURE__*/React.isValidElement(child) && isFlexibleUiBlock(child)) {
45
45
  if (isFlexibleUiTitleBlock(child)) {
@@ -76,6 +76,11 @@ var renderChildren = function renderChildren(children, containerSize, containerT
76
76
  status: status
77
77
  });
78
78
  }
79
+ if (fg('platform-linking-flexible-card-openness')) {
80
+ if (removeBlockRestriction) {
81
+ return child;
82
+ }
83
+ }
79
84
  });
80
85
  };
81
86
  var updateChildrenBlock = function updateChildrenBlock(node, size, status) {
@@ -301,6 +306,8 @@ var Container = function Container(_ref5) {
301
306
  showHoverPreview = _ref5$showHoverPrevie === void 0 ? false : _ref5$showHoverPrevie,
302
307
  hoverPreviewOptions = _ref5.hoverPreviewOptions,
303
308
  actionOptions = _ref5.actionOptions,
309
+ _ref5$removeBlockRest = _ref5.removeBlockRestriction,
310
+ removeBlockRestriction = _ref5$removeBlockRest === void 0 ? false : _ref5$removeBlockRest,
304
311
  _ref5$size = _ref5.size,
305
312
  size = _ref5$size === void 0 ? SmartLinkSize.Medium : _ref5$size,
306
313
  status = _ref5.status,
@@ -329,7 +336,7 @@ var Container = function Container(_ref5) {
329
336
  "--_12k13bg": ix(previewOnRight ? gap : padding),
330
337
  "--_18x9sjc": ix("1px solid ".concat("var(--ds-border, #091E4224)"))
331
338
  }
332
- }, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick)) : /*#__PURE__*/React.createElement("div", {
339
+ }, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick, removeBlockRestriction)) : /*#__PURE__*/React.createElement("div", {
333
340
  "data-smart-link-container": true,
334
341
  "data-testid": testId,
335
342
  className: ax(["_1e0c1txw _2lx21bp4 _1ul9idpf _1reo15vq _kqswh2mm _1pcmkb7n _1v7y1i6y _ufn21i6y", gapStyleMapOld[size], !hideBackground && "_bfhkhp5a", "_1yt418y6 _jb7v18y6 _y5vk167t _1yob1wow _r37x1r5k", previewOnLeft && previewOnLeftStyleMapOld[size], previewOnRight && previewOnRightStyleMapOld[size], !hideElevation && "_19itn8v0 _2rkopd34 _19pkv77o _2hwxv77o _otyrv77o _18u0v77o", clickableContainer && "_nqwih2mm _18ywh2mm _1nq3h2mm _1t4ckb7n _1nxdkb7n _xnbykb7n"]),
@@ -339,7 +346,7 @@ var Container = function Container(_ref5) {
339
346
  "--_12k13bg": ix(previewOnRight ? gap : padding),
340
347
  "--_vzvmm2": ix("1px solid ".concat("var(--ds-border, ".concat(N40, ")")))
341
348
  }
342
- }, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick));
349
+ }, clickableContainer ? getLayeredLink(testId, context, children, onClick) : null, renderChildren(children, size, theme, status, retry, onClick, removeBlockRestriction));
343
350
  if (context !== null && context !== void 0 && context.url && (canShowHoverPreview || canShowAuthTooltip)) {
344
351
  return /*#__PURE__*/React.createElement(HoverCardControl, {
345
352
  isHoverPreview: canShowHoverPreview,
@@ -0,0 +1,123 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ /**
3
+ * This file contains export components and API for FlexibleCard components.
4
+ * For internal usage for access to all available props, please use following
5
+ * - ./components/elements for metadata component
6
+ * - ./components/actions for action component
7
+ *
8
+ * DO NOT add a new prop to these components until we are ready to support it externally.
9
+ */
10
+ import React from 'react';
11
+ import { AssignedTo, AssignedToGroup, AttachmentCount, AuthorGroup, ChecklistProgress, CollaboratorGroup, CommentCount, CreatedBy, CreatedOn, DueOn, LatestCommit, LinkIcon, Location, ModifiedBy, ModifiedOn, OwnedBy, OwnedByGroup, Preview, Priority, ProgrammingLanguage, Provider, ReactCount, ReadTime, SentOn, Snippet, SourceBranch, State, StoryPoints, SubscriberCount, SubTasksProgress, TargetBranch, Title, ViewCount, VoteCount } from './components/elements';
12
+ // ---- EXPORTED METADATA COMPONENT ---- //
13
+ export var AssignedToElement = function AssignedToElement() {
14
+ return /*#__PURE__*/React.createElement(AssignedTo, null);
15
+ };
16
+ export var AssignedToGroupElement = function AssignedToGroupElement() {
17
+ return /*#__PURE__*/React.createElement(AssignedToGroup, null);
18
+ };
19
+ export var AttachmentCountElement = function AttachmentCountElement() {
20
+ return /*#__PURE__*/React.createElement(AttachmentCount, null);
21
+ };
22
+ export var AuthorGroupElement = function AuthorGroupElement() {
23
+ return /*#__PURE__*/React.createElement(AuthorGroup, null);
24
+ };
25
+ export var ChecklistProgressElement = function ChecklistProgressElement() {
26
+ return /*#__PURE__*/React.createElement(ChecklistProgress, null);
27
+ };
28
+ export var CollaboratorGroupElement = function CollaboratorGroupElement() {
29
+ return /*#__PURE__*/React.createElement(CollaboratorGroup, null);
30
+ };
31
+ export var CommentCountElement = function CommentCountElement() {
32
+ return /*#__PURE__*/React.createElement(CommentCount, null);
33
+ };
34
+ export var CreatedOnElement = function CreatedOnElement() {
35
+ return /*#__PURE__*/React.createElement(CreatedOn, null);
36
+ };
37
+ export var CreatedByElement = function CreatedByElement() {
38
+ return /*#__PURE__*/React.createElement(CreatedBy, null);
39
+ };
40
+ export var DueOnElement = function DueOnElement() {
41
+ return /*#__PURE__*/React.createElement(DueOn, null);
42
+ };
43
+ export var LatestCommitElement = function LatestCommitElement() {
44
+ return /*#__PURE__*/React.createElement(LatestCommit, null);
45
+ };
46
+ export var LinkIconElement = function LinkIconElement() {
47
+ return /*#__PURE__*/React.createElement(LinkIcon, null);
48
+ };
49
+ export var LocationElement = function LocationElement() {
50
+ return /*#__PURE__*/React.createElement(Location, null);
51
+ };
52
+ export var ModifiedByElement = function ModifiedByElement() {
53
+ return /*#__PURE__*/React.createElement(ModifiedBy, null);
54
+ };
55
+ export var ModifiedOnElement = function ModifiedOnElement() {
56
+ return /*#__PURE__*/React.createElement(ModifiedOn, null);
57
+ };
58
+ export var OwnedByElement = function OwnedByElement() {
59
+ return /*#__PURE__*/React.createElement(OwnedBy, null);
60
+ };
61
+ export var OwnedByGroupElement = function OwnedByGroupElement() {
62
+ return /*#__PURE__*/React.createElement(OwnedByGroup, null);
63
+ };
64
+ export var PreviewElement = function PreviewElement() {
65
+ return /*#__PURE__*/React.createElement(Preview, null);
66
+ };
67
+ export var PriorityElement = function PriorityElement() {
68
+ return /*#__PURE__*/React.createElement(Priority, null);
69
+ };
70
+ export var ProgrammingLanguageElement = function ProgrammingLanguageElement() {
71
+ return /*#__PURE__*/React.createElement(ProgrammingLanguage, null);
72
+ };
73
+ export var ProviderElement = function ProviderElement() {
74
+ return /*#__PURE__*/React.createElement(Provider, null);
75
+ };
76
+ export var ReactCountElement = function ReactCountElement() {
77
+ return /*#__PURE__*/React.createElement(ReactCount, null);
78
+ };
79
+ export var ReadTimeElement = function ReadTimeElement() {
80
+ return /*#__PURE__*/React.createElement(ReadTime, null);
81
+ };
82
+ export var SentOnElement = function SentOnElement() {
83
+ return /*#__PURE__*/React.createElement(SentOn, null);
84
+ };
85
+ export var SnippetElement = function SnippetElement(props) {
86
+ return /*#__PURE__*/React.createElement(Snippet, {
87
+ maxLines: props.maxLines,
88
+ content: props.text
89
+ });
90
+ };
91
+ export var SourceBranchElement = function SourceBranchElement() {
92
+ return /*#__PURE__*/React.createElement(SourceBranch, null);
93
+ };
94
+ export var StateElement = function StateElement() {
95
+ return /*#__PURE__*/React.createElement(State, null);
96
+ };
97
+ export var StoryPointsElement = function StoryPointsElement() {
98
+ return /*#__PURE__*/React.createElement(StoryPoints, null);
99
+ };
100
+ export var SubscriberCountElement = function SubscriberCountElement() {
101
+ return /*#__PURE__*/React.createElement(SubscriberCount, null);
102
+ };
103
+ export var SubTasksProgressElement = function SubTasksProgressElement() {
104
+ return /*#__PURE__*/React.createElement(SubTasksProgress, null);
105
+ };
106
+ export var TargetBranchElement = function TargetBranchElement() {
107
+ return /*#__PURE__*/React.createElement(TargetBranch, null);
108
+ };
109
+ export var TitleElement = function TitleElement(props) {
110
+ return /*#__PURE__*/React.createElement(Title, _extends({
111
+ hideTooltip: props === null || props === void 0 ? void 0 : props.hideTooltip,
112
+ maxLines: props === null || props === void 0 ? void 0 : props.maxLines,
113
+ target: props === null || props === void 0 ? void 0 : props.target
114
+ }, props !== null && props !== void 0 && props.text ? {
115
+ text: props === null || props === void 0 ? void 0 : props.text
116
+ } : undefined));
117
+ };
118
+ export var ViewCountElement = function ViewCountElement() {
119
+ return /*#__PURE__*/React.createElement(ViewCount, null);
120
+ };
121
+ export var VoteCountElement = function VoteCountElement() {
122
+ return /*#__PURE__*/React.createElement(VoteCount, null);
123
+ };
@@ -13,7 +13,7 @@ import LinkWarningModal from './LinkWarningModal';
13
13
  import { useLinkWarningModal } from './LinkWarningModal/hooks/use-link-warning-modal';
14
14
  var PACKAGE_DATA = {
15
15
  packageName: "@atlaskit/smart-card",
16
- packageVersion: "36.5.0",
16
+ packageVersion: "36.6.0",
17
17
  componentName: 'linkUrl'
18
18
  };
19
19
  var Anchor = withLinkClickedEvent('a');
@@ -1,10 +1,9 @@
1
1
 
2
2
  ._11c81o8v{font:var(--ds-font-body-small,normal 400 11px/1pc ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
3
3
  ._zulputpp{gap:var(--ds-space-150,9pt)}
4
- ._18zrpxbi{padding-inline:var(--ds-space-200,1pc)}
5
- ._195gmgjw{margin-inline:var(--ds-space-negative-200,-1pc)}
6
- ._1kl71vrj{border-left:2px solid transparent}
7
- ._1kl7nmxp{border-left:var(--_nu2mv8)}
4
+ ._18zr1ejb{padding-inline:var(--ds-space-300,24px)}
5
+ ._195g10v4{margin-inline:var(--ds-space-negative-300,-24px)}
6
+ ._16qsd1ld{box-shadow:var(--_g94mg3)}
8
7
  ._bfhkfg4m{background-color:var(--ds-background-selected,#e9f2ff)}
9
8
  ._ca0qu2gc{padding-top:var(--ds-space-100,8px)}
10
9
  ._n3tdu2gc{padding-bottom:var(--ds-space-100,8px)}
@@ -14,7 +13,4 @@
14
13
  ._irr31d5g:hover{background-color:var(--ds-background-input-hovered,#f7f8f9)}
15
14
  ._irr3i1yw:hover{background-color:var(--ds-background-selected-hovered,#cce0ff)}
16
15
  ._1di619ru:active{background-color:var(--ds-background-selected-pressed,#85b8ff)}
17
- ._1di61dty:active{background-color:var(--ds-background-neutral-subtle-pressed,#091e4224)}
18
- ._1ohyglyw:active{outline-style:none}
19
- ._1q5t1r31:active{outline-color:currentColor}
20
- ._1r9x1o36:active{outline-width:medium}
16
+ ._1di61dty:active{background-color:var(--ds-background-neutral-subtle-pressed,#091e4224)}
@@ -30,9 +30,9 @@ var RelatedLinkItem = function RelatedLinkItem(_ref) {
30
30
  return /*#__PURE__*/React.createElement("div", {
31
31
  "data-testId": testId,
32
32
  onFocus: onFocus,
33
- className: ax([fg('platform-linking-visual-refresh-v2') && "_195gmgjw _18zrpxbi _1kl71vrj", fg('platform-linking-visual-refresh-v2') ? "_irr3166n _1di61dty" : "_8vu4iti9 _1mxox0bf _10swu2gc _irr31d5g", isSelected && fg('platform-linking-visual-refresh-v2') && "_1kl7nmxp _bfhkfg4m _irr3i1yw _1q5t1r31 _1ohyglyw _1r9x1o36 _1di619ru"]),
33
+ className: ax([fg('platform-linking-visual-refresh-v2') && "_195g10v4 _18zr1ejb", fg('platform-linking-visual-refresh-v2') ? "_irr3166n _1di61dty" : "_8vu4iti9 _1mxox0bf _10swu2gc _irr31d5g", isSelected && fg('platform-linking-visual-refresh-v2') && "_bfhkfg4m _16qsd1ld _irr3i1yw _1di619ru"]),
34
34
  style: {
35
- "--_nu2mv8": ix("2px solid ".concat("var(--ds-border-selected, #0C66E4)"))
35
+ "--_g94mg3": ix("inset 2px 0 0 0 ".concat("var(--ds-border-selected, #0C66E4)"))
36
36
  }
37
37
  }, /*#__PURE__*/React.createElement(Card, {
38
38
  appearance: "block",
@@ -3,11 +3,44 @@ import _extends from "@babel/runtime/helpers/extends";
3
3
  import "./index.compiled.css";
4
4
  import * as React from 'react';
5
5
  import { ax, ix } from "@compiled/react/runtime";
6
+ import { useThemeObserver } from "@atlaskit/tokens";
6
7
  var SIZE = 100;
7
8
  var genericErrorStyles = null;
8
9
  var id = 'related-links-unavailable-svg';
9
10
  export var SpotSearchNoResult = function SpotSearchNoResult(props) {
10
- return /*#__PURE__*/React.createElement("svg", _extends({
11
+ var _useThemeObserver = useThemeObserver(),
12
+ colorMode = _useThemeObserver.colorMode;
13
+ return colorMode === 'dark' ? /*#__PURE__*/React.createElement("svg", _extends({
14
+ "data-testid": id,
15
+ viewBox: "0 0 275 275",
16
+ fill: "none",
17
+ xmlns: "http://www.w3.org/2000/svg"
18
+ }, props, {
19
+ className: ax(["_1bsbwdok _4t3iwdok _1e0c1ule"]),
20
+ style: {
21
+ "--_cjikvn": ix("".concat(SIZE, "px"))
22
+ }
23
+ }), /*#__PURE__*/React.createElement("path", {
24
+ d: "M123.44 191.28C108.24 191.28 93.7 185.56 81.19 174.27C77.54 170.97 74.05 167.18 70.82 163.01C67.55 158.78 64.72 154.39 62.43 149.97C49.09 124.3 53.13 96.9499 73.52 74.9399C76.97 71.2199 80.85 67.6799 85.05 64.4299C89.1 61.2999 93.32 58.5299 97.59 56.2099C123.97 41.8999 151.49 44.8899 173.08 64.3999C176.77 67.7399 180.3 71.5699 183.58 75.7999C186.81 79.9699 189.6 84.2999 191.88 88.6599C205.36 114.45 201.32 141.84 180.8 163.8C177.49 167.35 173.75 170.74 169.69 173.87C165.48 177.12 161.08 179.99 156.62 182.39C145.57 188.33 134.33 191.27 123.44 191.27V191.28ZM130.69 60.9799C122.04 60.9799 113.08 63.3899 104.12 68.2599C100.5 70.2299 96.9 72.5899 93.42 75.2699C89.81 78.0599 86.49 81.0799 83.56 84.2499C67.1 102.02 63.91 123.11 74.58 143.65C76.5 147.34 78.88 151.04 81.66 154.62C84.39 158.15 87.32 161.34 90.38 164.1C107.54 179.6 128.76 181.81 150.14 170.33C153.94 168.29 157.7 165.84 161.31 163.04C164.79 160.35 167.97 157.46 170.79 154.45C187.34 136.74 190.51 115.63 179.74 95.0099C177.84 91.3699 175.48 87.7199 172.75 84.1899C169.97 80.5999 167 77.3599 163.91 74.5699C153.91 65.5399 142.59 60.9799 130.71 60.9799H130.69Z",
25
+ fill: "#4B4D51"
26
+ }), /*#__PURE__*/React.createElement("path", {
27
+ d: "M179.96 171C176.42 166.07 172.62 166.1 168.91 168.97C165.43 171.66 164.5 175.3 168.21 180.09L172.45 185.57L184.2 176.48L179.96 171Z",
28
+ fill: "#4B4D51"
29
+ }), /*#__PURE__*/React.createElement("path", {
30
+ d: "M187.155 174.199L169.513 187.839L202.665 230.717L220.307 217.077L187.155 174.199Z",
31
+ fill: "#4B4D51"
32
+ }), /*#__PURE__*/React.createElement("path", {
33
+ d: "M184.32 176.391L172.35 185.646L183.593 200.186L195.562 190.932L184.32 176.391Z",
34
+ fill: "#7E8188"
35
+ }), /*#__PURE__*/React.createElement("path", {
36
+ d: "M133.191 135.999H123.188V135.365C122.847 128.249 126.886 120.545 132.628 117.392L132.735 117.335C132.891 117.254 133.041 117.16 133.187 117.063C136.32 115.043 138.103 111.565 137.993 107.733C137.884 103.937 135.925 100.598 132.753 98.8051C130.749 97.6711 128.515 97.0723 126.29 97.0723C119.516 97.0723 114.005 102.622 114.005 109.443H104C104 97.0689 113.999 87 126.289 87C130.227 87 134.156 88.0454 137.652 90.0226C143.914 93.5645 147.78 100.077 147.991 107.443C148.204 114.843 144.699 121.603 138.619 125.524C138.21 125.793 137.793 126.041 137.38 126.258C134.995 127.598 132.999 131.723 133.183 134.947L133.191 136V135.999Z",
37
+ fill: "#4B4D51"
38
+ }), /*#__PURE__*/React.createElement("path", {
39
+ fillRule: "evenodd",
40
+ clipRule: "evenodd",
41
+ d: "M127.222 141.775C127.726 141.691 128.277 141.64 128.84 141.64C129.318 141.64 129.859 141.668 130.429 141.765C133.69 142.3 136.342 144.587 136.986 148.149L136.991 148.175L136.996 148.203C137.078 148.699 137.13 149.24 137.13 149.81C137.13 150.377 137.079 150.924 136.992 151.43L136.99 151.44C136.36 155.039 133.666 157.318 130.418 157.847C129.857 157.94 129.334 157.97 128.84 157.97C128.267 157.97 127.732 157.918 127.243 157.839L127.241 157.839C123.977 157.31 121.312 155.027 120.665 151.466L120.659 151.437L120.654 151.408C120.573 150.919 120.52 150.387 120.52 149.81C120.52 149.24 120.572 148.699 120.654 148.203L120.659 148.174L120.665 148.145C121.315 144.567 123.99 142.316 127.219 141.775L127.222 141.775Z",
42
+ fill: "#4B4D51"
43
+ })) : /*#__PURE__*/React.createElement("svg", _extends({
11
44
  "data-testid": id,
12
45
  viewBox: "0 0 275 275",
13
46
  fill: "none",
@@ -10,6 +10,7 @@ export { contentFooterClassName, metadataListClassName, blockCardResolvingViewCl
10
10
  export { loadingPlaceholderClassName } from './view/CardWithUrl/component-lazy/LazyFallback';
11
11
  export { ActionName, ElementName, MediaPlacement, SmartLinkDirection, SmartLinkPosition, SmartLinkSize, SmartLinkTheme, } from './constants';
12
12
  export { MetadataBlock, PreviewBlock, SnippetBlock, TitleBlock, FooterBlock, CustomBlock, } from './view/FlexibleCard/components/blocks';
13
+ export { AssignedToElement, AssignedToGroupElement, AttachmentCountElement, AuthorGroupElement, ChecklistProgressElement, CollaboratorGroupElement, CommentCountElement, CreatedOnElement, CreatedByElement, DueOnElement, LatestCommitElement, LinkIconElement, LocationElement, ModifiedByElement, ModifiedOnElement, OwnedByElement, OwnedByGroupElement, PreviewElement, PriorityElement, ProgrammingLanguageElement, ProviderElement, ReactCountElement, ReadTimeElement, SentOnElement, SnippetElement, SourceBranchElement, StateElement, StoryPointsElement, SubscriberCountElement, SubTasksProgressElement, TargetBranchElement, TitleElement, ViewCountElement, VoteCountElement, } from './view/FlexibleCard/external';
13
14
  export type { ActionItem, ElementItem, OnActionMenuOpenChangeOptions, } from './view/FlexibleCard/components/blocks/types';
14
15
  export type { AnalyticsAction, AnalyticsActionSubject, AnalyticsPayload, AnalyticsHandler, } from './utils/types';
15
16
  /** @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-661 Internal documentation for deprecation (no external access)} */
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- export declare const isFlexibleUiCard: (children?: React.ReactNode) => boolean;
2
+ import { type FlexibleUiOptions } from '../view/FlexibleCard/types';
3
+ export declare const isFlexibleUiCard: (children?: React.ReactNode, ui?: FlexibleUiOptions) => boolean;
3
4
  export declare const isStyleCacheProvider: (node: React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>>) => boolean;
4
5
  export declare const isFlexibleUiBlock: (node: React.ReactNode) => boolean;
5
6
  export declare const isFlexibleUiElement: (node: React.ReactNode) => boolean;