@atlaskit/smart-card 17.4.2 → 17.5.1
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 +18 -0
- package/dist/cjs/constants.js +14 -2
- package/dist/cjs/extractors/flexible/extract-preview.js +21 -0
- package/dist/cjs/extractors/flexible/index.js +3 -0
- package/dist/cjs/utils/token.js +14 -24
- package/dist/cjs/version.json +1 -1
- package/dist/cjs/view/FlexibleCard/components/actions/action/index.js +18 -7
- package/dist/cjs/view/FlexibleCard/components/actions/utils.js +8 -1
- package/dist/cjs/view/FlexibleCard/components/blocks/action-group/index.js +3 -2
- package/dist/cjs/view/FlexibleCard/components/blocks/footer-block/index.js +50 -0
- package/dist/cjs/view/FlexibleCard/components/blocks/footer-block/types.js +5 -0
- package/dist/cjs/view/FlexibleCard/components/blocks/index.js +8 -0
- package/dist/cjs/view/FlexibleCard/components/blocks/utils.js +24 -4
- package/dist/cjs/view/FlexibleCard/components/common/atlaskit-icon/index.js +1 -1
- package/dist/cjs/view/FlexibleCard/components/elements/index.js +3 -1
- package/dist/cjs/view/FlexibleCard/components/elements/media/index.js +45 -0
- package/dist/cjs/view/FlexibleCard/components/elements/media/types.js +5 -0
- package/dist/cjs/view/FlexibleCard/components/elements/utils.js +4 -0
- package/dist/es2019/constants.js +11 -1
- package/dist/es2019/extractors/flexible/extract-preview.js +12 -0
- package/dist/es2019/extractors/flexible/index.js +2 -0
- package/dist/es2019/utils/token.js +14 -22
- package/dist/es2019/version.json +1 -1
- package/dist/es2019/view/FlexibleCard/components/actions/action/index.js +34 -6
- package/dist/es2019/view/FlexibleCard/components/actions/utils.js +5 -1
- package/dist/es2019/view/FlexibleCard/components/blocks/action-group/index.js +3 -2
- package/dist/es2019/view/FlexibleCard/components/blocks/footer-block/index.js +35 -0
- package/dist/es2019/view/FlexibleCard/components/blocks/footer-block/types.js +1 -0
- package/dist/es2019/view/FlexibleCard/components/blocks/index.js +1 -0
- package/dist/es2019/view/FlexibleCard/components/blocks/utils.js +20 -5
- package/dist/es2019/view/FlexibleCard/components/common/atlaskit-icon/index.js +1 -1
- package/dist/es2019/view/FlexibleCard/components/elements/index.js +1 -0
- package/dist/es2019/view/FlexibleCard/components/elements/media/index.js +35 -0
- package/dist/es2019/view/FlexibleCard/components/elements/media/types.js +1 -0
- package/dist/es2019/view/FlexibleCard/components/elements/utils.js +4 -0
- package/dist/esm/constants.js +11 -1
- package/dist/esm/extractors/flexible/extract-preview.js +12 -0
- package/dist/esm/extractors/flexible/index.js +2 -0
- package/dist/esm/utils/token.js +14 -22
- package/dist/esm/version.json +1 -1
- package/dist/esm/view/FlexibleCard/components/actions/action/index.js +17 -7
- package/dist/esm/view/FlexibleCard/components/actions/utils.js +9 -1
- package/dist/esm/view/FlexibleCard/components/blocks/action-group/index.js +3 -2
- package/dist/esm/view/FlexibleCard/components/blocks/footer-block/index.js +34 -0
- package/dist/esm/view/FlexibleCard/components/blocks/footer-block/types.js +1 -0
- package/dist/esm/view/FlexibleCard/components/blocks/index.js +1 -0
- package/dist/esm/view/FlexibleCard/components/blocks/utils.js +25 -6
- package/dist/esm/view/FlexibleCard/components/common/atlaskit-icon/index.js +1 -1
- package/dist/esm/view/FlexibleCard/components/elements/index.js +1 -0
- package/dist/esm/view/FlexibleCard/components/elements/media/index.js +34 -0
- package/dist/esm/view/FlexibleCard/components/elements/media/types.js +1 -0
- package/dist/esm/view/FlexibleCard/components/elements/utils.js +3 -0
- package/dist/types/constants.d.ts +7 -0
- package/dist/types/extractors/flexible/extract-preview.d.ts +4 -0
- package/dist/types/state/flexible-ui-context/types.d.ts +6 -1
- package/dist/types/utils/token.d.ts +13 -14
- package/dist/types/view/FlexibleCard/components/blocks/action-group/types.d.ts +2 -0
- package/dist/types/view/FlexibleCard/components/blocks/footer-block/index.d.ts +4 -0
- package/dist/types/view/FlexibleCard/components/blocks/footer-block/types.d.ts +4 -0
- package/dist/types/view/FlexibleCard/components/blocks/index.d.ts +1 -0
- package/dist/types/view/FlexibleCard/components/blocks/types.d.ts +2 -0
- package/dist/types/view/FlexibleCard/components/blocks/utils.d.ts +1 -1
- package/dist/types/view/FlexibleCard/components/elements/index.d.ts +2 -0
- package/dist/types/view/FlexibleCard/components/elements/media/index.d.ts +5 -0
- package/dist/types/view/FlexibleCard/components/elements/media/types.d.ts +6 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @atlaskit/smart-card
|
|
2
2
|
|
|
3
|
+
## 17.5.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`238facb8e1a`](https://bitbucket.org/atlassian/atlassian-frontend/commits/238facb8e1a) - Flexible UI: Add Preview element
|
|
8
|
+
|
|
9
|
+
## 17.5.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- [`be8dc55e85d`](https://bitbucket.org/atlassian/atlassian-frontend/commits/be8dc55e85d) - [ux] Add Footer block
|
|
14
|
+
|
|
15
|
+
## 17.4.3
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- [`5a50882a528`](https://bitbucket.org/atlassian/atlassian-frontend/commits/5a50882a528) - Flexible UI: Remove safeToken function
|
|
20
|
+
|
|
3
21
|
## 17.4.2
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
package/dist/cjs/constants.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.SmartLinkWidth = exports.SmartLinkTheme = exports.SmartLinkStatus = exports.SmartLinkSize = exports.SmartLinkPosition = exports.SmartLinkDirection = exports.SmartLinkAlignment = exports.IconType = exports.ElementName = exports.ActionName = void 0;
|
|
6
|
+
exports.SmartLinkWidth = exports.SmartLinkTheme = exports.SmartLinkStatus = exports.SmartLinkSize = exports.SmartLinkPosition = exports.SmartLinkDirection = exports.SmartLinkAlignment = exports.MediaType = exports.IconType = exports.ElementName = exports.ActionName = void 0;
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* The alignment of Flexible UI component.
|
|
@@ -137,6 +137,7 @@ exports.ElementName = ElementName;
|
|
|
137
137
|
ElementName["LinkIcon"] = "LinkIcon";
|
|
138
138
|
ElementName["ModifiedBy"] = "ModifiedBy";
|
|
139
139
|
ElementName["ModifiedOn"] = "ModifiedOn";
|
|
140
|
+
ElementName["Preview"] = "Preview";
|
|
140
141
|
ElementName["Priority"] = "Priority";
|
|
141
142
|
ElementName["ProgrammingLanguage"] = "ProgrammingLanguage";
|
|
142
143
|
ElementName["Snippet"] = "Snippet";
|
|
@@ -158,6 +159,10 @@ exports.ActionName = ActionName;
|
|
|
158
159
|
})(ActionName || (exports.ActionName = ActionName = {}));
|
|
159
160
|
|
|
160
161
|
var IconType;
|
|
162
|
+
/**
|
|
163
|
+
* Type for Flexible UI's Media element
|
|
164
|
+
*/
|
|
165
|
+
|
|
161
166
|
exports.IconType = IconType;
|
|
162
167
|
|
|
163
168
|
(function (IconType) {
|
|
@@ -218,4 +223,11 @@ exports.IconType = IconType;
|
|
|
218
223
|
IconType["PriorityUndefined"] = "Badge:PriorityUndefined";
|
|
219
224
|
IconType["ProgrammingLanguage"] = "Badge:ProgrammingLanguage";
|
|
220
225
|
IconType["Subscriber"] = "Badge:Subscriber";
|
|
221
|
-
})(IconType || (exports.IconType = IconType = {}));
|
|
226
|
+
})(IconType || (exports.IconType = IconType = {}));
|
|
227
|
+
|
|
228
|
+
var MediaType;
|
|
229
|
+
exports.MediaType = MediaType;
|
|
230
|
+
|
|
231
|
+
(function (MediaType) {
|
|
232
|
+
MediaType["Image"] = "image";
|
|
233
|
+
})(MediaType || (exports.MediaType = MediaType = {}));
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _preview = require("../common/preview");
|
|
9
|
+
|
|
10
|
+
var _constants = require("../../constants");
|
|
11
|
+
|
|
12
|
+
var extractPreview = function extractPreview(data) {
|
|
13
|
+
var url = (0, _preview.extractImage)(data);
|
|
14
|
+
return url ? {
|
|
15
|
+
type: _constants.MediaType.Image,
|
|
16
|
+
url: url
|
|
17
|
+
} : undefined;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
var _default = extractPreview;
|
|
21
|
+
exports.default = _default;
|
|
@@ -27,6 +27,8 @@ var _extractPriority = _interopRequireDefault(require("./extract-priority"));
|
|
|
27
27
|
|
|
28
28
|
var _extractProviderIcon = _interopRequireDefault(require("./icon/extract-provider-icon"));
|
|
29
29
|
|
|
30
|
+
var _extractPreview = _interopRequireDefault(require("./extract-preview"));
|
|
31
|
+
|
|
30
32
|
var extractFlexibleUiContext = function extractFlexibleUiContext(response, renderers) {
|
|
31
33
|
if (!response) {
|
|
32
34
|
return undefined;
|
|
@@ -43,6 +45,7 @@ var extractFlexibleUiContext = function extractFlexibleUiContext(response, rende
|
|
|
43
45
|
linkIcon: (0, _icon.extractLinkIcon)(response, renderers),
|
|
44
46
|
modifiedBy: (0, _utils.extractModifiedBy)(data),
|
|
45
47
|
modifiedOn: (0, _extractDateUpdated.extractDateUpdated)(data),
|
|
48
|
+
preview: (0, _extractPreview.default)(data),
|
|
46
49
|
priority: (0, _extractPriority.default)(data),
|
|
47
50
|
programmingLanguage: (0, _utils.extractProgrammingLanguage)(data),
|
|
48
51
|
snippet: (0, _primitives.extractSummary)(data) || undefined,
|
package/dist/cjs/utils/token.js
CHANGED
|
@@ -3,33 +3,23 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.tokens =
|
|
6
|
+
exports.tokens = void 0;
|
|
7
7
|
|
|
8
8
|
var _tokens = require("@atlaskit/tokens");
|
|
9
9
|
|
|
10
|
-
// Temporary safeguard while @atlaskit/tokens is being developed
|
|
11
|
-
var safeToken = function safeToken(path, fallback) {
|
|
12
|
-
try {
|
|
13
|
-
return (0, _tokens.token)(path, fallback);
|
|
14
|
-
} catch (e) {
|
|
15
|
-
return fallback;
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
exports.safeToken = safeToken;
|
|
20
10
|
var tokens = {
|
|
21
|
-
actionIcon:
|
|
22
|
-
background:
|
|
23
|
-
badgeIcon:
|
|
24
|
-
badgeText:
|
|
25
|
-
blackLink:
|
|
26
|
-
blackLinkPressed:
|
|
27
|
-
blueLink:
|
|
28
|
-
blueLinkPressed:
|
|
29
|
-
elevation:
|
|
30
|
-
errorMessage:
|
|
31
|
-
errorMessageHover:
|
|
32
|
-
snippet:
|
|
33
|
-
text:
|
|
11
|
+
actionIcon: (0, _tokens.token)('color.icon', '#44546F'),
|
|
12
|
+
background: (0, _tokens.token)('elevation.surface', '#FFFFFF'),
|
|
13
|
+
badgeIcon: (0, _tokens.token)('color.icon.subtle', '#626F86'),
|
|
14
|
+
badgeText: (0, _tokens.token)('color.text.subtlest', '#626F86'),
|
|
15
|
+
blackLink: (0, _tokens.token)('color.text.subtle', '#44546F'),
|
|
16
|
+
blackLinkPressed: (0, _tokens.token)('color.text', '#172B4D'),
|
|
17
|
+
blueLink: (0, _tokens.token)('color.link', '#0C66E4'),
|
|
18
|
+
blueLinkPressed: (0, _tokens.token)('color.link.pressed', '#0055CC'),
|
|
19
|
+
elevation: (0, _tokens.token)('elevation.shadow.raised', '0px 1px 1px #091E4240, 0px 0px 1px #091E424F'),
|
|
20
|
+
errorMessage: (0, _tokens.token)('color.text.disabled', '#6B778C'),
|
|
21
|
+
errorMessageHover: (0, _tokens.token)('color.text.subtle', '#8993A4'),
|
|
22
|
+
snippet: (0, _tokens.token)('color.text', '#172B4D'),
|
|
23
|
+
text: (0, _tokens.token)('color.text.subtlest', '#626F86')
|
|
34
24
|
};
|
|
35
25
|
exports.tokens = tokens;
|
package/dist/cjs/version.json
CHANGED
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
10
12
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
13
|
|
|
12
14
|
var _react = _interopRequireDefault(require("react"));
|
|
@@ -25,9 +27,9 @@ var _token = require("../../../../../utils/token");
|
|
|
25
27
|
|
|
26
28
|
var _utils2 = require("../../../../../utils");
|
|
27
29
|
|
|
28
|
-
var _templateObject;
|
|
30
|
+
var _templateObject, _templateObject2, _sizeToSpacing;
|
|
29
31
|
|
|
30
|
-
var
|
|
32
|
+
var getIconWidth = function getIconWidth(size) {
|
|
31
33
|
switch (size) {
|
|
32
34
|
case _constants.SmartLinkSize.XLarge:
|
|
33
35
|
case _constants.SmartLinkSize.Large:
|
|
@@ -41,7 +43,11 @@ var getWidth = function getWidth(size) {
|
|
|
41
43
|
};
|
|
42
44
|
|
|
43
45
|
var getIconStyles = function getIconStyles(size) {
|
|
44
|
-
return (0, _core.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n ", ";\n"])), _token.tokens.actionIcon, (0, _utils.getIconSizeStyles)(
|
|
46
|
+
return (0, _core.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n ", ";\n"])), _token.tokens.actionIcon, (0, _utils.getIconSizeStyles)(getIconWidth(size)));
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
var getButtonStyle = function getButtonStyle(size, iconOnly) {
|
|
50
|
+
return size === _constants.SmartLinkSize.Small ? (0, _core.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n font-size: 0.75rem;\n font-weight: 500;\n line-height: 1rem;\n button,\n button:hover,\n button:focus,\n button:active {\n line-height: 1rem;\n ", "\n }\n "])), iconOnly ? "\n padding: 0.125rem;\n " : "\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n ") : '';
|
|
45
51
|
};
|
|
46
52
|
|
|
47
53
|
var ActionIcon = function ActionIcon(_ref) {
|
|
@@ -54,6 +60,8 @@ var ActionIcon = function ActionIcon(_ref) {
|
|
|
54
60
|
}, icon);
|
|
55
61
|
};
|
|
56
62
|
|
|
63
|
+
var sizeToSpacing = (_sizeToSpacing = {}, (0, _defineProperty2.default)(_sizeToSpacing, _constants.SmartLinkSize.Small, 'none'), (0, _defineProperty2.default)(_sizeToSpacing, _constants.SmartLinkSize.Medium, 'compact'), (0, _defineProperty2.default)(_sizeToSpacing, _constants.SmartLinkSize.Large, 'compact'), (0, _defineProperty2.default)(_sizeToSpacing, _constants.SmartLinkSize.XLarge, 'default'), _sizeToSpacing);
|
|
64
|
+
|
|
57
65
|
var Action = function Action(_ref2) {
|
|
58
66
|
var _ref2$appearance = _ref2.appearance,
|
|
59
67
|
appearance = _ref2$appearance === void 0 ? 'subtle' : _ref2$appearance,
|
|
@@ -72,26 +80,29 @@ var Action = function Action(_ref2) {
|
|
|
72
80
|
return null;
|
|
73
81
|
}
|
|
74
82
|
|
|
75
|
-
var iconBefore = iconPosition === 'before' ? (0, _core.jsx)(ActionIcon, {
|
|
83
|
+
var iconBefore = icon && iconPosition === 'before' ? (0, _core.jsx)(ActionIcon, {
|
|
76
84
|
size: size,
|
|
77
85
|
testId: testId,
|
|
78
86
|
icon: icon
|
|
79
87
|
}) : undefined;
|
|
80
|
-
var iconAfter = iconPosition === 'after' ? (0, _core.jsx)(ActionIcon, {
|
|
88
|
+
var iconAfter = icon && iconPosition === 'after' ? (0, _core.jsx)(ActionIcon, {
|
|
81
89
|
size: size,
|
|
82
90
|
testId: testId,
|
|
83
91
|
icon: icon
|
|
84
92
|
}) : undefined;
|
|
93
|
+
var iconOnly = !content;
|
|
85
94
|
return (0, _core.jsx)(_tooltip.default, {
|
|
86
95
|
content: tooltipMessage
|
|
96
|
+
}, (0, _core.jsx)("div", {
|
|
97
|
+
css: getButtonStyle(size, iconOnly)
|
|
87
98
|
}, (0, _core.jsx)(_customThemeButton.default, {
|
|
88
|
-
spacing:
|
|
99
|
+
spacing: sizeToSpacing[size],
|
|
89
100
|
appearance: appearance,
|
|
90
101
|
testId: testId,
|
|
91
102
|
onClick: (0, _utils2.handleOnClick)(onClick),
|
|
92
103
|
iconBefore: iconBefore,
|
|
93
104
|
iconAfter: iconAfter
|
|
94
|
-
}, content));
|
|
105
|
+
}, content)));
|
|
95
106
|
};
|
|
96
107
|
|
|
97
108
|
var _default = Action;
|
|
@@ -31,10 +31,15 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
31
31
|
|
|
32
32
|
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; }
|
|
33
33
|
|
|
34
|
+
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; }
|
|
35
|
+
|
|
36
|
+
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; }
|
|
37
|
+
|
|
34
38
|
var actionMappings = (0, _defineProperty2.default)({}, _constants.ActionName.DeleteAction, {
|
|
35
39
|
component: _action.default,
|
|
36
40
|
props: {
|
|
37
41
|
testId: 'smart-action-delete-action',
|
|
42
|
+
content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.delete),
|
|
38
43
|
icon: /*#__PURE__*/_react.default.createElement(_cross.default, {
|
|
39
44
|
label: "Delete"
|
|
40
45
|
}),
|
|
@@ -91,7 +96,9 @@ var createUIAction = function createUIAction(name) {
|
|
|
91
96
|
}
|
|
92
97
|
|
|
93
98
|
return function (overrides) {
|
|
94
|
-
|
|
99
|
+
var combinedProps = _objectSpread(_objectSpread({}, props), overrides);
|
|
100
|
+
|
|
101
|
+
return /*#__PURE__*/_react.default.createElement(BaseAction, combinedProps);
|
|
95
102
|
};
|
|
96
103
|
};
|
|
97
104
|
|
|
@@ -25,12 +25,13 @@ var ActionGroup = function ActionGroup(_ref) {
|
|
|
25
25
|
var _ref$items = _ref.items,
|
|
26
26
|
items = _ref$items === void 0 ? [] : _ref$items,
|
|
27
27
|
_ref$size = _ref.size,
|
|
28
|
-
size = _ref$size === void 0 ? _constants.SmartLinkSize.Medium : _ref$size
|
|
28
|
+
size = _ref$size === void 0 ? _constants.SmartLinkSize.Medium : _ref$size,
|
|
29
|
+
appearance = _ref.appearance;
|
|
29
30
|
// Currently we only have delete action available, this prevents others from adding more delete actions
|
|
30
31
|
var actionsToRender = items.slice(0, 1);
|
|
31
32
|
return (0, _core.jsx)("div", {
|
|
32
33
|
css: styles
|
|
33
|
-
}, (0, _core.jsx)(_buttonGroup.default, null, (0, _utils.renderActionItems)(actionsToRender, size)));
|
|
34
|
+
}, (0, _core.jsx)(_buttonGroup.default, null, (0, _utils.renderActionItems)(actionsToRender, size, appearance)));
|
|
34
35
|
};
|
|
35
36
|
|
|
36
37
|
var _default = ActionGroup;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _constants = require("../../../../../constants");
|
|
15
|
+
|
|
16
|
+
var _block = _interopRequireDefault(require("../block"));
|
|
17
|
+
|
|
18
|
+
var _elementGroup = _interopRequireDefault(require("../element-group"));
|
|
19
|
+
|
|
20
|
+
var _elements = require("../../elements");
|
|
21
|
+
|
|
22
|
+
var _actionGroup = _interopRequireDefault(require("../action-group"));
|
|
23
|
+
|
|
24
|
+
var FooterBlock = function FooterBlock(props) {
|
|
25
|
+
var status = props.status,
|
|
26
|
+
actions = props.actions,
|
|
27
|
+
_props$testId = props.testId,
|
|
28
|
+
testId = _props$testId === void 0 ? 'smart-footer-block' : _props$testId;
|
|
29
|
+
|
|
30
|
+
if (status !== _constants.SmartLinkStatus.Resolved) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return /*#__PURE__*/_react.default.createElement(_block.default, (0, _extends2.default)({}, props, {
|
|
35
|
+
testId: "".concat(testId, "-resolved-view")
|
|
36
|
+
}), /*#__PURE__*/_react.default.createElement(_elements.Provider, {
|
|
37
|
+
testId: "".concat(testId, "-provider")
|
|
38
|
+
}), actions && actions.length > 0 ? /*#__PURE__*/_react.default.createElement(_elementGroup.default, {
|
|
39
|
+
testId: "smart-element-group-actions",
|
|
40
|
+
align: _constants.SmartLinkAlignment.Right,
|
|
41
|
+
direction: _constants.SmartLinkDirection.Horizontal,
|
|
42
|
+
width: _constants.SmartLinkWidth.Flexible
|
|
43
|
+
}, /*#__PURE__*/_react.default.createElement(_actionGroup.default, {
|
|
44
|
+
items: actions,
|
|
45
|
+
appearance: "default"
|
|
46
|
+
})) : null);
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
var _default = FooterBlock;
|
|
50
|
+
exports.default = _default;
|
|
@@ -5,6 +5,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
+
Object.defineProperty(exports, "FooterBlock", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
get: function get() {
|
|
11
|
+
return _footerBlock.default;
|
|
12
|
+
}
|
|
13
|
+
});
|
|
8
14
|
Object.defineProperty(exports, "MetadataBlock", {
|
|
9
15
|
enumerable: true,
|
|
10
16
|
get: function get() {
|
|
@@ -24,6 +30,8 @@ Object.defineProperty(exports, "TitleBlock", {
|
|
|
24
30
|
}
|
|
25
31
|
});
|
|
26
32
|
|
|
33
|
+
var _footerBlock = _interopRequireDefault(require("./footer-block"));
|
|
34
|
+
|
|
27
35
|
var _metadataBlock = _interopRequireDefault(require("./metadata-block"));
|
|
28
36
|
|
|
29
37
|
var _snippetBlock = _interopRequireDefault(require("./snippet-block"));
|
|
@@ -36,7 +36,7 @@ var _actionGroup = _interopRequireDefault(require("./action-group"));
|
|
|
36
36
|
var _elementGroup = _interopRequireDefault(require("./element-group"));
|
|
37
37
|
|
|
38
38
|
var _excluded = ["name"],
|
|
39
|
-
_excluded2 = ["name"];
|
|
39
|
+
_excluded2 = ["name", "hideContent", "hideIcon", "onClick"];
|
|
40
40
|
|
|
41
41
|
var _ElementDisplaySchema, _templateObject, _templateObject2, _templateObject3;
|
|
42
42
|
|
|
@@ -44,7 +44,11 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
44
44
|
|
|
45
45
|
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; }
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
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; }
|
|
48
|
+
|
|
49
|
+
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; }
|
|
50
|
+
|
|
51
|
+
var ElementDisplaySchema = (_ElementDisplaySchema = {}, (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.AuthorGroup, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.CollaboratorGroup, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.CommentCount, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.CreatedBy, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.CreatedOn, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.LinkIcon, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.ModifiedBy, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.ModifiedOn, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.Preview, ['block']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.Priority, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.ProgrammingLanguage, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.Snippet, ['block']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.State, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.SubscriberCount, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.Title, ['inline']), (0, _defineProperty2.default)(_ElementDisplaySchema, _constants.ElementName.Provider, ['inline']), _ElementDisplaySchema);
|
|
48
52
|
exports.ElementDisplaySchema = ElementDisplaySchema;
|
|
49
53
|
|
|
50
54
|
var getDirectionStyles = function getDirectionStyles(direction) {
|
|
@@ -148,16 +152,32 @@ exports.renderElementItems = renderElementItems;
|
|
|
148
152
|
var renderActionItems = function renderActionItems() {
|
|
149
153
|
var items = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
150
154
|
var size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _constants.SmartLinkSize.Medium;
|
|
155
|
+
var appearance = arguments.length > 2 ? arguments[2] : undefined;
|
|
151
156
|
var actions = items.reduce(function (acc, curr, idx) {
|
|
152
157
|
var name = curr.name,
|
|
158
|
+
hideContent = curr.hideContent,
|
|
159
|
+
hideIcon = curr.hideIcon,
|
|
160
|
+
onClick = curr.onClick,
|
|
153
161
|
props = (0, _objectWithoutProperties2.default)(curr, _excluded2);
|
|
154
162
|
var Action = Actions[name];
|
|
155
163
|
|
|
164
|
+
var actionProps = _objectSpread({}, props);
|
|
165
|
+
|
|
166
|
+
if (hideContent) {
|
|
167
|
+
actionProps.content = '';
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
if (hideIcon) {
|
|
171
|
+
actionProps.icon = undefined;
|
|
172
|
+
}
|
|
173
|
+
|
|
156
174
|
if (Action) {
|
|
157
175
|
return [].concat((0, _toConsumableArray2.default)(acc), [/*#__PURE__*/_react.default.createElement(Action, (0, _extends2.default)({
|
|
158
176
|
size: size,
|
|
159
|
-
key: idx
|
|
160
|
-
|
|
177
|
+
key: idx,
|
|
178
|
+
appearance: appearance,
|
|
179
|
+
onClick: onClick
|
|
180
|
+
}, actionProps))]);
|
|
161
181
|
}
|
|
162
182
|
|
|
163
183
|
return acc;
|
|
@@ -300,7 +300,7 @@ var AtlaskitIcon = function AtlaskitIcon(_ref3) {
|
|
|
300
300
|
case _constants.IconType.Jira:
|
|
301
301
|
// Logo component has a different prop set from other icon components
|
|
302
302
|
return /*#__PURE__*/_react.default.createElement(ImportedIcon, {
|
|
303
|
-
"data-
|
|
303
|
+
"data-testid": testId // Confluence and Jira imports don't have native testId prop
|
|
304
304
|
,
|
|
305
305
|
textColor: _colors.N700,
|
|
306
306
|
iconColor: _colors.B200,
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.Title = exports.SubscriberCount = exports.State = exports.Snippet = exports.Provider = exports.ProgrammingLanguage = exports.Priority = exports.ModifiedOn = exports.ModifiedBy = exports.LinkIcon = exports.CreatedOn = exports.CreatedBy = exports.CommentCount = exports.CollaboratorGroup = exports.AuthorGroup = void 0;
|
|
6
|
+
exports.Title = exports.SubscriberCount = exports.State = exports.Snippet = exports.Provider = exports.ProgrammingLanguage = exports.Priority = exports.Preview = exports.ModifiedOn = exports.ModifiedBy = exports.LinkIcon = exports.CreatedOn = exports.CreatedBy = exports.CommentCount = exports.CollaboratorGroup = exports.AuthorGroup = void 0;
|
|
7
7
|
|
|
8
8
|
var _utils = require("./utils");
|
|
9
9
|
|
|
@@ -28,6 +28,8 @@ var ModifiedBy = (0, _utils.createElement)(_constants.ElementName.ModifiedBy);
|
|
|
28
28
|
exports.ModifiedBy = ModifiedBy;
|
|
29
29
|
var ModifiedOn = (0, _utils.createElement)(_constants.ElementName.ModifiedOn);
|
|
30
30
|
exports.ModifiedOn = ModifiedOn;
|
|
31
|
+
var Preview = (0, _utils.createElement)(_constants.ElementName.Preview);
|
|
32
|
+
exports.Preview = Preview;
|
|
31
33
|
var Priority = (0, _utils.createElement)(_constants.ElementName.Priority);
|
|
32
34
|
exports.Priority = Priority;
|
|
33
35
|
var ProgrammingLanguage = (0, _utils.createElement)(_constants.ElementName.ProgrammingLanguage);
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _core = require("@emotion/core");
|
|
15
|
+
|
|
16
|
+
var _imageIcon = _interopRequireDefault(require("../../common/image-icon"));
|
|
17
|
+
|
|
18
|
+
var _templateObject;
|
|
19
|
+
|
|
20
|
+
var styles = function styles(url) {
|
|
21
|
+
return (0, _core.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n justify-content: center;\n width: 100%;\n > img {\n max-width: 100%;\n max-height: 100%;\n }\n"])));
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
var Media = function Media(_ref) {
|
|
25
|
+
var _ref$testId = _ref.testId,
|
|
26
|
+
testId = _ref$testId === void 0 ? 'smart-element-media' : _ref$testId,
|
|
27
|
+
type = _ref.type,
|
|
28
|
+
url = _ref.url;
|
|
29
|
+
|
|
30
|
+
if (!type || !url) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return (0, _core.jsx)("div", {
|
|
35
|
+
css: styles(url),
|
|
36
|
+
"data-smart-element-media": true,
|
|
37
|
+
"data-testid": testId
|
|
38
|
+
}, (0, _core.jsx)(_imageIcon.default, {
|
|
39
|
+
testId: "".concat(testId, "-image"),
|
|
40
|
+
url: url
|
|
41
|
+
}));
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
var _default = Media;
|
|
45
|
+
exports.default = _default;
|
|
@@ -29,6 +29,8 @@ var _badge = _interopRequireDefault(require("./badge"));
|
|
|
29
29
|
|
|
30
30
|
var _avatarGroup = _interopRequireDefault(require("./avatar-group"));
|
|
31
31
|
|
|
32
|
+
var _media = _interopRequireDefault(require("./media"));
|
|
33
|
+
|
|
32
34
|
var _text = _interopRequireDefault(require("./text"));
|
|
33
35
|
|
|
34
36
|
var _messages = require("../../../../messages");
|
|
@@ -59,6 +61,8 @@ var elementMappings = (_elementMappings = {}, (0, _defineProperty2.default)(_ele
|
|
|
59
61
|
component: _icon.default
|
|
60
62
|
}), (0, _defineProperty2.default)(_elementMappings, _constants.ElementName.ModifiedBy, {
|
|
61
63
|
component: _text.default
|
|
64
|
+
}), (0, _defineProperty2.default)(_elementMappings, _constants.ElementName.Preview, {
|
|
65
|
+
component: _media.default
|
|
62
66
|
}), (0, _defineProperty2.default)(_elementMappings, _constants.ElementName.Priority, {
|
|
63
67
|
component: _badge.default
|
|
64
68
|
}), (0, _defineProperty2.default)(_elementMappings, _constants.ElementName.ProgrammingLanguage, {
|
package/dist/es2019/constants.js
CHANGED
|
@@ -114,6 +114,7 @@ export let ElementName;
|
|
|
114
114
|
ElementName["LinkIcon"] = "LinkIcon";
|
|
115
115
|
ElementName["ModifiedBy"] = "ModifiedBy";
|
|
116
116
|
ElementName["ModifiedOn"] = "ModifiedOn";
|
|
117
|
+
ElementName["Preview"] = "Preview";
|
|
117
118
|
ElementName["Priority"] = "Priority";
|
|
118
119
|
ElementName["ProgrammingLanguage"] = "ProgrammingLanguage";
|
|
119
120
|
ElementName["Snippet"] = "Snippet";
|
|
@@ -133,6 +134,9 @@ export let ActionName;
|
|
|
133
134
|
})(ActionName || (ActionName = {}));
|
|
134
135
|
|
|
135
136
|
export let IconType;
|
|
137
|
+
/**
|
|
138
|
+
* Type for Flexible UI's Media element
|
|
139
|
+
*/
|
|
136
140
|
|
|
137
141
|
(function (IconType) {
|
|
138
142
|
IconType["Archive"] = "FileType:Archive";
|
|
@@ -192,4 +196,10 @@ export let IconType;
|
|
|
192
196
|
IconType["PriorityUndefined"] = "Badge:PriorityUndefined";
|
|
193
197
|
IconType["ProgrammingLanguage"] = "Badge:ProgrammingLanguage";
|
|
194
198
|
IconType["Subscriber"] = "Badge:Subscriber";
|
|
195
|
-
})(IconType || (IconType = {}));
|
|
199
|
+
})(IconType || (IconType = {}));
|
|
200
|
+
|
|
201
|
+
export let MediaType;
|
|
202
|
+
|
|
203
|
+
(function (MediaType) {
|
|
204
|
+
MediaType["Image"] = "image";
|
|
205
|
+
})(MediaType || (MediaType = {}));
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { extractImage } from '../common/preview';
|
|
2
|
+
import { MediaType } from '../../constants';
|
|
3
|
+
|
|
4
|
+
const extractPreview = data => {
|
|
5
|
+
const url = extractImage(data);
|
|
6
|
+
return url ? {
|
|
7
|
+
type: MediaType.Image,
|
|
8
|
+
url
|
|
9
|
+
} : undefined;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export default extractPreview;
|
|
@@ -8,6 +8,7 @@ import { extractDateUpdated } from '../common/date/extractDateUpdated';
|
|
|
8
8
|
import { extractDateCreated } from '../common/date/extractDateCreated';
|
|
9
9
|
import extractPriority from './extract-priority';
|
|
10
10
|
import extractProviderIcon from './icon/extract-provider-icon';
|
|
11
|
+
import extractPreview from './extract-preview';
|
|
11
12
|
|
|
12
13
|
const extractFlexibleUiContext = (response, renderers) => {
|
|
13
14
|
if (!response) {
|
|
@@ -25,6 +26,7 @@ const extractFlexibleUiContext = (response, renderers) => {
|
|
|
25
26
|
linkIcon: extractLinkIcon(response, renderers),
|
|
26
27
|
modifiedBy: extractModifiedBy(data),
|
|
27
28
|
modifiedOn: extractDateUpdated(data),
|
|
29
|
+
preview: extractPreview(data),
|
|
28
30
|
priority: extractPriority(data),
|
|
29
31
|
programmingLanguage: extractProgrammingLanguage(data),
|
|
30
32
|
snippet: extractSummary(data) || undefined,
|
|
@@ -1,24 +1,16 @@
|
|
|
1
|
-
import { token } from '@atlaskit/tokens';
|
|
2
|
-
|
|
3
|
-
export const safeToken = (path, fallback) => {
|
|
4
|
-
try {
|
|
5
|
-
return token(path, fallback);
|
|
6
|
-
} catch (e) {
|
|
7
|
-
return fallback;
|
|
8
|
-
}
|
|
9
|
-
};
|
|
1
|
+
import { token } from '@atlaskit/tokens';
|
|
10
2
|
export const tokens = {
|
|
11
|
-
actionIcon:
|
|
12
|
-
background:
|
|
13
|
-
badgeIcon:
|
|
14
|
-
badgeText:
|
|
15
|
-
blackLink:
|
|
16
|
-
blackLinkPressed:
|
|
17
|
-
blueLink:
|
|
18
|
-
blueLinkPressed:
|
|
19
|
-
elevation:
|
|
20
|
-
errorMessage:
|
|
21
|
-
errorMessageHover:
|
|
22
|
-
snippet:
|
|
23
|
-
text:
|
|
3
|
+
actionIcon: token('color.icon', '#44546F'),
|
|
4
|
+
background: token('elevation.surface', '#FFFFFF'),
|
|
5
|
+
badgeIcon: token('color.icon.subtle', '#626F86'),
|
|
6
|
+
badgeText: token('color.text.subtlest', '#626F86'),
|
|
7
|
+
blackLink: token('color.text.subtle', '#44546F'),
|
|
8
|
+
blackLinkPressed: token('color.text', '#172B4D'),
|
|
9
|
+
blueLink: token('color.link', '#0C66E4'),
|
|
10
|
+
blueLinkPressed: token('color.link.pressed', '#0055CC'),
|
|
11
|
+
elevation: token('elevation.shadow.raised', '0px 1px 1px #091E4240, 0px 0px 1px #091E424F'),
|
|
12
|
+
errorMessage: token('color.text.disabled', '#6B778C'),
|
|
13
|
+
errorMessageHover: token('color.text.subtle', '#8993A4'),
|
|
14
|
+
snippet: token('color.text', '#172B4D'),
|
|
15
|
+
text: token('color.text.subtlest', '#626F86')
|
|
24
16
|
};
|
package/dist/es2019/version.json
CHANGED