@atlaskit/smart-card 43.31.6 → 43.31.8

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 (117) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/cjs/__tests__/vr-tests/__snapshots__/block-card/block-card-unauthorised-view-better-hovercard-killswitch-enabled--default.png +0 -0
  3. package/dist/cjs/__tests__/vr-tests/__snapshots__/hover-card/hover-card-rovo-chat-action--default.png +0 -0
  4. package/dist/cjs/__tests__/vr-tests/__snapshots__/hover-card/hover-card-unauthorised--default--platform-sl-3p-preauth-better-hovercard-true.png +0 -0
  5. package/dist/cjs/messages.js +14 -39
  6. package/dist/cjs/view/FlexibleCard/components/actions/action/action-stack-item/action-button.compiled.css +5 -0
  7. package/dist/cjs/view/FlexibleCard/components/actions/action/action-stack-item/action-button.js +9 -2
  8. package/dist/cjs/view/FlexibleCard/components/actions/ai-summary-action/ai-summarise-action.js +5 -2
  9. package/dist/cjs/view/FlexibleCard/components/actions/ai-summary-action/ai-summary-action-component.js +5 -1
  10. package/dist/cjs/view/FlexibleCard/components/actions/ai-summary-action/copy-summary-action.js +50 -3
  11. package/dist/cjs/view/FlexibleCard/components/blocks/action-block/index.js +6 -38
  12. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/index.js +14 -33
  13. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +43 -37
  14. package/dist/cjs/view/FlexibleCard/components/blocks/hover-card-footer-block/index.js +1 -1
  15. package/dist/cjs/view/FlexibleCard/components/elements/common/base-icon-element/index.js +43 -5
  16. package/dist/cjs/view/HoverCard/components/ContentContainer.compiled.css +1 -1
  17. package/dist/cjs/view/HoverCard/components/ContentContainer.js +1 -1
  18. package/dist/cjs/view/HoverCard/components/HoverCardContent.js +2 -4
  19. package/dist/cjs/view/HoverCard/components/views/resolved/index.js +4 -8
  20. package/dist/cjs/view/HoverCard/components/views/unauthorised/RovoUnauthorisedView.compiled.css +28 -5
  21. package/dist/cjs/view/HoverCard/components/views/unauthorised/RovoUnauthorisedView.js +75 -53
  22. package/dist/cjs/view/HoverCard/components/views/unauthorised/graphics.js +47 -0
  23. package/dist/es2019/__tests__/vr-tests/__snapshots__/block-card/block-card-unauthorised-view-better-hovercard-killswitch-enabled--default.png +0 -0
  24. package/dist/es2019/__tests__/vr-tests/__snapshots__/hover-card/hover-card-rovo-chat-action--default.png +0 -0
  25. package/dist/es2019/__tests__/vr-tests/__snapshots__/hover-card/hover-card-unauthorised--default--platform-sl-3p-preauth-better-hovercard-true.png +0 -0
  26. package/dist/es2019/messages.js +14 -39
  27. package/dist/es2019/view/FlexibleCard/components/actions/action/action-stack-item/action-button.compiled.css +5 -0
  28. package/dist/es2019/view/FlexibleCard/components/actions/action/action-stack-item/action-button.js +9 -2
  29. package/dist/es2019/view/FlexibleCard/components/actions/ai-summary-action/ai-summarise-action.js +5 -2
  30. package/dist/es2019/view/FlexibleCard/components/actions/ai-summary-action/ai-summary-action-component.js +6 -2
  31. package/dist/es2019/view/FlexibleCard/components/actions/ai-summary-action/copy-summary-action.js +31 -0
  32. package/dist/es2019/view/FlexibleCard/components/blocks/action-block/index.js +6 -34
  33. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/index.js +11 -29
  34. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +44 -38
  35. package/dist/es2019/view/FlexibleCard/components/blocks/hover-card-footer-block/index.js +1 -1
  36. package/dist/es2019/view/FlexibleCard/components/elements/common/base-icon-element/index.js +38 -5
  37. package/dist/es2019/view/HoverCard/components/ContentContainer.compiled.css +1 -1
  38. package/dist/es2019/view/HoverCard/components/ContentContainer.js +1 -1
  39. package/dist/es2019/view/HoverCard/components/HoverCardContent.js +2 -4
  40. package/dist/es2019/view/HoverCard/components/views/resolved/index.js +4 -8
  41. package/dist/es2019/view/HoverCard/components/views/unauthorised/RovoUnauthorisedView.compiled.css +28 -5
  42. package/dist/es2019/view/HoverCard/components/views/unauthorised/RovoUnauthorisedView.js +82 -58
  43. package/dist/es2019/view/HoverCard/components/views/unauthorised/graphics.js +39 -0
  44. package/dist/esm/__tests__/vr-tests/__snapshots__/block-card/block-card-unauthorised-view-better-hovercard-killswitch-enabled--default.png +0 -0
  45. package/dist/esm/__tests__/vr-tests/__snapshots__/hover-card/hover-card-rovo-chat-action--default.png +0 -0
  46. package/dist/esm/__tests__/vr-tests/__snapshots__/hover-card/hover-card-unauthorised--default--platform-sl-3p-preauth-better-hovercard-true.png +0 -0
  47. package/dist/esm/messages.js +14 -39
  48. package/dist/esm/view/FlexibleCard/components/actions/action/action-stack-item/action-button.compiled.css +5 -0
  49. package/dist/esm/view/FlexibleCard/components/actions/action/action-stack-item/action-button.js +9 -2
  50. package/dist/esm/view/FlexibleCard/components/actions/ai-summary-action/ai-summarise-action.js +5 -2
  51. package/dist/esm/view/FlexibleCard/components/actions/ai-summary-action/ai-summary-action-component.js +6 -2
  52. package/dist/esm/view/FlexibleCard/components/actions/ai-summary-action/copy-summary-action.js +47 -1
  53. package/dist/esm/view/FlexibleCard/components/blocks/action-block/index.js +6 -38
  54. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/index.js +13 -32
  55. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +44 -38
  56. package/dist/esm/view/FlexibleCard/components/blocks/hover-card-footer-block/index.js +1 -1
  57. package/dist/esm/view/FlexibleCard/components/elements/common/base-icon-element/index.js +43 -5
  58. package/dist/esm/view/HoverCard/components/ContentContainer.compiled.css +1 -1
  59. package/dist/esm/view/HoverCard/components/ContentContainer.js +1 -1
  60. package/dist/esm/view/HoverCard/components/HoverCardContent.js +2 -4
  61. package/dist/esm/view/HoverCard/components/views/resolved/index.js +4 -8
  62. package/dist/esm/view/HoverCard/components/views/unauthorised/RovoUnauthorisedView.compiled.css +28 -5
  63. package/dist/esm/view/HoverCard/components/views/unauthorised/RovoUnauthorisedView.js +76 -54
  64. package/dist/esm/view/HoverCard/components/views/unauthorised/graphics.js +39 -0
  65. package/dist/types/common/analytics/generated/analytics.types.d.ts +4 -0
  66. package/dist/types/messages.d.ts +1 -1
  67. package/dist/types/state/analytics/useLinkClicked.d.ts +2 -2
  68. package/dist/types/state/hooks/use-invoke/index.d.ts +1 -1
  69. package/dist/types/state/hooks/use-resolve/index.d.ts +1 -1
  70. package/dist/types/state/hooks/use-resolve-hyperlink/index.d.ts +1 -1
  71. package/dist/types/state/hooks/use-resolve-hyperlink/useScheduledRegister.d.ts +1 -1
  72. package/dist/types/utils/analytics/click.d.ts +1 -1
  73. package/dist/types/utils/mocks.d.ts +3 -3
  74. package/dist/types/view/Card/index.d.ts +2 -2
  75. package/dist/types/view/EmbedCard/views/ResolvedView.d.ts +1 -1
  76. package/dist/types/view/EmbedModal/components/embed-content/index.d.ts +1 -1
  77. package/dist/types/view/FlexibleCard/components/actions/ai-summary-action/copy-summary-action.d.ts +3 -0
  78. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/index.d.ts +2 -10
  79. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/types.d.ts +4 -7
  80. package/dist/types/view/FlexibleCard/components/elements/common/base-badge-element/index.d.ts +1 -1
  81. package/dist/types/view/FlexibleCard/components/elements/common/base-lozenge-element/lozenge-action/lozenge-action-items-group/index.d.ts +1 -1
  82. package/dist/types/view/HoverCard/components/views/resolved/index.d.ts +1 -1
  83. package/dist/types/view/HoverCard/components/views/resolved/types.d.ts +0 -1
  84. package/dist/types/view/HoverCard/components/views/unauthorised/graphics.d.ts +3 -0
  85. package/dist/types/view/InlineCard/Frame/styled.d.ts +2 -2
  86. package/dist/types/view/InlineCard/common/action-button/index.d.ts +1 -1
  87. package/dist/types/view/InlineCard/common/rovo-actions-button/index.d.ts +1 -1
  88. package/dist/types/view/RelatedLinksModal/components/EmptyState.d.ts +1 -1
  89. package/dist/types/view/RelatedLinksModal/components/RelatedLinksBaseModal.d.ts +1 -1
  90. package/dist/types/view/RelatedLinksModal/components/related-link-item/index.d.ts +1 -1
  91. package/dist/types-ts4.5/common/analytics/generated/analytics.types.d.ts +4 -0
  92. package/dist/types-ts4.5/messages.d.ts +1 -1
  93. package/dist/types-ts4.5/state/analytics/useLinkClicked.d.ts +2 -2
  94. package/dist/types-ts4.5/state/hooks/use-invoke/index.d.ts +1 -1
  95. package/dist/types-ts4.5/state/hooks/use-resolve/index.d.ts +1 -1
  96. package/dist/types-ts4.5/state/hooks/use-resolve-hyperlink/index.d.ts +1 -1
  97. package/dist/types-ts4.5/state/hooks/use-resolve-hyperlink/useScheduledRegister.d.ts +1 -1
  98. package/dist/types-ts4.5/utils/analytics/click.d.ts +1 -1
  99. package/dist/types-ts4.5/utils/mocks.d.ts +3 -3
  100. package/dist/types-ts4.5/view/Card/index.d.ts +2 -2
  101. package/dist/types-ts4.5/view/EmbedCard/views/ResolvedView.d.ts +1 -1
  102. package/dist/types-ts4.5/view/EmbedModal/components/embed-content/index.d.ts +1 -1
  103. package/dist/types-ts4.5/view/FlexibleCard/components/actions/ai-summary-action/copy-summary-action.d.ts +3 -0
  104. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/index.d.ts +2 -10
  105. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/types.d.ts +4 -7
  106. package/dist/types-ts4.5/view/FlexibleCard/components/elements/common/base-badge-element/index.d.ts +1 -1
  107. package/dist/types-ts4.5/view/FlexibleCard/components/elements/common/base-lozenge-element/lozenge-action/lozenge-action-items-group/index.d.ts +1 -1
  108. package/dist/types-ts4.5/view/HoverCard/components/views/resolved/index.d.ts +1 -1
  109. package/dist/types-ts4.5/view/HoverCard/components/views/resolved/types.d.ts +0 -1
  110. package/dist/types-ts4.5/view/HoverCard/components/views/unauthorised/graphics.d.ts +3 -0
  111. package/dist/types-ts4.5/view/InlineCard/Frame/styled.d.ts +2 -2
  112. package/dist/types-ts4.5/view/InlineCard/common/action-button/index.d.ts +1 -1
  113. package/dist/types-ts4.5/view/InlineCard/common/rovo-actions-button/index.d.ts +1 -1
  114. package/dist/types-ts4.5/view/RelatedLinksModal/components/EmptyState.d.ts +1 -1
  115. package/dist/types-ts4.5/view/RelatedLinksModal/components/RelatedLinksBaseModal.d.ts +1 -1
  116. package/dist/types-ts4.5/view/RelatedLinksModal/components/related-link-item/index.d.ts +1 -1
  117. package/package.json +4 -5
