@atlaskit/smart-card 26.14.4 → 26.14.6
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/constants.js +1 -0
- package/dist/cjs/utils/index.js +46 -5
- package/dist/cjs/version.json +1 -1
- package/dist/cjs/view/BlockCard/actions/DownloadAction.js +4 -34
- package/dist/cjs/view/BlockCard/views/flexible/utils.js +14 -2
- package/dist/cjs/view/FlexibleCard/components/actions/action/download-action/index.js +2 -47
- package/dist/cjs/view/FlexibleCard/components/common/atlaskit-icon/index.js +4 -0
- package/dist/cjs/view/FlexibleCard/components/elements/utils.js +1 -1
- package/dist/cjs/view/HoverCard/utils.js +1 -1
- package/dist/es2019/constants.js +1 -0
- package/dist/es2019/utils/index.js +23 -0
- package/dist/es2019/version.json +1 -1
- package/dist/es2019/view/BlockCard/actions/DownloadAction.js +2 -12
- package/dist/es2019/view/BlockCard/views/flexible/utils.js +14 -2
- package/dist/es2019/view/FlexibleCard/components/actions/action/download-action/index.js +2 -28
- package/dist/es2019/view/FlexibleCard/components/common/atlaskit-icon/index.js +2 -1
- package/dist/es2019/view/FlexibleCard/components/elements/utils.js +1 -1
- package/dist/es2019/view/HoverCard/utils.js +1 -1
- package/dist/esm/constants.js +1 -0
- package/dist/esm/utils/index.js +44 -4
- package/dist/esm/version.json +1 -1
- package/dist/esm/view/BlockCard/actions/DownloadAction.js +4 -33
- package/dist/esm/view/BlockCard/views/flexible/utils.js +14 -2
- package/dist/esm/view/FlexibleCard/components/actions/action/download-action/index.js +2 -47
- package/dist/esm/view/FlexibleCard/components/common/atlaskit-icon/index.js +2 -0
- package/dist/esm/view/FlexibleCard/components/elements/utils.js +1 -1
- package/dist/esm/view/HoverCard/utils.js +1 -1
- package/dist/types/constants.d.ts +2 -1
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/view/BlockCard/actions/DownloadAction.d.ts +0 -4
- package/dist/types/view/FlexibleCard/components/actions/action/download-action/types.d.ts +0 -3
- package/dist/types-ts4.5/constants.d.ts +2 -1
- package/dist/types-ts4.5/utils/index.d.ts +1 -0
- package/dist/types-ts4.5/view/BlockCard/actions/DownloadAction.d.ts +0 -4
- package/dist/types-ts4.5/view/FlexibleCard/components/actions/action/download-action/types.d.ts +0 -3
- package/package.json +2 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @atlaskit/smart-card
|
|
2
2
|
|
|
3
|
+
## 26.14.6
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`88b90baf84c`](https://bitbucket.org/atlassian/atlassian-frontend/commits/88b90baf84c) - Update icon for SubTasksProgress flex ui element & update metadata elements order in Block & Hover Card
|
|
8
|
+
- [`e6d7b777ce0`](https://bitbucket.org/atlassian/atlassian-frontend/commits/e6d7b777ce0) - Remove dependency to @atlaskit/media-common
|
|
9
|
+
|
|
10
|
+
## 26.14.5
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- Updated dependencies
|
|
15
|
+
|
|
3
16
|
## 26.14.4
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
package/dist/cjs/constants.js
CHANGED
|
@@ -222,6 +222,7 @@ var IconType = /*#__PURE__*/function (IconType) {
|
|
|
222
222
|
IconType["PriorityUndefined"] = "Badge:PriorityUndefined";
|
|
223
223
|
IconType["ProgrammingLanguage"] = "Badge:ProgrammingLanguage";
|
|
224
224
|
IconType["Subscriber"] = "Badge:Subscriber";
|
|
225
|
+
IconType["SubTasksProgress"] = "Badge:SubTask";
|
|
225
226
|
return IconType;
|
|
226
227
|
}({});
|
|
227
228
|
/**
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -5,7 +5,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.sleep = exports.openUrl = exports.isSpecialKey = exports.isSpecialEvent = exports.isSpecialClick = exports.isIntersectionObserverSupported = exports.isIframe = exports.isCardWithData = exports.importWithRetry = exports.handleOnClick = exports.getLabelForFileType = exports.getIframeSandboxAttribute = exports.getIconForFileType = void 0;
|
|
8
|
+
exports.sleep = exports.openUrl = exports.isSpecialKey = exports.isSpecialEvent = exports.isSpecialClick = exports.isIntersectionObserverSupported = exports.isIframe = exports.isCardWithData = exports.importWithRetry = exports.handleOnClick = exports.getLabelForFileType = exports.getIframeSandboxAttribute = exports.getIconForFileType = exports.downloadUrl = void 0;
|
|
9
9
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
10
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
@@ -398,8 +398,9 @@ var importWithRetry = /*#__PURE__*/function () {
|
|
|
398
398
|
};
|
|
399
399
|
}();
|
|
400
400
|
exports.importWithRetry = importWithRetry;
|
|
401
|
-
var
|
|
401
|
+
var downloadUrl = /*#__PURE__*/function () {
|
|
402
402
|
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(url) {
|
|
403
|
+
var isIE11, isSafari, iframeName, link, iframe;
|
|
403
404
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
404
405
|
while (1) switch (_context2.prev = _context2.next) {
|
|
405
406
|
case 0:
|
|
@@ -409,15 +410,55 @@ var openUrl = /*#__PURE__*/function () {
|
|
|
409
410
|
}
|
|
410
411
|
return _context2.abrupt("return");
|
|
411
412
|
case 2:
|
|
412
|
-
window.
|
|
413
|
-
|
|
413
|
+
isIE11 = !!window.MSInputMethodContext && !!document.documentMode;
|
|
414
|
+
isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
|
|
415
|
+
iframeName = 'media-download-iframe';
|
|
416
|
+
link = document.createElement('a');
|
|
417
|
+
iframe = document.getElementById(iframeName);
|
|
418
|
+
if (!iframe) {
|
|
419
|
+
iframe = document.createElement('iframe');
|
|
420
|
+
iframe.style.display = 'none';
|
|
421
|
+
iframe.id = iframeName;
|
|
422
|
+
iframe.name = iframeName;
|
|
423
|
+
document.body.appendChild(iframe);
|
|
424
|
+
}
|
|
425
|
+
link.href = url;
|
|
426
|
+
link.download = url;
|
|
427
|
+
link.target = isIE11 || isSafari ? '_blank' : iframeName;
|
|
428
|
+
document.body.appendChild(link);
|
|
429
|
+
link.click();
|
|
430
|
+
document.body.removeChild(link);
|
|
431
|
+
case 14:
|
|
414
432
|
case "end":
|
|
415
433
|
return _context2.stop();
|
|
416
434
|
}
|
|
417
435
|
}, _callee2);
|
|
418
436
|
}));
|
|
419
|
-
return function
|
|
437
|
+
return function downloadUrl(_x2) {
|
|
420
438
|
return _ref2.apply(this, arguments);
|
|
421
439
|
};
|
|
422
440
|
}();
|
|
441
|
+
exports.downloadUrl = downloadUrl;
|
|
442
|
+
var openUrl = /*#__PURE__*/function () {
|
|
443
|
+
var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(url) {
|
|
444
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
445
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
446
|
+
case 0:
|
|
447
|
+
if (url) {
|
|
448
|
+
_context3.next = 2;
|
|
449
|
+
break;
|
|
450
|
+
}
|
|
451
|
+
return _context3.abrupt("return");
|
|
452
|
+
case 2:
|
|
453
|
+
window.open(url, '_blank', 'noopener=yes');
|
|
454
|
+
case 3:
|
|
455
|
+
case "end":
|
|
456
|
+
return _context3.stop();
|
|
457
|
+
}
|
|
458
|
+
}, _callee3);
|
|
459
|
+
}));
|
|
460
|
+
return function openUrl(_x3) {
|
|
461
|
+
return _ref3.apply(this, arguments);
|
|
462
|
+
};
|
|
463
|
+
}();
|
|
423
464
|
exports.openUrl = openUrl;
|
package/dist/cjs/version.json
CHANGED
|
@@ -5,47 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.DownloadAction = void 0;
|
|
8
|
-
exports.downloadFunction = downloadFunction;
|
|
9
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
8
|
var _react = _interopRequireDefault(require("react"));
|
|
12
9
|
var _reactIntlNext = require("react-intl-next");
|
|
13
|
-
var _mediaCommon = require("@atlaskit/media-common");
|
|
14
10
|
var _messages = require("../../../messages");
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
function _downloadFunction() {
|
|
19
|
-
_downloadFunction = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref) {
|
|
20
|
-
var url;
|
|
21
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
22
|
-
while (1) switch (_context.prev = _context.next) {
|
|
23
|
-
case 0:
|
|
24
|
-
url = _ref.url;
|
|
25
|
-
if (url) {
|
|
26
|
-
_context.next = 3;
|
|
27
|
-
break;
|
|
28
|
-
}
|
|
29
|
-
return _context.abrupt("return");
|
|
30
|
-
case 3:
|
|
31
|
-
(0, _mediaCommon.downloadUrl)(url);
|
|
32
|
-
case 4:
|
|
33
|
-
case "end":
|
|
34
|
-
return _context.stop();
|
|
35
|
-
}
|
|
36
|
-
}, _callee);
|
|
37
|
-
}));
|
|
38
|
-
return _downloadFunction.apply(this, arguments);
|
|
39
|
-
}
|
|
40
|
-
var DownloadAction = function DownloadAction(_ref2) {
|
|
41
|
-
var url = _ref2.url;
|
|
11
|
+
var _utils = require("../../../utils");
|
|
12
|
+
var DownloadAction = function DownloadAction(_ref) {
|
|
13
|
+
var url = _ref.url;
|
|
42
14
|
return {
|
|
43
15
|
id: 'download-content',
|
|
44
16
|
text: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.download),
|
|
45
17
|
promise: function promise() {
|
|
46
|
-
return
|
|
47
|
-
url: url
|
|
48
|
-
});
|
|
18
|
+
return (0, _utils.downloadUrl)(url);
|
|
49
19
|
}
|
|
50
20
|
};
|
|
51
21
|
};
|
|
@@ -64,8 +64,20 @@ var getSimulatedBetterMetadata = function getSimulatedBetterMetadata(cardDetails
|
|
|
64
64
|
name: _constants.ElementName.AssignedToGroup
|
|
65
65
|
}, {
|
|
66
66
|
name: _constants.ElementName.AssignedTo
|
|
67
|
-
}
|
|
68
|
-
|
|
67
|
+
}, {
|
|
68
|
+
name: _constants.ElementName.ModifiedOn
|
|
69
|
+
}] : [{
|
|
70
|
+
name: _constants.ElementName.AuthorGroup
|
|
71
|
+
}, {
|
|
72
|
+
name: _constants.ElementName.CreatedBy
|
|
73
|
+
}, {
|
|
74
|
+
name: _constants.ElementName.ModifiedOn
|
|
75
|
+
}],
|
|
76
|
+
bottomMetadata: [{
|
|
77
|
+
name: _constants.ElementName.Priority
|
|
78
|
+
}, {
|
|
79
|
+
name: _constants.ElementName.SubTasksProgress
|
|
80
|
+
}]
|
|
69
81
|
};
|
|
70
82
|
default:
|
|
71
83
|
return {
|
|
@@ -5,12 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
10
|
var _react = _interopRequireDefault(require("react"));
|
|
13
11
|
var _index = _interopRequireDefault(require("../index"));
|
|
12
|
+
var _utils = require("../../../../../../utils");
|
|
14
13
|
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; }
|
|
15
14
|
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; }
|
|
16
15
|
var DownloadAction = function DownloadAction(props) {
|
|
@@ -23,9 +22,7 @@ var DownloadAction = function DownloadAction(props) {
|
|
|
23
22
|
if (downloadUrl && url) {
|
|
24
23
|
var action = _objectSpread(_objectSpread({}, props), {}, {
|
|
25
24
|
onClick: function onClick() {
|
|
26
|
-
|
|
27
|
-
url: downloadUrl
|
|
28
|
-
});
|
|
25
|
+
(0, _utils.downloadUrl)(downloadUrl);
|
|
29
26
|
if (_onClick) {
|
|
30
27
|
_onClick();
|
|
31
28
|
}
|
|
@@ -40,47 +37,5 @@ var DownloadAction = function DownloadAction(props) {
|
|
|
40
37
|
return null;
|
|
41
38
|
}
|
|
42
39
|
};
|
|
43
|
-
function downloadFunction(_x) {
|
|
44
|
-
return _downloadFunction.apply(this, arguments);
|
|
45
|
-
}
|
|
46
|
-
function _downloadFunction() {
|
|
47
|
-
_downloadFunction = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref) {
|
|
48
|
-
var url, isIE11, isSafari, iframeName, link, iframe;
|
|
49
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
50
|
-
while (1) switch (_context.prev = _context.next) {
|
|
51
|
-
case 0:
|
|
52
|
-
url = _ref.url;
|
|
53
|
-
if (url) {
|
|
54
|
-
_context.next = 3;
|
|
55
|
-
break;
|
|
56
|
-
}
|
|
57
|
-
return _context.abrupt("return");
|
|
58
|
-
case 3:
|
|
59
|
-
isIE11 = !!window.MSInputMethodContext && !!document.documentMode;
|
|
60
|
-
isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
|
|
61
|
-
iframeName = 'media-download-iframe';
|
|
62
|
-
link = document.createElement('a');
|
|
63
|
-
iframe = document.getElementById(iframeName);
|
|
64
|
-
if (!iframe) {
|
|
65
|
-
iframe = document.createElement('iframe');
|
|
66
|
-
iframe.style.display = 'none';
|
|
67
|
-
iframe.id = iframeName;
|
|
68
|
-
iframe.name = iframeName;
|
|
69
|
-
document.body.appendChild(iframe);
|
|
70
|
-
}
|
|
71
|
-
link.href = url;
|
|
72
|
-
link.download = url;
|
|
73
|
-
link.target = isIE11 || isSafari ? '_blank' : iframeName;
|
|
74
|
-
document.body.appendChild(link);
|
|
75
|
-
link.click();
|
|
76
|
-
document.body.removeChild(link);
|
|
77
|
-
case 15:
|
|
78
|
-
case "end":
|
|
79
|
-
return _context.stop();
|
|
80
|
-
}
|
|
81
|
-
}, _callee);
|
|
82
|
-
}));
|
|
83
|
-
return _downloadFunction.apply(this, arguments);
|
|
84
|
-
}
|
|
85
40
|
var _default = DownloadAction;
|
|
86
41
|
exports.default = _default;
|
|
@@ -267,6 +267,10 @@ var importIconMapper = (_importIconMapper = {}, (0, _defineProperty2.default)(_i
|
|
|
267
267
|
return Promise.resolve().then(function () {
|
|
268
268
|
return _interopRequireWildcard(require( /* webpackChunkName: "glyphSubscriber" */'@atlaskit/icon/glyph/people'));
|
|
269
269
|
});
|
|
270
|
+
}), (0, _defineProperty2.default)(_importIconMapper, _constants.IconType.SubTasksProgress, function () {
|
|
271
|
+
return Promise.resolve().then(function () {
|
|
272
|
+
return _interopRequireWildcard(require( /* webpackChunkName: "glyphSubtask" */'@atlaskit/icon/glyph/subtask'));
|
|
273
|
+
});
|
|
270
274
|
}), _importIconMapper);
|
|
271
275
|
var getIconImportFn = function getIconImportFn(icon) {
|
|
272
276
|
return importIconMapper[icon];
|
|
@@ -119,7 +119,7 @@ var elementMappings = (_elementMappings = {}, (0, _defineProperty2.default)(_ele
|
|
|
119
119
|
}), (0, _defineProperty2.default)(_elementMappings, _constants.ElementName.SubTasksProgress, {
|
|
120
120
|
component: _badge.default,
|
|
121
121
|
props: {
|
|
122
|
-
icon: _constants.IconType.
|
|
122
|
+
icon: _constants.IconType.SubTasksProgress
|
|
123
123
|
}
|
|
124
124
|
}), (0, _defineProperty2.default)(_elementMappings, _constants.ElementName.TargetBranch, {
|
|
125
125
|
component: _text.default
|
|
@@ -131,7 +131,7 @@ var getSimulatedBetterMetadata = function getSimulatedBetterMetadata() {
|
|
|
131
131
|
subtitle: []
|
|
132
132
|
},
|
|
133
133
|
bottomMetadataBlock: {
|
|
134
|
-
primary: [_constants.ElementName.
|
|
134
|
+
primary: [_constants.ElementName.ReactCount, _constants.ElementName.CommentCount, _constants.ElementName.ViewCount],
|
|
135
135
|
secondary: [],
|
|
136
136
|
subtitle: []
|
|
137
137
|
}
|
package/dist/es2019/constants.js
CHANGED
|
@@ -215,6 +215,7 @@ export let IconType = /*#__PURE__*/function (IconType) {
|
|
|
215
215
|
IconType["PriorityUndefined"] = "Badge:PriorityUndefined";
|
|
216
216
|
IconType["ProgrammingLanguage"] = "Badge:ProgrammingLanguage";
|
|
217
217
|
IconType["Subscriber"] = "Badge:Subscriber";
|
|
218
|
+
IconType["SubTasksProgress"] = "Badge:SubTask";
|
|
218
219
|
return IconType;
|
|
219
220
|
}({});
|
|
220
221
|
|
|
@@ -120,6 +120,29 @@ export const importWithRetry = async (importFn, retries = 2, interval = 500) =>
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
};
|
|
123
|
+
export const downloadUrl = async url => {
|
|
124
|
+
if (!url) {
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
const isIE11 = !!window.MSInputMethodContext && !!document.documentMode;
|
|
128
|
+
const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
|
|
129
|
+
const iframeName = 'media-download-iframe';
|
|
130
|
+
const link = document.createElement('a');
|
|
131
|
+
let iframe = document.getElementById(iframeName);
|
|
132
|
+
if (!iframe) {
|
|
133
|
+
iframe = document.createElement('iframe');
|
|
134
|
+
iframe.style.display = 'none';
|
|
135
|
+
iframe.id = iframeName;
|
|
136
|
+
iframe.name = iframeName;
|
|
137
|
+
document.body.appendChild(iframe);
|
|
138
|
+
}
|
|
139
|
+
link.href = url;
|
|
140
|
+
link.download = url;
|
|
141
|
+
link.target = isIE11 || isSafari ? '_blank' : iframeName;
|
|
142
|
+
document.body.appendChild(link);
|
|
143
|
+
link.click();
|
|
144
|
+
document.body.removeChild(link);
|
|
145
|
+
};
|
|
123
146
|
export const openUrl = async url => {
|
|
124
147
|
if (!url) {
|
|
125
148
|
return;
|
package/dist/es2019/version.json
CHANGED
|
@@ -1,21 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { FormattedMessage } from 'react-intl-next';
|
|
3
|
-
import { downloadUrl } from '@atlaskit/media-common';
|
|
4
3
|
import { messages } from '../../../messages';
|
|
5
|
-
|
|
6
|
-
url
|
|
7
|
-
}) {
|
|
8
|
-
if (!url) {
|
|
9
|
-
return;
|
|
10
|
-
}
|
|
11
|
-
downloadUrl(url);
|
|
12
|
-
}
|
|
4
|
+
import { downloadUrl } from '../../../utils';
|
|
13
5
|
export const DownloadAction = ({
|
|
14
6
|
url
|
|
15
7
|
}) => ({
|
|
16
8
|
id: 'download-content',
|
|
17
9
|
text: /*#__PURE__*/React.createElement(FormattedMessage, messages.download),
|
|
18
|
-
promise: () =>
|
|
19
|
-
url
|
|
20
|
-
})
|
|
10
|
+
promise: () => downloadUrl(url)
|
|
21
11
|
});
|
|
@@ -58,8 +58,20 @@ export const getSimulatedBetterMetadata = cardDetails => {
|
|
|
58
58
|
name: ElementName.AssignedToGroup
|
|
59
59
|
}, {
|
|
60
60
|
name: ElementName.AssignedTo
|
|
61
|
-
},
|
|
62
|
-
|
|
61
|
+
}, {
|
|
62
|
+
name: ElementName.ModifiedOn
|
|
63
|
+
}] : [{
|
|
64
|
+
name: ElementName.AuthorGroup
|
|
65
|
+
}, {
|
|
66
|
+
name: ElementName.CreatedBy
|
|
67
|
+
}, {
|
|
68
|
+
name: ElementName.ModifiedOn
|
|
69
|
+
}],
|
|
70
|
+
bottomMetadata: [{
|
|
71
|
+
name: ElementName.Priority
|
|
72
|
+
}, {
|
|
73
|
+
name: ElementName.SubTasksProgress
|
|
74
|
+
}]
|
|
63
75
|
};
|
|
64
76
|
default:
|
|
65
77
|
return {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import Action from '../index';
|
|
4
|
+
import { downloadUrl as download } from '../../../../../../utils';
|
|
4
5
|
const DownloadAction = props => {
|
|
5
6
|
const {
|
|
6
7
|
appearance,
|
|
@@ -14,9 +15,7 @@ const DownloadAction = props => {
|
|
|
14
15
|
const action = {
|
|
15
16
|
...props,
|
|
16
17
|
onClick: () => {
|
|
17
|
-
|
|
18
|
-
url: downloadUrl
|
|
19
|
-
});
|
|
18
|
+
download(downloadUrl);
|
|
20
19
|
if (onClick) {
|
|
21
20
|
onClick();
|
|
22
21
|
}
|
|
@@ -31,29 +30,4 @@ const DownloadAction = props => {
|
|
|
31
30
|
return null;
|
|
32
31
|
}
|
|
33
32
|
};
|
|
34
|
-
async function downloadFunction({
|
|
35
|
-
url
|
|
36
|
-
}) {
|
|
37
|
-
if (!url) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
const isIE11 = !!window.MSInputMethodContext && !!document.documentMode;
|
|
41
|
-
const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
|
|
42
|
-
const iframeName = 'media-download-iframe';
|
|
43
|
-
const link = document.createElement('a');
|
|
44
|
-
let iframe = document.getElementById(iframeName);
|
|
45
|
-
if (!iframe) {
|
|
46
|
-
iframe = document.createElement('iframe');
|
|
47
|
-
iframe.style.display = 'none';
|
|
48
|
-
iframe.id = iframeName;
|
|
49
|
-
iframe.name = iframeName;
|
|
50
|
-
document.body.appendChild(iframe);
|
|
51
|
-
}
|
|
52
|
-
link.href = url;
|
|
53
|
-
link.download = url;
|
|
54
|
-
link.target = isIE11 || isSafari ? '_blank' : iframeName;
|
|
55
|
-
document.body.appendChild(link);
|
|
56
|
-
link.click();
|
|
57
|
-
document.body.removeChild(link);
|
|
58
|
-
}
|
|
59
33
|
export default DownloadAction;
|
|
@@ -78,7 +78,8 @@ const importIconMapper = {
|
|
|
78
78
|
[IconType.PriorityTrivial]: () => import( /* webpackChunkName: "glyphTrivial" */'@atlaskit/icon-priority/glyph/priority-trivial'),
|
|
79
79
|
[IconType.PriorityUndefined]: () => import( /* webpackChunkName: "glyphUndefined" */'@atlaskit/icon/glyph/question'),
|
|
80
80
|
[IconType.ProgrammingLanguage]: () => import( /* webpackChunkName: "glyphProgrammingLanguage" */'@atlaskit/icon/glyph/code'),
|
|
81
|
-
[IconType.Subscriber]: () => import( /* webpackChunkName: "glyphSubscriber" */'@atlaskit/icon/glyph/people')
|
|
81
|
+
[IconType.Subscriber]: () => import( /* webpackChunkName: "glyphSubscriber" */'@atlaskit/icon/glyph/people'),
|
|
82
|
+
[IconType.SubTasksProgress]: () => import( /* webpackChunkName: "glyphSubtask" */'@atlaskit/icon/glyph/subtask')
|
|
82
83
|
};
|
|
83
84
|
const getIconImportFn = icon => importIconMapper[icon];
|
|
84
85
|
const importIcon = importFn => {
|
|
@@ -118,7 +118,7 @@ export const getSimulatedBetterMetadata = (extensionKey = '', data) => {
|
|
|
118
118
|
subtitle: []
|
|
119
119
|
},
|
|
120
120
|
bottomMetadataBlock: {
|
|
121
|
-
primary: [ElementName.
|
|
121
|
+
primary: [ElementName.ReactCount, ElementName.CommentCount, ElementName.ViewCount],
|
|
122
122
|
secondary: [],
|
|
123
123
|
subtitle: []
|
|
124
124
|
}
|
package/dist/esm/constants.js
CHANGED
|
@@ -215,6 +215,7 @@ export var IconType = /*#__PURE__*/function (IconType) {
|
|
|
215
215
|
IconType["PriorityUndefined"] = "Badge:PriorityUndefined";
|
|
216
216
|
IconType["ProgrammingLanguage"] = "Badge:ProgrammingLanguage";
|
|
217
217
|
IconType["Subscriber"] = "Badge:Subscriber";
|
|
218
|
+
IconType["SubTasksProgress"] = "Badge:SubTask";
|
|
218
219
|
return IconType;
|
|
219
220
|
}({});
|
|
220
221
|
|
package/dist/esm/utils/index.js
CHANGED
|
@@ -276,8 +276,9 @@ export var importWithRetry = /*#__PURE__*/function () {
|
|
|
276
276
|
return _ref.apply(this, arguments);
|
|
277
277
|
};
|
|
278
278
|
}();
|
|
279
|
-
export var
|
|
279
|
+
export var downloadUrl = /*#__PURE__*/function () {
|
|
280
280
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(url) {
|
|
281
|
+
var isIE11, isSafari, iframeName, link, iframe;
|
|
281
282
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
282
283
|
while (1) switch (_context2.prev = _context2.next) {
|
|
283
284
|
case 0:
|
|
@@ -287,14 +288,53 @@ export var openUrl = /*#__PURE__*/function () {
|
|
|
287
288
|
}
|
|
288
289
|
return _context2.abrupt("return");
|
|
289
290
|
case 2:
|
|
290
|
-
window.
|
|
291
|
-
|
|
291
|
+
isIE11 = !!window.MSInputMethodContext && !!document.documentMode;
|
|
292
|
+
isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
|
|
293
|
+
iframeName = 'media-download-iframe';
|
|
294
|
+
link = document.createElement('a');
|
|
295
|
+
iframe = document.getElementById(iframeName);
|
|
296
|
+
if (!iframe) {
|
|
297
|
+
iframe = document.createElement('iframe');
|
|
298
|
+
iframe.style.display = 'none';
|
|
299
|
+
iframe.id = iframeName;
|
|
300
|
+
iframe.name = iframeName;
|
|
301
|
+
document.body.appendChild(iframe);
|
|
302
|
+
}
|
|
303
|
+
link.href = url;
|
|
304
|
+
link.download = url;
|
|
305
|
+
link.target = isIE11 || isSafari ? '_blank' : iframeName;
|
|
306
|
+
document.body.appendChild(link);
|
|
307
|
+
link.click();
|
|
308
|
+
document.body.removeChild(link);
|
|
309
|
+
case 14:
|
|
292
310
|
case "end":
|
|
293
311
|
return _context2.stop();
|
|
294
312
|
}
|
|
295
313
|
}, _callee2);
|
|
296
314
|
}));
|
|
297
|
-
return function
|
|
315
|
+
return function downloadUrl(_x2) {
|
|
298
316
|
return _ref2.apply(this, arguments);
|
|
299
317
|
};
|
|
318
|
+
}();
|
|
319
|
+
export var openUrl = /*#__PURE__*/function () {
|
|
320
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(url) {
|
|
321
|
+
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
322
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
323
|
+
case 0:
|
|
324
|
+
if (url) {
|
|
325
|
+
_context3.next = 2;
|
|
326
|
+
break;
|
|
327
|
+
}
|
|
328
|
+
return _context3.abrupt("return");
|
|
329
|
+
case 2:
|
|
330
|
+
window.open(url, '_blank', 'noopener=yes');
|
|
331
|
+
case 3:
|
|
332
|
+
case "end":
|
|
333
|
+
return _context3.stop();
|
|
334
|
+
}
|
|
335
|
+
}, _callee3);
|
|
336
|
+
}));
|
|
337
|
+
return function openUrl(_x3) {
|
|
338
|
+
return _ref3.apply(this, arguments);
|
|
339
|
+
};
|
|
300
340
|
}();
|
package/dist/esm/version.json
CHANGED
|
@@ -1,43 +1,14 @@
|
|
|
1
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
1
|
import React from 'react';
|
|
4
2
|
import { FormattedMessage } from 'react-intl-next';
|
|
5
|
-
import { downloadUrl } from '@atlaskit/media-common';
|
|
6
3
|
import { messages } from '../../../messages';
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
function _downloadFunction() {
|
|
11
|
-
_downloadFunction = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {
|
|
12
|
-
var url;
|
|
13
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
14
|
-
while (1) switch (_context.prev = _context.next) {
|
|
15
|
-
case 0:
|
|
16
|
-
url = _ref.url;
|
|
17
|
-
if (url) {
|
|
18
|
-
_context.next = 3;
|
|
19
|
-
break;
|
|
20
|
-
}
|
|
21
|
-
return _context.abrupt("return");
|
|
22
|
-
case 3:
|
|
23
|
-
downloadUrl(url);
|
|
24
|
-
case 4:
|
|
25
|
-
case "end":
|
|
26
|
-
return _context.stop();
|
|
27
|
-
}
|
|
28
|
-
}, _callee);
|
|
29
|
-
}));
|
|
30
|
-
return _downloadFunction.apply(this, arguments);
|
|
31
|
-
}
|
|
32
|
-
export var DownloadAction = function DownloadAction(_ref2) {
|
|
33
|
-
var url = _ref2.url;
|
|
4
|
+
import { downloadUrl } from '../../../utils';
|
|
5
|
+
export var DownloadAction = function DownloadAction(_ref) {
|
|
6
|
+
var url = _ref.url;
|
|
34
7
|
return {
|
|
35
8
|
id: 'download-content',
|
|
36
9
|
text: /*#__PURE__*/React.createElement(FormattedMessage, messages.download),
|
|
37
10
|
promise: function promise() {
|
|
38
|
-
return
|
|
39
|
-
url: url
|
|
40
|
-
});
|
|
11
|
+
return downloadUrl(url);
|
|
41
12
|
}
|
|
42
13
|
};
|
|
43
14
|
};
|
|
@@ -58,8 +58,20 @@ export var getSimulatedBetterMetadata = function getSimulatedBetterMetadata(card
|
|
|
58
58
|
name: ElementName.AssignedToGroup
|
|
59
59
|
}, {
|
|
60
60
|
name: ElementName.AssignedTo
|
|
61
|
-
}
|
|
62
|
-
|
|
61
|
+
}, {
|
|
62
|
+
name: ElementName.ModifiedOn
|
|
63
|
+
}] : [{
|
|
64
|
+
name: ElementName.AuthorGroup
|
|
65
|
+
}, {
|
|
66
|
+
name: ElementName.CreatedBy
|
|
67
|
+
}, {
|
|
68
|
+
name: ElementName.ModifiedOn
|
|
69
|
+
}],
|
|
70
|
+
bottomMetadata: [{
|
|
71
|
+
name: ElementName.Priority
|
|
72
|
+
}, {
|
|
73
|
+
name: ElementName.SubTasksProgress
|
|
74
|
+
}]
|
|
63
75
|
};
|
|
64
76
|
default:
|
|
65
77
|
return {
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
3
2
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
4
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
5
3
|
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; }
|
|
6
4
|
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) { _defineProperty(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; }
|
|
7
5
|
import React from 'react';
|
|
8
6
|
import Action from '../index';
|
|
7
|
+
import { downloadUrl as download } from '../../../../../../utils';
|
|
9
8
|
var DownloadAction = function DownloadAction(props) {
|
|
10
9
|
var appearance = props.appearance,
|
|
11
10
|
asDropDownItem = props.asDropDownItem,
|
|
@@ -16,9 +15,7 @@ var DownloadAction = function DownloadAction(props) {
|
|
|
16
15
|
if (downloadUrl && url) {
|
|
17
16
|
var action = _objectSpread(_objectSpread({}, props), {}, {
|
|
18
17
|
onClick: function onClick() {
|
|
19
|
-
|
|
20
|
-
url: downloadUrl
|
|
21
|
-
});
|
|
18
|
+
download(downloadUrl);
|
|
22
19
|
if (_onClick) {
|
|
23
20
|
_onClick();
|
|
24
21
|
}
|
|
@@ -33,46 +30,4 @@ var DownloadAction = function DownloadAction(props) {
|
|
|
33
30
|
return null;
|
|
34
31
|
}
|
|
35
32
|
};
|
|
36
|
-
function downloadFunction(_x) {
|
|
37
|
-
return _downloadFunction.apply(this, arguments);
|
|
38
|
-
}
|
|
39
|
-
function _downloadFunction() {
|
|
40
|
-
_downloadFunction = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {
|
|
41
|
-
var url, isIE11, isSafari, iframeName, link, iframe;
|
|
42
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
43
|
-
while (1) switch (_context.prev = _context.next) {
|
|
44
|
-
case 0:
|
|
45
|
-
url = _ref.url;
|
|
46
|
-
if (url) {
|
|
47
|
-
_context.next = 3;
|
|
48
|
-
break;
|
|
49
|
-
}
|
|
50
|
-
return _context.abrupt("return");
|
|
51
|
-
case 3:
|
|
52
|
-
isIE11 = !!window.MSInputMethodContext && !!document.documentMode;
|
|
53
|
-
isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
|
|
54
|
-
iframeName = 'media-download-iframe';
|
|
55
|
-
link = document.createElement('a');
|
|
56
|
-
iframe = document.getElementById(iframeName);
|
|
57
|
-
if (!iframe) {
|
|
58
|
-
iframe = document.createElement('iframe');
|
|
59
|
-
iframe.style.display = 'none';
|
|
60
|
-
iframe.id = iframeName;
|
|
61
|
-
iframe.name = iframeName;
|
|
62
|
-
document.body.appendChild(iframe);
|
|
63
|
-
}
|
|
64
|
-
link.href = url;
|
|
65
|
-
link.download = url;
|
|
66
|
-
link.target = isIE11 || isSafari ? '_blank' : iframeName;
|
|
67
|
-
document.body.appendChild(link);
|
|
68
|
-
link.click();
|
|
69
|
-
document.body.removeChild(link);
|
|
70
|
-
case 15:
|
|
71
|
-
case "end":
|
|
72
|
-
return _context.stop();
|
|
73
|
-
}
|
|
74
|
-
}, _callee);
|
|
75
|
-
}));
|
|
76
|
-
return _downloadFunction.apply(this, arguments);
|
|
77
|
-
}
|
|
78
33
|
export default DownloadAction;
|
|
@@ -137,6 +137,8 @@ var importIconMapper = (_importIconMapper = {}, _defineProperty(_importIconMappe
|
|
|
137
137
|
return import( /* webpackChunkName: "glyphProgrammingLanguage" */'@atlaskit/icon/glyph/code');
|
|
138
138
|
}), _defineProperty(_importIconMapper, IconType.Subscriber, function () {
|
|
139
139
|
return import( /* webpackChunkName: "glyphSubscriber" */'@atlaskit/icon/glyph/people');
|
|
140
|
+
}), _defineProperty(_importIconMapper, IconType.SubTasksProgress, function () {
|
|
141
|
+
return import( /* webpackChunkName: "glyphSubtask" */'@atlaskit/icon/glyph/subtask');
|
|
140
142
|
}), _importIconMapper);
|
|
141
143
|
var getIconImportFn = function getIconImportFn(icon) {
|
|
142
144
|
return importIconMapper[icon];
|
|
@@ -109,7 +109,7 @@ var elementMappings = (_elementMappings = {}, _defineProperty(_elementMappings,
|
|
|
109
109
|
}), _defineProperty(_elementMappings, ElementName.SubTasksProgress, {
|
|
110
110
|
component: Badge,
|
|
111
111
|
props: {
|
|
112
|
-
icon: IconType.
|
|
112
|
+
icon: IconType.SubTasksProgress
|
|
113
113
|
}
|
|
114
114
|
}), _defineProperty(_elementMappings, ElementName.TargetBranch, {
|
|
115
115
|
component: Text
|
|
@@ -123,7 +123,7 @@ export var getSimulatedBetterMetadata = function getSimulatedBetterMetadata() {
|
|
|
123
123
|
subtitle: []
|
|
124
124
|
},
|
|
125
125
|
bottomMetadataBlock: {
|
|
126
|
-
primary: [ElementName.
|
|
126
|
+
primary: [ElementName.ReactCount, ElementName.CommentCount, ElementName.ViewCount],
|
|
127
127
|
secondary: [],
|
|
128
128
|
subtitle: []
|
|
129
129
|
}
|
|
@@ -193,7 +193,8 @@ export declare enum IconType {
|
|
|
193
193
|
PriorityTrivial = "Badge:PriorityTrivial",
|
|
194
194
|
PriorityUndefined = "Badge:PriorityUndefined",
|
|
195
195
|
ProgrammingLanguage = "Badge:ProgrammingLanguage",
|
|
196
|
-
Subscriber = "Badge:Subscriber"
|
|
196
|
+
Subscriber = "Badge:Subscriber",
|
|
197
|
+
SubTasksProgress = "Badge:SubTask"
|
|
197
198
|
}
|
|
198
199
|
/**
|
|
199
200
|
* Type for Flexible UI's Media element
|
|
@@ -21,4 +21,5 @@ export declare const handleOnClick: (handler: Function) => (e: React.BaseSynthet
|
|
|
21
21
|
export declare const isIntersectionObserverSupported: () => boolean;
|
|
22
22
|
export declare const sleep: (ms: number) => Promise<void>;
|
|
23
23
|
export declare const importWithRetry: <T>(importFn: () => Promise<T>, retries?: number, interval?: number) => Promise<T>;
|
|
24
|
+
export declare const downloadUrl: (url?: string) => Promise<void>;
|
|
24
25
|
export declare const openUrl: (url?: string) => Promise<void>;
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
import { ActionProps } from '../components/Action';
|
|
2
|
-
export interface DownloadFunctionArg {
|
|
3
|
-
url?: string;
|
|
4
|
-
}
|
|
5
|
-
export declare function downloadFunction({ url }: DownloadFunctionArg): Promise<void>;
|
|
6
2
|
export declare const DownloadAction: ({ url }: {
|
|
7
3
|
url?: string | undefined;
|
|
8
4
|
}) => ActionProps;
|
|
@@ -193,7 +193,8 @@ export declare enum IconType {
|
|
|
193
193
|
PriorityTrivial = "Badge:PriorityTrivial",
|
|
194
194
|
PriorityUndefined = "Badge:PriorityUndefined",
|
|
195
195
|
ProgrammingLanguage = "Badge:ProgrammingLanguage",
|
|
196
|
-
Subscriber = "Badge:Subscriber"
|
|
196
|
+
Subscriber = "Badge:Subscriber",
|
|
197
|
+
SubTasksProgress = "Badge:SubTask"
|
|
197
198
|
}
|
|
198
199
|
/**
|
|
199
200
|
* Type for Flexible UI's Media element
|
|
@@ -21,4 +21,5 @@ export declare const handleOnClick: (handler: Function) => (e: React.BaseSynthet
|
|
|
21
21
|
export declare const isIntersectionObserverSupported: () => boolean;
|
|
22
22
|
export declare const sleep: (ms: number) => Promise<void>;
|
|
23
23
|
export declare const importWithRetry: <T>(importFn: () => Promise<T>, retries?: number, interval?: number) => Promise<T>;
|
|
24
|
+
export declare const downloadUrl: (url?: string) => Promise<void>;
|
|
24
25
|
export declare const openUrl: (url?: string) => Promise<void>;
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
import { ActionProps } from '../components/Action';
|
|
2
|
-
export interface DownloadFunctionArg {
|
|
3
|
-
url?: string;
|
|
4
|
-
}
|
|
5
|
-
export declare function downloadFunction({ url }: DownloadFunctionArg): Promise<void>;
|
|
6
2
|
export declare const DownloadAction: ({ url }: {
|
|
7
3
|
url?: string | undefined;
|
|
8
4
|
}) => ActionProps;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/smart-card",
|
|
3
|
-
"version": "26.14.
|
|
3
|
+
"version": "26.14.6",
|
|
4
4
|
"description": "Smart card component",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -41,14 +41,13 @@
|
|
|
41
41
|
"@atlaskit/linking-types": "^8.2.0",
|
|
42
42
|
"@atlaskit/logo": "^13.14.0",
|
|
43
43
|
"@atlaskit/lozenge": "^11.4.0",
|
|
44
|
-
"@atlaskit/media-common": "^7.1.0",
|
|
45
44
|
"@atlaskit/modal-dialog": "^12.6.0",
|
|
46
45
|
"@atlaskit/outbound-auth-flow-client": "^3.4.0",
|
|
47
46
|
"@atlaskit/platform-feature-flags": "^0.2.1",
|
|
48
47
|
"@atlaskit/popup": "^1.9.0",
|
|
49
48
|
"@atlaskit/spinner": "^15.5.0",
|
|
50
49
|
"@atlaskit/theme": "^12.5.0",
|
|
51
|
-
"@atlaskit/tokens": "^1.
|
|
50
|
+
"@atlaskit/tokens": "^1.14.0",
|
|
52
51
|
"@atlaskit/tooltip": "^17.8.0",
|
|
53
52
|
"@atlaskit/ufo": "^0.2.0",
|
|
54
53
|
"@babel/runtime": "^7.0.0",
|