@atlaskit/smart-card 26.52.2 → 26.52.4

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 (112) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/extractors/flexible/actions/index.js +1 -1
  3. package/dist/cjs/messages.js +5 -0
  4. package/dist/cjs/state/hooks/use-ai-summary/ai-summary-service/index.js +72 -102
  5. package/dist/cjs/utils/analytics/analytics.js +1 -1
  6. package/dist/cjs/view/FlexibleCard/components/actions/action/action-icon/index.js +23 -6
  7. package/dist/cjs/view/FlexibleCard/components/actions/action/action-stack-item/index.js +94 -0
  8. package/dist/cjs/view/FlexibleCard/components/actions/action/action-stack-item/types.js +5 -0
  9. package/dist/cjs/view/FlexibleCard/components/actions/action/index.js +36 -20
  10. package/dist/cjs/view/FlexibleCard/components/actions/delete-action/index.js +24 -0
  11. package/dist/cjs/view/FlexibleCard/components/actions/delete-action/types.js +5 -0
  12. package/dist/cjs/view/FlexibleCard/components/actions/edit-action/index.js +24 -0
  13. package/dist/cjs/view/FlexibleCard/components/actions/edit-action/types.js +5 -0
  14. package/dist/cjs/view/FlexibleCard/components/actions/index.js +15 -15
  15. package/dist/cjs/view/FlexibleCard/components/actions/preview-action/index.js +6 -2
  16. package/dist/cjs/view/FlexibleCard/components/actions/preview-action/preview-icon/index.js +19 -0
  17. package/dist/cjs/view/FlexibleCard/components/actions/utils.js +0 -22
  18. package/dist/cjs/view/FlexibleCard/components/blocks/action-block/index.js +72 -0
  19. package/dist/cjs/view/FlexibleCard/components/blocks/action-block/types.js +5 -0
  20. package/dist/cjs/view/FlexibleCard/components/blocks/index.js +8 -1
  21. package/dist/cjs/view/FlexibleCard/components/blocks/utils.js +6 -0
  22. package/dist/cjs/view/FlexibleCard/components/container/index.js +26 -5
  23. package/dist/cjs/view/FlexibleCard/components/utils.js +76 -8
  24. package/dist/cjs/view/HoverCard/components/views/resolved/index.js +2 -0
  25. package/dist/cjs/view/LinkUrl/index.js +1 -1
  26. package/dist/es2019/extractors/flexible/actions/index.js +2 -2
  27. package/dist/es2019/messages.js +5 -0
  28. package/dist/es2019/state/hooks/use-ai-summary/ai-summary-service/index.js +4 -4
  29. package/dist/es2019/utils/analytics/analytics.js +1 -1
  30. package/dist/es2019/view/FlexibleCard/components/actions/action/action-icon/index.js +21 -6
  31. package/dist/es2019/view/FlexibleCard/components/actions/action/action-stack-item/index.js +83 -0
  32. package/dist/es2019/view/FlexibleCard/components/actions/action/action-stack-item/types.js +1 -0
  33. package/dist/es2019/view/FlexibleCard/components/actions/action/index.js +34 -17
  34. package/dist/es2019/view/FlexibleCard/components/actions/delete-action/index.js +15 -0
  35. package/dist/es2019/view/FlexibleCard/components/actions/delete-action/types.js +1 -0
  36. package/dist/es2019/view/FlexibleCard/components/actions/edit-action/index.js +15 -0
  37. package/dist/es2019/view/FlexibleCard/components/actions/edit-action/types.js +1 -0
  38. package/dist/es2019/view/FlexibleCard/components/actions/index.js +2 -13
  39. package/dist/es2019/view/FlexibleCard/components/actions/preview-action/index.js +6 -2
  40. package/dist/es2019/view/FlexibleCard/components/actions/preview-action/preview-icon/index.js +10 -0
  41. package/dist/es2019/view/FlexibleCard/components/actions/utils.js +0 -24
  42. package/dist/es2019/view/FlexibleCard/components/blocks/action-block/index.js +61 -0
  43. package/dist/es2019/view/FlexibleCard/components/blocks/action-block/types.js +1 -0
  44. package/dist/es2019/view/FlexibleCard/components/blocks/index.js +2 -1
  45. package/dist/es2019/view/FlexibleCard/components/blocks/utils.js +6 -0
  46. package/dist/es2019/view/FlexibleCard/components/container/index.js +23 -24
  47. package/dist/es2019/view/FlexibleCard/components/utils.js +73 -38
  48. package/dist/es2019/view/HoverCard/components/views/resolved/index.js +3 -1
  49. package/dist/es2019/view/LinkUrl/index.js +1 -1
  50. package/dist/esm/extractors/flexible/actions/index.js +1 -1
  51. package/dist/esm/messages.js +5 -0
  52. package/dist/esm/state/hooks/use-ai-summary/ai-summary-service/index.js +72 -102
  53. package/dist/esm/utils/analytics/analytics.js +1 -1
  54. package/dist/esm/view/FlexibleCard/components/actions/action/action-icon/index.js +22 -6
  55. package/dist/esm/view/FlexibleCard/components/actions/action/action-stack-item/index.js +84 -0
  56. package/dist/esm/view/FlexibleCard/components/actions/action/action-stack-item/types.js +1 -0
  57. package/dist/esm/view/FlexibleCard/components/actions/action/index.js +35 -18
  58. package/dist/esm/view/FlexibleCard/components/actions/delete-action/index.js +17 -0
  59. package/dist/esm/view/FlexibleCard/components/actions/delete-action/types.js +1 -0
  60. package/dist/esm/view/FlexibleCard/components/actions/edit-action/index.js +17 -0
  61. package/dist/esm/view/FlexibleCard/components/actions/edit-action/types.js +1 -0
  62. package/dist/esm/view/FlexibleCard/components/actions/index.js +2 -13
  63. package/dist/esm/view/FlexibleCard/components/actions/preview-action/index.js +6 -2
  64. package/dist/esm/view/FlexibleCard/components/actions/preview-action/preview-icon/index.js +12 -0
  65. package/dist/esm/view/FlexibleCard/components/actions/utils.js +0 -22
  66. package/dist/esm/view/FlexibleCard/components/blocks/action-block/index.js +63 -0
  67. package/dist/esm/view/FlexibleCard/components/blocks/action-block/types.js +1 -0
  68. package/dist/esm/view/FlexibleCard/components/blocks/index.js +2 -1
  69. package/dist/esm/view/FlexibleCard/components/blocks/utils.js +6 -0
  70. package/dist/esm/view/FlexibleCard/components/container/index.js +26 -5
  71. package/dist/esm/view/FlexibleCard/components/utils.js +75 -7
  72. package/dist/esm/view/HoverCard/components/views/resolved/index.js +3 -1
  73. package/dist/esm/view/LinkUrl/index.js +1 -1
  74. package/dist/types/messages.d.ts +1 -1
  75. package/dist/types/state/hooks/use-ai-summary/ai-summary-service/index.d.ts +2 -2
  76. package/dist/types/state/hooks/use-ai-summary/ai-summary-service/types.d.ts +4 -4
  77. package/dist/types/view/FlexibleCard/components/actions/action/action-icon/types.d.ts +4 -3
  78. package/dist/types/view/FlexibleCard/components/actions/action/action-stack-item/index.d.ts +4 -0
  79. package/dist/types/view/FlexibleCard/components/actions/action/action-stack-item/types.d.ts +10 -0
  80. package/dist/types/view/FlexibleCard/components/actions/action/index.d.ts +3 -6
  81. package/dist/types/view/FlexibleCard/components/actions/action/types.d.ts +24 -16
  82. package/dist/types/view/FlexibleCard/components/actions/delete-action/index.d.ts +4 -0
  83. package/dist/types/view/FlexibleCard/components/actions/delete-action/types.d.ts +2 -0
  84. package/dist/types/view/FlexibleCard/components/actions/edit-action/index.d.ts +4 -0
  85. package/dist/types/view/FlexibleCard/components/actions/edit-action/types.d.ts +2 -0
  86. package/dist/types/view/FlexibleCard/components/actions/index.d.ts +2 -12
  87. package/dist/types/view/FlexibleCard/components/actions/preview-action/preview-icon/index.d.ts +4 -0
  88. package/dist/types/view/FlexibleCard/components/blocks/action-block/index.d.ts +4 -0
  89. package/dist/types/view/FlexibleCard/components/blocks/action-block/types.d.ts +17 -0
  90. package/dist/types/view/FlexibleCard/components/blocks/index.d.ts +1 -0
  91. package/dist/types/view/FlexibleCard/components/blocks/utils.d.ts +5 -0
  92. package/dist/types/view/FlexibleCard/components/utils.d.ts +11 -0
  93. package/dist/types-ts4.5/messages.d.ts +1 -1
  94. package/dist/types-ts4.5/state/hooks/use-ai-summary/ai-summary-service/index.d.ts +2 -2
  95. package/dist/types-ts4.5/state/hooks/use-ai-summary/ai-summary-service/types.d.ts +4 -4
  96. package/dist/types-ts4.5/view/FlexibleCard/components/actions/action/action-icon/types.d.ts +4 -3
  97. package/dist/types-ts4.5/view/FlexibleCard/components/actions/action/action-stack-item/index.d.ts +4 -0
  98. package/dist/types-ts4.5/view/FlexibleCard/components/actions/action/action-stack-item/types.d.ts +10 -0
  99. package/dist/types-ts4.5/view/FlexibleCard/components/actions/action/index.d.ts +3 -6
  100. package/dist/types-ts4.5/view/FlexibleCard/components/actions/action/types.d.ts +24 -16
  101. package/dist/types-ts4.5/view/FlexibleCard/components/actions/delete-action/index.d.ts +4 -0
  102. package/dist/types-ts4.5/view/FlexibleCard/components/actions/delete-action/types.d.ts +2 -0
  103. package/dist/types-ts4.5/view/FlexibleCard/components/actions/edit-action/index.d.ts +4 -0
  104. package/dist/types-ts4.5/view/FlexibleCard/components/actions/edit-action/types.d.ts +2 -0
  105. package/dist/types-ts4.5/view/FlexibleCard/components/actions/index.d.ts +2 -12
  106. package/dist/types-ts4.5/view/FlexibleCard/components/actions/preview-action/preview-icon/index.d.ts +4 -0
  107. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/action-block/index.d.ts +4 -0
  108. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/action-block/types.d.ts +17 -0
  109. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/index.d.ts +1 -0
  110. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/utils.d.ts +5 -0
  111. package/dist/types-ts4.5/view/FlexibleCard/components/utils.d.ts +11 -0
  112. package/package.json +4 -1