@@ -11,10 +11,11 @@ import AISummaryBlockResolvedView, { RovoSummaryBlockResolvedView } from './reso
11
11
  * @see Block
12
12
  */
13
13
  const AISummaryBlock = ({
14
+ is3PAuthRovoActionsExperimentOn,
14
15
  testId = 'smart-ai-summary-block',
15
16
  ...props
16
17
  }) => {
17
- var _context$actions, _props$size, _cardContext$ui;
18
+ var _context$actions, _props$size2, _cardContext$ui2;
18
19
  const cardContext = useFlexibleCardContext();
19
20
  const context = useFlexibleUiContext();
20
21
  const actionData = context === null || context === void 0 ? void 0 : (_context$actions = context.actions) === null || _context$actions === void 0 ? void 0 : _context$actions[InternalActionName.AISummaryAction];
@@ -24,37 +25,18 @@ const AISummaryBlock = ({
24
25
  if (!(actionData !== null && actionData !== void 0 && actionData.url)) {
25
26
  return null;
26
27
  }
27
- return /*#__PURE__*/React.createElement(AISummaryBlockResolvedView, _extends({}, props, {
28
- size: (_props$size = props.size) !== null && _props$size !== void 0 ? _props$size : cardContext === null || cardContext === void 0 ? void 0 : (_cardContext$ui = cardContext.ui) === null || _cardContext$ui === void 0 ? void 0 : _cardContext$ui.size,
29
- testId: testId,
30
- url: actionData.url
31
- }));
32
- };
33
-
34
- /**
35
- * Represents an AISummaryBlock, designed to summarising link resource
36
- * content using AI.
37
- * @public
38
- * @param {RovoSummaryBlockProps} RovoSummaryBlock
39
- * @see Block
40
- */
41
- export const RovoSummaryBlock = ({
42
- testId = 'smart-ai-summary-block',
43
- url,
44
- ...props
45
- }) => {
46
- var _props$size2, _cardContext$ui2;
47
- const cardContext = useFlexibleCardContext();
48
- if ((cardContext === null || cardContext === void 0 ? void 0 : cardContext.status) !== SmartLinkStatus.Resolved) {
49
- return null;
50
- }
51
- if (!url) {
52
- return null;
28
+ if (is3PAuthRovoActionsExperimentOn) {
29
+ var _props$size, _cardContext$ui;
30
+ return /*#__PURE__*/React.createElement(RovoSummaryBlockResolvedView, _extends({}, props, {
31
+ size: (_props$size = props.size) !== null && _props$size !== void 0 ? _props$size : cardContext === null || cardContext === void 0 ? void 0 : (_cardContext$ui = cardContext.ui) === null || _cardContext$ui === void 0 ? void 0 : _cardContext$ui.size,
32
+ testId: testId,
33
+ url: actionData.url
34
+ }));
53
35
  }
54
- return /*#__PURE__*/React.createElement(RovoSummaryBlockResolvedView, _extends({}, props, {
36
+ return /*#__PURE__*/React.createElement(AISummaryBlockResolvedView, _extends({}, props, {
55
37
  size: (_props$size2 = props.size) !== null && _props$size2 !== void 0 ? _props$size2 : cardContext === null || cardContext === void 0 ? void 0 : (_cardContext$ui2 = cardContext.ui) === null || _cardContext$ui2 === void 0 ? void 0 : _cardContext$ui2.size,
56
38
  testId: testId,
57
- url: url
39
+ url: actionData.url
58
40
  }));
59
41
  };
60
42
  export default AISummaryBlock;
@@ -3,7 +3,7 @@ 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 { Fragment, useEffect, useRef } from 'react';
6
+ import { Fragment, useRef } from 'react';
7
7
  import { FormattedMessage } from 'react-intl-next';
8
8
  import { di } from 'react-magnetic-di';
9
9
  import { RovoIcon } from '@atlaskit/logo';
@@ -65,32 +65,54 @@ export const RovoSummaryBlockResolvedView = props => {
65
65
  const {
66
66
  testId,
67
67
  aiSummaryMinHeight = 0,
68
+ placeholder,
68
69
  url
69
70
  } = props;
70
71
  const {
71
72
  state: {
72
73
  content,
73
74
  status
74
- },
75
- summariseUrl
75
+ }
76
76
  } = useAISummaryAction(url);
77
- const showAISummary = status === 'done' ||
78
- // We want to display the AI Summary component only when there is content available during the loading process.
79
- status === 'loading' && !!content;
80
77
  const isSummarisedOnMountRef = useRef(status === 'done');
81
- useEffect(() => {
82
- if (status !== 'ready' || isSummarisedOnMountRef.current) {
83
- return;
84
- }
85
- isSummarisedOnMountRef.current = true;
86
- summariseUrl();
87
- }, [status, summariseUrl]);
88
78
  const minHeight = isSummarisedOnMountRef.current ? 0 : aiSummaryMinHeight;
89
79
  if (status === 'error') {
90
80
  return null;
91
81
  }
92
- if (!showAISummary) {
93
- return /*#__PURE__*/React.createElement(Inline, {
82
+
83
+ // Show summary when there is content to display
84
+ if (content && content !== '') {
85
+ return /*#__PURE__*/React.createElement(Block, _extends({}, props, {
86
+ direction: SmartLinkDirection.Vertical,
87
+ testId: `${testId}-resolved-view`,
88
+ className: ax(["_1reoewfl _18m9ewfl"])
89
+ }), /*#__PURE__*/React.createElement(Inline, {
90
+ xcss: newStyles.summaryWrapper
91
+ }, /*#__PURE__*/React.createElement("div", {
92
+ className: ax([newStyles.iconWrapper])
93
+ }, /*#__PURE__*/React.createElement(RovoIcon, {
94
+ shouldUseHexLogo: true,
95
+ size: "xxsmall"
96
+ })), status === 'done' && /*#__PURE__*/React.createElement(AIEventSummaryViewed, {
97
+ fromCache: isSummarisedOnMountRef.current
98
+ }), /*#__PURE__*/React.createElement(MotionWrapper, {
99
+ minHeight: minHeight,
100
+ show: true,
101
+ showTransition: !isSummarisedOnMountRef.current
102
+ }, /*#__PURE__*/React.createElement(AISummary, {
103
+ testId: `${testId}-ai-summary`,
104
+ minHeight: minHeight,
105
+ content: content
106
+ }), status === 'done' && /*#__PURE__*/React.createElement(AIFooter, null))));
107
+ }
108
+
109
+ // Show loading state on initial request where content hasn't returned yet.
110
+ if (status === 'loading') {
111
+ return /*#__PURE__*/React.createElement(MotionWrapper, {
112
+ minHeight: minHeight,
113
+ show: true,
114
+ showTransition: true
115
+ }, /*#__PURE__*/React.createElement(Inline, {
94
116
  testId: `${testId}-placeholder`,
95
117
  xcss: newStyles.placeholderWrapper
96
118
  }, /*#__PURE__*/React.createElement("div", {
@@ -105,29 +127,13 @@ export const RovoSummaryBlockResolvedView = props => {
105
127
  xcss: newStyles.ellipsesContainer
106
128
  }, /*#__PURE__*/React.createElement(EllipsesAnimation, {
107
129
  isAnimated: true
108
- })));
130
+ }))));
109
131
  }
110
- return /*#__PURE__*/React.createElement(Block, _extends({}, props, {
111
- direction: SmartLinkDirection.Vertical,
112
- testId: `${testId}-resolved-view`,
113
- className: ax(["_1reoewfl _18m9ewfl"])
114
- }), /*#__PURE__*/React.createElement(Inline, {
115
- xcss: newStyles.summaryWrapper
116
- }, /*#__PURE__*/React.createElement("div", {
117
- className: ax([newStyles.iconWrapper])
118
- }, /*#__PURE__*/React.createElement(RovoIcon, {
119
- shouldUseHexLogo: true,
120
- size: 'xxsmall'
121
- })), status === 'done' && /*#__PURE__*/React.createElement(AIEventSummaryViewed, {
122
- fromCache: isSummarisedOnMountRef.current
123
- }), /*#__PURE__*/React.createElement(MotionWrapper, {
124
- minHeight: minHeight,
125
- show: showAISummary,
126
- showTransition: !isSummarisedOnMountRef.current
127
- }, /*#__PURE__*/React.createElement(AISummary, {
128
- testId: `${testId}-ai-summary`,
129
- minHeight: minHeight,
130
- content: content
131
- }), status === 'done' && /*#__PURE__*/React.createElement(AIFooter, null))));
132
+
133
+ // Otherwise, show placeholder if provided
134
+ if (placeholder) {
135
+ return /*#__PURE__*/React.createElement(Fragment, null, placeholder);
136
+ }
137
+ return null;
132
138
  };
133
139
  export default AISummaryBlockResolvedView;
@@ -14,7 +14,7 @@ import Block from '../block';
14
14
  * Allowed footer actions for HoverCard, in display order. Fetched from context.
15
15
  * @featureGate platform_sl_3p_auth_rovo_action_kill_switch
16
16
  */
17
- const HIDDEN_HOVER_CARD_FOOTER_ACTIONS = [InternalActionName.AISummaryAction, InternalActionName.RovoChatAction];
17
+ const HIDDEN_HOVER_CARD_FOOTER_ACTIONS = [InternalActionName.RovoChatAction];
18
18
  const ignoreContainerMarginStyles = null;
19
19
  const elevatedFooterStyles = null;
20
20
  const providerStyles = null;
@@ -52,6 +52,20 @@ const renderDefaultIcon = (label, testId) => /*#__PURE__*/React.createElement(Li
52
52
  testId: `${testId}-default`,
53
53
  color: "currentColor"
54
54
  });
55
+ const widthFromSize = (size, isTiledIcon) => {
56
+ switch (size) {
57
+ case SmartLinkSize.XLarge:
58
+ return "var(--ds-space-300, 24px)";
59
+ case SmartLinkSize.Large:
60
+ return "var(--ds-space-300, 24px)";
61
+ case SmartLinkSize.Medium:
62
+ return isTiledIcon ? "var(--ds-space-250, 20px)" : "var(--ds-space-200, 16px)";
63
+ case SmartLinkSize.Small:
64
+ return "var(--ds-space-200, 16px)";
65
+ default:
66
+ return "var(--ds-space-200, 16px)";
67
+ }
68
+ };
55
69
  const renderImageIcon = (defaultIcon, url, testId, size = SmartLinkSize.Medium, appearance, hideLoadingSkeleton, label) => {
56
70
  const width = size === SmartLinkSize.Large ? "var(--ds-space-300, 24px)" : "var(--ds-space-200, 16px)";
57
71
  if (url) {
@@ -68,7 +82,22 @@ const renderImageIcon = (defaultIcon, url, testId, size = SmartLinkSize.Medium,
68
82
  }));
69
83
  }
70
84
  };
71
-
85
+ const renderImageIconNew = (defaultIcon, url, testId, size = SmartLinkSize.Medium, appearance, hideLoadingSkeleton, label, isTiledIcon = false) => {
86
+ const width = widthFromSize(size, isTiledIcon);
87
+ if (url) {
88
+ return /*#__PURE__*/React.createElement(ImageIcon, _extends({}, fg('platform_navx_smart_link_icon_label_a11y') ? {
89
+ label
90
+ } : {}, {
91
+ defaultIcon: defaultIcon,
92
+ testId: testId,
93
+ url: url,
94
+ width: width,
95
+ height: width,
96
+ appearance: appearance,
97
+ hideLoadingSkeleton: hideLoadingSkeleton
98
+ }));
99
+ }
100
+ };
72
101
  /**
73
102
  * A base element that displays an Icon or favicon.
74
103
  * @internal
@@ -93,8 +122,8 @@ const IconElement = ({
93
122
  const label = fg('platform_navx_smart_link_icon_label_a11y') ? labelProp !== null && labelProp !== void 0 ? labelProp : '' : labelProp !== null && labelProp !== void 0 ? labelProp : 'Link';
94
123
  const element = useMemo(() => {
95
124
  const defaultIcon = renderDefaultIcon(label, testId);
96
- return overrideIcon || (render === null || render === void 0 ? void 0 : render()) || renderImageIcon(defaultIcon, url, testId, size, appearance, hideLoadingSkeleton, fg('platform_navx_smart_link_icon_label_a11y') ? label : undefined) || renderAtlaskitIcon(icon, testId, size, fg('platform_navx_smart_link_icon_label_a11y') ? label : undefined) || defaultIcon;
97
- }, [label, testId, overrideIcon, render, url, size, appearance, hideLoadingSkeleton, icon]);
125
+ return overrideIcon || (render === null || render === void 0 ? void 0 : render()) || (fg('platform_sl_3p_preauth_better_hovercard_killswitch') ? renderImageIconNew(defaultIcon, url, testId, size, appearance, hideLoadingSkeleton, fg('platform_navx_smart_link_icon_label_a11y') ? label : undefined, isTiledIcon) : renderImageIcon(defaultIcon, url, testId, size, appearance, hideLoadingSkeleton, fg('platform_navx_smart_link_icon_label_a11y') ? label : undefined)) || renderAtlaskitIcon(icon, testId, size, fg('platform_navx_smart_link_icon_label_a11y') ? label : undefined) || defaultIcon;
126
+ }, [label, testId, overrideIcon, render, url, size, appearance, hideLoadingSkeleton, icon, isTiledIcon]);
98
127
  const width = getIconWidth(size);
99
128
  return /*#__PURE__*/React.createElement("div", {
100
129
  "data-smart-element": name,
@@ -103,11 +132,15 @@ const IconElement = ({
103
132
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
104
133
  ,
105
134
  className: ax([styles.container, positionStyleMap[position], render && customRenderStyleMap[size], className])
106
- }, isTiledIcon && isNewBlockcardUnauthorizedRefreshExperimentEnabled() ? /*#__PURE__*/React.createElement(Tile, {
135
+ }, isTiledIcon && (fg('platform_sl_3p_preauth_better_hovercard_killswitch') || isNewBlockcardUnauthorizedRefreshExperimentEnabled()) ? /*#__PURE__*/React.createElement(Tile, {
107
136
  size: size,
108
- label: label
137
+ hasBorder: true,
138
+ backgroundColor: "white",
139
+ label: label,
140
+ testId: `${testId}-tile`
109
141
  }, element) : /*#__PURE__*/React.createElement(Box, {
110
142
  xcss: styles.iconWrapperStyle,
143
+ testId: `${testId}-box`,
111
144
  style: {
112
145
  width,
113
146
  height: width
@@ -3,7 +3,7 @@
3
3
  ._189eidpf{border-width:0}
4
4
  ._16qs130s{box-shadow:var(--ds-shadow-overlay,0 8px 9pt #1e1f2126,0 0 1px #1e1f214f)}
5
5
  ._1bsb1f23{width:25rem}
6
- ._1bsbiolt{width:22rem}
6
+ ._1bsbtye8{width:20rem}
7
7
  ._9spsglyw .smart-link-loading-placeholder{display:none}
8
8
  ._bfhk1bhr{background-color:var(--ds-surface-overlay,#fff)}
9
9
  ._vchhusvi{box-sizing:border-box}
@@ -33,7 +33,7 @@ const ConnectedAIPrismContainer = ({
33
33
  const resolvedWidthAppearance = widthAppearance !== null && widthAppearance !== void 0 ? widthAppearance : 'default';
34
34
  const container = /*#__PURE__*/React.createElement("div", _extends({
35
35
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
36
- className: ax(["_11q7glyw _189eidpf _vchhusvi", resolvedWidthAppearance === 'slim' ? "_1bsbiolt" : "_1bsb1f23", "_9spsglyw", !isAIEnabled && "_2rko1mok _bfhk1bhr _16qs130s", hoverCardClassName]),
36
+ className: ax(["_11q7glyw _189eidpf _vchhusvi", resolvedWidthAppearance === 'slim' ? "_1bsbtye8" : "_1bsb1f23", "_9spsglyw", !isAIEnabled && "_2rko1mok _bfhk1bhr _16qs130s", hoverCardClassName]),
37
37
  "data-testid": testId
38
38
  }, props), children);
39
39
  return isAIEnabled ? /*#__PURE__*/React.createElement(AIPrism, {
@@ -231,8 +231,7 @@ const HoverCardContent = ({
231
231
  flexibleCardProps: flexibleCardProps,
232
232
  isAISummaryEnabled: isAISummaryEnabled,
233
233
  onActionClick: onActionClick,
234
- titleBlockProps: titleBlockProps,
235
- url: url
234
+ titleBlockProps: titleBlockProps
236
235
  }));
237
236
  }
238
237
  return null;
@@ -284,8 +283,7 @@ const HoverCardContent = ({
284
283
  flexibleCardProps: flexibleCardProps,
285
284
  isAISummaryEnabled: isAISummaryEnabled,
286
285
  onActionClick: onActionClick,
287
- titleBlockProps: titleBlockProps,
288
- url: url
286
+ titleBlockProps: titleBlockProps
289
287
  }));
290
288
  }
291
289
  return null;
@@ -11,7 +11,6 @@ import { succeedUfoExperience } from '../../../../../state/analytics';
11
11
  import useAISummaryAction from '../../../../../state/hooks/use-ai-summary-action';
12
12
  import FlexibleCard from '../../../../FlexibleCard';
13
13
  import { ActionBlock, AIFooterBlock, AISummaryBlock, ResolvedHoverCardFooterBlock, MetadataBlock, SnippetBlock, TitleBlock } from '../../../../FlexibleCard/components/blocks';
14
- import { RovoSummaryBlock } from '../../../../FlexibleCard/components/blocks/ai-summary-block';
15
14
  import { getMetadata } from '../../../utils';
16
15
  import ImagePreview from '../../ImagePreview';
17
16
  const hiddenSnippetStyles = null;
@@ -26,8 +25,7 @@ const HoverCardResolvedView = ({
26
25
  onActionClick,
27
26
  showRovoResolvedView,
28
27
  titleBlockProps,
29
- id,
30
- url
28
+ id
31
29
  }) => {
32
30
  var _cardState$details;
33
31
  const {
@@ -82,12 +80,10 @@ const HoverCardResolvedView = ({
82
80
  secondary: secondary,
83
81
  maxLines: 1,
84
82
  size: SmartLinkSize.Medium
85
- }), is3PAuthRovoActionsExperimentOn ? /*#__PURE__*/React.createElement(RovoSummaryBlock, {
83
+ }), isAISummaryEnabled ? /*#__PURE__*/React.createElement(AISummaryBlock, {
86
84
  aiSummaryMinHeight: aiSummaryMinHeight,
87
- url: url
88
- }) : isAISummaryEnabled ? /*#__PURE__*/React.createElement(AISummaryBlock, {
89
- aiSummaryMinHeight: aiSummaryMinHeight,
90
- placeholder: snippet
85
+ placeholder: snippet,
86
+ is3PAuthRovoActionsExperimentOn: is3PAuthRovoActionsExperimentOn
91
87
  }) : snippet, /*#__PURE__*/React.createElement(SnippetBlock, {
92
88
  testId: "hidden-snippet",
93
89
  onRender: onSnippetRender,
@@ -1,16 +1,39 @@
1
1
 
2
+ ._2rko1mok{border-radius:var(--ds-radius-large,8px)}
3
+ ._zulpu2gc{gap:var(--ds-space-100,8px)}
2
4
  ._zulputpp{gap:var(--ds-space-150,9pt)}._13li1mok{border-top-left-radius:var(--ds-radius-large,8px)}
5
+ ._154i1crf{top:9pt}
6
+ ._154i1ul9{top:30px}
7
+ ._154i1ylp{top:40px}
3
8
  ._19bvpxbi{padding-left:var(--ds-space-200,1pc)}
4
- ._19pkpxbi{margin-top:var(--ds-space-200,1pc)}
9
+ ._19pkutpp{margin-top:var(--ds-space-150,9pt)}
10
+ ._1bah1h6o{justify-content:center}
5
11
  ._1bahesu3{justify-content:flex-end}
12
+ ._1bsb7vkz{width:1pc}
13
+ ._1bsbqslr{width:22px}
14
+ ._1bsbzwfg{width:2pc}
6
15
  ._1e0c1txw{display:flex}
16
+ ._1ltv1v6z{left:7px}
7
17
  ._1n261g80{flex-wrap:wrap}
18
+ ._1o9zidpf{flex-shrink:0}
19
+ ._1xi21v6z{right:7px}
20
+ ._1xi2qslr{right:22px}
8
21
  ._4cvr1h6o{align-items:center}
9
- ._bfhkomb0{background-color:var(--ds-background-brand-bold,#0052cc)}
22
+ ._4t3izwfg{height:2pc}
23
+ ._bfhk11bn{background-color:var(--ds-background-accent-gray-subtlest,#f1f2f4)}
24
+ ._bfhk16e3{background-color:var(--ds-background-accent-blue-bolder,#1868db)}
25
+ ._ca0q1b66{padding-top:var(--ds-space-050,4px)}
26
+ ._ca0q1ejb{padding-top:var(--ds-space-300,24px)}
10
27
  ._ca0qpxbi{padding-top:var(--ds-space-200,1pc)}
11
- ._ca0qutpp{padding-top:var(--ds-space-150,9pt)}
28
+ ._kqswh2mm{position:relative}
29
+ ._kqswstnw{position:absolute}
12
30
  ._n3tdpxbi{padding-bottom:var(--ds-space-200,1pc)}
13
31
  ._n3tdutpp{padding-bottom:var(--ds-space-150,9pt)}
32
+ ._otyrutpp{margin-bottom:var(--ds-space-150,9pt)}
14
33
  ._qrwq1mok{border-top-right-radius:var(--ds-radius-large,8px)}
15
- ._syaz15cr{color:var(--ds-text-inverse,#fff)}
16
- ._u5f3pxbi{padding-right:var(--ds-space-200,1pc)}
34
+ ._syaz1fxt{color:var(--ds-text,#172b4d)}
35
+ ._syaz1yjp{color:var(--ds-icon-success,#22a06b)}
36
+ ._syazuq3u{color:var(--ds-icon-accent-purple,#af59e1)}
37
+ ._syazwejn{color:var(--ds-background-accent-gray-subtlest-hovered,#dddee1)}
38
+ ._u5f3pxbi{padding-right:var(--ds-space-200,1pc)}
39
+ ._y3gn1h6o{text-align:center}
@@ -6,47 +6,45 @@ import { ax, ix } from "@compiled/react/runtime";
6
6
  import { useCallback, useMemo } from 'react';
7
7
  import { FormattedMessage } from 'react-intl-next';
8
8
  import Button from '@atlaskit/button/new';
9
- import { IconTile } from '@atlaskit/icon';
10
- import AiSparkleIcon from '@atlaskit/icon/core/ai-sparkle';
11
- import AppSwitcherIcon from '@atlaskit/icon/core/app-switcher';
12
- import GlobeIcon from '@atlaskit/icon/core/globe';
13
- import SearchIcon from '@atlaskit/icon/core/search';
9
+ import AiGenerativeTextSummaryIcon from '@atlaskit/icon/core/ai-generative-text-summary';
10
+ import CoreLinkIcon from '@atlaskit/icon/core/link';
11
+ import RovoChatIcon from '@atlaskit/icon/core/rovo-chat';
14
12
  import { extractSmartLinkProvider } from '@atlaskit/link-extractors';
13
+ import { AtlassianIcon } from '@atlaskit/logo';
15
14
  import { Box, Inline, Stack, Text } from '@atlaskit/primitives/compiled';
16
15
  import { useAnalyticsEvents } from '../../../../../common/analytics/generated/use-analytics-events';
17
- import { CardDisplay } from '../../../../../constants';
16
+ import { CardDisplay, SmartLinkSize } from '../../../../../constants';
18
17
  import { messages } from '../../../../../messages';
19
18
  import { useSmartCardActions } from '../../../../../state/actions';
19
+ import FlexibleCard from '../../../../FlexibleCard';
20
+ import { LinkIcon } from '../../../../FlexibleCard/components/elements';
21
+ import { DenseSparkle, SparseSparkle, SquiglyArrow } from './graphics';
20
22
  const ROVO_FEATURES = [{
21
- icon: GlobeIcon,
22
- appearance: 'blue',
23
- titleMessage: messages.rovo_unauthorised_feature_document_summaries_title,
24
- descMessage: messages.rovo_unauthorised_feature_document_summaries_desc,
25
- testIdSuffix: 'document-summaries'
23
+ icon: CoreLinkIcon,
24
+ message: messages.rovo_unauthorised_feature_clear_link_names,
25
+ testIdSuffix: 'clear-link-names'
26
26
  }, {
27
- icon: SearchIcon,
28
- appearance: 'purple',
29
- titleMessage: messages.rovo_unauthorised_feature_related_content_title,
30
- descMessage: messages.rovo_unauthorised_feature_related_content_desc,
31
- testIdSuffix: 'related-content'
27
+ icon: AiGenerativeTextSummaryIcon,
28
+ message: messages.rovo_unauthorised_feature_understand_linked_docs,
29
+ testIdSuffix: 'understand-linked-docs'
32
30
  }, {
33
- icon: AiSparkleIcon,
34
- appearance: 'orange',
35
- titleMessage: messages.rovo_unauthorised_feature_smart_suggestions_title,
36
- descMessage: messages.rovo_unauthorised_feature_smart_suggestions_desc,
37
- testIdSuffix: 'smart-suggestions'
38
- }, {
39
- icon: AppSwitcherIcon,
40
- appearance: 'teal',
41
- titleMessage: messages.rovo_unauthorised_feature_cross_reference_title,
42
- descMessage: messages.rovo_unauthorised_feature_cross_reference_desc,
43
- testIdSuffix: 'cross-reference'
31
+ icon: RovoChatIcon,
32
+ message: messages.rovo_unauthorised_feature_go_deeper_smart_suggestions,
33
+ testIdSuffix: 'go-deeper-smart-suggestions'
44
34
  }];
35
+ const sparkleWrapBase = null;
36
+ const sparkleLeftWrap = null;
37
+ const sparkleGreyRightWrap = null;
38
+ const sparkleVioletRightWrap = null;
45
39
  const layoutStyles = {
46
- header: "_bfhkomb0 _syaz15cr _ca0qutpp _u5f3pxbi _n3tdutpp _19bvpxbi _13li1mok _qrwq1mok",
40
+ connectorStroke: "_syaz1fxt _1e0c1txw _1o9zidpf",
41
+ atlassianIconTile: "_2rko1mok _1e0c1txw _4cvr1h6o _1bah1h6o _1bsbzwfg _4t3izwfg _bfhk16e3",
42
+ header: "_bfhk11bn _ca0q1ejb _u5f3pxbi _n3tdutpp _19bvpxbi _13li1mok _qrwq1mok _kqswh2mm",
43
+ headerGraphicRow: "_zulpu2gc _1e0c1txw _4cvr1h6o _1bah1h6o _otyrutpp",
44
+ headerTitle: "_y3gn1h6o",
47
45
  body: "_ca0qpxbi _u5f3pxbi _n3tdpxbi _19bvpxbi",
48
- footer: "_19pkpxbi _ca0qutpp",
49
- footerActions: "_zulputpp _1e0c1txw _4cvr1h6o _1bahesu3 _1n261g80"
46
+ featureIconCell: "_1e0c1txw _4cvr1h6o _1bah1h6o _1o9zidpf _1bsb7vkz",
47
+ footer: "_zulputpp _19pkutpp _ca0q1b66 _1e0c1txw _4cvr1h6o _1bahesu3 _1n261g80"
50
48
  };
51
49
  const RovoUnauthorisedView = ({
52
50
  id = '',
@@ -71,50 +69,76 @@ const RovoUnauthorisedView = ({
71
69
  authorize(CardDisplay.HoverCardPreview);
72
70
  }
73
71
  }, [authorize, fireEvent]);
74
- return /*#__PURE__*/React.createElement(Box, {
75
- testId: testId
76
- }, /*#__PURE__*/React.createElement(Box, {
72
+ const handleDismiss = useCallback(() => {
73
+ if (onDismiss) {
74
+ fireEvent('ui.button.clicked.dismiss', {});
75
+ onDismiss();
76
+ }
77
+ }, [fireEvent, onDismiss]);
78
+ return /*#__PURE__*/React.createElement(FlexibleCard, _extends({}, flexibleCardProps, {
79
+ testId: testId,
80
+ ui: {
81
+ hideElevation: true,
82
+ hideBackground: true,
83
+ removeBlockRestriction: true,
84
+ hidePadding: true
85
+ }
86
+ }), /*#__PURE__*/React.createElement(Box, {
77
87
  xcss: layoutStyles.header
88
+ }, /*#__PURE__*/React.createElement("div", {
89
+ className: ax(["_1o9zidpf _1e0c1txw _kqswstnw", "_syaz1yjp _154i1ul9 _1ltv1v6z"])
90
+ }, /*#__PURE__*/React.createElement(DenseSparkle, null)), /*#__PURE__*/React.createElement("div", {
91
+ className: ax(["_1o9zidpf _1e0c1txw _kqswstnw", "_syazwejn _154i1crf _1xi2qslr"])
92
+ }, /*#__PURE__*/React.createElement(SparseSparkle, null)), /*#__PURE__*/React.createElement("div", {
93
+ className: ax(["_1o9zidpf _1e0c1txw _kqswstnw", "_syazuq3u _1bsbqslr _154i1ylp _1xi21v6z"])
94
+ }, /*#__PURE__*/React.createElement(DenseSparkle, null)), /*#__PURE__*/React.createElement(Box, {
95
+ xcss: layoutStyles.headerGraphicRow
96
+ }, /*#__PURE__*/React.createElement(LinkIcon, {
97
+ size: SmartLinkSize.Medium,
98
+ isTiledIcon: true
99
+ }), /*#__PURE__*/React.createElement(Box, {
100
+ xcss: layoutStyles.connectorStroke
101
+ }, /*#__PURE__*/React.createElement(SquiglyArrow, null)), /*#__PURE__*/React.createElement(Box, {
102
+ xcss: layoutStyles.atlassianIconTile
103
+ }, /*#__PURE__*/React.createElement(AtlassianIcon, {
104
+ appearance: "inverse",
105
+ size: "small"
106
+ }))), /*#__PURE__*/React.createElement(Box, {
107
+ xcss: layoutStyles.headerTitle
78
108
  }, /*#__PURE__*/React.createElement(Text, {
79
109
  weight: "bold",
80
110
  size: "medium",
81
- color: "color.text.inverse"
111
+ color: "color.text"
82
112
  }, providerName ? /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, messages.rovo_unauthorised_title, {
83
113
  values: {
84
114
  context: providerName
85
115
  }
86
- })) : /*#__PURE__*/React.createElement(FormattedMessage, messages.rovo_unauthorised_title_no_provider))), /*#__PURE__*/React.createElement(Box, {
116
+ })) : /*#__PURE__*/React.createElement(FormattedMessage, messages.rovo_unauthorised_title_no_provider)))), /*#__PURE__*/React.createElement(Box, {
87
117
  xcss: layoutStyles.body
88
118
  }, /*#__PURE__*/React.createElement(Stack, {
89
119
  space: "space.050"
90
120
  }, /*#__PURE__*/React.createElement(Stack, {
91
121
  space: "space.200"
92
- }, ROVO_FEATURES.map(feature => /*#__PURE__*/React.createElement(Inline, {
93
- key: feature.testIdSuffix,
94
- space: "space.100",
95
- alignBlock: "center",
96
- testId: `${testId}-feature-row-${feature.testIdSuffix}`
97
- }, /*#__PURE__*/React.createElement(IconTile, {
98
- icon: feature.icon,
99
- label: '',
100
- appearance: feature.appearance,
101
- size: "medium",
102
- testId: `${testId}-feature-${feature.testIdSuffix}`
103
- }), /*#__PURE__*/React.createElement(Stack, {
104
- space: "space.025"
105
- }, /*#__PURE__*/React.createElement(Text, {
106
- size: "small",
107
- weight: "bold"
108
- }, /*#__PURE__*/React.createElement(FormattedMessage, feature.titleMessage)), /*#__PURE__*/React.createElement(Text, {
109
- size: "small",
110
- color: "color.text.subtlest"
111
- }, /*#__PURE__*/React.createElement(FormattedMessage, feature.descMessage)))))), /*#__PURE__*/React.createElement(Box, {
122
+ }, ROVO_FEATURES.map(feature => {
123
+ const FeatureIcon = feature.icon;
124
+ return /*#__PURE__*/React.createElement(Inline, {
125
+ key: feature.testIdSuffix,
126
+ space: "space.150",
127
+ alignBlock: "center",
128
+ testId: `${testId}-feature-${feature.testIdSuffix}`
129
+ }, /*#__PURE__*/React.createElement(Box, {
130
+ xcss: layoutStyles.featureIconCell
131
+ }, /*#__PURE__*/React.createElement(FeatureIcon, {
132
+ label: ""
133
+ })), /*#__PURE__*/React.createElement(Text, null, /*#__PURE__*/React.createElement(FormattedMessage, feature.message)));
134
+ })), /*#__PURE__*/React.createElement(Box, {
112
135
  xcss: layoutStyles.footer
113
- }, /*#__PURE__*/React.createElement(Box, {
114
- xcss: layoutStyles.footerActions
136
+ }, /*#__PURE__*/React.createElement(Inline, {
137
+ space: "space.050"
115
138
  }, /*#__PURE__*/React.createElement(Button, {
116
139
  appearance: "subtle",
117
- onClick: onDismiss,
140
+ spacing: "compact",
141
+ onClick: handleDismiss,
118
142
  testId: `${testId}-not-now`
119
143
  }, /*#__PURE__*/React.createElement(FormattedMessage, messages.rovo_unauthorised_not_now)), /*#__PURE__*/React.createElement(Button, {
120
144
  appearance: "primary",
@@ -0,0 +1,39 @@
1
+ /* graphics.tsx generated by @compiled/babel-plugin v0.39.1 */
2
+ import * as React from 'react';
3
+ import { ax, ix } from "@compiled/react/runtime";
4
+ export const DenseSparkle = () => {
5
+ return /*#__PURE__*/React.createElement("svg", {
6
+ width: "33",
7
+ height: "33",
8
+ viewBox: "0 0 33 33",
9
+ fill: "none",
10
+ xmlns: "http://www.w3.org/2000/svg"
11
+ }, /*#__PURE__*/React.createElement("path", {
12
+ fill: "currentColor",
13
+ d: "M 18.1377,8.5584 C 19.820521,9.7606431 19.569624,7.0234324 19.891314,6.0724492 20.627318,4.4834923 20.654624,2.6485663 20.986387,0.9358225 20.985763,-0.63106096 19.153938,0.29529924 19.30907,1.4628594 18.581402,3.0380165 18.941526,4.9281736 18.3064,6.59809 18.189624,7.241971 17.98497,7.9130416 18.1377,8.5584 Z M 14.048,8.62872 C 16.108587,8.8291383 14.519035,6.5848441 14.323941,5.6001158 14.16595,3.856369 13.270155,2.254813 12.701225,0.60606587 11.918719,-0.74933808 10.791962,0.96396467 11.513059,1.8973545 11.672048,3.6244988 12.925689,5.0825474 13.2127,6.8456 13.436435,7.4621245 13.581302,8.1376081 14.048,8.62872 Z M 10.5438,10.7324 C 12.427639,9.875884 9.9317744,8.7259408 9.2689606,7.9718267 8.2625,6.5396335 6.6886891,5.5966404 5.36875,4.4566662 4.0131223,3.6745583 3.8966957,5.7235932 4.9866023,6.1718516 5.9867147,7.5895644 7.8032328,8.2251817 8.93219,9.61022 9.4294433,10.031063 9.9148481,10.555839 10.5438,10.7324 Z M 8.55828,14.3099 C 9.7604964,12.627122 7.023384,12.877794 6.0723265,12.556262 4.4833477,11.820331 2.6484558,11.792914 0.93570025,11.461212 c -1.5668845,6.26e-4 -0.64052126,1.832452 0.52703915,1.677318 1.5751539,0.727694 3.4653396,0.36738 5.1352306,1.00267 0.6438861,0.116827 1.314933,0.321333 1.96031,0.1687 z m 0.07008,4.0894 C 8.828733,16.338698 6.5844599,17.928323 5.5997508,18.123433 3.8560002,18.281408 2.2543901,19.1771 0.60569938,19.746162 -0.74955704,20.529217 0.96332374,21.653982 1.8969889,20.93548 3.6240071,20.774217 5.0821994,19.522267 6.84523,19.2346 7.4618123,19.010984 8.1372369,18.866007 8.62836,18.3993 Z m 2.10414,3.5072 C 9.8760472,20.022637 8.7260556,22.518484 7.9719398,23.181273 6.5393153,24.18655 5.6000777,25.76278 4.4595963,27.081513 3.6775168,28.437135 5.7265095,28.553572 6.1747816,27.463666 7.5925047,26.463552 8.2280912,24.647029 9.61315,23.5181 c 0.418283,-0.497326 0.951352,-0.985318 1.11935,-1.6116 z m 3.5775,1.9828 c -1.682815,-1.202255 -1.431924,1.534991 -1.753614,2.485976 -0.736023,1.588942 -0.763314,3.423872 -1.095073,5.136612 6.39e-4,1.566887 1.832425,0.640518 1.677317,-0.527032 0.727655,-1.57517 0.367555,-3.465328 1.00267,-5.135256 0.116772,-0.64388 0.321426,-1.314917 0.1687,-1.9603 z m 4.0891,-0.0702 c -2.060649,-0.200406 -0.470945,2.043891 -0.275873,3.028605 0.157937,1.743716 1.053669,3.345319 1.622686,4.994007 0.782496,1.355437 1.909207,-0.357878 1.188142,-1.291274 C 20.77504,28.823312 19.521385,27.365256 19.2344,25.6022 19.010647,24.985692 18.865809,24.310193 18.3991,23.8191 Z m 3.5074,-2.1038 c -1.88386,0.856461 0.611976,2.006423 1.274773,2.760542 1.006466,1.432207 2.580314,2.375182 3.90024,3.515183 1.355682,0.782012 1.472001,-1.26689 0.382153,-1.715209 C 26.463526,24.858147 24.647022,24.222555 23.5181,22.8375 23.02082,22.416678 22.53553,21.891757 21.9065,21.7153 Z m 1.9826,-3.5775 c -1.202233,1.682763 1.53485,1.432123 2.485905,1.753638 1.588978,0.735928 3.423859,0.763338 5.136608,1.095049 1.566893,-5.94e-4 0.640594,-1.832443 -0.527,-1.677317 C 29.409454,18.581486 27.519286,18.941792 25.8494,18.3065 25.205557,18.189667 24.534178,17.985164 23.8891,18.1378 Z m -0.0704,-4.0894 c -0.200405,2.06064 2.043899,0.470968 3.028605,0.275867 1.743759,-0.15797 3.345359,-1.053678 4.994083,-1.622679 1.355308,-0.782551 -0.357965,-1.909199 -1.29135,-1.188185 -1.727151,0.159054 -3.185218,1.412574 -4.948238,1.699697 -0.616574,0.223619 -1.291971,0.368616 -1.7831,0.8353 z M 21.7152,10.544 c 0.85645,1.88385 2.006449,-0.6119565 2.760542,-1.2747918 1.432624,-1.0052563 2.371905,-2.581444 3.512333,-3.9002107 C 28.770204,4.0133778 26.721159,3.8969258 26.272916,4.986848 24.855171,5.9869493 24.21954,7.8034667 22.8345,8.93243 22.416234,9.4297408 21.883198,9.917751 21.7152,10.544 Z"
14
+ }));
15
+ };
16
+ export const SparseSparkle = () => {
17
+ return /*#__PURE__*/React.createElement("svg", {
18
+ width: "35",
19
+ height: "34",
20
+ viewBox: "0 0 35 34",
21
+ fill: "none",
22
+ xmlns: "http://www.w3.org/2000/svg"
23
+ }, /*#__PURE__*/React.createElement("path", {
24
+ fill: "currentColor",
25
+ d: "m 21.4614,9.02651 c 1.774882,1.267966 1.510442,-1.6188099 1.849578,-2.6219063 0.776223,-1.6758612 0.805105,-3.61111 1.154947,-5.41753458 C 24.447185,-0.68027653 22.513317,0.28790594 22.69688,1.5429258 21.929419,3.2042498 22.309243,5.1977402 21.6394,6.95899 21.51609,7.6380728 21.300546,8.3458903 21.4614,9.02651 Z m -9.1629,0.611 C 14.479174,9.6115402 12.55696,7.4386694 12.239238,6.4296801 11.873994,4.6211661 10.751762,3.0453042 9.9684287,1.3818975 9.0519692,0.02745097 7.9717763,1.9817201 8.8672911,2.872095 9.2298246,4.664959 10.714117,6.0484595 11.2158,7.86365 c 0.30309,0.6222222 0.536236,1.3131609 1.0827,1.77386 z M 9.02651,14.4282 c 1.267976,-1.774848 -1.6188386,-1.510386 -2.6219063,-1.849578 -1.6758612,-0.776223 -3.61111,-0.805105 -5.41753458,-1.154947 -1.66734565,0.01874 -0.69916318,1.952608 0.55585668,1.769045 1.661324,0.767461 3.6548144,0.387637 5.4160642,1.05748 0.6790828,0.12331 1.3869003,0.338854 2.06752,0.178 z m 0.79812,7.0123 C 9.6506342,19.264889 7.6156756,21.33182 6.6290172,21.715218 4.8462675,22.200193 3.3480398,23.427583 1.7425513,24.327425 0.48184315,25.389439 2.4687817,26.243895 3.3047292,25.323131 5.0679233,24.838194 6.3485808,23.265036 8.1279,22.6448 8.727623,22.296964 9.4030508,22.019757 9.82463,21.4405 Z m 4.60367,2.4235 c -1.774857,-1.267999 -1.510322,1.618845 -1.849554,2.621865 -0.776222,1.675869 -0.805026,3.611122 -1.154946,5.417535 0.01882,1.667361 1.952587,0.699167 1.769034,-0.555848 0.767463,-1.661311 0.387597,-3.654815 1.057466,-5.416052 0.123252,-0.679055 0.338956,-1.387036 0.178,-2.0675 z m 5.9772,0.261 c -2.173333,-0.211383 -0.496768,2.155705 -0.291021,3.19429 0.166568,1.839106 1.111399,3.528228 1.711458,5.267122 0.84816,1.433261 2.042749,-0.366933 1.253122,-1.36187 C 22.911487,29.402909 21.589251,27.865123 21.2864,26.0057 21.05053,25.355401 20.897759,24.642984 20.4055,24.125 Z m 4.3514,-4.2566 c -1.918413,1.03763 0.793683,2.065164 1.542216,2.81224 1.163691,1.434148 2.891651,2.307238 4.359284,3.41661 1.503797,0.716781 1.491809,-1.445265 0.281572,-1.83218 C 29.783911,22.847779 27.827538,22.311391 26.5397,20.9362 25.981077,20.526301 25.453402,20.026312 24.7569,19.8684 Z m 0.2667,-6.5645 c -0.61356,2.094147 2.024993,0.892339 3.082584,0.881972 1.837741,0.184903 3.674321,-0.429733 5.494903,-0.694759 1.566146,-0.568664 0.02093,-2.078292 -1.105917,-1.48934 -1.8201,-0.172658 -3.577509,0.836398 -5.46037,0.783027 -0.682737,0.109486 -1.416687,0.125746 -2.0112,0.5191 z"
26
+ }));
27
+ };
28
+ export const SquiglyArrow = () => {
29
+ return /*#__PURE__*/React.createElement("svg", {
30
+ width: "31",
31
+ height: "21",
32
+ viewBox: "0 0 31 21",
33
+ fill: "none",
34
+ xmlns: "http://www.w3.org/2000/svg"
35
+ }, /*#__PURE__*/React.createElement("path", {
36
+ fill: "currentColor",
37
+ d: "M 21.853446,0.12040609 C 20.167706,1.2017532 24.715673,2.4997309 25.755055,3.0673371 25.02723,3.2209011 21.984019,3.856737 20.991485,3.9633568 16.045179,5.5890307 11.446918,7.8287185 9.1072914,12.742806 7.8983204,12.284216 5.7117383,11.960731 4.1643839,12.645906 2.2323901,13.501397 0.58356937,15.13985 0.06015349,17.184987 0.06666279,19.997869 1.7741124,16.035826 2.7542112,15.14763 c 1.6305676,-1.477671 4.7339707,-2.002323 5.8717147,-1.083896 -0.6742412,2.17406 -0.7914961,6.013849 1.8803011,6.750565 2.072285,0.571408 3.768061,-1.977378 2.786707,-4.245231 C 12.524186,14.792533 11.187386,13.937797 10.469825,13.425746 12.484573,8.4842061 19.328854,5.5947574 24.21859,4.6647774 25.288915,4.5397793 29.069777,3.0700705 27.388804,4.826459 26.472831,6.3589647 23.793814,8.1658647 23.628028,9.0737265 23.1618,11.626835 26.092344,8.4605266 26.699318,7.7349157 27.826169,6.2825775 29.856947,4.4211835 30.479445,3.5562506 28.766042,2.8991905 26.575439,1.3555612 24.569756,0.89998649 23.662177,0.65006782 22.790889,0.24992986 21.853446,0.12040609 Z M 9.9983561,14.652336 C 11.498101,15.3957 13.411213,18.565161 11.127761,19.347839 9.1996093,18.911365 9.5916528,16.22149 9.9983561,14.652336 Z"
38
+ }));
39
+ };