@atlaskit/smart-card 17.7.2 → 17.7.5

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 (133) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/cjs/classNames.js +2 -2
  3. package/dist/cjs/version.json +1 -1
  4. package/dist/cjs/view/BlockCard/actions/PreviewAction.js +1 -1
  5. package/dist/cjs/view/BlockCard/components/ActionList.js +1 -1
  6. package/dist/cjs/view/BlockCard/components/CollaboratorList.js +1 -1
  7. package/dist/cjs/view/BlockCard/components/Content.js +1 -1
  8. package/dist/cjs/view/BlockCard/components/ContentFooter.js +1 -1
  9. package/dist/cjs/view/BlockCard/components/Emoji.js +1 -1
  10. package/dist/cjs/view/BlockCard/components/Frame.js +1 -1
  11. package/dist/cjs/view/BlockCard/components/Name.js +1 -1
  12. package/dist/cjs/view/BlockCard/components/Provider.js +1 -1
  13. package/dist/cjs/view/BlockCard/components/Thumbnail.js +1 -1
  14. package/dist/cjs/view/BlockCard/views/ErroredView.js +1 -1
  15. package/dist/cjs/view/BlockCard/views/ForbiddenView.js +1 -1
  16. package/dist/cjs/view/BlockCard/views/NotFoundView.js +1 -1
  17. package/dist/cjs/view/BlockCard/views/ResolvedView.js +4 -4
  18. package/dist/cjs/view/BlockCard/views/ResolvingView.js +1 -1
  19. package/dist/cjs/view/BlockCard/views/UnauthorizedView.js +1 -1
  20. package/dist/cjs/view/EmbedCard/components/styled.js +1 -1
  21. package/dist/cjs/view/EmbedCard/views/ErroredView.js +1 -1
  22. package/dist/cjs/view/EmbedCard/views/UnresolvedView.js +1 -1
  23. package/dist/cjs/view/FlexibleCard/components/blocks/action-group/index.js +15 -7
  24. package/dist/cjs/view/FlexibleCard/components/blocks/block/index.js +3 -2
  25. package/dist/cjs/view/FlexibleCard/components/blocks/title-block/resolved/index.js +40 -11
  26. package/dist/cjs/view/HoverCard/index.js +37 -0
  27. package/dist/cjs/view/HoverCard/styled.js +19 -0
  28. package/dist/cjs/view/HoverCard/types.js +5 -0
  29. package/dist/cjs/view/InlineCard/ResolvedView/index.js +15 -2
  30. package/dist/cjs/view/InlineCard/index.js +3 -1
  31. package/dist/cjs/view/{BlockCard/components → common}/Byline.js +1 -1
  32. package/dist/cjs/view/{BlockCard/components → common}/Icon.js +1 -1
  33. package/dist/cjs/view/{BlockCard/components → common}/Metadata.js +1 -1
  34. package/dist/cjs/view/{BlockCard/components → common}/MetadataList.js +1 -1
  35. package/dist/cjs/view/{BlockCard/components → common}/Modal.js +1 -1
  36. package/dist/cjs/view/{BlockCard/components → common}/ModalHeader.js +1 -1
  37. package/dist/cjs/view/{BlockCard/utils/index.js → common/utils.js} +0 -0
  38. package/dist/es2019/classNames.js +2 -2
  39. package/dist/es2019/version.json +1 -1
  40. package/dist/es2019/view/BlockCard/actions/PreviewAction.js +1 -1
  41. package/dist/es2019/view/BlockCard/components/ActionList.js +1 -1
  42. package/dist/es2019/view/BlockCard/components/CollaboratorList.js +1 -1
  43. package/dist/es2019/view/BlockCard/components/Content.js +1 -1
  44. package/dist/es2019/view/BlockCard/components/ContentFooter.js +1 -1
  45. package/dist/es2019/view/BlockCard/components/Emoji.js +1 -1
  46. package/dist/es2019/view/BlockCard/components/Frame.js +1 -1
  47. package/dist/es2019/view/BlockCard/components/Name.js +1 -1
  48. package/dist/es2019/view/BlockCard/components/Provider.js +1 -1
  49. package/dist/es2019/view/BlockCard/components/Thumbnail.js +1 -1
  50. package/dist/es2019/view/BlockCard/views/ErroredView.js +1 -1
  51. package/dist/es2019/view/BlockCard/views/ForbiddenView.js +1 -1
  52. package/dist/es2019/view/BlockCard/views/NotFoundView.js +1 -1
  53. package/dist/es2019/view/BlockCard/views/ResolvedView.js +4 -4
  54. package/dist/es2019/view/BlockCard/views/ResolvingView.js +1 -1
  55. package/dist/es2019/view/BlockCard/views/UnauthorizedView.js +1 -1
  56. package/dist/es2019/view/EmbedCard/components/styled.js +1 -1
  57. package/dist/es2019/view/EmbedCard/views/ErroredView.js +1 -1
  58. package/dist/es2019/view/EmbedCard/views/UnresolvedView.js +1 -1
  59. package/dist/es2019/view/FlexibleCard/components/blocks/action-group/index.js +10 -4
  60. package/dist/es2019/view/FlexibleCard/components/blocks/block/index.js +3 -2
  61. package/dist/es2019/view/FlexibleCard/components/blocks/title-block/resolved/index.js +30 -10
  62. package/dist/es2019/view/HoverCard/index.js +20 -0
  63. package/dist/es2019/view/HoverCard/styled.js +9 -0
  64. package/dist/es2019/view/HoverCard/types.js +1 -0
  65. package/dist/es2019/view/InlineCard/ResolvedView/index.js +12 -2
  66. package/dist/es2019/view/InlineCard/index.js +3 -1
  67. package/dist/es2019/view/{BlockCard/components → common}/Byline.js +1 -1
  68. package/dist/es2019/view/{BlockCard/components → common}/Icon.js +1 -1
  69. package/dist/es2019/view/{BlockCard/components → common}/Metadata.js +1 -1
  70. package/dist/es2019/view/{BlockCard/components → common}/MetadataList.js +1 -1
  71. package/dist/es2019/view/{BlockCard/components → common}/Modal.js +1 -1
  72. package/dist/es2019/view/{BlockCard/components → common}/ModalHeader.js +1 -1
  73. package/dist/es2019/view/{BlockCard/utils/index.js → common/utils.js} +0 -0
  74. package/dist/esm/classNames.js +2 -2
  75. package/dist/esm/version.json +1 -1
  76. package/dist/esm/view/BlockCard/actions/PreviewAction.js +1 -1
  77. package/dist/esm/view/BlockCard/components/ActionList.js +1 -1
  78. package/dist/esm/view/BlockCard/components/CollaboratorList.js +1 -1
  79. package/dist/esm/view/BlockCard/components/Content.js +1 -1
  80. package/dist/esm/view/BlockCard/components/ContentFooter.js +1 -1
  81. package/dist/esm/view/BlockCard/components/Emoji.js +1 -1
  82. package/dist/esm/view/BlockCard/components/Frame.js +1 -1
  83. package/dist/esm/view/BlockCard/components/Name.js +1 -1
  84. package/dist/esm/view/BlockCard/components/Provider.js +1 -1
  85. package/dist/esm/view/BlockCard/components/Thumbnail.js +1 -1
  86. package/dist/esm/view/BlockCard/views/ErroredView.js +1 -1
  87. package/dist/esm/view/BlockCard/views/ForbiddenView.js +1 -1
  88. package/dist/esm/view/BlockCard/views/NotFoundView.js +1 -1
  89. package/dist/esm/view/BlockCard/views/ResolvedView.js +4 -4
  90. package/dist/esm/view/BlockCard/views/ResolvingView.js +1 -1
  91. package/dist/esm/view/BlockCard/views/UnauthorizedView.js +1 -1
  92. package/dist/esm/view/EmbedCard/components/styled.js +1 -1
  93. package/dist/esm/view/EmbedCard/views/ErroredView.js +1 -1
  94. package/dist/esm/view/EmbedCard/views/UnresolvedView.js +1 -1
  95. package/dist/esm/view/FlexibleCard/components/blocks/action-group/index.js +15 -7
  96. package/dist/esm/view/FlexibleCard/components/blocks/block/index.js +3 -2
  97. package/dist/esm/view/FlexibleCard/components/blocks/title-block/resolved/index.js +31 -11
  98. package/dist/esm/view/HoverCard/index.js +19 -0
  99. package/dist/esm/view/HoverCard/styled.js +7 -0
  100. package/dist/esm/view/HoverCard/types.js +1 -0
  101. package/dist/esm/view/InlineCard/ResolvedView/index.js +13 -2
  102. package/dist/esm/view/InlineCard/index.js +3 -1
  103. package/dist/esm/view/{BlockCard/components → common}/Byline.js +1 -1
  104. package/dist/esm/view/{BlockCard/components → common}/Icon.js +1 -1
  105. package/dist/esm/view/{BlockCard/components → common}/Metadata.js +1 -1
  106. package/dist/esm/view/{BlockCard/components → common}/MetadataList.js +1 -1
  107. package/dist/esm/view/{BlockCard/components → common}/Modal.js +1 -1
  108. package/dist/esm/view/{BlockCard/components → common}/ModalHeader.js +1 -1
  109. package/dist/esm/view/{BlockCard/utils/index.js → common/utils.js} +0 -0
  110. package/dist/types/classNames.d.ts +2 -2
  111. package/dist/types/view/BlockCard/actions/PreviewAction.d.ts +3 -3
  112. package/dist/types/view/BlockCard/views/ForbiddenView.d.ts +1 -1
  113. package/dist/types/view/BlockCard/views/NotFoundView.d.ts +1 -1
  114. package/dist/types/view/BlockCard/views/ResolvedView.d.ts +2 -2
  115. package/dist/types/view/BlockCard/views/UnauthorizedView.d.ts +1 -1
  116. package/dist/types/view/Card/index.d.ts +1 -1
  117. package/dist/types/view/FlexibleCard/components/blocks/action-group/types.d.ts +2 -0
  118. package/dist/types/view/FlexibleCard/components/blocks/title-block/resolved/index.d.ts +1 -0
  119. package/dist/types/view/FlexibleCard/components/blocks/title-block/types.d.ts +1 -0
  120. package/dist/types/view/FlexibleCard/components/blocks/types.d.ts +2 -0
  121. package/dist/types/view/HoverCard/index.d.ts +3 -0
  122. package/dist/types/view/HoverCard/styled.d.ts +2 -0
  123. package/dist/types/view/HoverCard/types.d.ts +3 -0
  124. package/dist/types/view/InlineCard/ResolvedView/index.d.ts +2 -0
  125. package/dist/types/view/InlineCard/types.d.ts +1 -0
  126. package/dist/types/view/{BlockCard/components → common}/Byline.d.ts +0 -0
  127. package/dist/types/view/{BlockCard/components → common}/Icon.d.ts +0 -0
  128. package/dist/types/view/{BlockCard/components → common}/Metadata.d.ts +0 -0
  129. package/dist/types/view/{BlockCard/components → common}/MetadataList.d.ts +0 -0
  130. package/dist/types/view/{BlockCard/components → common}/Modal.d.ts +0 -0
  131. package/dist/types/view/{BlockCard/components → common}/ModalHeader.d.ts +0 -0
  132. package/dist/types/view/{BlockCard/utils/index.d.ts → common/utils.d.ts} +0 -0
  133. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @atlaskit/smart-card