@@ -4,14 +4,25 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.DeleteAction = exports.CustomAction = void 0;
7
+ exports.CustomAction = void 0;
8
+ Object.defineProperty(exports, "DeleteAction", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _deleteAction.default;
12
+ }
13
+ });
8
14
  Object.defineProperty(exports, "DownloadAction", {
9
15
  enumerable: true,
10
16
  get: function get() {
11
17
  return _downloadAction.default;
12
18
  }
13
19
  });
14
- exports.EditAction = void 0;
20
+ Object.defineProperty(exports, "EditAction", {
21
+ enumerable: true,
22
+ get: function get() {
23
+ return _editAction.default;
24
+ }
25
+ });
15
26
  Object.defineProperty(exports, "FollowAction", {
16
27
  enumerable: true,
17
28
  get: function get() {
@@ -30,19 +41,8 @@ var _utils = require("./utils");
30
41
  var _followAction = _interopRequireDefault(require("./follow-action"));
31
42
  var _previewAction = _interopRequireDefault(require("./preview-action"));
32
43
  var _downloadAction = _interopRequireDefault(require("./download-action"));
33
- /**
34
- * Creates a DeleteAction component. Accepts default ActionProps, but defaults
35
- * the icon to a cross icon.
36
- * @see Action
37
- */
38
- var DeleteAction = exports.DeleteAction = (0, _utils.createUIAction)(_constants.ActionName.DeleteAction);
39
- /**
40
- * Creates a EditAction component. Accepts default ActionProps, but defaults
41
- * the icon to an edit (pencil) icon.
42
- * @see Action
43
- */
44
- var EditAction = exports.EditAction = (0, _utils.createUIAction)(_constants.ActionName.EditAction);
45
-
44
+ var _editAction = _interopRequireDefault(require("./edit-action"));
45
+ var _deleteAction = _interopRequireDefault(require("./delete-action"));
46
46
  /**
47
47
  * Creates a ViewAction component. Accepts default ViewActionProps, and defaults
48
48
  * to the text 'View' inside the button.
@@ -20,6 +20,7 @@ var _flexibleUiContext = require("../../../../../state/flexible-ui-context");
20
20
  var _useInvokeClientAction = _interopRequireDefault(require("../../../../../state/hooks/use-invoke-client-action"));
21
21
  var _utils = require("../../utils");
22
22
  var _action = _interopRequireDefault(require("../action"));
23
+ var _previewIcon = _interopRequireDefault(require("./preview-icon"));
23
24
  var _excluded = ["onClick"];
24
25
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
25
26
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -70,14 +71,17 @@ var PreviewAction = function PreviewAction(_ref) {
70
71
  onClickCallback();
71
72
  }
72
73
  }, [analytics, data, invoke, onClickCallback]);
74
+ var isStackItem = props.as === 'stack-item';
75
+ var Icon = isStackItem ? _previewIcon.default : _vidFullScreenOn.default;
76
+ var tooltipMessage = isStackItem ? _messages.messages.preview_description : _messages.messages.preview_improved;
73
77
  return data ? /*#__PURE__*/_react.default.createElement(_action.default, (0, _extends2.default)({
74
78
  content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.preview_improved),
75
- icon: /*#__PURE__*/_react.default.createElement(_vidFullScreenOn.default, {
79
+ icon: /*#__PURE__*/_react.default.createElement(Icon, {
76
80
  label: "Open preview"
77
81
  }),
78
82
  onClick: onClick,
79
83
  testId: "smart-action-preview-action",
80
- tooltipMessage: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.preview_improved)
84
+ tooltipMessage: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, tooltipMessage)
81
85
  }, data, props)) : null;
82
86
  };
83
87
  var _default = exports.default = PreviewAction;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _expand = _interopRequireDefault(require("@atlaskit/icon/glyph/editor/expand"));
9
+ var _primitives = require("@atlaskit/primitives");
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var iconStyles = (0, _primitives.xcss)({
12
+ transform: 'rotate(-45deg)'
13
+ });
14
+ var PreviewIcon = function PreviewIcon(props) {
15
+ return /*#__PURE__*/_react.default.createElement(_primitives.Box, {
16
+ xcss: iconStyles
17
+ }, /*#__PURE__*/_react.default.createElement(_expand.default, props));
18
+ };
19
+ var _default = exports.default = PreviewIcon;
@@ -15,8 +15,6 @@ var _react = _interopRequireWildcard(require("react"));
15
15
  var _action = _interopRequireDefault(require("./action"));
16
16
  var _reactIntlNext = require("react-intl-next");
17
17
  var _messages = require("../../../../messages");
18
- var _cross = _interopRequireDefault(require("@atlaskit/icon/glyph/cross"));
19
- var _edit = _interopRequireDefault(require("@atlaskit/icon/glyph/edit"));
20
18
  var _viewAction = _interopRequireDefault(require("./action/view-action"));
21
19
  var _shortcut = _interopRequireDefault(require("@atlaskit/icon/glyph/shortcut"));
22
20
  var _actionMappings;
@@ -27,26 +25,6 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
27
25
  var actionMappings = (_actionMappings = {}, (0, _defineProperty2.default)(_actionMappings, _constants.ActionName.CustomAction, {
28
26
  component: _action.default,
29
27
  props: {}
30
- }), (0, _defineProperty2.default)(_actionMappings, _constants.ActionName.DeleteAction, {
31
- component: _action.default,
32
- props: {
33
- testId: 'smart-action-delete-action',
34
- content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.delete),
35
- icon: /*#__PURE__*/_react.default.createElement(_cross.default, {
36
- label: "Delete"
37
- }),
38
- tooltipMessage: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.delete)
39
- }
40
- }), (0, _defineProperty2.default)(_actionMappings, _constants.ActionName.EditAction, {
41
- component: _action.default,
42
- props: {
43
- testId: 'smart-action-edit-action',
44
- content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.edit),
45
- icon: /*#__PURE__*/_react.default.createElement(_edit.default, {
46
- label: "Edit"
47
- }),
48
- tooltipMessage: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.edit)
49
- }
50
28
  }), (0, _defineProperty2.default)(_actionMappings, _constants.ActionName.ViewAction, {
51
29
  component: _viewAction.default,
52
30
  props: {
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _primitives = require("@atlaskit/primitives");
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _constants = require("../../../../../constants");
11
+ var _flexibleUiContext = require("../../../../../state/flexible-ui-context");
12
+ var Actions = _interopRequireWildcard(require("../../actions"));
13
+ var _utils = require("../../utils");
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ // We have to find a better way to ignore container padding
17
+ // This has become more and more of a common use case.
18
+ var ignoreContainerPaddingStyles = (0, _primitives.xcss)({
19
+ marginLeft: 'calc(var(--container-gap-left) * -1)',
20
+ marginRight: 'calc(var(--container-gap-right) * -1)'
21
+ });
22
+ var ActionBlock = function ActionBlock(_ref) {
23
+ var blockRef = _ref.blockRef,
24
+ onClickCallback = _ref.onClick,
25
+ size = _ref.size,
26
+ sort = _ref.sort,
27
+ spaceInline = _ref.spaceInline,
28
+ _ref$testId = _ref.testId,
29
+ testId = _ref$testId === void 0 ? 'smart-block-action' : _ref$testId;
30
+ var context = (0, _flexibleUiContext.useFlexibleUiContext)();
31
+ var ui = (0, _flexibleUiContext.useFlexibleUiOptionContext)();
32
+ var padding = !(ui !== null && ui !== void 0 && ui.hidePadding) ? (0, _utils.getPrimitivesPaddingSpaceBySize)((ui === null || ui === void 0 ? void 0 : ui.size) || _constants.SmartLinkSize.Medium) : undefined;
33
+ var actions = (0, _react.useMemo)(function () {
34
+ if (!(context !== null && context !== void 0 && context.actions)) {
35
+ return;
36
+ }
37
+ var arr = Object.keys(context.actions);
38
+ if (sort) {
39
+ arr.sort(sort);
40
+ }
41
+ return arr.map(function (name) {
42
+ var Action = Actions[name];
43
+ return Action ? /*#__PURE__*/_react.default.createElement(Action, {
44
+ as: "stack-item",
45
+ spaceInline: spaceInline,
46
+ key: name,
47
+ onClick: function onClick() {
48
+ return onClickCallback === null || onClickCallback === void 0 ? void 0 : onClickCallback(name);
49
+ },
50
+ size: size
51
+ // Remove url once ViewAction is retired.
52
+ // This seems to be a typescript workaround
53
+ // because ViewAction marks it as required,
54
+ // which does not reflect actual implementation as the url
55
+ // came from data context and not all actions require url.
56
+ // https://product-fabric.atlassian.net/browse/EDM-9547
57
+ ,
58
+ url: "",
59
+ xcss: (0, _primitives.xcss)({
60
+ paddingInline: padding
61
+ })
62
+ }) : null;
63
+ });
64
+ }, [context === null || context === void 0 ? void 0 : context.actions, onClickCallback, padding, size, sort, spaceInline]);
65
+ return actions ? /*#__PURE__*/_react.default.createElement(_primitives.Stack, {
66
+ grow: "fill",
67
+ xcss: ignoreContainerPaddingStyles,
68
+ ref: blockRef,
69
+ testId: testId
70
+ }, actions) : null;
71
+ };
72
+ var _default = exports.default = ActionBlock;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -10,6 +10,12 @@ Object.defineProperty(exports, "AISummaryBlock", {
10
10
  return _aiSummaryBlock.default;
11
11
  }
12
12
  });
13
+ Object.defineProperty(exports, "ActionBlock", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _actionBlock.default;
17
+ }
18
+ });
13
19
  Object.defineProperty(exports, "CustomBlock", {
14
20
  enumerable: true,
15
21
  get: function get() {
@@ -66,4 +72,5 @@ var _titleBlock = _interopRequireDefault(require("./title-block"));
66
72
  var _block = _interopRequireDefault(require("./block"));
67
73
  var _resolved = _interopRequireDefault(require("./footer-block/resolved"));
68
74
  var _relatedUrlsBlock = _interopRequireDefault(require("./related-urls-block"));
69
- var _aiSummaryBlock = _interopRequireDefault(require("./ai-summary-block"));
75
+ var _aiSummaryBlock = _interopRequireDefault(require("./ai-summary-block"));
76
+ var _actionBlock = _interopRequireDefault(require("./action-block"));
@@ -40,6 +40,12 @@ var getDirectionStyles = function getDirectionStyles(direction) {
40
40
  });
41
41
  }
42
42
  };
