@atlaskit/smart-card 43.26.0 → 43.26.2

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 (78) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/__tests__/vr-tests/__snapshots__/hover-card/hover-card-rovo-chat-action--default.png +2 -2
  3. package/dist/cjs/extractors/flexible/actions/extract-rovo-chat-action.js +12 -8
  4. package/dist/cjs/extractors/flexible/actions/index.js +2 -1
  5. package/dist/cjs/extractors/flexible/index.js +3 -1
  6. package/dist/cjs/messages.js +55 -0
  7. package/dist/cjs/utils/analytics/analytics.js +1 -1
  8. package/dist/cjs/view/FlexibleCard/assets/ai-chapter-icon.compiled.css +4 -0
  9. package/dist/cjs/view/FlexibleCard/assets/ai-chapter-icon.js +51 -0
  10. package/dist/cjs/view/FlexibleCard/assets/ai-edit-icon.compiled.css +4 -0
  11. package/dist/cjs/view/FlexibleCard/assets/ai-edit-icon.js +74 -0
  12. package/dist/cjs/view/FlexibleCard/assets/ai-search-icon.compiled.css +4 -0
  13. package/dist/cjs/view/FlexibleCard/assets/ai-search-icon.js +66 -0
  14. package/dist/cjs/view/FlexibleCard/components/actions/rovo-chat-action/index.js +89 -47
  15. package/dist/cjs/view/FlexibleCard/components/blocks/action-block/index.js +1 -1
  16. package/dist/cjs/view/FlexibleCard/components/elements/common/base-badge-element/index.js +1 -1
  17. package/dist/cjs/view/FlexibleCard/index.js +4 -2
  18. package/dist/cjs/view/HoverCard/components/views/resolved/index.js +1 -1
  19. package/dist/cjs/view/LinkUrl/index.js +1 -1
  20. package/dist/es2019/__tests__/vr-tests/__snapshots__/hover-card/hover-card-rovo-chat-action--default.png +2 -2
  21. package/dist/es2019/extractors/flexible/actions/extract-rovo-chat-action.js +12 -8
  22. package/dist/es2019/extractors/flexible/actions/index.js +2 -1
  23. package/dist/es2019/extractors/flexible/index.js +2 -0
  24. package/dist/es2019/messages.js +55 -0
  25. package/dist/es2019/utils/analytics/analytics.js +1 -1
  26. package/dist/es2019/view/FlexibleCard/assets/ai-chapter-icon.compiled.css +4 -0
  27. package/dist/es2019/view/FlexibleCard/assets/ai-chapter-icon.js +40 -0
  28. package/dist/es2019/view/FlexibleCard/assets/ai-edit-icon.compiled.css +4 -0
  29. package/dist/es2019/view/FlexibleCard/assets/ai-edit-icon.js +63 -0
  30. package/dist/es2019/view/FlexibleCard/assets/ai-search-icon.compiled.css +4 -0
  31. package/dist/es2019/view/FlexibleCard/assets/ai-search-icon.js +55 -0
  32. package/dist/es2019/view/FlexibleCard/components/actions/rovo-chat-action/index.js +97 -36
  33. package/dist/es2019/view/FlexibleCard/components/blocks/action-block/index.js +1 -1
  34. package/dist/es2019/view/FlexibleCard/components/elements/common/base-badge-element/index.js +1 -1
  35. package/dist/es2019/view/FlexibleCard/index.js +4 -2
  36. package/dist/es2019/view/HoverCard/components/views/resolved/index.js +1 -1
  37. package/dist/es2019/view/LinkUrl/index.js +1 -1
  38. package/dist/esm/__tests__/vr-tests/__snapshots__/hover-card/hover-card-rovo-chat-action--default.png +2 -2
  39. package/dist/esm/extractors/flexible/actions/extract-rovo-chat-action.js +12 -8
  40. package/dist/esm/extractors/flexible/actions/index.js +2 -1
  41. package/dist/esm/extractors/flexible/index.js +3 -1
  42. package/dist/esm/messages.js +55 -0
  43. package/dist/esm/utils/analytics/analytics.js +1 -1
  44. package/dist/esm/view/FlexibleCard/assets/ai-chapter-icon.compiled.css +4 -0
  45. package/dist/esm/view/FlexibleCard/assets/ai-chapter-icon.js +42 -0
  46. package/dist/esm/view/FlexibleCard/assets/ai-edit-icon.compiled.css +4 -0
  47. package/dist/esm/view/FlexibleCard/assets/ai-edit-icon.js +65 -0
  48. package/dist/esm/view/FlexibleCard/assets/ai-search-icon.compiled.css +4 -0
  49. package/dist/esm/view/FlexibleCard/assets/ai-search-icon.js +57 -0
  50. package/dist/esm/view/FlexibleCard/components/actions/rovo-chat-action/index.js +89 -47
  51. package/dist/esm/view/FlexibleCard/components/blocks/action-block/index.js +1 -1
  52. package/dist/esm/view/FlexibleCard/components/elements/common/base-badge-element/index.js +1 -1
  53. package/dist/esm/view/FlexibleCard/index.js +4 -2
  54. package/dist/esm/view/HoverCard/components/views/resolved/index.js +1 -1
  55. package/dist/esm/view/LinkUrl/index.js +1 -1
  56. package/dist/types/extractors/flexible/actions/extract-rovo-chat-action.d.ts +3 -1
  57. package/dist/types/extractors/flexible/actions/index.d.ts +3 -1
  58. package/dist/types/extractors/flexible/index.d.ts +1 -1
  59. package/dist/types/messages.d.ts +2 -1
  60. package/dist/types/state/flexible-ui-context/types.d.ts +6 -1
  61. package/dist/types/view/FlexibleCard/assets/ai-chapter-icon.d.ts +5 -0
  62. package/dist/types/view/FlexibleCard/assets/ai-edit-icon.d.ts +5 -0
  63. package/dist/types/view/FlexibleCard/assets/ai-search-icon.d.ts +5 -0
  64. package/dist/types/view/FlexibleCard/components/actions/rovo-chat-action/index.d.ts +3 -2
  65. package/dist/types/view/FlexibleCard/types.d.ts +2 -1
  66. package/dist/types/view/HoverCard/components/views/resolved/types.d.ts +1 -1
  67. package/dist/types-ts4.5/extractors/flexible/actions/extract-rovo-chat-action.d.ts +3 -1
  68. package/dist/types-ts4.5/extractors/flexible/actions/index.d.ts +3 -1
  69. package/dist/types-ts4.5/extractors/flexible/index.d.ts +1 -1
  70. package/dist/types-ts4.5/messages.d.ts +2 -1
  71. package/dist/types-ts4.5/state/flexible-ui-context/types.d.ts +6 -1
  72. package/dist/types-ts4.5/view/FlexibleCard/assets/ai-chapter-icon.d.ts +5 -0
  73. package/dist/types-ts4.5/view/FlexibleCard/assets/ai-edit-icon.d.ts +5 -0
  74. package/dist/types-ts4.5/view/FlexibleCard/assets/ai-search-icon.d.ts +5 -0
  75. package/dist/types-ts4.5/view/FlexibleCard/components/actions/rovo-chat-action/index.d.ts +3 -2
  76. package/dist/types-ts4.5/view/FlexibleCard/types.d.ts +2 -1
  77. package/dist/types-ts4.5/view/HoverCard/components/views/resolved/types.d.ts +1 -1
  78. package/package.json +7 -7