2
2
 
3
+ ## 17.7.5
4
+
5
+ ### Patch Changes
6
+
7
+ - [`b89ef291fb9`](https://bitbucket.org/atlassian/atlassian-frontend/commits/b89ef291fb9) - EDM-2902: Move common component out of BlockCard
8
+
9
+ ## 17.7.4
10
+
11
+ ### Patch Changes
12
+
13
+ - [`ff7b1126682`](https://bitbucket.org/atlassian/atlassian-frontend/commits/ff7b1126682) - Set up base component and relevant tests for hover previews
14
+
15
+ ## 17.7.3
16
+
17
+ ### Patch Changes
18
+
19
+ - [`474d69913ef`](https://bitbucket.org/atlassian/atlassian-frontend/commits/474d69913ef) - Title block can have an action visible only on hover
20
+
3
21
  ## 17.7.2
4
22
 
5
23
  ### Patch Changes
@@ -84,7 +84,7 @@ Object.defineProperty(exports, "metadataListClassName", {
84
84
 
85
85
  var _ContentFooter = require("./view/BlockCard/components/ContentFooter");
86
86
 
87
- var _MetadataList = require("./view/BlockCard/components/MetadataList");
87
+ var _MetadataList = require("./view/common/MetadataList");
88
88
 
89
89
  var _ResolvingView = require("./view/BlockCard/views/ResolvingView");
90
90
 
@@ -92,7 +92,7 @@ var _ResolvedView = require("./view/BlockCard/views/ResolvedView");
92
92
 
93
93
  var _ForbiddenView = require("./view/BlockCard/views/ForbiddenView");
94
94
 
95
- var _Icon = require("./view/BlockCard/components/Icon");
95
+ var _Icon = require("./view/common/Icon");
96
96
 
97
97
  var _Content = require("./view/BlockCard/components/Content");
98
98
 
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/smart-card",
3
- "version": "17.7.2",
3
+ "version": "17.7.5",
4
4
  "sideEffects": false
5
5
  }
@@ -81,7 +81,7 @@ function _previewFunction() {
81
81
 
82
82
  _context.next = 5;
83
83
  return Promise.resolve().then(function () {
84
- return _interopRequireWildcard(require('../components/Modal'));
84
+ return _interopRequireWildcard(require('../../common/Modal'));
85
85
  });
86
86
 
87
87
  case 5:
@@ -25,7 +25,7 @@ var _more = _interopRequireDefault(require("@atlaskit/icon/glyph/more"));
25
25
 
26
26
  var _Action = require("./Action");
27
27
 
28
- var _utils = require("../utils");
28
+ var _utils = require("../../common/utils");
29
29
 
30
30
  var _excluded = ["triggerRef"];
31
31
 
@@ -11,7 +11,7 @@ var _core = require("@emotion/core");
11
11
 
12
12
  var _avatarGroup = _interopRequireDefault(require("@atlaskit/avatar-group"));
13
13
 
14
- var _utils = require("../utils");
14
+ var _utils = require("../../common/utils");
15
15
 
16
16
  /** @jsx jsx */
17
17
  var CollaboratorList = function CollaboratorList(_ref) {
@@ -7,7 +7,7 @@ exports.blockCardContentClassName = exports.Content = void 0;
7
7
 
8
8
  var _core = require("@emotion/core");
9
9
 
10
- var _utils = require("../utils");
10
+ var _utils = require("../../common/utils");
11
11
 
12
12
  /** @jsx jsx */
13
13
  var blockCardContentClassName = 'block-card-content';
@@ -7,7 +7,7 @@ exports.contentFooterClassName = exports.ContentFooter = void 0;
7
7
 
8
8
  var _core = require("@emotion/core");
9
9
 
10
- var _utils = require("../utils");
10
+ var _utils = require("../../common/utils");
11
11
 
12
12
  /** @jsx jsx */
13
13
  var contentFooterClassName = 'smart-link-content-footer';
@@ -11,7 +11,7 @@ var _core = require("@emotion/core");
11
11
 
12
12
  var _react = _interopRequireDefault(require("react"));
13
13
 
14
- var _utils = require("../utils");
14
+ var _utils = require("../../common/utils");
15
15
 
16
16
  /** @jsx jsx */
17
17
  var Emoji = function Emoji(_ref) {
@@ -15,7 +15,7 @@ var _react = _interopRequireDefault(require("react"));
15
15
 
16
16
  var _colors = require("@atlaskit/theme/colors");
17
17
 
18
- var _utils = require("../utils");
18
+ var _utils = require("../../common/utils");
19
19
 
20
20
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
21
 
@@ -9,7 +9,7 @@ var _core = require("@emotion/core");
9
9
 
10
10
  var _constants = require("@atlaskit/theme/constants");
11
11
 
12
- var _utils = require("../utils");
12
+ var _utils = require("../../common/utils");
13
13
 
14
14
  /** @jsx jsx */
15
15
  var blockCardContentHeaderNameClassName = 'block-card-content-header-name';
@@ -9,7 +9,7 @@ var _core = require("@emotion/core");
9
9
 
10
10
  var _colors = require("@atlaskit/theme/colors");
11
11
 
12
- var _utils = require("../utils");
12
+ var _utils = require("../../common/utils");
13
13
 
14
14
  /** @jsx jsx */
15
15
  var Provider = function Provider(_ref) {
@@ -11,7 +11,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
11
11
 
12
12
  var _core = require("@emotion/core");
13
13
 
14
- var _utils = require("../utils");
14
+ var _utils = require("../../common/utils");
15
15
 
16
16
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
17
 
@@ -21,7 +21,7 @@ var _warning = _interopRequireDefault(require("@atlaskit/icon/glyph/warning"));
21
21
 
22
22
  var _Frame = require("../components/Frame");
23
23
 
24
- var _Byline = require("../components/Byline");
24
+ var _Byline = require("../../common/Byline");
25
25
 
26
26
  var _ActionList = require("../components/ActionList");
27
27
 
@@ -23,7 +23,7 @@ var _Frame = require("../components/Frame");
23
23
 
24
24
  var _Provider = require("../components/Provider");
25
25
 
26
- var _Byline = require("../components/Byline");
26
+ var _Byline = require("../../common/Byline");
27
27
 
28
28
  var _ActionList = require("../components/ActionList");
29
29
 
@@ -23,7 +23,7 @@ var _Frame = require("../components/Frame");
23
23
 
24
24
  var _Provider = require("../components/Provider");
25
25
 
26
- var _Byline = require("../components/Byline");
26
+ var _Byline = require("../../common/Byline");
27
27
 
28
28
  var _Content = require("../components/Content");
29
29
 
@@ -19,7 +19,7 @@ var _Provider = require("../components/Provider");
19
19
 
20
20
  var _Name = require("../components/Name");
21
21
 
22
- var _Byline = require("../components/Byline");
22
+ var _Byline = require("../../common/Byline");
23
23
 
24
24
  var _ActionList = require("../components/ActionList");
25
25
 
@@ -27,11 +27,11 @@ var _CollaboratorList = require("../components/CollaboratorList");
27
27
 
28
28
  var _Emoji = require("../components/Emoji");
29
29
 
30
- var _Icon = require("../components/Icon");
30
+ var _Icon = require("../../common/Icon");
31
31
 
32
32
  var _Content = require("../components/Content");
33
33
 
34
- var _MetadataList = require("../components/MetadataList");
34
+ var _MetadataList = require("../../common/MetadataList");
35
35
 
36
36
  var _styled = require("../../InlineCard/IconAndTitleLayout/styled");
37
37
 
@@ -39,7 +39,7 @@ var _ContentHeader = require("../components/ContentHeader");
39
39
 
40
40
  var _ContentFooter = require("../components/ContentFooter");
41
41
 
42
- var _utils = require("../utils");
42
+ var _utils = require("../../common/utils");
43
43
 
44
44
  var _handlers = require("../utils/handlers");
45
45
 
@@ -17,7 +17,7 @@ var _constants = require("@atlaskit/theme/constants");
17
17
 
18
18
  var _Frame = require("../components/Frame");
19
19
 
20
- var _utils = require("../utils");
20
+ var _utils = require("../../common/utils");
21
21
 
22
22
  var _reactIntlNext = require("react-intl-next");
23
23
 
@@ -19,7 +19,7 @@ var _Frame = require("../components/Frame");
19
19
 
20
20
  var _Provider = require("../components/Provider");
21
21
 
22
- var _Byline = require("../components/Byline");
22
+ var _Byline = require("../../common/Byline");
23
23
 
24
24
  var _ActionList = require("../components/ActionList");
25
25
 
@@ -19,7 +19,7 @@ var _constants = require("@atlaskit/theme/constants");
19
19
 
20
20
  var colors = _interopRequireWildcard(require("@atlaskit/theme/colors"));
21
21
 
22
- var _utils = require("../../BlockCard/utils");
22
+ var _utils = require("../../common/utils");
23
23
 
24
24
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;
25
25
 
@@ -23,7 +23,7 @@ var _reactIntlNext = require("react-intl-next");
23
23
 
24
24
  var _messages = require("@atlaskit/media-ui/messages");
25
25
 
26
- var _utils = require("../../BlockCard/utils");
26
+ var _utils = require("../../common/utils");
27
27
 
28
28
  /** @jsx jsx */
29
29
  var EmbedCardErroredView = function EmbedCardErroredView(_ref) {
@@ -19,7 +19,7 @@ var _reactIntlNext = require("react-intl-next");
19
19
 
20
20
  var _messages = require("@atlaskit/media-ui/messages");
21
21
 
22
- var _utils = require("../../BlockCard/utils");
22
+ var _utils = require("../../common/utils");
23
23
 
24
24
  /** @jsx jsx */
25
25
  var EmbedCardUnresolvedView = function EmbedCardUnresolvedView(_ref) {
@@ -40,18 +40,26 @@ var ActionGroup = function ActionGroup(_ref) {
40
40
  items = _ref$items === void 0 ? [] : _ref$items,
41
41
  _ref$size = _ref.size,
42
42
  size = _ref$size === void 0 ? _constants.SmartLinkSize.Medium : _ref$size,
43
- appearance = _ref.appearance;
44
- var isMoreThenTwoItems = items.length > 2;
45
- var firstActions = isMoreThenTwoItems ? items.slice(0, 1) : items;
46
- var restActions = isMoreThenTwoItems ? items.slice(1) : [];
43
+ appearance = _ref.appearance,
44
+ _ref$visibleButtonsNu = _ref.visibleButtonsNum,
45
+ visibleButtonsNum = _ref$visibleButtonsNu === void 0 ? 2 : _ref$visibleButtonsNu,
46
+ onDropdownOpenChange = _ref.onDropdownOpenChange;
47
+ var isMoreThenTwoItems = items.length > visibleButtonsNum;
48
+ var firstActions = isMoreThenTwoItems ? items.slice(0, visibleButtonsNum - 1) : items;
49
+ var restActions = isMoreThenTwoItems ? items.slice(visibleButtonsNum - 1) : [];
47
50
  return (0, _core.jsx)("div", {
48
51
  css: styles
49
52
  }, (0, _core.jsx)(_buttonGroup.default, null, (0, _utils.renderActionItems)(firstActions, size, appearance), restActions.length > 0 ? (0, _core.jsx)(_dropdownMenu.default, {
50
- trigger: function trigger(_ref2) {
51
- var triggerRef = _ref2.triggerRef,
52
- props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
53
+ onOpenChange: function onOpenChange(_ref2) {
54
+ var isOpen = _ref2.isOpen;
55
+ return onDropdownOpenChange && onDropdownOpenChange(isOpen);
56
+ },
57
+ trigger: function trigger(_ref3) {
58
+ var triggerRef = _ref3.triggerRef,
59
+ props = (0, _objectWithoutProperties2.default)(_ref3, _excluded);
53
60
  return (0, _core.jsx)(_standardButton.default, (0, _extends2.default)({}, props, {
54
61
  spacing: _action.sizeToSpacing[size],
62
+ className: "action-group-more-button",
55
63
  testId: "action-group-more-button",
56
64
  iconBefore: (0, _core.jsx)(_more.default, {
57
65
  label: "more"
@@ -30,9 +30,10 @@ var Block = function Block(_ref) {
30
30
  _ref$size = _ref.size,
31
31
  size = _ref$size === void 0 ? _constants.SmartLinkSize.Medium : _ref$size,
32
32
  _ref$testId = _ref.testId,
33
- testId = _ref$testId === void 0 ? 'smart-block' : _ref$testId;
33
+ testId = _ref$testId === void 0 ? 'smart-block' : _ref$testId,
34
+ extraCss = _ref.extraCss;
34
35
  return (0, _core.jsx)("div", {
35
- css: getBlockStyles(direction, size),
36
+ css: [getBlockStyles(direction, size), extraCss],
36
37
  "data-smart-block": true,
37
38
  "data-testid": testId
38
39
  }, (0, _utils.renderChildren)(children, size));
@@ -2,6 +2,8 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
@@ -9,9 +11,15 @@ exports.default = void 0;
9
11
 
10
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
13
 
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
12
16
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
17
 
14
- var _react = _interopRequireDefault(require("react"));
18
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
19
+
20
+ var _react = _interopRequireWildcard(require("react"));
21
+
22
+ var _core = require("@emotion/core");
15
23
 
16
24
  var _elements = require("../../../elements");
17
25
 
@@ -25,7 +33,15 @@ var _utils = require("../../utils");
25
33
 
26
34
  var _actionGroup = _interopRequireDefault(require("../../action-group"));
27
35
 
28
- var _excluded = ["maxLines", "metadata", "position", "subtitle", "actions", "testId", "theme", "text"];
36
+ var _excluded = ["maxLines", "metadata", "position", "subtitle", "actions", "testId", "theme", "text", "showActionOnHover"];
37
+
38
+ var _templateObject;
39
+
40
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
41
+
42
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
43
+
44
+ var actionOnHoverOnlyStyle = (0, _core.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n .action-group-more-button {\n visibility: hidden;\n }\n\n &:hover {\n .action-group-more-button {\n visibility: visible;\n }\n }\n"])));
29
45
 
30
46
  var TitleBlockResolvedView = function TitleBlockResolvedView(_ref) {
31
47
  var maxLines = _ref.maxLines,
@@ -39,29 +55,42 @@ var TitleBlockResolvedView = function TitleBlockResolvedView(_ref) {
39
55
  testId = _ref.testId,
40
56
  theme = _ref.theme,
41
57
  text = _ref.text,
58
+ showActionOnHover = _ref.showActionOnHover,
42
59
  blockProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
60
+
61
+ var _useState = (0, _react.useState)(false),
62
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
63
+ actionDropdownOpen = _useState2[0],
64
+ setActionDropdownOpen = _useState2[1];
65
+
43
66
  var metadataElements = (0, _utils.renderElementItems)(metadata);
44
67
  var subtitleElements = (0, _utils.renderElementItems)(subtitle);
45
68
  var overrideText = !!text ? {
46
69
  text: text
47
70
  } : {};
48
- return /*#__PURE__*/_react.default.createElement(_block.default, (0, _extends2.default)({}, blockProps, {
49
- testId: "".concat(testId, "-resolved-view")
50
- }), /*#__PURE__*/_react.default.createElement(_elements.LinkIcon, {
71
+ var extraCss = showActionOnHover && !actionDropdownOpen ? actionOnHoverOnlyStyle : undefined;
72
+ return (0, _core.jsx)(_block.default, (0, _extends2.default)({}, blockProps, {
73
+ testId: "".concat(testId, "-resolved-view"),
74
+ extraCss: extraCss
75
+ }), (0, _core.jsx)(_elements.LinkIcon, {
51
76
  position: position
52
- }), /*#__PURE__*/_react.default.createElement(_elementGroup.default, {
77
+ }), (0, _core.jsx)(_elementGroup.default, {
53
78
  direction: _constants.SmartLinkDirection.Vertical,
54
79
  width: _constants.SmartLinkWidth.Flexible
55
- }, /*#__PURE__*/_react.default.createElement(_elements.Title, (0, _extends2.default)({
80
+ }, (0, _core.jsx)(_elements.Title, (0, _extends2.default)({
56
81
  maxLines: maxLines,
57
82
  theme: theme
58
- }, overrideText)), subtitleElements && /*#__PURE__*/_react.default.createElement(_elementGroup.default, {
83
+ }, overrideText)), subtitleElements && (0, _core.jsx)(_elementGroup.default, {
59
84
  direction: _constants.SmartLinkDirection.Horizontal
60
- }, subtitleElements)), metadataElements && /*#__PURE__*/_react.default.createElement(_elementGroup.default, {
85
+ }, subtitleElements)), metadataElements && (0, _core.jsx)(_elementGroup.default, {
61
86
  direction: _constants.SmartLinkDirection.Horizontal,
62
87
  align: _constants.SmartLinkAlignment.Right
63
- }, metadataElements), actions.length > 0 && /*#__PURE__*/_react.default.createElement(_actionGroup.default, {
64
- items: actions
88
+ }, metadataElements), actions.length > 0 && (0, _core.jsx)(_actionGroup.default, {
89
+ items: actions,
90
+ visibleButtonsNum: showActionOnHover ? 1 : 2,
91
+ onDropdownOpenChange: function onDropdownOpenChange(isOpen) {
92
+ return setActionDropdownOpen(isOpen);
93
+ }
65
94
  }));
66
95
  };
67
96
 
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.HoverCard = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
13
+
14
+ var _blocks = require("../FlexibleCard/components/blocks");
15
+
16
+ var _Card = require("../Card");
17
+
18
+ var _styled = require("./styled");
19
+
20
+ var HoverCard = function HoverCard(_ref) {
21
+ var children = _ref.children,
22
+ url = _ref.url;
23
+
24
+ var cardComponent = /*#__PURE__*/_react.default.createElement(_Card.Card, {
25
+ appearance: "block",
26
+ url: url
27
+ }, /*#__PURE__*/_react.default.createElement(_blocks.TitleBlock, null), /*#__PURE__*/_react.default.createElement(_blocks.SnippetBlock, null), /*#__PURE__*/_react.default.createElement(_blocks.FooterBlock, null));
28
+
29
+ return /*#__PURE__*/_react.default.createElement(_tooltip.default, {
30
+ content: cardComponent,
31
+ component: _styled.HoverCardContainer,
32
+ testId: "hover-card",
33
+ tag: "span"
34
+ }, children);
35
+ };
36
+
37
+ exports.HoverCard = HoverCard;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.HoverCardContainer = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _styled = _interopRequireDefault(require("@emotion/styled"));
13
+
14
+ var _tooltip = require("@atlaskit/tooltip");
15
+
16
+ var _templateObject;
17
+
18
+ var HoverCardContainer = (0, _styled.default)(_tooltip.TooltipPrimitive)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n background: none;\n border-width: 0;\n box-sizing: content-box; /* do not set this to border-box or it will break the overflow handling */\n max-width: 500px;\n padding: 0;\n"])));
19
+ exports.HoverCardContainer = HoverCardContainer;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -27,6 +27,8 @@ var _IconAndTitleLayout = require("../IconAndTitleLayout");
27
27
 
28
28
  var _styled = require("../IconAndTitleLayout/styled");
29
29
 
30
+ var _index = require("../../../view/HoverCard/index");
31
+
30
32
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
31
33
 
32
34
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
@@ -68,8 +70,11 @@ var InlineCardResolvedView = /*#__PURE__*/function (_React$Component) {
68
70
  _this$props$testId = _this$props.testId,
69
71
  testId = _this$props$testId === void 0 ? 'inline-card-resolved-view' : _this$props$testId,
70
72
  titleTextColor = _this$props.titleTextColor,
71
- titlePrefix = _this$props.titlePrefix;
72
- return /*#__PURE__*/_react.default.createElement(_Frame.Frame, {
73
+ titlePrefix = _this$props.titlePrefix,
74
+ _this$props$showHover = _this$props.showHoverPreview,
75
+ showHoverPreview = _this$props$showHover === void 0 ? false : _this$props$showHover;
76
+
77
+ var inlineCardResolvedView = /*#__PURE__*/_react.default.createElement(_Frame.Frame, {
73
78
  testId: testId,
74
79
  link: link,
75
80
  isSelected: isSelected,
@@ -80,6 +85,14 @@ var InlineCardResolvedView = /*#__PURE__*/function (_React$Component) {
80
85
  title: title,
81
86
  titleTextColor: titleTextColor
82
87
  }), this.renderLozenge());
88
+
89
+ if (showHoverPreview && link) {
90
+ return /*#__PURE__*/_react.default.createElement(_index.HoverCard, {
91
+ url: link
92
+ }, inlineCardResolvedView);
93
+ }
94
+
95
+ return inlineCardResolvedView;
83
96
  }
84
97
  }]);
85
98
  return InlineCardResolvedView;
@@ -70,7 +70,8 @@ var InlineCard = function InlineCard(_ref) {
70
70
  renderers = _ref.renderers,
71
71
  onResolve = _ref.onResolve,
72
72
  testId = _ref.testId,
73
- inlinePreloaderStyle = _ref.inlinePreloaderStyle;
73
+ inlinePreloaderStyle = _ref.inlinePreloaderStyle,
74
+ showHoverPreview = _ref.showHoverPreview;
74
75
  var status = cardState.status,
75
76
  details = cardState.details;
76
77
  var cardDetails = details && details.data || (0, _jsonld.getEmptyJsonLd)();
@@ -98,6 +99,7 @@ var InlineCard = function InlineCard(_ref) {
98
99
  }
99
100
 
100
101
  return /*#__PURE__*/_react.default.createElement(_ResolvedView.InlineCardResolvedView, (0, _extends2.default)({}, resolvedProps, {
102
+ showHoverPreview: showHoverPreview,
101
103
  link: url,
102
104
  isSelected: isSelected,
103
105
  onClick: handleFrameClick,
@@ -9,7 +9,7 @@ var _core = require("@emotion/core");
9
9
 
10
10
  var _colors = require("@atlaskit/theme/colors");
11
11
 
12
- var _utils = require("../utils");
12
+ var _utils = require("./utils");
13
13
 
14
14
  /** @jsx jsx */
15
15
  var Byline = function Byline(_ref) {
@@ -15,7 +15,7 @@ var _reactRenderImage = _interopRequireDefault(require("react-render-image"));
15
15
 
16
16
  var _link = _interopRequireDefault(require("@atlaskit/icon/glyph/link"));
17
17
 
18
- var _utils = require("../utils");
18
+ var _utils = require("./utils");
19
19
 
20
20
  /** @jsx jsx */
21
21
  var blockCardIconImageClassName = 'block-card-icon-image';
@@ -11,7 +11,7 @@ var _core = require("@emotion/core");
11
11
 
12
12
  var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
13
13
 
14
- var _utils = require("../utils");
14
+ var _utils = require("./utils");
15
15
 
16
16
  var _colors = require("@atlaskit/theme/colors");
17
17
 
@@ -13,7 +13,7 @@ var _core = require("@emotion/core");
13
13
 
14
14
  var _Metadata = require("./Metadata");
15
15
 
16
- var _utils = require("../utils");
16
+ var _utils = require("./utils");
17
17
 
18
18
  /** @jsx jsx */
19
19
  var metadataListClassName = 'smart-link-metadata-list';
@@ -27,7 +27,7 @@ var _modalDialog = _interopRequireWildcard(require("@atlaskit/modal-dialog"));
27
27
 
28
28
  var _ModalHeader = require("./ModalHeader");
29
29
 
30
- var _utils = require("../../../utils");
30
+ var _utils = require("../../utils");
31
31
 
32
32
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
33
 
@@ -23,7 +23,7 @@ var _colors = require("@atlaskit/theme/colors");
23
23
 
24
24
  var _reactIntlNext = require("react-intl-next");
25
25
 
26
- var _utils = require("../utils");
26
+ var _utils = require("./utils");
27
27
 
28
28
  var _Icon = require("./Icon");
29
29
 
@@ -1,9 +1,9 @@
1
1
  export { contentFooterClassName } from './view/BlockCard/components/ContentFooter';
2
- export { metadataListClassName } from './view/BlockCard/components/MetadataList';
2
+ export { metadataListClassName } from './view/common/MetadataList';
3
3
  export { blockCardResolvingViewClassName } from './view/BlockCard/views/ResolvingView';
4
4
  export { blockCardResolvedViewClassName, blockCardResolvedViewByClassName } from './view/BlockCard/views/ResolvedView';
5
5
  export { blockCardForbiddenViewClassName, blockCardForbiddenViewLinkClassName } from './view/BlockCard/views/ForbiddenView';
6
- export { blockCardIconImageClassName } from './view/BlockCard/components/Icon';
6
+ export { blockCardIconImageClassName } from './view/common/Icon';
7
7
  export { blockCardContentClassName } from './view/BlockCard/components/Content';
8
8
  export { blockCardContentHeaderClassName } from './view/BlockCard/components/ContentHeader';
9
9
  export { blockCardContentHeaderNameClassName } from './view/BlockCard/components/Name';
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/smart-card",
3
- "version": "17.7.2",
3
+ "version": "17.7.5",
4
4
  "sideEffects": false
5
5
  }
@@ -32,7 +32,7 @@ export async function previewFunction({
32
32
  document.body.appendChild(popupMountPoint);
33
33
  }
34
34
 
35
- let Modal = await import('../components/Modal');
35
+ let Modal = await import('../../common/Modal');
36
36
  ReactDOM.render( /*#__PURE__*/React.createElement(IntlProvider, {
37
37
  locale: "en"
38
38
  }, /*#__PURE__*/React.createElement(Modal.default, _extends({}, rest, {