43
+
44
+ /**
45
+ * Get gap size between elements inside a block
46
+ * Equivalent version for DS primitives space token is getPrimitivesInlineSpaceBySize()
47
+ * at view/FlexibleCard/components/utils.tsx
48
+ */
43
49
  var getGapSize = exports.getGapSize = function getGapSize(size) {
44
50
  switch (size) {
45
51
  case _constants.SmartLinkSize.XLarge:
@@ -17,11 +17,15 @@ var _hoverCardControl = _interopRequireDefault(require("./hover-card-control"));
17
17
  var _utils = require("../../../../state/flexible-ui-context/utils");
18
18
  var _colors = require("@atlaskit/theme/colors");
19
19
  var _reactMagneticDi = require("react-magnetic-di");
20
- var _templateObject, _templateObject2, _templateObject3, _templateObject4;
20
+ var _templateObject;
21
21
  /** @jsx jsx */
22
22
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
23
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
- var elevationStyles = (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n border: 1px solid ", ";\n border-radius: ", ";\n margin: ", ";\n"])), "var(--ds-border, ".concat(_colors.N40, ")"), "var(--ds-border-radius-200, 8px)", "var(--ds-space-025, 2px)");
24
+ var elevationStyles = (0, _react2.css)({
25
+ border: "1px solid ".concat("var(--ds-border, ".concat(_colors.N40, ")")),
26
+ borderRadius: "var(--ds-border-radius-200, 8px)",
27
+ margin: "var(--ds-space-025, 2px)"
28
+ });
25
29
  var getGap = function getGap(size) {
26
30
  switch (size) {
27
31
  case _constants.SmartLinkSize.XLarge:
@@ -35,6 +39,12 @@ var getGap = function getGap(size) {
35
39
  return '.25rem';
36
40
  }
37
41
  };
42
+
43
+ /**
44
+ * Get container padding based on smart link size
45
+ * Equivalent version for DS primitives space token is getPrimitivesPaddingSpaceBySize()
46
+ * at view/FlexibleCard/components/utils.tsx
47
+ */
38
48
  var getPadding = function getPadding(size) {
39
49
  switch (size) {
40
50
  case _constants.SmartLinkSize.XLarge:
@@ -48,13 +58,24 @@ var getPadding = function getPadding(size) {
48
58
  return '.5rem';
49
59
  }
50
60
  };
51
- var clickableContainerStyles = (0, _react2.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n // Position any interactive elements at the top of the z-index stack.\n a,\n button,\n .has-action {\n position: relative;\n z-index: 1;\n }\n"])));
61
+ var clickableContainerStyles = (0, _react2.css)({
62
+ 'a, button, .has-action': {
63
+ position: 'relative',
64
+ zIndex: 1
65
+ }
66
+ });
52
67
  var getContainerPaddingStyles = function getContainerPaddingStyles(size, hidePadding, childrenOptions) {
53
68
  var padding = hidePadding ? '0rem' : getPadding(size);
54
69
  var gap = getGap(size);
55
70
  var previewOnLeft = childrenOptions.previewOnLeft,
56
71
  previewOnRight = childrenOptions.previewOnRight;
57
- return (0, _react2.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n // Set variables for PreviewBlock to use.\n --container-padding: ", ";\n --container-gap-left: ", ";\n --container-gap-right: ", ";\n --preview-block-width: 30%;\n\n padding: ", ";\n ", "\n ", "\n "])), padding, previewOnLeft ? gap : padding, previewOnRight ? gap : padding, padding, previewOnLeft ? "padding-left: calc(var(--preview-block-width) + ".concat(gap, ");") : '', previewOnRight ? "padding-right: calc(var(--preview-block-width) + ".concat(gap, ");") : '');
72
+ return (0, _react2.css)({
73
+ '--container-padding': padding,
74
+ '--container-gap-left': previewOnLeft ? gap : padding,
75
+ '--container-gap-right': previewOnRight ? gap : padding,
76
+ '--preview-block-width': '30%',
77
+ padding: padding
78
+ }, previewOnLeft ? "padding-left: calc(var(--preview-block-width) + ".concat(gap, ");") : '', previewOnRight ? "padding-right: calc(var(--preview-block-width) + ".concat(gap, ");") : '');
58
79
  };
59
80
  var getChildrenOptions = function getChildrenOptions(children, context) {
60
81
  var options = {};
@@ -77,7 +98,7 @@ var getChildrenOptions = function getChildrenOptions(children, context) {
77
98
  };
78
99
  var getContainerStyles = exports.getContainerStyles = function getContainerStyles(size, hideBackground, hideElevation, hidePadding, clickableContainer, childrenOptions) {
79
100
  var paddingCss = getContainerPaddingStyles(size, hidePadding, childrenOptions);
80
- return (0, _react2.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n gap: ", " 0;\n flex-direction: column;\n min-width: 0;\n overflow-x: hidden;\n position: relative;\n ", "\n ", "\n ", "\n ", "\n &:hover ~ .actions-button-group {\n opacity: 1;\n }\n a:focus,\n .has-action:focus {\n outline-offset: -2px;\n }\n "])), getGap(size), hideBackground ? '' : "background-color: ".concat("var(--ds-surface-raised, #FFFFFF)", ";"), paddingCss, hideElevation ? '' : elevationStyles, clickableContainer ? clickableContainerStyles : '');
101
+ return (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n gap: ", " 0;\n flex-direction: column;\n min-width: 0;\n overflow-x: hidden;\n position: relative;\n ", "\n ", "\n ", "\n ", "\n &:hover ~ .actions-button-group {\n opacity: 1;\n }\n a:focus,\n .has-action:focus {\n outline-offset: -2px;\n }\n "])), getGap(size), hideBackground ? '' : "background-color: ".concat("var(--ds-surface-raised, #FFFFFF)", ";"), paddingCss, hideElevation ? '' : elevationStyles, clickableContainer ? clickableContainerStyles : '');
81
102
  };
82
103
  var renderChildren = function renderChildren(children, containerSize, containerTheme, status, retry, onClick) {
83
104
  return _react.default.Children.map(children, function (child) {
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.sizeToButtonSpacing = exports.openEmbedModalWithFlexibleUiIcon = exports.hasWhiteSpace = exports.getTruncateStyles = exports.getMaxLines = exports.getMaxLineHeight = exports.getLinkSizeStyles = exports.getLinkLineHeight = exports.getIconWidth = exports.getIconSizeStyles = exports.getFormattedMessageAsString = exports.getFormattedMessage = void 0;
7
+ exports.sizeToButtonSpacing = exports.openEmbedModalWithFlexibleUiIcon = exports.hasWhiteSpace = exports.getTruncateStyles = exports.getPrimitivesPaddingSpaceBySize = exports.getPrimitivesInlineSpaceBySize = exports.getMaxLines = exports.getMaxLineHeight = exports.getLinkSizeStyles = exports.getLinkLineHeight = exports.getIconWidth = exports.getIconSizeStyles = exports.getFormattedMessageAsString = exports.getFormattedMessage = void 0;
8
8
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
9
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
@@ -16,7 +16,7 @@ var _constants = require("../../../constants");
16
16
  var _icon = _interopRequireDefault(require("./elements/icon"));
17
17
  var _utils = require("../../EmbedModal/utils");
18
18
  var _excluded = ["linkIcon"];
19
- var _sizeToButtonSpacing, _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
19
+ var _sizeToButtonSpacing, _templateObject;
20
20
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21
21
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22
22
  var sizeToButtonSpacing = exports.sizeToButtonSpacing = (_sizeToButtonSpacing = {}, (0, _defineProperty2.default)(_sizeToButtonSpacing, _constants.SmartLinkSize.Small, 'none'), (0, _defineProperty2.default)(_sizeToButtonSpacing, _constants.SmartLinkSize.Medium, 'compact'), (0, _defineProperty2.default)(_sizeToButtonSpacing, _constants.SmartLinkSize.Large, 'compact'), (0, _defineProperty2.default)(_sizeToButtonSpacing, _constants.SmartLinkSize.XLarge, 'default'), _sizeToButtonSpacing);
@@ -36,11 +36,18 @@ var getFormattedMessageAsString = exports.getFormattedMessageAsString = function
36
36
  }) : '';
37
37
  };
38
38
  var getIconDimensionStyles = function getIconDimensionStyles(value) {
39
- return (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n height: ", ";\n min-height: ", ";\n max-height: ", ";\n width: ", ";\n min-width: ", ";\n max-width: ", ";\n"])), value, value, value, value, value, value);
39
+ return (0, _react2.css)({
40
+ height: value,
41
+ minHeight: value,
42
+ maxHeight: value,
43
+ width: value,
44
+ minWidth: value,
45
+ maxWidth: value
46
+ });
40
47
  };
41
48
  var getIconSizeStyles = exports.getIconSizeStyles = function getIconSizeStyles(width) {
42
49
  var sizeStyles = getIconDimensionStyles(width);
43
- return (0, _react2.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n flex: 0 0 auto;\n ", "\n span,\n svg,\n img {\n ", "\n }\n svg {\n padding: 0;\n }\n "])), sizeStyles, sizeStyles);
50
+ return (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n flex: 0 0 auto;\n ", "\n span,\n svg,\n img {\n ", "\n }\n svg {\n padding: 0;\n }\n "])), sizeStyles, sizeStyles);
44
51
  };
45
52
  var getIconWidth = exports.getIconWidth = function getIconWidth(size) {
46
53
  switch (size) {
@@ -69,13 +76,28 @@ var getLinkLineHeight = exports.getLinkLineHeight = function getLinkLineHeight(s
69
76
  var getLinkSizeStyles = exports.getLinkSizeStyles = function getLinkSizeStyles(size) {
70
77
  switch (size) {
71
78
  case _constants.SmartLinkSize.XLarge:
72
- return (0, _react2.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n font-size: 1.25rem;\n font-weight: 400;\n letter-spacing: -0.008em;\n line-height: ", ";\n "])), getLinkLineHeight(size));
79
+ return (0, _react2.css)({
80
+ fontSize: '1.25rem',
81
+ fontWeight: 400,
82
+ letterSpacing: '-0.008em',
83
+ lineHeight: getLinkLineHeight(size)
84
+ });
73
85
  case _constants.SmartLinkSize.Large:
74
86
  case _constants.SmartLinkSize.Medium:
75
- return (0, _react2.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n font-size: 0.875rem;\n font-weight: 400;\n letter-spacing: -0.003em;\n line-height: ", ";\n "])), getLinkLineHeight(size));
87
+ return (0, _react2.css)({
88
+ fontSize: '0.875rem',
89
+ fontWeight: 400,
90
+ letterSpacing: '-0.003em',
91
+ lineHeight: getLinkLineHeight(size)
92
+ });
76
93
  case _constants.SmartLinkSize.Small:
77
94
  default:
78
- return (0, _react2.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n font-size: 0.75rem;\n font-weight: 400;\n letter-spacing: 0em;\n line-height: ", ";\n "])), getLinkLineHeight(size));
95
+ return (0, _react2.css)({
96
+ fontSize: '0.75rem',
97
+ fontWeight: 400,
98
+ letterSpacing: '0em',
99
+ lineHeight: getLinkLineHeight(size)
100
+ });
79
101
  }
80
102
  };
81
103
  var getMaxLineHeight = exports.getMaxLineHeight = function getMaxLineHeight(size) {
@@ -100,10 +122,56 @@ var getMaxLines = exports.getMaxLines = function getMaxLines(value, defaultValue
100
122
  }
101
123
  return value;
102
124
  };
125
+
126
+ /**
127
+ * A space between element based on smart link size
128
+ * To replace blocks/utils.tsz getGapSize() with space token for primitives
129
+ */
130
+ var getPrimitivesInlineSpaceBySize = exports.getPrimitivesInlineSpaceBySize = function getPrimitivesInlineSpaceBySize(size) {
131
+ switch (size) {
132
+ case _constants.SmartLinkSize.XLarge:
133
+ return 'space.250';
134
+ case _constants.SmartLinkSize.Large:
135
+ return 'space.200';
136
+ case _constants.SmartLinkSize.Medium:
137
+ return 'space.100';
138
+ case _constants.SmartLinkSize.Small:
139
+ default:
140
+ return 'space.050';
141
+ }
142
+ };
143
+
144
+ /**
145
+ * Get container padding based on smart link size
146
+ * To replace container/index.tsx getPadding() with space token for primitives
147
+ */
148
+ var getPrimitivesPaddingSpaceBySize = exports.getPrimitivesPaddingSpaceBySize = function getPrimitivesPaddingSpaceBySize(size) {
149
+ switch (size) {
150
+ case _constants.SmartLinkSize.XLarge:
151
+ return 'space.300';
152
+ case _constants.SmartLinkSize.Large:
153
+ return 'space.250';
154
+ case _constants.SmartLinkSize.Medium:
155
+ return 'space.200';
156
+ case _constants.SmartLinkSize.Small:
157
+ default:
158
+ return 'space.100';
159
+ }
160
+ };
103
161
  var getTruncateStyles = exports.getTruncateStyles = function getTruncateStyles(maxLines) {
104
162
  var lineHeight = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '1rem';
105
163
  var wordBreak = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'break-word';
106
- return (0, _react2.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n display: -webkit-box;\n overflow: hidden;\n text-overflow: ellipsis;\n word-break: ", ";\n -webkit-line-clamp: ", ";\n -webkit-box-orient: vertical;\n // Fallback options\n @supports not (-webkit-line-clamp: 1) {\n max-height: calc(", " * ", ");\n }\n "])), wordBreak, maxLines, maxLines, lineHeight);
164
+ return (0, _react2.css)({
165
+ display: '-webkit-box',
166
+ overflow: 'hidden',
167
+ textOverflow: 'ellipsis',
168
+ wordBreak: wordBreak,
169
+ WebkitLineClamp: maxLines,
170
+ WebkitBoxOrient: 'vertical',
171
+ '@supports not (-webkit-line-clamp: 1)': {
172
+ maxHeight: "calc(".concat(maxLines, " * ").concat(lineHeight, ")")
173
+ }
174
+ });
107
175
  };
108
176
  var hasWhiteSpace = exports.hasWhiteSpace = function hasWhiteSpace(str) {
109
177
  return str.search(/\s/) >= 0;
@@ -192,6 +192,8 @@ var HoverCardResolvedView = function HoverCardResolvedView(_ref2) {
192
192
  actions: footerActions,
193
193
  size: _constants.SmartLinkSize.Large,
194
194
  overrideCss: _styled.footerBlockCss
195
+ }), (0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.hover-card-action-redesign') && /*#__PURE__*/_react.default.createElement(_blocks.ActionBlock, {
196
+ spaceInline: "space.150"
195
197
  }));
196
198
  };
197
199
  var _default = exports.default = HoverCardResolvedView;
@@ -17,7 +17,7 @@ var _excluded = ["href", "children", "checkSafety", "onClick", "testId"],
17
17
  _excluded2 = ["isLinkSafe", "showSafetyWarningModal"];
18
18
  var PACKAGE_DATA = {
19
19
  packageName: "@atlaskit/smart-card",
20
- packageVersion: "26.52.2",
20
+ packageVersion: "26.52.4",
21
21
  componentName: 'linkUrl'
22
22
  };
23
23
  var Link = (0, _click.withLinkClickedEvent)('a');
@@ -4,9 +4,9 @@ import { extractPreviewAction } from './extract-preview-action';
4
4
  import extractFollowAction from './extract-follow-action';
5
5
  const extractActions = (response, data, actionOptions, id) => {
6
6
  const action = {
7
- [ActionName.PreviewAction]: extractPreviewAction(response, actionOptions),
8
7
  [ActionName.DownloadAction]: extractDownloadAction(data, actionOptions),
9
- [ActionName.FollowAction]: extractFollowAction(response, actionOptions, id)
8
+ [ActionName.FollowAction]: extractFollowAction(response, actionOptions, id),
9
+ [ActionName.PreviewAction]: extractPreviewAction(response, actionOptions)
10
10
  };
11
11
  return Object.values(action).some(value => Boolean(value)) ? action : undefined;
12
12
  };
@@ -255,6 +255,11 @@ export const messages = defineMessages({
255
255
  defaultMessage: 'Owned by {context}',
256
256
  description: 'Indicates the person or entity that owns or maintains the resource.'
257
257
  },
258
+ preview_description: {
259
+ id: 'fabric.linking.preview_description.nonfinal',
260
+ defaultMessage: 'Open a full screen preview of this link',
261
+ description: 'Description on what Preview does'
262
+ },
258
263
  preview_improved: {
259
264
  id: 'fabric.linking.preview_improved',
260
265
  defaultMessage: 'Open preview',
@@ -9,13 +9,13 @@ export class AISummaryService {
9
9
  status: 'ready'
10
10
  });
11
11
  _defineProperty(this, "subscribedStateSetters", new Set());
12
- _defineProperty(this, "fetchStream", async summaryStyle => {
12
+ _defineProperty(this, "fetchStream", async () => {
13
13
  const payload = {
14
14
  recipient_agent_named_id: 'summary_agent',
15
15
  agent_input_context: {
16
16
  content_url: this.url,
17
17
  content_ari: this.ari,
18
- summary_style: summaryStyle,
18
+ prompt_id: 'smart_links',
19
19
  summary_output_mimetype: 'text/markdown'
20
20
  }
21
21
  };
@@ -54,7 +54,7 @@ export class AISummaryService {
54
54
  this.onSuccess = props.onSuccess;
55
55
  this.onError = props.onError;
56
56
  }
57
- async summariseUrl(summaryStyle = 'medium') {
57
+ async summariseUrl() {
58
58
  this.state = {
59
59
  status: 'loading',
60
60
  content: ''
@@ -66,7 +66,7 @@ export class AISummaryService {
66
66
  try {
67
67
  var _this$onStart, _this$onSuccess;
68
68
  (_this$onStart = this.onStart) === null || _this$onStart === void 0 ? void 0 : _this$onStart.call(this, id);
69
- const stream = await this.fetchStream(summaryStyle);
69
+ const stream = await this.fetchStream();
70
70
  let bufferContent = '';
71
71
  for await (const chunk of stream) {
72
72
  if (chunk.type === 'ANSWER_PART') {
@@ -4,7 +4,7 @@ export const ANALYTICS_CHANNEL = 'media';
4
4
  export const context = {
5
5
  componentName: 'smart-cards',
6
6
  packageName: "@atlaskit/smart-card",
7
- packageVersion: "26.52.2"
7
+ packageVersion: "26.52.4"
8
8
  };
9
9
  export let TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
10
10
  TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
@@ -14,17 +14,32 @@ const getIconWidth = size => {
14
14
  return '1rem';
15
15
  }
16
16
  };
17
- const getIconStyles = (size, isDisabled) => css`
18
- color: ${isDisabled ? "var(--ds-text-disabled, #6B778C)" : "var(--ds-icon, #44546F)"};
19
- ${getIconSizeStyles(getIconWidth(size))};
20
- `;
17
+ const getIconStyles = isDisabled => css({
18
+ color: isDisabled ? "var(--ds-text-disabled, #6B778C)" : "var(--ds-icon, #44546F)"
19
+ });
20
+ const backgroundStyles = css({
21
+ backgroundColor: "var(--ds-background-brand-subtlest, #E9F2FF)",
22
+ borderRadius: "var(--ds-border-radius-050, 2px)",
23
+ color: "var(--ds-icon-brand, #0C66E4)",
24
+ display: 'inline-block',
25
+ lineHeight: 0,
26
+ padding: "var(--ds-space-025, 2px)",
27
+ 'span,svg,img': {
28
+ lineHeight: 0
29
+ },
30
+ // Use !important to win over `style` prop specificity in DS Spinner. :(
31
+ circle: {
32
+ stroke: `${"var(--ds-icon-brand, #0C66E4)"} !important`
33
+ }
34
+ });
21
35
  const ActionIcon = ({
22
36
  size,
23
37
  testId,
24
38
  icon,
25
- isDisabled
39
+ isDisabled,
40
+ showBackground
26
41
  }) => jsx("span", {
27
- css: getIconStyles(size, isDisabled),
42
+ css: [getIconStyles(isDisabled), getIconSizeStyles(getIconWidth(size)), showBackground && backgroundStyles],
28
43
  "data-testid": `${testId}-icon`
29
44
  }, icon);
30
45
  export default ActionIcon;