@atlaskit/smart-card 26.3.2 → 26.3.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.
- package/CHANGELOG.md +13 -0
- package/dist/cjs/utils/analytics/SmartLinkAnalyticsContext.js +3 -1
- package/dist/cjs/version.json +1 -1
- package/dist/cjs/view/BlockCard/index.js +1 -1
- package/dist/cjs/view/EmbedCard/components/styled.js +10 -6
- package/dist/cjs/view/EmbedModal/components/link-info/styled.js +3 -2
- package/dist/cjs/view/FlexibleCard/components/common/lozenge-action/lozenge-action-error/styled.js +2 -0
- package/dist/cjs/view/FlexibleCard/components/common/lozenge-action/styled.js +5 -3
- package/dist/cjs/view/FlexibleCard/components/container/index.js +1 -1
- package/dist/cjs/view/HoverCard/components/HoverCardComponent.js +45 -39
- package/dist/cjs/view/HoverCard/components/HoverCardContent.js +44 -2
- package/dist/cjs/view/HoverCard/index.js +23 -6
- package/dist/cjs/view/InlineCard/Icon.js +2 -2
- package/dist/cjs/view/InlineCard/IconAndTitleLayout/styled.js +4 -4
- package/dist/cjs/view/InlineCard/ResolvingView/styled.js +1 -1
- package/dist/es2019/utils/analytics/SmartLinkAnalyticsContext.js +3 -1
- package/dist/es2019/version.json +1 -1
- package/dist/es2019/view/BlockCard/index.js +1 -1
- package/dist/es2019/view/EmbedCard/components/styled.js +14 -8
- package/dist/es2019/view/EmbedModal/components/link-info/styled.js +5 -3
- package/dist/es2019/view/FlexibleCard/components/common/lozenge-action/lozenge-action-error/styled.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/common/lozenge-action/styled.js +7 -3
- package/dist/es2019/view/FlexibleCard/components/container/index.js +1 -1
- package/dist/es2019/view/HoverCard/components/HoverCardComponent.js +56 -48
- package/dist/es2019/view/HoverCard/components/HoverCardContent.js +45 -3
- package/dist/es2019/view/HoverCard/index.js +24 -7
- package/dist/es2019/view/InlineCard/Icon.js +2 -2
- package/dist/es2019/view/InlineCard/IconAndTitleLayout/styled.js +5 -6
- package/dist/es2019/view/InlineCard/ResolvingView/styled.js +1 -1
- package/dist/esm/utils/analytics/SmartLinkAnalyticsContext.js +3 -1
- package/dist/esm/version.json +1 -1
- package/dist/esm/view/BlockCard/index.js +1 -1
- package/dist/esm/view/EmbedCard/components/styled.js +10 -6
- package/dist/esm/view/EmbedModal/components/link-info/styled.js +3 -2
- package/dist/esm/view/FlexibleCard/components/common/lozenge-action/lozenge-action-error/styled.js +2 -0
- package/dist/esm/view/FlexibleCard/components/common/lozenge-action/styled.js +5 -3
- package/dist/esm/view/FlexibleCard/components/container/index.js +1 -1
- package/dist/esm/view/HoverCard/components/HoverCardComponent.js +45 -37
- package/dist/esm/view/HoverCard/components/HoverCardContent.js +45 -3
- package/dist/esm/view/HoverCard/index.js +24 -7
- package/dist/esm/view/InlineCard/Icon.js +2 -2
- package/dist/esm/view/InlineCard/IconAndTitleLayout/styled.js +4 -5
- package/dist/esm/view/InlineCard/ResolvingView/styled.js +1 -1
- package/dist/types/utils/analytics/SmartLinkAnalyticsContext.d.ts +1 -0
- package/dist/types/view/HoverCard/index.d.ts +2 -2
- package/dist/types/view/HoverCard/types.d.ts +4 -4
- package/dist/types-ts4.5/utils/analytics/SmartLinkAnalyticsContext.d.ts +1 -0
- package/dist/types-ts4.5/view/HoverCard/index.d.ts +2 -2
- package/dist/types-ts4.5/view/HoverCard/types.d.ts +4 -4
- package/package.json +9 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @atlaskit/smart-card
|
|
2
2
|
|
|
3
|
+
## 26.3.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`d86bc75af82`](https://bitbucket.org/atlassian/atlassian-frontend/commits/d86bc75af82) - Internal change to enforce token usage for spacing properties. There is no expected visual or behaviour change.
|
|
8
|
+
|
|
9
|
+
## 26.3.3
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [`6d9a4d28d94`](https://bitbucket.org/atlassian/atlassian-frontend/commits/6d9a4d28d94) - Fixes HoverCard component providing hover card analytics context to the wrapped trigger component.
|
|
14
|
+
- Updated dependencies
|
|
15
|
+
|
|
3
16
|
## 26.3.2
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -21,7 +21,8 @@ var SmartLinkAnalyticsContext = function SmartLinkAnalyticsContext(_ref) {
|
|
|
21
21
|
var children = _ref.children,
|
|
22
22
|
url = _ref.url,
|
|
23
23
|
appearance = _ref.appearance,
|
|
24
|
-
id = _ref.id
|
|
24
|
+
id = _ref.id,
|
|
25
|
+
source = _ref.source;
|
|
25
26
|
var _useSmartLinkState = (0, _store.useSmartCardState)(url),
|
|
26
27
|
details = _useSmartLinkState.details,
|
|
27
28
|
status = _useSmartLinkState.status;
|
|
@@ -36,6 +37,7 @@ var SmartLinkAnalyticsContext = function SmartLinkAnalyticsContext(_ref) {
|
|
|
36
37
|
var display = isFlexibleUi ? _constants.CardDisplay.Flexible : appearance;
|
|
37
38
|
return /*#__PURE__*/_react.default.createElement(_analyticsNext.AnalyticsContext, {
|
|
38
39
|
data: {
|
|
40
|
+
source: source,
|
|
39
41
|
attributes: _objectSpread(_objectSpread({}, resolvedAttributes), {}, {
|
|
40
42
|
urlHash: urlHash,
|
|
41
43
|
display: display,
|
package/dist/cjs/version.json
CHANGED
|
@@ -86,7 +86,7 @@ var _linkProvider = require("@atlaskit/link-provider");
|
|
|
86
86
|
var _PreviewAction = _interopRequireDefault(require("./actions/PreviewAction"));
|
|
87
87
|
var _templateObject;
|
|
88
88
|
/** @jsx jsx */
|
|
89
|
-
var flexibleBlockCardElevationStyle = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n border-radius: 1.5px;\n box-shadow: ", ";\n margin:
|
|
89
|
+
var flexibleBlockCardElevationStyle = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n border-radius: 1.5px;\n box-shadow: ", ";\n margin: ", ";\n"])), _token.tokens.elevation, "var(--ds-space-025, 2px)");
|
|
90
90
|
var BlockCard = function BlockCard(_ref) {
|
|
91
91
|
var _details$meta, _forbiddenViewProps$c;
|
|
92
92
|
var id = _ref.id,
|
|
@@ -73,6 +73,8 @@ function visible(_ref6) {
|
|
|
73
73
|
var LinkWrapper = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", " &:hover {\n text-decoration: none;\n }\n"])), function (props) {
|
|
74
74
|
return wrapperStyles(props);
|
|
75
75
|
});
|
|
76
|
+
|
|
77
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing
|
|
76
78
|
exports.LinkWrapper = LinkWrapper;
|
|
77
79
|
var Wrapper = _styled.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n margin-top: 10px;\n"])), function (props) {
|
|
78
80
|
return wrapperStyles(props);
|
|
@@ -125,24 +127,26 @@ var Image = _styled.default.img(_templateObject7 || (_templateObject7 = (0, _tag
|
|
|
125
127
|
exports.Image = Image;
|
|
126
128
|
var maxAvatarCount = 6;
|
|
127
129
|
exports.maxAvatarCount = maxAvatarCount;
|
|
128
|
-
var ContentWrapper = _styled.default.div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex-direction: row;\n box-sizing: border-box;\n padding:
|
|
130
|
+
var ContentWrapper = _styled.default.div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex-direction: row;\n box-sizing: border-box;\n padding: ", " ", "\n ", " ", ";\n"])), "var(--ds-space-100, 8px)", "var(--ds-space-150, 12px)", "var(--ds-space-150, 12px)", "var(--ds-space-150, 12px)");
|
|
129
131
|
exports.ContentWrapper = ContentWrapper;
|
|
130
132
|
var Title = _styled.default.div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n font-size: 16px;\n font-weight: 500;\n line-height: ", ";\n max-height: ", "px;\n overflow: hidden;\n"])), "var(--ds-text, ".concat(colors.N900, ")"), 20 / 16, 20 * 4);
|
|
131
133
|
exports.Title = Title;
|
|
132
|
-
var Byline = _styled.default.div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["\n margin-top:
|
|
134
|
+
var Byline = _styled.default.div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["\n margin-top: ", ";\n color: ", ";\n font-size: 12px;\n font-weight: normal;\n line-height: ", ";\n ", ";\n"])), "var(--ds-space-050, 4px)", "var(--ds-text-subtlest, ".concat(colors.N300, ")"), 16 / 12, ellipsis('100%'));
|
|
135
|
+
|
|
136
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing
|
|
133
137
|
exports.Byline = Byline;
|
|
134
138
|
var Description = _styled.default.div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["\n margin-top: 7px;\n color: ", ";\n font-size: 12px;\n font-weight: normal;\n line-height: ", ";\n max-height: ", "px;\n overflow: hidden;\n"])), "var(--ds-text, ".concat(colors.N800, ")"), 18 / 12, 18 * 3);
|
|
135
139
|
exports.Description = Description;
|
|
136
|
-
var ResolvedViewIconWrapper = _styled.default.div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2.default)(["\n margin-top:
|
|
140
|
+
var ResolvedViewIconWrapper = _styled.default.div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2.default)(["\n margin-top: ", ";\n"])), "var(--ds-space-050, 4px)");
|
|
137
141
|
exports.ResolvedViewIconWrapper = ResolvedViewIconWrapper;
|
|
138
|
-
var Thumbnail = _styled.default.div(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n ", "\n float: right;\n margin:
|
|
142
|
+
var Thumbnail = _styled.default.div(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n ", "\n float: right;\n margin: ", " 0 ", "\n ", ";\n background-color: ", ";\n background-image: url(", ");\n background-size: cover;\n"])), borderRadius, csssize(48), "var(--ds-space-050, 4px)", "var(--ds-space-150, 12px)", "var(--ds-space-150, 12px)", "var(--ds-skeleton, ".concat(colors.N30, ")"), function (_ref13) {
|
|
139
143
|
var src = _ref13.src;
|
|
140
144
|
return src;
|
|
141
145
|
});
|
|
142
146
|
exports.Thumbnail = Thumbnail;
|
|
143
|
-
var UsersWrapper = _styled.default.div(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2.default)(["\n margin-top:
|
|
147
|
+
var UsersWrapper = _styled.default.div(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2.default)(["\n margin-top: ", ";\n"])), "var(--ds-space-100, 8px)");
|
|
144
148
|
exports.UsersWrapper = UsersWrapper;
|
|
145
|
-
var ActionsWrapper = _styled.default.div(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2.default)(["\n margin-top:
|
|
149
|
+
var ActionsWrapper = _styled.default.div(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2.default)(["\n margin-top: ", ";\n text-align: right;\n\n > * {\n margin-top: ", ";\n }\n\n > * + * {\n margin-left: ", ";\n }\n"])), "var(--ds-space-100, 8px)", "var(--ds-space-050, 4px)", "var(--ds-space-050, 4px)");
|
|
146
150
|
exports.ActionsWrapper = ActionsWrapper;
|
|
147
151
|
var AlertWrapper = _styled.default.div(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n overflow: hidden;\n pointer-events: none;\n /* z-index has to be 1 higher than the number of avatars in the avatar stack */\n z-index: ", ";\n"])), maxAvatarCount + 1);
|
|
148
152
|
exports.AlertWrapper = AlertWrapper;
|
|
@@ -8,7 +8,8 @@ exports.titleCss = exports.iconCss = exports.containerStyles = exports.actionCss
|
|
|
8
8
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
9
|
var _react = require("@emotion/react");
|
|
10
10
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
11
|
-
|
|
11
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing
|
|
12
|
+
var containerStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n align-items: center;\n display: flex;\n gap: ", ";\n justify-content: space-between;\n // AK ModalBody has 2px padding top and bottom.\n // Using 14px here to create 16px gap between\n // link info and iframe\n padding: ", " ", " 14px\n ", ";\n"])), "var(--ds-space-100, 8px)", "var(--ds-space-300, 24px)", "var(--ds-space-300, 24px)", "var(--ds-space-300, 24px)");
|
|
12
13
|
exports.containerStyles = containerStyles;
|
|
13
14
|
var iconSize = '24px';
|
|
14
15
|
var iconCss = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n img,\n span,\n svg {\n height: ", ";\n min-height: ", ";\n max-height: ", ";\n width: ", ";\n min-width: ", ";\n max-width: ", ";\n }\n"])), iconSize, iconSize, iconSize, iconSize, iconSize, iconSize);
|
|
@@ -16,5 +17,5 @@ exports.iconCss = iconCss;
|
|
|
16
17
|
var height = '20px';
|
|
17
18
|
var titleCss = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n flex: 1 1 auto;\n\n h3 {\n flex: 1 1 auto;\n font-size: 16px;\n font-weight: 400;\n line-height: ", ";\n\n display: -webkit-box;\n margin-bottom: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n word-break: break-word;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n // Fallback options\n @supports not (-webkit-line-clamp: 1) {\n max-height: ", ";\n }\n }\n"])), height, height);
|
|
18
19
|
exports.titleCss = titleCss;
|
|
19
|
-
var actionCss = (0, _react.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex: 0 0 auto;\n gap:
|
|
20
|
+
var actionCss = (0, _react.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex: 0 0 auto;\n gap: ", ";\n line-height: ", ";\n span {\n line-height: ", ";\n }\n\n @media only screen and (max-width: 980px) {\n // Hide resize button if the screen is smaller than the min width\n // or too small to have enough impact to matter.\n .smart-link-resize-button {\n display: none;\n }\n }\n"])), "var(--ds-space-050, 4px)", height, height);
|
|
20
21
|
exports.actionCss = actionCss;
|
package/dist/cjs/view/FlexibleCard/components/common/lozenge-action/lozenge-action-error/styled.js
CHANGED
|
@@ -14,6 +14,8 @@ var dropdownItemGroupStyles = (0, _react.css)(_templateObject || (_templateObjec
|
|
|
14
14
|
exports.dropdownItemGroupStyles = dropdownItemGroupStyles;
|
|
15
15
|
var sharedBlockStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n gap: 0.5rem;\n line-height: 1rem;\n min-width: 0;\n overflow: hidden;\n flex-direction: row;\n align-items: center;\n"])));
|
|
16
16
|
var contentStyles = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n\n margin-top: ", ";\n align-items: flex-start;\n\n > span,\n > div {\n font-size: 0.875rem;\n line-height: 1.25rem;\n color: ", ";\n }\n"])), sharedBlockStyles, "var(--ds-space-025, 2px)", "var(--ds-text, ".concat(_colors.N800, ")"));
|
|
17
|
+
|
|
18
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing
|
|
17
19
|
exports.contentStyles = contentStyles;
|
|
18
20
|
var linkStyles = (0, _react.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n\n cursor: pointer;\n font-size: 0.875rem;\n margin-top: 10px;\n margin-left: ", ";\n margin-bottom: ", ";\n"])), sharedBlockStyles, "var(--ds-space-400, 32px)", "var(--ds-space-025, 2px)");
|
|
19
21
|
exports.linkStyles = linkStyles;
|
|
@@ -8,9 +8,11 @@ exports.triggerLozengeStyles = exports.triggerButtonStyles = exports.dropdownIte
|
|
|
8
8
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
9
|
var _react = require("@emotion/react");
|
|
10
10
|
var _templateObject, _templateObject2, _templateObject3;
|
|
11
|
-
var triggerButtonStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n all: unset;\n background-color: transparent;\n color: unset;\n cursor: pointer;\n font-family: unset;\n font-size: unset;\n font-style: unset;\n font-weight: unset;\n font-variant: unset;\n line-height: 0;\n padding: 0;\n text-transform: unset;\n\n border: 2px solid transparent;\n margin:
|
|
11
|
+
var triggerButtonStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n all: unset;\n background-color: transparent;\n color: unset;\n cursor: pointer;\n font-family: unset;\n font-size: unset;\n font-style: unset;\n font-weight: unset;\n font-variant: unset;\n line-height: 0;\n padding: 0;\n text-transform: unset;\n\n border: 2px solid transparent;\n margin: ", ";\n\n &:focus-visible,\n &:focus-within,\n &[aria-expanded='true'] {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n border-radius: 5px;\n }\n"])), "var(--ds-space-025, 2px)", "var(--ds-border-focused, #388BFF)");
|
|
12
|
+
|
|
13
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing
|
|
12
14
|
exports.triggerButtonStyles = triggerButtonStyles;
|
|
13
|
-
var triggerLozengeStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n align-items: center;\n display: flex;\n\n span[role='img'] {\n margin: -
|
|
15
|
+
var triggerLozengeStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n align-items: center;\n display: flex;\n\n span[role='img'] {\n margin: calc(-1 * ", ")\n calc(-1 * ", ")\n calc(-1 * ", ") -1px;\n }\n"])), "var(--ds-space-050, 4px)", "var(--ds-space-100, 8px)", "var(--ds-space-050, 4px)");
|
|
14
16
|
exports.triggerLozengeStyles = triggerLozengeStyles;
|
|
15
|
-
var dropdownItemGroupStyles = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n max-height: 300px;\n overflow-y: auto;\n\n button {\n padding:
|
|
17
|
+
var dropdownItemGroupStyles = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n max-height: 300px;\n overflow-y: auto;\n\n button {\n padding: ", " ", ";\n min-height: 28px;\n width: 220px;\n\n &:hover {\n background-color: inherit;\n }\n\n &:focus,\n &:focus-visible {\n background-color: ", ";\n box-sizing: border-box;\n box-shadow: inset 2px 0 0 ", ";\n outline: none;\n }\n }\n"])), "var(--ds-space-075, 6px)", "var(--ds-space-150, 12px)", "var(--ds-background-neutral-subtle-hovered, #091E420F)", "var(--ds-border-selected, #0C66E4)");
|
|
16
18
|
exports.dropdownItemGroupStyles = dropdownItemGroupStyles;
|
|
@@ -21,7 +21,7 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
|
21
21
|
/** @jsx jsx */
|
|
22
22
|
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); }
|
|
23
23
|
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; }
|
|
24
|
-
var elevationStyles = (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n border: 1px solid transparent;\n border-radius: 1.5px;\n box-shadow: ", ";\n margin:
|
|
24
|
+
var elevationStyles = (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n border: 1px solid transparent;\n border-radius: 1.5px;\n box-shadow: ", ";\n margin: ", ";\n"])), _token.tokens.elevation, "var(--ds-space-025, 2px)");
|
|
25
25
|
var getGap = function getGap(size) {
|
|
26
26
|
switch (size) {
|
|
27
27
|
case _constants.SmartLinkSize.XLarge:
|
|
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.HoverCardComponent = void 0;
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
12
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
12
13
|
var _popup = _interopRequireDefault(require("@atlaskit/popup"));
|
|
@@ -21,8 +22,9 @@ var _constants = require("../../../constants");
|
|
|
21
22
|
var _SmartLinkAnalyticsContext = require("../../../utils/analytics/SmartLinkAnalyticsContext");
|
|
22
23
|
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); }
|
|
23
24
|
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; }
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
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; }
|
|
26
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } /** @jsx jsx */
|
|
27
|
+
var HOVER_CARD_SOURCE = 'smartLinkPreviewHoverCard';
|
|
26
28
|
var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
27
29
|
var children = _ref.children,
|
|
28
30
|
url = _ref.url,
|
|
@@ -63,18 +65,24 @@ var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
|
63
65
|
};
|
|
64
66
|
}, [isOpen]);
|
|
65
67
|
var hideCard = (0, _react2.useCallback)(function () {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
68
|
+
if ((0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.refactor-hover-card-analytics')) {
|
|
69
|
+
/**
|
|
70
|
+
* Defer to inner HoverCardContent to fire this event
|
|
71
|
+
*/
|
|
72
|
+
} else {
|
|
73
|
+
//Check its previously open to avoid firing events when moving between the child and hover card components
|
|
74
|
+
if (isOpen === true && cardOpenTime.current) {
|
|
75
|
+
var hoverTime = Date.now() - cardOpenTime.current;
|
|
76
|
+
analytics === null || analytics === void 0 ? void 0 : analytics.ui.hoverCardDismissedEvent({
|
|
77
|
+
previewDisplay: 'card',
|
|
78
|
+
hoverTime: hoverTime,
|
|
79
|
+
previewInvokeMethod: 'mouse_hover',
|
|
80
|
+
status: linkStatus
|
|
81
|
+
});
|
|
82
|
+
}
|
|
75
83
|
}
|
|
76
84
|
setIsOpen(false);
|
|
77
|
-
}, [analytics
|
|
85
|
+
}, [analytics, isOpen, linkStatus]);
|
|
78
86
|
var initHideCard = (0, _react2.useCallback)(function () {
|
|
79
87
|
if (fadeInTimeoutId.current) {
|
|
80
88
|
clearTimeout(fadeInTimeoutId.current);
|
|
@@ -90,14 +98,20 @@ var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
|
90
98
|
//Set mouse position in the case it's not already set by onMouseMove, as in the case of scrolling
|
|
91
99
|
setMousePosition(event);
|
|
92
100
|
fadeInTimeoutId.current = setTimeout(function () {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
+
if ((0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.refactor-hover-card-analytics')) {
|
|
102
|
+
/**
|
|
103
|
+
* Defer to inner HoverCardContent to fire this event
|
|
104
|
+
*/
|
|
105
|
+
} else {
|
|
106
|
+
//Check if its previously closed to avoid firing events when moving between the child and hover card components
|
|
107
|
+
if (isOpen === false) {
|
|
108
|
+
cardOpenTime.current = Date.now();
|
|
109
|
+
analytics === null || analytics === void 0 ? void 0 : analytics.ui.hoverCardViewedEvent({
|
|
110
|
+
previewDisplay: hoverDisplay,
|
|
111
|
+
previewInvokeMethod: invokeMethod,
|
|
112
|
+
status: linkStatus
|
|
113
|
+
});
|
|
114
|
+
}
|
|
101
115
|
}
|
|
102
116
|
//If these are undefined then popupOffset is undefined and we fallback to default bottom-start placement
|
|
103
117
|
if (parentSpan.current && mousePos.current) {
|
|
@@ -108,12 +122,12 @@ var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
|
108
122
|
}
|
|
109
123
|
setIsOpen(true);
|
|
110
124
|
}, delay);
|
|
111
|
-
}, [isOpen, setMousePosition, analytics
|
|
125
|
+
}, [isOpen, setMousePosition, analytics, linkStatus]);
|
|
112
126
|
var linkActions = (0, _useSmartLinkActions.useSmartLinkActions)({
|
|
113
127
|
url: url,
|
|
114
128
|
appearance: _constants.CardDisplay.HoverCardPreview,
|
|
115
129
|
analyticsHandler: analyticsHandler,
|
|
116
|
-
origin:
|
|
130
|
+
origin: HOVER_CARD_SOURCE
|
|
117
131
|
});
|
|
118
132
|
var filteredActions = (0, _react2.useMemo)(function () {
|
|
119
133
|
return hidePreviewButton ? linkActions.filter(function (action) {
|
|
@@ -136,14 +150,9 @@ var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
|
136
150
|
}, [closeOnChildClick, hideCard]);
|
|
137
151
|
var content = (0, _react2.useCallback)(function (_ref2) {
|
|
138
152
|
var update = _ref2.update;
|
|
139
|
-
|
|
140
|
-
url: url,
|
|
141
|
-
appearance: _constants.CardDisplay.HoverCardPreview,
|
|
142
|
-
id: id
|
|
143
|
-
}, (0, _react.jsx)(_HoverCardContent.default, {
|
|
153
|
+
var hoverCardContentProps = _objectSpread({
|
|
144
154
|
onMouseEnter: initShowCard,
|
|
145
155
|
onMouseLeave: initHideCard,
|
|
146
|
-
analytics: analytics,
|
|
147
156
|
cardActions: filteredActions,
|
|
148
157
|
cardState: linkState,
|
|
149
158
|
onActionClick: onActionClick,
|
|
@@ -152,18 +161,15 @@ var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
|
152
161
|
showServerActions: showServerActions,
|
|
153
162
|
url: url,
|
|
154
163
|
id: id
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
onMouseLeave: initHideCard,
|
|
158
|
-
analytics: analytics,
|
|
159
|
-
cardActions: filteredActions,
|
|
160
|
-
cardState: linkState,
|
|
161
|
-
onActionClick: onActionClick,
|
|
162
|
-
onResolve: update,
|
|
163
|
-
renderers: renderers,
|
|
164
|
-
showServerActions: showServerActions,
|
|
165
|
-
url: url
|
|
164
|
+
}, (0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.refactor-hover-card-analytics') ? {} : {
|
|
165
|
+
analytics: analytics
|
|
166
166
|
});
|
|
167
|
+
return (0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.enable-analytics-context') ? (0, _react.jsx)(_SmartLinkAnalyticsContext.SmartLinkAnalyticsContext, {
|
|
168
|
+
url: url,
|
|
169
|
+
appearance: _constants.CardDisplay.HoverCardPreview,
|
|
170
|
+
id: id,
|
|
171
|
+
source: HOVER_CARD_SOURCE
|
|
172
|
+
}, (0, _react.jsx)(_HoverCardContent.default, hoverCardContentProps)) : (0, _react.jsx)(_HoverCardContent.default, hoverCardContentProps);
|
|
167
173
|
}, [analytics, initHideCard, initShowCard, filteredActions, linkState, onActionClick, renderers, showServerActions, url, id]);
|
|
168
174
|
var trigger = (0, _react2.useCallback)(function (triggerProps) {
|
|
169
175
|
return (0, _react.jsx)("span", {
|
|
@@ -9,12 +9,14 @@ exports.hoverCardClassName = exports.getOpenAction = exports.getCopyAction = exp
|
|
|
9
9
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
10
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
11
|
var _react = require("@emotion/react");
|
|
12
|
+
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
13
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
12
14
|
var _shortcut = _interopRequireDefault(require("@atlaskit/icon/glyph/shortcut"));
|
|
13
15
|
var _copy = _interopRequireDefault(require("@atlaskit/icon/glyph/copy"));
|
|
14
|
-
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
15
16
|
var _react2 = _interopRequireWildcard(require("react"));
|
|
16
17
|
var _constants = require("../../../constants");
|
|
17
18
|
var _extractMetadata2 = require("../../../extractors/hover/extractMetadata");
|
|
19
|
+
var _analytics2 = require("../../../state/analytics");
|
|
18
20
|
var _helpers = require("../../../state/helpers");
|
|
19
21
|
var _utils = require("../../../utils");
|
|
20
22
|
var _styled = require("../styled");
|
|
@@ -26,6 +28,7 @@ var _reactIntlNext = require("react-intl-next");
|
|
|
26
28
|
var _messages = require("../../../messages");
|
|
27
29
|
var _actions = require("../../../state/actions");
|
|
28
30
|
var _click = require("../../../utils/analytics/click");
|
|
31
|
+
var _store = require("../../../state/store");
|
|
29
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); }
|
|
30
33
|
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; }
|
|
31
34
|
/** @jsx jsx */
|
|
@@ -91,7 +94,7 @@ var HoverCardContent = function HoverCardContent(_ref) {
|
|
|
91
94
|
var _cardState$details;
|
|
92
95
|
var _ref$id = _ref.id,
|
|
93
96
|
id = _ref$id === void 0 ? '' : _ref$id,
|
|
94
|
-
|
|
97
|
+
_analytics = _ref.analytics,
|
|
95
98
|
_ref$cardActions = _ref.cardActions,
|
|
96
99
|
cardActions = _ref$cardActions === void 0 ? [] : _ref$cardActions,
|
|
97
100
|
cardState = _ref.cardState,
|
|
@@ -104,13 +107,52 @@ var HoverCardContent = function HoverCardContent(_ref) {
|
|
|
104
107
|
showServerActions = _ref.showServerActions;
|
|
105
108
|
var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
|
|
106
109
|
createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
|
|
110
|
+
var defaultAnalytics = (0, _analytics2.useSmartLinkAnalytics)(url, undefined, id);
|
|
111
|
+
var analytics = _analytics !== null && _analytics !== void 0 ? _analytics : defaultAnalytics;
|
|
107
112
|
var extensionKey = (0, _react2.useMemo)(function () {
|
|
108
113
|
return (0, _helpers.getExtensionKey)(cardState.details);
|
|
109
114
|
}, [cardState.details]);
|
|
110
115
|
var actions = (0, _actions.useSmartCardActions)(id, url, analytics);
|
|
116
|
+
var linkState = (0, _store.useSmartCardState)(url);
|
|
117
|
+
var linkStatus = linkState.status;
|
|
118
|
+
var statusRef = (0, _react2.useRef)(linkStatus);
|
|
119
|
+
var analyticsRef = (0, _react2.useRef)(analytics);
|
|
111
120
|
(0, _react2.useEffect)(function () {
|
|
112
121
|
actions.loadMetadata();
|
|
113
122
|
}, [actions]);
|
|
123
|
+
(0, _react2.useEffect)(function () {
|
|
124
|
+
/**
|
|
125
|
+
* Must access current analytics object value via ref because its not stable
|
|
126
|
+
* and it can trigger useEffect to re-run below
|
|
127
|
+
*/
|
|
128
|
+
if (analyticsRef.current !== analytics) {
|
|
129
|
+
analyticsRef.current = analytics;
|
|
130
|
+
}
|
|
131
|
+
if (statusRef.current !== linkStatus) {
|
|
132
|
+
statusRef.current = linkStatus;
|
|
133
|
+
}
|
|
134
|
+
}, [analytics, linkStatus]);
|
|
135
|
+
(0, _react2.useEffect)(function () {
|
|
136
|
+
if ((0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.refactor-hover-card-analytics')) {
|
|
137
|
+
var previewDisplay = 'card';
|
|
138
|
+
var previewInvokeMethod = 'mouse_hover';
|
|
139
|
+
var cardOpenTime = Date.now();
|
|
140
|
+
analyticsRef.current.ui.hoverCardViewedEvent({
|
|
141
|
+
previewDisplay: previewDisplay,
|
|
142
|
+
previewInvokeMethod: previewInvokeMethod,
|
|
143
|
+
status: statusRef.current
|
|
144
|
+
});
|
|
145
|
+
return function () {
|
|
146
|
+
var hoverTime = Date.now() - cardOpenTime;
|
|
147
|
+
analyticsRef.current.ui.hoverCardDismissedEvent({
|
|
148
|
+
previewDisplay: previewDisplay,
|
|
149
|
+
previewInvokeMethod: previewInvokeMethod,
|
|
150
|
+
hoverTime: hoverTime,
|
|
151
|
+
status: statusRef.current
|
|
152
|
+
});
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
}, []);
|
|
114
156
|
var onClick = (0, _react2.useCallback)(function (event) {
|
|
115
157
|
var isModifierKeyPressed = (0, _utils.isSpecialEvent)(event);
|
|
116
158
|
analytics.ui.cardClickedEvent({
|
|
@@ -10,6 +10,7 @@ var _analyticsNext = require("@atlaskit/analytics-next");
|
|
|
10
10
|
var _react = require("@emotion/react");
|
|
11
11
|
var _react2 = require("react");
|
|
12
12
|
var _reactErrorBoundary = require("react-error-boundary");
|
|
13
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
13
14
|
var _analytics = require("../../state/analytics");
|
|
14
15
|
var _analytics2 = require("../../utils/analytics");
|
|
15
16
|
var _HoverCardComponent = require("./components/HoverCardComponent");
|
|
@@ -24,7 +25,11 @@ var HoverCardWithErrorBoundary = function HoverCardWithErrorBoundary(props) {
|
|
|
24
25
|
var analyticsHandler = (0, _react2.useCallback)(function (analyticsPayload) {
|
|
25
26
|
(0, _analytics2.fireSmartLinkEvent)(analyticsPayload, createAnalyticsEvent);
|
|
26
27
|
}, [createAnalyticsEvent]);
|
|
27
|
-
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Feature flag disables prop drilling of analytics handlers
|
|
31
|
+
*/
|
|
32
|
+
var analytics = (0, _analytics.useSmartLinkAnalytics)(url, (0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.refactor-hover-card-analytics') ? undefined : analyticsHandler, id);
|
|
28
33
|
var onError = (0, _react2.useCallback)(function (error, info) {
|
|
29
34
|
analytics.ui.renderFailedEvent({
|
|
30
35
|
display: _constants.CardDisplay.HoverCardPreview,
|
|
@@ -33,18 +38,30 @@ var HoverCardWithErrorBoundary = function HoverCardWithErrorBoundary(props) {
|
|
|
33
38
|
errorInfo: info
|
|
34
39
|
});
|
|
35
40
|
}, [analytics.ui, id]);
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Feature flag disables the prop drilling of analytics handlers to hover card component
|
|
44
|
+
*/
|
|
45
|
+
var analyticsProps = (0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.refactor-hover-card-analytics') ? {} : {
|
|
46
|
+
analyticsHandler: analyticsHandler,
|
|
47
|
+
analytics: analytics
|
|
48
|
+
};
|
|
36
49
|
return (0, _react.jsx)(_reactErrorBoundary.ErrorBoundary, {
|
|
37
50
|
fallback: children,
|
|
38
51
|
onError: onError
|
|
39
|
-
}, (0, _react.jsx)(_HoverCardComponent.HoverCardComponent, (0, _extends2.default)({}, props,
|
|
40
|
-
analyticsHandler: analyticsHandler,
|
|
41
|
-
analytics: analytics
|
|
42
|
-
}), children));
|
|
52
|
+
}, (0, _react.jsx)(_HoverCardComponent.HoverCardComponent, (0, _extends2.default)({}, props, analyticsProps), children));
|
|
43
53
|
};
|
|
44
|
-
var
|
|
54
|
+
var HoverCardWithAnalyticsContext = (0, _analyticsNext.withAnalyticsContext)({
|
|
45
55
|
source: 'smartLinkPreviewHoverCard',
|
|
46
56
|
attributes: {
|
|
47
57
|
display: _constants.CardDisplay.HoverCardPreview
|
|
48
58
|
}
|
|
49
59
|
})((0, _analyticsNext.withAnalyticsEvents)()(HoverCardWithErrorBoundary));
|
|
60
|
+
var HoverCardWithoutAnalyticsContext = (0, _analyticsNext.withAnalyticsEvents)()(HoverCardWithErrorBoundary);
|
|
61
|
+
var HoverCard = function HoverCard(props) {
|
|
62
|
+
if ((0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.refactor-hover-card-analytics')) {
|
|
63
|
+
return (0, _react.jsx)(HoverCardWithoutAnalyticsContext, props);
|
|
64
|
+
}
|
|
65
|
+
return (0, _react.jsx)(HoverCardWithAnalyticsContext, props);
|
|
66
|
+
};
|
|
50
67
|
exports.HoverCard = HoverCard;
|
|
@@ -15,13 +15,13 @@ var _templateObject, _templateObject2;
|
|
|
15
15
|
// Current rationale: vertically positioned at the top of
|
|
16
16
|
// the smart card container (when set to 0). Offset this
|
|
17
17
|
// to position it with appropriate whitespace from the top.
|
|
18
|
-
var Icon = _styled.default.img(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n height: 14px;\n width: 14px;\n margin-right:
|
|
18
|
+
var Icon = _styled.default.img(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n height: 14px;\n width: 14px;\n margin-right: ", ";\n border-radius: 2px;\n user-select: none;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n"])), "var(--ds-space-050, 4px)");
|
|
19
19
|
|
|
20
20
|
// Used for 'untrue' icons which claim to be 16x16 but
|
|
21
21
|
// are less than that in height/width.
|
|
22
22
|
// TODO: Replace this override with proper AtlasKit solution.
|
|
23
23
|
exports.Icon = Icon;
|
|
24
|
-
var AKIconWrapper = _styled.default.span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n margin-right: -
|
|
24
|
+
var AKIconWrapper = _styled.default.span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n margin-right: calc(-1 * ", ");\n"])), "var(--ds-space-025, 2px)");
|
|
25
25
|
exports.AKIconWrapper = AKIconWrapper;
|
|
26
26
|
var Shimmer = function Shimmer(_ref) {
|
|
27
27
|
var testId = _ref.testId;
|
|
@@ -25,7 +25,7 @@ var IconWrapper = _styled.default.span(_templateObject || (_templateObject = (0,
|
|
|
25
25
|
|
|
26
26
|
// Wraps all emoji in Inline Links similar to icon
|
|
27
27
|
exports.IconWrapper = IconWrapper;
|
|
28
|
-
var EmojiWrapper = _styled.default.span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n display: inline-block;\n margin-right:
|
|
28
|
+
var EmojiWrapper = _styled.default.span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n display: inline-block;\n margin-right: ", ";\n user-select: none;\n ", "\n ", "\n"])), "var(--ds-space-025, 2px)", IconOverrides, IconObjectOverrides);
|
|
29
29
|
|
|
30
30
|
// The main 'wrapping' element, title of the content.
|
|
31
31
|
// NB: `white-space` adds little whitespace before wrapping.
|
|
@@ -38,15 +38,15 @@ exports.IconTitleWrapper = IconTitleWrapper;
|
|
|
38
38
|
var LozengeWrapper = _styled.default.span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n display: inline-block;\n vertical-align: 1px;\n"])));
|
|
39
39
|
// TODO: Replace overrides with proper AtlasKit solution.
|
|
40
40
|
exports.LozengeWrapper = LozengeWrapper;
|
|
41
|
-
var LozengeBlockWrapper = _styled.default.span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n & > span {\n margin-left:
|
|
41
|
+
var LozengeBlockWrapper = _styled.default.span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n & > span {\n margin-left: ", ";\n }\n"])), "var(--ds-space-050, 4px)");
|
|
42
42
|
exports.LozengeBlockWrapper = LozengeBlockWrapper;
|
|
43
|
-
var RightIconPositionWrapper = _styled.default.span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n margin-left:
|
|
43
|
+
var RightIconPositionWrapper = _styled.default.span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n margin-left: ", ";\n margin-right: ", ";\n position: relative;\n display: inline-block;\n"])), "var(--ds-space-025, 2px)", "var(--ds-space-050, 4px)");
|
|
44
44
|
|
|
45
45
|
// The following components are used to absolutely position icons in the vertical center.
|
|
46
46
|
// - IconPositionWrapper: the `relative` parent which has no height in itself.
|
|
47
47
|
// - IconEmptyWrapper: the child which forces `IconPositionWrapper` to have a height.
|
|
48
48
|
exports.RightIconPositionWrapper = RightIconPositionWrapper;
|
|
49
|
-
var IconPositionWrapper = _styled.default.span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n margin-right:
|
|
49
|
+
var IconPositionWrapper = _styled.default.span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n margin-right: ", ";\n position: relative;\n display: inline-block;\n"])), "var(--ds-space-050, 4px)");
|
|
50
50
|
exports.IconPositionWrapper = IconPositionWrapper;
|
|
51
51
|
var IconEmptyWrapper = _styled.default.span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n width: 14px;\n height: 100%;\n display: inline-block;\n opacity: 0;\n"])));
|
|
52
52
|
|
|
@@ -9,5 +9,5 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
|
|
|
9
9
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
10
10
|
var _styled2 = require("../IconAndTitleLayout/styled");
|
|
11
11
|
var _templateObject;
|
|
12
|
-
var SpinnerWrapper = (0, _styled.default)(_styled2.IconTitleWrapper)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n vertical-align: text-top;\n margin-left:
|
|
12
|
+
var SpinnerWrapper = (0, _styled.default)(_styled2.IconTitleWrapper)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n vertical-align: text-top;\n margin-left: ", ";\n"])), "var(--ds-space-025, 2px)");
|
|
13
13
|
exports.SpinnerWrapper = SpinnerWrapper;
|
|
@@ -8,7 +8,8 @@ export const SmartLinkAnalyticsContext = ({
|
|
|
8
8
|
children,
|
|
9
9
|
url,
|
|
10
10
|
appearance,
|
|
11
|
-
id
|
|
11
|
+
id,
|
|
12
|
+
source
|
|
12
13
|
}) => {
|
|
13
14
|
const {
|
|
14
15
|
details,
|
|
@@ -24,6 +25,7 @@ export const SmartLinkAnalyticsContext = ({
|
|
|
24
25
|
const display = isFlexibleUi ? CardDisplay.Flexible : appearance;
|
|
25
26
|
return /*#__PURE__*/React.createElement(AnalyticsContext, {
|
|
26
27
|
data: {
|
|
28
|
+
source,
|
|
27
29
|
attributes: {
|
|
28
30
|
...resolvedAttributes,
|
|
29
31
|
urlHash,
|
package/dist/es2019/version.json
CHANGED
|
@@ -28,7 +28,7 @@ export { ForbiddenAction, AuthorizeAction, BlockCardResolvedView, BlockCardResol
|
|
|
28
28
|
const flexibleBlockCardElevationStyle = css`
|
|
29
29
|
border-radius: 1.5px;
|
|
30
30
|
box-shadow: ${tokens.elevation};
|
|
31
|
-
margin: 2px;
|
|
31
|
+
margin: ${"var(--ds-space-025, 2px)"};
|
|
32
32
|
`;
|
|
33
33
|
export const BlockCard = ({
|
|
34
34
|
id,
|
|
@@ -127,6 +127,8 @@ export const LinkWrapper = styled.div`
|
|
|
127
127
|
text-decoration: none;
|
|
128
128
|
}
|
|
129
129
|
`;
|
|
130
|
+
|
|
131
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing
|
|
130
132
|
export const Wrapper = styled.div`
|
|
131
133
|
${props => wrapperStyles(props)};
|
|
132
134
|
margin-top: 10px;
|
|
@@ -239,7 +241,8 @@ export const ContentWrapper = styled.div`
|
|
|
239
241
|
display: flex;
|
|
240
242
|
flex-direction: row;
|
|
241
243
|
box-sizing: border-box;
|
|
242
|
-
padding: 8px
|
|
244
|
+
padding: ${"var(--ds-space-100, 8px)"} ${"var(--ds-space-150, 12px)"}
|
|
245
|
+
${"var(--ds-space-150, 12px)"} ${"var(--ds-space-150, 12px)"};
|
|
243
246
|
`;
|
|
244
247
|
export const Title = styled.div`
|
|
245
248
|
color: ${`var(--ds-text, ${colors.N900})`};
|
|
@@ -250,13 +253,15 @@ export const Title = styled.div`
|
|
|
250
253
|
overflow: hidden;
|
|
251
254
|
`;
|
|
252
255
|
export const Byline = styled.div`
|
|
253
|
-
margin-top: 4px;
|
|
256
|
+
margin-top: ${"var(--ds-space-050, 4px)"};
|
|
254
257
|
color: ${`var(--ds-text-subtlest, ${colors.N300})`};
|
|
255
258
|
font-size: 12px;
|
|
256
259
|
font-weight: normal;
|
|
257
260
|
line-height: ${16 / 12};
|
|
258
261
|
${ellipsis('100%')};
|
|
259
262
|
`;
|
|
263
|
+
|
|
264
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing
|
|
260
265
|
export const Description = styled.div`
|
|
261
266
|
margin-top: 7px;
|
|
262
267
|
color: ${`var(--ds-text, ${colors.N800})`};
|
|
@@ -267,13 +272,14 @@ export const Description = styled.div`
|
|
|
267
272
|
overflow: hidden;
|
|
268
273
|
`;
|
|
269
274
|
export const ResolvedViewIconWrapper = styled.div`
|
|
270
|
-
margin-top: 4px;
|
|
275
|
+
margin-top: ${"var(--ds-space-050, 4px)"};
|
|
271
276
|
`;
|
|
272
277
|
export const Thumbnail = styled.div`
|
|
273
278
|
${borderRadius}
|
|
274
279
|
${csssize(48)}
|
|
275
280
|
float: right;
|
|
276
|
-
margin: 4px 0
|
|
281
|
+
margin: ${"var(--ds-space-050, 4px)"} 0 ${"var(--ds-space-150, 12px)"}
|
|
282
|
+
${"var(--ds-space-150, 12px)"};
|
|
277
283
|
background-color: ${`var(--ds-skeleton, ${colors.N30})`};
|
|
278
284
|
background-image: url(${({
|
|
279
285
|
src
|
|
@@ -281,18 +287,18 @@ export const Thumbnail = styled.div`
|
|
|
281
287
|
background-size: cover;
|
|
282
288
|
`;
|
|
283
289
|
export const UsersWrapper = styled.div`
|
|
284
|
-
margin-top: 8px;
|
|
290
|
+
margin-top: ${"var(--ds-space-100, 8px)"};
|
|
285
291
|
`;
|
|
286
292
|
export const ActionsWrapper = styled.div`
|
|
287
|
-
margin-top: 8px;
|
|
293
|
+
margin-top: ${"var(--ds-space-100, 8px)"};
|
|
288
294
|
text-align: right;
|
|
289
295
|
|
|
290
296
|
> * {
|
|
291
|
-
margin-top: 4px;
|
|
297
|
+
margin-top: ${"var(--ds-space-050, 4px)"};
|
|
292
298
|
}
|
|
293
299
|
|
|
294
300
|
> * + * {
|
|
295
|
-
margin-left: 4px;
|
|
301
|
+
margin-left: ${"var(--ds-space-050, 4px)"};
|
|
296
302
|
}
|
|
297
303
|
`;
|
|
298
304
|
export const AlertWrapper = styled.div`
|