@@ -61,7 +61,7 @@ var ActionBlock = function ActionBlock(_ref) {
61
61
  testId = _ref$testId === void 0 ? 'smart-block-action' : _ref$testId;
62
62
  var context = (0, _flexibleUiContext.useFlexibleUiContext)();
63
63
  var ui = (0, _flexibleUiContext.useFlexibleUiOptionContext)();
64
- var isRovoChatActionAvailable = (0, _platformFeatureFlags.fg)('platform_sl_3p_auth_rovo_action_kill_switch') ? (context === null || context === void 0 || (_context$actions = context.actions) === null || _context$actions === void 0 ? void 0 : _context$actions[_constants.InternalActionName.RovoChatAction]) === true : undefined;
64
+ var isRovoChatActionAvailable = (0, _platformFeatureFlags.fg)('platform_sl_3p_auth_rovo_action_kill_switch') ? (context === null || context === void 0 || (_context$actions = context.actions) === null || _context$actions === void 0 ? void 0 : _context$actions[_constants.InternalActionName.RovoChatAction]) !== undefined : undefined;
65
65
  var _useState = (0, _react.useState)(),
66
66
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
67
67
  message = _useState2[0],
@@ -100,7 +100,7 @@ var BaseBadgeRefreshNew = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, re
100
100
  var _context$actions;
101
101
  // eslint-disable-next-line react-hooks/rules-of-hooks
102
102
  var context = (0, _flexibleUiContext.useFlexibleUiContext)();
103
- if ((context === null || context === void 0 || (_context$actions = context.actions) === null || _context$actions === void 0 ? void 0 : _context$actions[_constants.InternalActionName.RovoChatAction]) === true) {
103
+ if (context !== null && context !== void 0 && (_context$actions = context.actions) !== null && _context$actions !== void 0 && _context$actions[_constants.InternalActionName.RovoChatAction]) {
104
104
  return /*#__PURE__*/_react.default.createElement("span", {
105
105
  "data-smart-element": name,
106
106
  "data-smart-element-badge": true,
@@ -56,7 +56,8 @@ var FlexibleCard = function FlexibleCard(_ref) {
56
56
  var resolve = (0, _useResolve.default)();
57
57
  var _useSmartLinkContext = (0, _linkProvider.useSmartLinkContext)(),
58
58
  isPreviewPanelAvailable = _useSmartLinkContext.isPreviewPanelAvailable,
59
- openPreviewPanel = _useSmartLinkContext.openPreviewPanel;
59
+ openPreviewPanel = _useSmartLinkContext.openPreviewPanel,
60
+ product = _useSmartLinkContext.product;
60
61
  var rovoConfig = (0, _platformFeatureFlags.fg)('platform_sl_3p_auth_rovo_action_kill_switch') ?
61
62
  // eslint-disable-next-line react-hooks/rules-of-hooks
62
63
  (0, _useRovoConfig.default)() : undefined;
@@ -85,6 +86,7 @@ var FlexibleCard = function FlexibleCard(_ref) {
85
86
  renderers: renderers,
86
87
  resolve: resolve
87
88
  }, (0, _platformFeatureFlags.fg)('platform_sl_3p_auth_rovo_action_kill_switch') ? {
89
+ product: product,
88
90
  rovoConfig: rovoConfig
89
91
  } : undefined), {}, {
90
92
  actionOptions: actionOptions,
@@ -93,7 +95,7 @@ var FlexibleCard = function FlexibleCard(_ref) {
93
95
  isPreviewPanelAvailable: isPreviewPanelAvailable,
94
96
  openPreviewPanel: openPreviewPanel
95
97
  }));
96
- }, [aiSummaryConfig, appearance, actionOptions, details, id, isPreviewPanelAvailable, onAuthorize, onClick, openPreviewPanel, origin, placeholderCardState, placeHolderStatus, renderers, resolve, rovoConfig, status, url, fireEvent]);
98
+ }, [aiSummaryConfig, appearance, actionOptions, details, id, isPreviewPanelAvailable, onAuthorize, onClick, openPreviewPanel, origin, placeholderCardState, placeHolderStatus, product, renderers, resolve, rovoConfig, status, url, fireEvent]);
97
99
  var flexibleCardContext = (0, _react.useMemo)(function () {
98
100
  return {
99
101
  data: context,
@@ -48,7 +48,7 @@ var HoverCardResolvedView = function HoverCardResolvedView(_ref) {
48
48
  var isRovoSummaryEnabled = (0, _platformFeatureFlags.fg)('platform_sl_3p_auth_rovo_action_kill_switch') ?
49
49
  // eslint-disable-next-line react-hooks/rules-of-hooks
50
50
  (0, _react.useMemo)(function () {
51
- return (cardState === null || cardState === void 0 ? void 0 : cardState.details) && (0, _extractRovoChatAction.default)(cardState.details, rovoConfig, actionOptions);
51
+ return (cardState === null || cardState === void 0 ? void 0 : cardState.details) && (0, _extractRovoChatAction.default)(cardState.details, rovoConfig, actionOptions) !== undefined;
52
52
  }, [actionOptions, cardState === null || cardState === void 0 ? void 0 : cardState.details, rovoConfig]) : false;
53
53
  (0, _react.useEffect)(function () {
54
54
  // Since this hover view is only rendered on resolved status,
@@ -22,7 +22,7 @@ var _excluded = ["href", "children", "checkSafety", "onClick", "testId", "isLink
22
22
  _excluded2 = ["isLinkSafe", "showSafetyWarningModal"];
23
23
  var PACKAGE_DATA = {
24
24
  packageName: "@atlaskit/smart-card",
25
- packageVersion: "43.25.16",
25
+ packageVersion: "43.26.1",
26
26
  componentName: 'linkUrl'
27
27
  };
28
28
  var Anchor = (0, _click.withLinkClickedEvent)('a');
@@ -1,3 +1,3 @@
1
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:fcbce780c83b3392e29adbec723c4e5d5cfd4ee3914d89b3cb39e3f591d2dfff
3
- size 29085
2
+ oid sha256:5c49849bc1c023980074b7130bd00742db96dfd1c90593c0025b035ab12b65dc
3
+ size 33364
@@ -1,13 +1,13 @@
1
+ import { extractSmartLinkUrl } from '@atlaskit/link-extractors';
1
2
  import { getExtensionKey } from '../../../state/helpers';
3
+ import { canShowAction } from '../../../utils/actions/can-show-action';
2
4
  import { getIsRovoChatEnabled } from '../../../utils/rovo';
3
- const extractRovoChatAction = (response, rovoConfig, actionOptions) => {
5
+ import { CardAction } from '../../../view/Card/types';
6
+ const extractRovoChatAction = (response, rovoConfig, actionOptions, product) => {
4
7
  var _actionOptions$rovoCh;
5
- // Experiment cleanup note: platform_sl_3p_auth_rovo_action
6
- // If action is available by default, we need to allow RovoChatAction to be configurable to opt-out
7
- // if (!canShowAction(CardAction.RovoChatAction, actionOptions)) {
8
- // return;
9
- // }
10
-
8
+ if (!canShowAction(CardAction.RovoChatAction, actionOptions)) {
9
+ return;
10
+ }
11
11
  const isRovoChatEnabled = getIsRovoChatEnabled(rovoConfig);
12
12
  if (!isRovoChatEnabled) {
13
13
  return;
@@ -17,6 +17,10 @@ const extractRovoChatAction = (response, rovoConfig, actionOptions) => {
17
17
  // If feature isn't support all 3P, this value should come from meta.supportedFeature
18
18
  const isSupportedFeature = getExtensionKey(response) === 'google-object-provider';
19
19
  const isOptIn = (actionOptions === null || actionOptions === void 0 ? void 0 : (_actionOptions$rovoCh = actionOptions.rovoChatAction) === null || _actionOptions$rovoCh === void 0 ? void 0 : _actionOptions$rovoCh.optIn) === true;
20
- return isSupportedFeature && isOptIn ? true : undefined;
20
+ const url = extractSmartLinkUrl(response);
21
+ return isSupportedFeature && isOptIn ? {
22
+ product,
23
+ url
24
+ } : undefined;
21
25
  };
22
26
  export default extractRovoChatAction;
@@ -15,6 +15,7 @@ export const extractFlexibleCardActions = ({
15
15
  fireEvent,
16
16
  id,
17
17
  origin,
18
+ product,
18
19
  response,
19
20
  rovoConfig,
20
21
  url,
@@ -48,7 +49,7 @@ export const extractFlexibleCardActions = ({
48
49
  [ActionName.AutomationAction]: extractAutomationAction(response),
49
50
  [InternalActionName.AISummaryAction]: extractAISummaryAction(response, url, actionOptions, aiSummaryConfig),
50
51
  ...(fg('platform_sl_3p_auth_rovo_action_kill_switch') ? {
51
- [InternalActionName.RovoChatAction]: extractRovoChatAction(response, rovoConfig, actionOptions)
52
+ [InternalActionName.RovoChatAction]: extractRovoChatAction(response, rovoConfig, actionOptions, product)
52
53
  } : undefined),
53
54
  [InternalActionName.ViewRelatedLinksAction]: extractViewRelatedLinksAction(response)
54
55
  };
@@ -18,6 +18,7 @@ const extractFlexibleUiContext = ({
18
18
  id,
19
19
  onClick,
20
20
  origin,
21
+ product,
21
22
  resolve,
22
23
  rovoConfig,
23
24
  actionOptions,
@@ -43,6 +44,7 @@ const extractFlexibleUiContext = ({
43
44
  id,
44
45
  origin,
45
46
  ...(fg('platform_sl_3p_auth_rovo_action_kill_switch') ? {
47
+ product,
46
48
  rovoConfig
47
49
  } : undefined),
48
50
  response,
@@ -844,5 +844,60 @@ export const messages = defineMessages({
844
844
  id: 'fabric.linking.rovo_summary.ai_disclaimer.non-final',
845
845
  defaultMessage: 'Uses AI. Verify Results.',
846
846
  description: 'Shown on a Rovo summary to indicate that the summary was generated by AI and should be verified by the user for accuracy.'
847
+ },
848
+ rovo_prompt_context_generic: {
849
+ id: 'fabric.linking.rovo_prompt_context_confluence_page.non-final',
850
+ defaultMessage: 'page',
851
+ description: 'The location the user see Smart Link in, to be used as the {context} for Rovo prompt message'
852
+ },
853
+ rovo_prompt_context_generic_plural: {
854
+ id: 'fabric.linking.rovo_prompt_context_confluence_page.non-final',
855
+ defaultMessage: 'pages',
856
+ description: 'The site-wide location the user see Smart Link in, to be used as the {context} for Rovo prompt message'
857
+ },
858
+ rovo_prompt_context_confluence_page: {
859
+ id: 'fabric.linking.rovo_prompt_context_confluence_page.non-final',
860
+ defaultMessage: 'Confluence page',
861
+ description: 'The Confluence page the user see Smart Link in, to be used as the {context} for Rovo prompt message'
862
+ },
863
+ rovo_prompt_context_confluence_page_plural: {
864
+ id: 'fabric.linking.rovo_prompt_context_confluence_page_plural.non-final',
865
+ defaultMessage: 'Confluence pages',
866
+ description: 'The Confluence page the user see Smart Link in, to be used as the {context} for Rovo prompt message'
867
+ },
868
+ rovo_prompt_context_confluence_page_short: {
869
+ id: 'fabric.linking.rovo_prompt_context_confluence_page_short.non-final',
870
+ defaultMessage: 'page',
871
+ description: 'The Confluence page the user see Smart Link in, to be used as the {context} for Rovo prompt message'
872
+ },
873
+ rovo_prompt_context_jira_work_item: {
874
+ id: 'fabric.linking.rovo_prompt_context_jira_work_item.non-final',
875
+ defaultMessage: 'Jira work item',
876
+ description: 'The Jira work item the user see Smart Link in, to be used as the {context} for Rovo prompt message'
877
+ },
878
+ rovo_prompt_context_jira_work_item_plural: {
879
+ id: 'fabric.linking.rovo_prompt_context_jira_work_item_plural.non-final',
880
+ defaultMessage: 'Jira work items',
881
+ description: 'The Jira work item the user see Smart Link in, to be used as the {context} for Rovo prompt message'
882
+ },
883
+ rovo_prompt_context_jira_work_item_short: {
884
+ id: 'fabric.linking.rovo_prompt_context_jira_work_item_short.non-final',
885
+ defaultMessage: 'work item',
886
+ description: 'The Jira work item the user see Smart Link in, to be used as the {context} for Rovo prompt message'
887
+ },
888
+ rovo_prompt_button_recommend_other_sources: {
889
+ id: 'fabric.linking.rovo_prompt_button_recommend_other_sources.non-final',
890
+ defaultMessage: 'Recommend other sources',
891
+ description: 'The name of the action to send prompt message to Rovo Chat in relation to current Smart Link'
892
+ },
893
+ rovo_prompt_button_show_other_mentions: {
894
+ id: 'fabric.linking.rovo_prompt_button_show_other_mentions.non-final',
895
+ defaultMessage: 'Show other mentions',
896
+ description: 'The name of the action to send prompt message to Rovo Chat in relation to current Smart Link'
897
+ },
898
+ rovo_prompt_button_suggest_improvement: {
899
+ id: 'fabric.linking.rovo_prompt_button_suggest_improvement.non-final',
900
+ defaultMessage: 'Suggest {context} improvement',
901
+ description: 'The name of the action to send prompt message to Rovo Chat in relation to current Smart Link'
847
902
  }
848
903
  });
@@ -2,7 +2,7 @@ export const ANALYTICS_CHANNEL = 'media';
2
2
  export const context = {
3
3
  componentName: 'smart-cards',
4
4
  packageName: "@atlaskit/smart-card",
5
- packageVersion: "43.25.16"
5
+ packageVersion: "43.26.1"
6
6
  };
7
7
  export let TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
8
8
  TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
@@ -0,0 +1,4 @@
1
+ ._11q7hndj{background:conic-gradient(from 90deg,#fca700 0deg,#fca700 72.6913deg,#6a9922 72.7273deg,#6a9922 167.895deg,#1868db 167.931deg,#1868db 252.667deg,#af59e0 252.703deg,#af59e0 1turn)}
2
+ ._1bsb1osq{width:100%}
3
+ ._4t3i1osq{height:100%}
4
+ ._tzy4kb7n{opacity:1}
@@ -0,0 +1,40 @@
1
+ /* ai-chapter-icon.tsx generated by @compiled/babel-plugin v0.39.1 */
2
+ import _extends from "@babel/runtime/helpers/extends";
3
+ import "./ai-chapter-icon.compiled.css";
4
+ import * as React from 'react';
5
+ import { ax, ix } from "@compiled/react/runtime";
6
+ const style = {
7
+ foreignObject: "_11q7hndj _4t3i1osq _1bsb1osq _tzy4kb7n"
8
+ };
9
+ const AiChapterIcon = props => /*#__PURE__*/React.createElement("svg", _extends({
10
+ width: "24",
11
+ height: "24",
12
+ viewBox: "0 0 24 24",
13
+ fill: "none",
14
+ xmlns: "http://www.w3.org/2000/svg"
15
+ }, props), /*#__PURE__*/React.createElement("g", {
16
+ clipPath: "url(#paint0_angular_1804_15128_clip_path)",
17
+ "data-figma-skip-parse": "true"
18
+ }, /*#__PURE__*/React.createElement("g", {
19
+ transform: "matrix(0.008 -0.00939228 0.0100184 0.0075 12 12.5)"
20
+ }, /*#__PURE__*/React.createElement("foreignObject", {
21
+ x: "-1047.5",
22
+ y: "-1047.5",
23
+ width: "2095.01",
24
+ height: "2095.01"
25
+ }, /*#__PURE__*/React.createElement("div", {
26
+ className: ax([style.foreignObject])
27
+ })))), /*#__PURE__*/React.createElement("path", {
28
+ fillRule: "evenodd",
29
+ clipRule: "evenodd",
30
+ d: "M5.5 6.5V16.5H11.2495V18H5.375C4.61561 18 4 17.3844 4 16.625V6.375C4 5.6175 4.61251 5 5.37379 5L8.8749 5.00001C10.1576 5.00001 11.2947 5.6232 11.9999 6.58333C12.7053 5.62319 13.8425 5.00001 15.1251 5.00001L18.6253 5C19.3874 5 20 5.61967 20 6.37637V12.25H18.5V6.50082L15.1251 6.50001C13.8134 6.50001 12.7499 7.56337 12.7499 8.87496V14H11.2499V8.87498C11.2499 7.56332 10.1866 6.50001 8.8749 6.50001L5.5 6.5ZM17.2495 10H14.4995V8.5H17.2495V10ZM6.75049 8.50001H9.50049V10H6.75049V8.50001ZM6.75049 11H9.50049V12.5H6.75049V11ZM15.7945 13.4943C15.9025 13.1982 16.184 13.0013 16.4991 13.0013C16.8142 13.0013 17.0962 13.1982 17.2042 13.4943L17.8193 15.1807L19.5057 15.7958C19.8017 15.9038 19.9987 16.1853 19.9987 16.5004C19.9987 16.8155 19.8017 17.0975 19.5057 17.2055L17.8193 17.8206L17.2042 19.507C17.0962 19.803 16.8147 20 16.4996 20C16.1845 20 15.9025 19.803 15.7945 19.507L15.1794 17.8206L13.493 17.2055C13.197 17.0975 13 16.816 13 16.5009C13 16.1858 13.197 15.9038 13.493 15.7958L15.1794 15.1807L15.7945 13.4943Z",
31
+ "data-figma-gradient-fill": "{\"type\":\"GRADIENT_ANGULAR\",\"stops\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"stopsVar\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"transform\":{\"m00\":16.000001907348633,\"m01\":20.036861419677734,\"m02\":-6.0184345245361328,\"m10\":-18.784559249877930,\"m11\":15.000002861022949,\"m12\":14.392276763916016},\"opacity\":1.0,\"blendMode\":\"NORMAL\",\"visible\":true}"
32
+ }), /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
33
+ id: "paint0_angular_1804_15128_clip_path"
34
+ }, /*#__PURE__*/React.createElement("path", {
35
+ fillRule: "evenodd",
36
+ clipRule: "evenodd",
37
+ d: "M5.5 6.5V16.5H11.2495V18H5.375C4.61561 18 4 17.3844 4 16.625V6.375C4 5.6175 4.61251 5 5.37379 5L8.8749 5.00001C10.1576 5.00001 11.2947 5.6232 11.9999 6.58333C12.7053 5.62319 13.8425 5.00001 15.1251 5.00001L18.6253 5C19.3874 5 20 5.61967 20 6.37637V12.25H18.5V6.50082L15.1251 6.50001C13.8134 6.50001 12.7499 7.56337 12.7499 8.87496V14H11.2499V8.87498C11.2499 7.56332 10.1866 6.50001 8.8749 6.50001L5.5 6.5ZM17.2495 10H14.4995V8.5H17.2495V10ZM6.75049 8.50001H9.50049V10H6.75049V8.50001ZM6.75049 11H9.50049V12.5H6.75049V11ZM15.7945 13.4943C15.9025 13.1982 16.184 13.0013 16.4991 13.0013C16.8142 13.0013 17.0962 13.1982 17.2042 13.4943L17.8193 15.1807L19.5057 15.7958C19.8017 15.9038 19.9987 16.1853 19.9987 16.5004C19.9987 16.8155 19.8017 17.0975 19.5057 17.2055L17.8193 17.8206L17.2042 19.507C17.0962 19.803 16.8147 20 16.4996 20C16.1845 20 15.9025 19.803 15.7945 19.507L15.1794 17.8206L13.493 17.2055C13.197 17.0975 13 16.816 13 16.5009C13 16.1858 13.197 15.9038 13.493 15.7958L15.1794 15.1807L15.7945 13.4943Z"
38
+ }))));
39
+ AiChapterIcon.displayName = 'AiChapterIcon';
40
+ export default AiChapterIcon;
@@ -0,0 +1,4 @@
1
+ ._11q7hndj{background:conic-gradient(from 90deg,#fca700 0deg,#fca700 72.6913deg,#6a9922 72.7273deg,#6a9922 167.895deg,#1868db 167.931deg,#1868db 252.667deg,#af59e0 252.703deg,#af59e0 1turn)}
2
+ ._1bsb1osq{width:100%}
3
+ ._4t3i1osq{height:100%}
4
+ ._tzy4kb7n{opacity:1}
@@ -0,0 +1,63 @@
1
+ /* ai-edit-icon.tsx generated by @compiled/babel-plugin v0.39.1 */
2
+ import _extends from "@babel/runtime/helpers/extends";
3
+ import "./ai-edit-icon.compiled.css";
4
+ import * as React from 'react';
5
+ import { ax, ix } from "@compiled/react/runtime";
6
+ const style = {
7
+ foreignObject: "_11q7hndj _4t3i1osq _1bsb1osq _tzy4kb7n"
8
+ };
9
+ const AiEditIcon = props => /*#__PURE__*/React.createElement("svg", _extends({
10
+ width: "24",
11
+ height: "24",
12
+ viewBox: "0 0 24 24",
13
+ fill: "none",
14
+ xmlns: "http://www.w3.org/2000/svg"
15
+ }, props), /*#__PURE__*/React.createElement("g", {
16
+ clipPath: "url(#paint0_angular_1804_16152_clip_path)",
17
+ "data-figma-skip-parse": "true"
18
+ }, /*#__PURE__*/React.createElement("g", {
19
+ transform: "matrix(0.00799113 -0.0100185 0.0100073 0.00800004 11.9911 12)"
20
+ }, /*#__PURE__*/React.createElement("foreignObject", {
21
+ x: "-1041.51",
22
+ y: "-1041.51",
23
+ width: "2083.02",
24
+ height: "2083.02"
25
+ }, /*#__PURE__*/React.createElement("div", {
26
+ className: ax([style.foreignObject])
27
+ })))), /*#__PURE__*/React.createElement("path", {
28
+ fillRule: "evenodd",
29
+ clipRule: "evenodd",
30
+ d: "M15.8358 9.85361C16.6169 9.07256 17.8832 9.07256 18.6642 9.85361L19.3965 10.5858C20.1775 11.3669 20.1775 12.6332 19.3965 13.4143L14.2594 18.5513C14.019 18.7917 13.7214 18.9668 13.3946 19.0602L10.2061 19.9712C9.94416 20.046 9.66229 19.973 9.46969 19.7804C9.27709 19.5878 9.20405 19.3059 9.27888 19.044L10.1899 15.8555C10.2833 15.5286 10.4584 15.231 10.6987 14.9907L15.8358 9.85361ZM17.6036 10.9143C17.4083 10.719 17.0917 10.719 16.8965 10.9143L16.3107 11.5001L17.75 12.9394L18.3358 12.3536C18.5311 12.1583 18.5311 11.8418 18.3358 11.6465L17.6036 10.9143ZM16.6894 14.0001L15.25 12.5607L11.7594 16.0513C11.6993 16.1114 11.6555 16.1858 11.6322 16.2675L11.092 18.158L12.9825 17.6179C13.0642 17.5946 13.1386 17.5508 13.1987 17.4907L16.6894 14.0001Z",
31
+ "data-figma-gradient-fill": "{\"type\":\"GRADIENT_ANGULAR\",\"stops\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"stopsVar\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"transform\":{\"m00\":15.982254981994629,\"m01\":20.014636993408203,\"m02\":-6.0073223114013672,\"m10\":-20.036954879760742,\"m11\":16.000076293945312,\"m12\":14.018474578857422},\"opacity\":1.0,\"blendMode\":\"NORMAL\",\"visible\":true}"
32
+ }), /*#__PURE__*/React.createElement("g", {
33
+ clipPath: "url(#paint1_angular_1804_16152_clip_path)",
34
+ "data-figma-skip-parse": "true"
35
+ }, /*#__PURE__*/React.createElement("g", {
36
+ transform: "matrix(0.00799113 -0.0100185 0.0100073 0.00800004 11.9911 12)"
37
+ }, /*#__PURE__*/React.createElement("foreignObject", {
38
+ x: "-1041.51",
39
+ y: "-1041.51",
40
+ width: "2083.02",
41
+ height: "2083.02"
42
+ }, /*#__PURE__*/React.createElement("div", {
43
+ className: ax([style.foreignObject])
44
+ })))), /*#__PURE__*/React.createElement("path", {
45
+ fillRule: "evenodd",
46
+ clipRule: "evenodd",
47
+ d: "M8.75 4C9.05931 4 9.3369 4.18989 9.449 4.47817L10.4494 7.0506L13.0218 8.051C13.3101 8.16311 13.5 8.44069 13.5 8.75C13.5 9.05931 13.3101 9.3369 13.0218 9.449L10.4494 10.4494L9.449 13.0218C9.3369 13.3101 9.05931 13.5 8.75 13.5C8.44069 13.5 8.16311 13.3101 8.051 13.0218L7.0506 10.4494L4.47817 9.449C4.18989 9.3369 4 9.05931 4 8.75C4 8.44069 4.18989 8.16311 4.47817 8.051L7.0506 7.0506L8.051 4.47817C8.16311 4.18989 8.44069 4 8.75 4ZM8.75 6.81927L8.329 7.90183C8.25279 8.09781 8.09781 8.25279 7.90183 8.329L6.81927 8.75L7.90183 9.171C8.09781 9.24721 8.25279 9.40219 8.329 9.59817L8.75 10.6807L9.171 9.59817C9.24721 9.40219 9.40219 9.24721 9.59817 9.171L10.6807 8.75L9.59817 8.329C9.40219 8.25279 9.24721 8.09781 9.171 7.90183L8.75 6.81927Z",
48
+ "data-figma-gradient-fill": "{\"type\":\"GRADIENT_ANGULAR\",\"stops\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"stopsVar\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"transform\":{\"m00\":15.982254981994629,\"m01\":20.014636993408203,\"m02\":-6.0073223114013672,\"m10\":-20.036954879760742,\"m11\":16.000076293945312,\"m12\":14.018474578857422},\"opacity\":1.0,\"blendMode\":\"NORMAL\",\"visible\":true}"
49
+ }), /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
50
+ id: "paint0_angular_1804_16152_clip_path"
51
+ }, /*#__PURE__*/React.createElement("path", {
52
+ fillRule: "evenodd",
53
+ clipRule: "evenodd",
54
+ d: "M15.8358 9.85361C16.6169 9.07256 17.8832 9.07256 18.6642 9.85361L19.3965 10.5858C20.1775 11.3669 20.1775 12.6332 19.3965 13.4143L14.2594 18.5513C14.019 18.7917 13.7214 18.9668 13.3946 19.0602L10.2061 19.9712C9.94416 20.046 9.66229 19.973 9.46969 19.7804C9.27709 19.5878 9.20405 19.3059 9.27888 19.044L10.1899 15.8555C10.2833 15.5286 10.4584 15.231 10.6987 14.9907L15.8358 9.85361ZM17.6036 10.9143C17.4083 10.719 17.0917 10.719 16.8965 10.9143L16.3107 11.5001L17.75 12.9394L18.3358 12.3536C18.5311 12.1583 18.5311 11.8418 18.3358 11.6465L17.6036 10.9143ZM16.6894 14.0001L15.25 12.5607L11.7594 16.0513C11.6993 16.1114 11.6555 16.1858 11.6322 16.2675L11.092 18.158L12.9825 17.6179C13.0642 17.5946 13.1386 17.5508 13.1987 17.4907L16.6894 14.0001Z"
55
+ })), /*#__PURE__*/React.createElement("clipPath", {
56
+ id: "paint1_angular_1804_16152_clip_path"
57
+ }, /*#__PURE__*/React.createElement("path", {
58
+ fillRule: "evenodd",
59
+ clipRule: "evenodd",
60
+ d: "M8.75 4C9.05931 4 9.3369 4.18989 9.449 4.47817L10.4494 7.0506L13.0218 8.051C13.3101 8.16311 13.5 8.44069 13.5 8.75C13.5 9.05931 13.3101 9.3369 13.0218 9.449L10.4494 10.4494L9.449 13.0218C9.3369 13.3101 9.05931 13.5 8.75 13.5C8.44069 13.5 8.16311 13.3101 8.051 13.0218L7.0506 10.4494L4.47817 9.449C4.18989 9.3369 4 9.05931 4 8.75C4 8.44069 4.18989 8.16311 4.47817 8.051L7.0506 7.0506L8.051 4.47817C8.16311 4.18989 8.44069 4 8.75 4ZM8.75 6.81927L8.329 7.90183C8.25279 8.09781 8.09781 8.25279 7.90183 8.329L6.81927 8.75L7.90183 9.171C8.09781 9.24721 8.25279 9.40219 8.329 9.59817L8.75 10.6807L9.171 9.59817C9.24721 9.40219 9.40219 9.24721 9.59817 9.171L10.6807 8.75L9.59817 8.329C9.40219 8.25279 9.24721 8.09781 9.171 7.90183L8.75 6.81927Z"
61
+ }))));
62
+ AiEditIcon.displayName = 'AiEditIcon';
63
+ export default AiEditIcon;
@@ -0,0 +1,4 @@
1
+ ._11q7hndj{background:conic-gradient(from 90deg,#fca700 0deg,#fca700 72.6913deg,#6a9922 72.7273deg,#6a9922 167.895deg,#1868db 167.931deg,#1868db 252.667deg,#af59e0 252.703deg,#af59e0 1turn)}
2
+ ._1bsb1osq{width:100%}
3
+ ._4t3i1osq{height:100%}
4
+ ._tzy4kb7n{opacity:1}
@@ -0,0 +1,55 @@
1
+ /* ai-search-icon.tsx generated by @compiled/babel-plugin v0.39.1 */
2
+ import _extends from "@babel/runtime/helpers/extends";
3
+ import "./ai-search-icon.compiled.css";
4
+ import * as React from 'react';
5
+ import { ax, ix } from "@compiled/react/runtime";
6
+ const style = {
7
+ foreignObject: "_11q7hndj _4t3i1osq _1bsb1osq _tzy4kb7n"
8
+ };
9
+ const AiSearchIcon = props => /*#__PURE__*/React.createElement("svg", _extends({
10
+ width: "24",
11
+ height: "24",
12
+ viewBox: "0 0 24 24",
13
+ fill: "none",
14
+ xmlns: "http://www.w3.org/2000/svg"
15
+ }, props), /*#__PURE__*/React.createElement("g", {
16
+ clipPath: "url(#paint0_angular_1804_8080_clip_path)",
17
+ "data-figma-skip-parse": "true"
18
+ }, /*#__PURE__*/React.createElement("g", {
19
+ transform: "matrix(0.00701514 -0.00941124 0.00878508 0.00751514 12.0151 11.5151)"
20
+ }, /*#__PURE__*/React.createElement("foreignObject", {
21
+ x: "-1058.95",
22
+ y: "-1058.95",
23
+ width: "2117.91",
24
+ height: "2117.91"
25
+ }, /*#__PURE__*/React.createElement("div", {
26
+ className: ax([style.foreignObject])
27
+ })))), /*#__PURE__*/React.createElement("path", {
28
+ d: "M10 6.6123C7.9961 7.0671 6.5 8.85847 6.5 11C6.5 13.4853 8.51472 15.5 11 15.5C12.2428 15.5 13.3665 14.9968 14.1816 14.1816C14.7712 13.5921 15.1959 12.8407 15.3867 12H16.917C16.7489 12.9977 16.3336 13.9117 15.7383 14.6777L19.0303 17.9697L17.9697 19.0303L14.6777 15.7383C13.662 16.5276 12.3862 17 11 17C7.68629 17 5 14.3137 5 11C5 8.02706 7.16237 5.56013 10 5.08398V6.6123Z",
29
+ "data-figma-gradient-fill": "{\"type\":\"GRADIENT_ANGULAR\",\"stops\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"stopsVar\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"transform\":{\"m00\":14.030276298522949,\"m01\":17.570167541503906,\"m02\":-3.7850868701934814,\"m10\":-18.822471618652344,\"m11\":15.030277252197266,\"m12\":13.411232948303223},\"opacity\":1.0,\"blendMode\":\"NORMAL\",\"visible\":true}"
30
+ }), /*#__PURE__*/React.createElement("g", {
31
+ clipPath: "url(#paint1_angular_1804_8080_clip_path)",
32
+ "data-figma-skip-parse": "true"
33
+ }, /*#__PURE__*/React.createElement("g", {
34
+ transform: "matrix(0.00701514 -0.00941124 0.00878508 0.00751514 12.0151 11.5151)"
35
+ }, /*#__PURE__*/React.createElement("foreignObject", {
36
+ x: "-1058.95",
37
+ y: "-1058.95",
38
+ width: "2117.91",
39
+ height: "2117.91"
40
+ }, /*#__PURE__*/React.createElement("div", {
41
+ className: ax([style.foreignObject])
42
+ })))), /*#__PURE__*/React.createElement("path", {
43
+ d: "M18 7.25C18 7.56523 17.803 7.84705 17.5068 7.95508L16.2217 8.42383C16.0833 8.4744 15.9744 8.58332 15.9238 8.72168L15.4551 10.0068C15.3471 10.3029 15.0653 10.5 14.75 10.5C14.4348 10.5 14.1529 10.303 14.0449 10.0068L13.5762 8.72168C13.5256 8.58332 13.4167 8.4744 13.2783 8.42383L11.9932 7.95508C11.7338 7.86049 11.5505 7.63274 11.5088 7.36621L11.5 7.25L11.5088 7.13379C11.5505 6.86715 11.734 6.63947 11.9932 6.54492L13.2783 6.07617C13.4167 6.0256 13.5256 5.91668 13.5762 5.77832L14.0449 4.49316L14.0938 4.38672C14.2242 4.15114 14.4736 4.00036 14.749 4L14.8652 4.00879C15.0941 4.04428 15.2941 4.18415 15.4062 4.38672L15.4551 4.49316L15.9238 5.77832C15.9744 5.91668 16.0833 6.0256 16.2217 6.07617L17.5068 6.54492C17.8031 6.65301 18 6.93494 18 7.25Z",
44
+ "data-figma-gradient-fill": "{\"type\":\"GRADIENT_ANGULAR\",\"stops\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"stopsVar\":[{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.0},{\"color\":{\"r\":0.98823529481887817,\"g\":0.65490198135375977,\"b\":0.0,\"a\":1.0},\"position\":0.20192027091979980},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.20202027261257172},{\"color\":{\"r\":0.41662007570266724,\"g\":0.60310000181198120,\"b\":0.13690000772476196,\"a\":1.0},\"position\":0.46637400984764099},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.46647399663925171},{\"color\":{\"r\":0.094117648899555206,\"g\":0.40784314274787903,\"b\":0.85882353782653809,\"a\":1.0},\"position\":0.70185315608978271},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":0.70195317268371582},{\"color\":{\"r\":0.68627452850341797,\"g\":0.34901961684226990,\"b\":0.87843137979507446,\"a\":1.0},\"position\":1.0}],\"transform\":{\"m00\":14.030276298522949,\"m01\":17.570167541503906,\"m02\":-3.7850868701934814,\"m10\":-18.822471618652344,\"m11\":15.030277252197266,\"m12\":13.411232948303223},\"opacity\":1.0,\"blendMode\":\"NORMAL\",\"visible\":true}"
45
+ }), /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
46
+ id: "paint0_angular_1804_8080_clip_path"
47
+ }, /*#__PURE__*/React.createElement("path", {
48
+ d: "M10 6.6123C7.9961 7.0671 6.5 8.85847 6.5 11C6.5 13.4853 8.51472 15.5 11 15.5C12.2428 15.5 13.3665 14.9968 14.1816 14.1816C14.7712 13.5921 15.1959 12.8407 15.3867 12H16.917C16.7489 12.9977 16.3336 13.9117 15.7383 14.6777L19.0303 17.9697L17.9697 19.0303L14.6777 15.7383C13.662 16.5276 12.3862 17 11 17C7.68629 17 5 14.3137 5 11C5 8.02706 7.16237 5.56013 10 5.08398V6.6123Z"
49
+ })), /*#__PURE__*/React.createElement("clipPath", {
50
+ id: "paint1_angular_1804_8080_clip_path"
51
+ }, /*#__PURE__*/React.createElement("path", {
52
+ d: "M18 7.25C18 7.56523 17.803 7.84705 17.5068 7.95508L16.2217 8.42383C16.0833 8.4744 15.9744 8.58332 15.9238 8.72168L15.4551 10.0068C15.3471 10.3029 15.0653 10.5 14.75 10.5C14.4348 10.5 14.1529 10.303 14.0449 10.0068L13.5762 8.72168C13.5256 8.58332 13.4167 8.4744 13.2783 8.42383L11.9932 7.95508C11.7338 7.86049 11.5505 7.63274 11.5088 7.36621L11.5 7.25L11.5088 7.13379C11.5505 6.86715 11.734 6.63947 11.9932 6.54492L13.2783 6.07617C13.4167 6.0256 13.5256 5.91668 13.5762 5.77832L14.0449 4.49316L14.0938 4.38672C14.2242 4.15114 14.4736 4.00036 14.749 4L14.8652 4.00879C15.0941 4.04428 15.2941 4.18415 15.4062 4.38672L15.4551 4.49316L15.9238 5.77832C15.9744 5.91668 16.0833 6.0256 16.2217 6.07617L17.5068 6.54492C17.8031 6.65301 18 6.93494 18 7.25Z"
53
+ }))));
54
+ AiSearchIcon.displayName = 'AiChapterIcon';
55
+ export default AiSearchIcon;
@@ -1,52 +1,109 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import React, { useCallback, useMemo } from 'react';
3
- import RovoChatIcon from '@atlaskit/icon/core/rovo-chat';
3
+ import { useIntl } from 'react-intl-next';
4
+ import { InternalActionName } from '../../../../../constants';
5
+ import { messages } from '../../../../../messages';
6
+ import { useFlexibleUiContext } from '../../../../../state/flexible-ui-context';
4
7
  import useRovoChat from '../../../../../state/hooks/use-rovo-chat';
8
+ import AiChapterIcon from '../../../assets/ai-chapter-icon';
9
+ import AIEditIcon from '../../../assets/ai-edit-icon';
10
+ import AISearchIcon from '../../../assets/ai-search-icon';
5
11
  import Action from '../action';
6
- // Replace this with actual message key, e.g. link-relevancy, link-summary, etc.
7
12
  export let RovoChatPromptKey = /*#__PURE__*/function (RovoChatPromptKey) {
8
- RovoChatPromptKey["MESSAGE_1"] = "message-1";
9
- RovoChatPromptKey["MESSAGE_2"] = "message-2";
13
+ RovoChatPromptKey["RECOMMEND_OTHER_SOURCES"] = "recommend-other-sources";
14
+ RovoChatPromptKey["SHOW_OTHER_MENTIONS"] = "show-other-mentions";
15
+ RovoChatPromptKey["SUGGEST_IMPROVEMENT"] = "suggest-improvement";
10
16
  return RovoChatPromptKey;
11
17
  }({});
12
- const DEFAULT_PROMPTS = [RovoChatPromptKey.MESSAGE_1, RovoChatPromptKey.MESSAGE_2];
13
- const getPromptAction = promptKey => {
14
- // NAVX-3581: Replace this with real prompt message
18
+ const DEFAULT_PROMPTS = [RovoChatPromptKey.RECOMMEND_OTHER_SOURCES, RovoChatPromptKey.SHOW_OTHER_MENTIONS, RovoChatPromptKey.SUGGEST_IMPROVEMENT];
19
+ const getContext = (intl, product) => {
20
+ switch (product) {
21
+ case 'CONFLUENCE':
22
+ return {
23
+ contextLong: intl.formatMessage(messages.rovo_prompt_context_confluence_page),
24
+ contextLongPlural: intl.formatMessage(messages.rovo_prompt_context_confluence_page_plural),
25
+ contextShort: intl.formatMessage(messages.rovo_prompt_context_confluence_page_short)
26
+ };
27
+ case 'JSW':
28
+ case 'JWM':
29
+ case 'JSM':
30
+ case 'JPD':
31
+ return {
32
+ contextLong: intl.formatMessage(messages.rovo_prompt_context_jira_work_item),
33
+ contextLongPlural: intl.formatMessage(messages.rovo_prompt_context_jira_work_item_plural),
34
+ contextShort: intl.formatMessage(messages.rovo_prompt_context_jira_work_item_short)
35
+ };
36
+ }
37
+ };
38
+ const getPromptAction = (promptKey, intl, url, product) => {
39
+ var _getContext;
40
+ const {
41
+ contextLong,
42
+ contextLongPlural,
43
+ contextShort
44
+ } = (_getContext = getContext(intl, product)) !== null && _getContext !== void 0 ? _getContext : {
45
+ contextLong: intl.formatMessage(messages.rovo_prompt_context_generic),
46
+ contextLongPlural: intl.formatMessage(messages.rovo_prompt_context_generic_plural),
47
+ contextShort: intl.formatMessage(messages.rovo_prompt_context_generic)
48
+ };
15
49
  switch (promptKey) {
16
- case RovoChatPromptKey.MESSAGE_1:
50
+ case RovoChatPromptKey.RECOMMEND_OTHER_SOURCES:
51
+ const label_recommend = intl.formatMessage(messages.rovo_prompt_button_recommend_other_sources);
52
+ return {
53
+ icon: /*#__PURE__*/React.createElement(AIEditIcon, null),
54
+ content: label_recommend,
55
+ tooltipMessage: label_recommend,
56
+ data: {
57
+ name: label_recommend,
58
+ dialogues: [],
59
+ // NAVX-3581: To be translated and converted to ADF
60
+ prompt: `From this ${url} and the ${contextLong} I’m viewing now as context:
61
+ - Search across all sources I can access for items that discuss similar concepts, themes, or problems, or that reference similar or closely related sources (including links to the same or related pages, issues, or docs).
62
+ - Return the results as a list or table with columns: Item, Type, Short summary, and Why it’s similar.
63
+ - For each result, give a one‑sentence Short summary of what the item is about.
64
+ - In Why it’s similar, briefly explain (in a phrase or short sentence) what makes it related to this Smart Link and/or the item I’m viewing (for example: same project, similar decision, shared requirements, overlapping stakeholders, similar metrics, or referencing related docs).
65
+ - Order the list from most to least relevant based on Rovo’s assessment of semantic similarity to both the Smart Link target and the current item. Prioritize items that I do not own or have not contributed to.
66
+ - If there are more than 5 results, show the 5 most relevant and state how many additional items you found.`
67
+ }
68
+ };
69
+ case RovoChatPromptKey.SHOW_OTHER_MENTIONS:
70
+ const label_other_mentions = intl.formatMessage(messages.rovo_prompt_button_show_other_mentions);
17
71
  return {
18
- icon: /*#__PURE__*/React.createElement(RovoChatIcon, {
19
- label: "",
20
- spacing: "spacious"
21
- }),
22
- content: 'Action title 1',
23
- tooltipMessage: 'Action tooltip 1',
72
+ icon: /*#__PURE__*/React.createElement(AiChapterIcon, null),
73
+ content: label_other_mentions,
74
+ tooltipMessage: label_other_mentions,
24
75
  data: {
25
- name: 'Chat title 1',
76
+ name: label_other_mentions,
26
77
  dialogues: [],
27
- prompt: {
28
- version: 1,
29
- type: 'doc',
30
- content: []
31
- }
78
+ // NAVX-3581: To be translated and converted to ADF
79
+ prompt: `From this ${url} and the ${contextLong} I’m viewing now:
80
+ - Search across all ${contextLongPlural} I can access for other items that contain this exact Smart Link (same underlying URL/resource).
81
+ - List all matching items in a table with columns: Item, Type, Short summary, How this item uses the link, and Relevance to current item.
82
+ - For Short summary, give a one‑sentence description of what the page/issue is about.
83
+ - For How this item uses the link, briefly explain the role this link plays there (e.g., decision doc, background context, implementation details, status update).
84
+ - For Relevance to current item, compare each item to the page/issue I’m viewing now and label it High, Medium, or Low relevance, with a short reason (a phrase or single clause).
85
+ - If there are more than 15 matches, show the 15 most relevant and tell me how many additional matches exist.`
32
86
  }
33
87
  };
34
- case RovoChatPromptKey.MESSAGE_2:
88
+ case RovoChatPromptKey.SUGGEST_IMPROVEMENT:
89
+ const label_improvement = intl.formatMessage(messages.rovo_prompt_button_suggest_improvement, {
90
+ context: contextShort
91
+ });
35
92
  return {
36
- icon: /*#__PURE__*/React.createElement(RovoChatIcon, {
37
- label: "",
38
- spacing: "spacious"
39
- }),
40
- content: 'Action title 2',
41
- tooltipMessage: 'Action tooltip 2',
93
+ icon: /*#__PURE__*/React.createElement(AISearchIcon, null),
94
+ content: label_improvement,
95
+ tooltipMessage: label_improvement,
42
96
  data: {
43
- name: 'Chat title 2',
97
+ name: label_improvement,
44
98
  dialogues: [],
45
- prompt: {
46
- version: 1,
47
- type: 'doc',
48
- content: []
49
- }
99
+ // NAVX-3581: To be translated and converted to ADF
100
+ prompt: `Using the ${contextLong} I’m viewing now, plus all files and links referenced in it (including this ${url}):
101
+ - Identify unclear reasoning, missing context, or contradictions between the item and its linked files.
102
+ - Call out any places where assumptions are not backed up by data or prior docs.
103
+ - Stay concise: summarize your findings in no more than three short paragraphs of content listed as bullets of no more than a couple of sentences long focused only on the two points above.
104
+ - After presenting that summary, ask me explicitly if I want you to go deeper. Only if I say yes, then:
105
+ - Suggest concrete rewrites (bullets or short paragraphs) to make the argument clearer, more concise, and better aligned with the supporting files.
106
+ - Propose 3–5 follow‑up edits or additions that would make this item and its linked docs “share‑ready” for stakeholders.`
50
107
  }
51
108
  };
52
109
  }
@@ -57,10 +114,14 @@ const RovoChatAction = ({
57
114
  testId = 'smart-action-rovo-chat-action',
58
115
  ...props
59
116
  }) => {
117
+ var _context$actions;
118
+ const intl = useIntl();
60
119
  const {
61
120
  isRovoChatEnabled,
62
121
  sendPromptMessage
63
122
  } = useRovoChat();
123
+ const context = useFlexibleUiContext();
124
+ const data = context === null || context === void 0 ? void 0 : (_context$actions = context.actions) === null || _context$actions === void 0 ? void 0 : _context$actions[InternalActionName.RovoChatAction];
64
125
  const onClick = useCallback(promptData => {
65
126
  if (promptData) {
66
127
  sendPromptMessage(promptData);
@@ -77,7 +138,7 @@ const RovoChatAction = ({
77
138
  content,
78
139
  tooltipMessage,
79
140
  data: promptData
80
- } = getPromptAction(promptKey) || {};
141
+ } = getPromptAction(promptKey, intl, data === null || data === void 0 ? void 0 : data.url, data === null || data === void 0 ? void 0 : data.product) || {};
81
142
  return promptData ? /*#__PURE__*/React.createElement(Action, _extends({
82
143
  content: content,
83
144
  icon: icon,
@@ -87,7 +148,7 @@ const RovoChatAction = ({
87
148
  tooltipMessage: tooltipMessage
88
149
  }, props)) : null;
89
150
  });
90
- }, [onClick, prompts, props, testId]);
91
- return isRovoChatEnabled && (promptActions === null || promptActions === void 0 ? void 0 : promptActions.length) > 0 ? /*#__PURE__*/React.createElement(React.Fragment, null, promptActions) : null;
151
+ }, [data, intl, onClick, prompts, props, testId]);
152
+ return isRovoChatEnabled && data && (promptActions === null || promptActions === void 0 ? void 0 : promptActions.length) > 0 ? /*#__PURE__*/React.createElement(React.Fragment, null, promptActions) : null;
92
153
  };
93
154
  export default RovoChatAction;
@@ -51,7 +51,7 @@ const ActionBlock = ({
51
51
  var _context$actions;
52
52
  const context = useFlexibleUiContext();
53
53
  const ui = useFlexibleUiOptionContext();
54
- const isRovoChatActionAvailable = fg('platform_sl_3p_auth_rovo_action_kill_switch') ? (context === null || context === void 0 ? void 0 : (_context$actions = context.actions) === null || _context$actions === void 0 ? void 0 : _context$actions[InternalActionName.RovoChatAction]) === true : undefined;
54
+ const isRovoChatActionAvailable = fg('platform_sl_3p_auth_rovo_action_kill_switch') ? (context === null || context === void 0 ? void 0 : (_context$actions = context.actions) === null || _context$actions === void 0 ? void 0 : _context$actions[InternalActionName.RovoChatAction]) !== undefined : undefined;
55
55
  const [message, setMessage] = useState();
56
56
  const [isLoading, setIsLoading] = useState(false);
57
57
  const onLoadingChange = useCallback(isLoading => {