@atlaskit/media-ui 22.3.0 → 22.3.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 +6 -0
- package/dist/cjs/MediaButton.js +12 -29
- package/dist/cjs/MediaInlineCard/ErroredView/index.js +5 -32
- package/dist/cjs/MediaInlineCard/Frame/index.js +4 -27
- package/dist/cjs/MediaInlineCard/Frame/styled.js +1 -12
- package/dist/cjs/MediaInlineCard/Icon.js +3 -10
- package/dist/cjs/MediaInlineCard/IconAndTitleLayout/index.js +7 -35
- package/dist/cjs/MediaInlineCard/IconAndTitleLayout/styled.js +15 -33
- package/dist/cjs/MediaInlineCard/LoadedView/index.js +8 -24
- package/dist/cjs/MediaInlineCard/LoadingView/index.js +6 -26
- package/dist/cjs/MediaInlineCard/LoadingView/styled.js +0 -6
- package/dist/cjs/MediaInlineCard/index.js +0 -3
- package/dist/cjs/MediaInlineCard/styled.js +0 -7
- package/dist/cjs/browser.js +1 -5
- package/dist/cjs/camera.js +14 -36
- package/dist/cjs/codeViewer.js +1 -46
- package/dist/cjs/customMediaPlayer/analytics/events/screen/customMediaPlayer.js +0 -7
- package/dist/cjs/customMediaPlayer/analytics/events/track/playCount.js +0 -7
- package/dist/cjs/customMediaPlayer/analytics/events/track/played.js +0 -7
- package/dist/cjs/customMediaPlayer/analytics/events/ui/mediaButtonClicked.js +0 -6
- package/dist/cjs/customMediaPlayer/analytics/events/ui/playPauseBlanketClicked.js +0 -6
- package/dist/cjs/customMediaPlayer/analytics/events/ui/playbackSpeedChanged.js +0 -6
- package/dist/cjs/customMediaPlayer/analytics/events/ui/shortcutPressed.js +0 -6
- package/dist/cjs/customMediaPlayer/analytics/events/ui/timeRangeNavigated.js +0 -6
- package/dist/cjs/customMediaPlayer/analytics/index.js +0 -9
- package/dist/cjs/customMediaPlayer/analytics/utils/analytics.js +4 -8
- package/dist/cjs/customMediaPlayer/analytics/utils/playbackAttributes.js +10 -12
- package/dist/cjs/customMediaPlayer/fullscreen.js +4 -20
- package/dist/cjs/customMediaPlayer/getControlsWrapperClassName.js +0 -3
- package/dist/cjs/customMediaPlayer/icons.js +0 -8
- package/dist/cjs/customMediaPlayer/index.js +54 -157
- package/dist/cjs/customMediaPlayer/playPauseBlanket.js +0 -6
- package/dist/cjs/customMediaPlayer/playbackSpeedControls.js +7 -45
- package/dist/cjs/customMediaPlayer/simultaneousPlayManager.js +0 -4
- package/dist/cjs/customMediaPlayer/styled.js +0 -43
- package/dist/cjs/customMediaPlayer/timeRange.js +24 -55
- package/dist/cjs/customMediaPlayer/timeSaver.js +5 -12
- package/dist/cjs/ellipsify.js +4 -25
- package/dist/cjs/errorIcon.js +1 -5
- package/dist/cjs/formatDate.js +6 -12
- package/dist/cjs/formatDuration.js +0 -5
- package/dist/cjs/humanReadableSize.js +1 -6
- package/dist/cjs/i18n/cs.js +0 -1
- package/dist/cjs/i18n/da.js +0 -1
- package/dist/cjs/i18n/de.js +0 -1
- package/dist/cjs/i18n/en.js +0 -1
- package/dist/cjs/i18n/en_GB.js +0 -1
- package/dist/cjs/i18n/en_ZZ.js +0 -1
- package/dist/cjs/i18n/es.js +0 -1
- package/dist/cjs/i18n/et.js +0 -1
- package/dist/cjs/i18n/fi.js +0 -1
- package/dist/cjs/i18n/fr.js +0 -1
- package/dist/cjs/i18n/hu.js +0 -1
- package/dist/cjs/i18n/index.js +0 -30
- package/dist/cjs/i18n/it.js +0 -1
- package/dist/cjs/i18n/ja.js +0 -1
- package/dist/cjs/i18n/ko.js +0 -1
- package/dist/cjs/i18n/nb.js +0 -1
- package/dist/cjs/i18n/nl.js +0 -1
- package/dist/cjs/i18n/pl.js +0 -1
- package/dist/cjs/i18n/pt_BR.js +0 -1
- package/dist/cjs/i18n/pt_PT.js +0 -1
- package/dist/cjs/i18n/ru.js +0 -1
- package/dist/cjs/i18n/sk.js +0 -1
- package/dist/cjs/i18n/sv.js +0 -1
- package/dist/cjs/i18n/th.js +0 -1
- package/dist/cjs/i18n/tr.js +0 -1
- package/dist/cjs/i18n/uk.js +0 -1
- package/dist/cjs/i18n/vi.js +0 -1
- package/dist/cjs/i18n/zh.js +0 -1
- package/dist/cjs/i18n/zh_TW.js +0 -1
- package/dist/cjs/imageMetaData/imageOrientationUtil.js +1 -5
- package/dist/cjs/imageMetaData/index.js +8 -50
- package/dist/cjs/imageMetaData/metatags.js +0 -23
- package/dist/cjs/imageMetaData/parseJPEG.js +1 -18
- package/dist/cjs/imageMetaData/parsePNG.js +0 -30
- package/dist/cjs/imageMetaData/parsePNGXMP.js +0 -4
- package/dist/cjs/imageMetaData/types.js +0 -5
- package/dist/cjs/inactivityDetector/inactivityDetector.js +5 -34
- package/dist/cjs/inactivityDetector/styled.js +0 -8
- package/dist/cjs/index.js +0 -29
- package/dist/cjs/intersectionObserver.js +0 -2
- package/dist/cjs/locales.js +0 -5
- package/dist/cjs/media-type-icon.js +3 -35
- package/dist/cjs/mediaImage/index.js +28 -62
- package/dist/cjs/mediaImage/styled.js +2 -13
- package/dist/cjs/messages.js +0 -2
- package/dist/cjs/mime-type-icon.js +13 -18
- package/dist/cjs/mixins.js +0 -11
- package/dist/cjs/modalSpinner.js +1 -15
- package/dist/cjs/shortcut.js +3 -25
- package/dist/cjs/truncateText.js +12 -33
- package/dist/cjs/util.js +16 -72
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/MediaButton.js +8 -11
- package/dist/es2019/MediaInlineCard/ErroredView/index.js +0 -3
- package/dist/es2019/MediaInlineCard/Frame/index.js +0 -8
- package/dist/es2019/MediaInlineCard/Frame/styled.js +1 -3
- package/dist/es2019/MediaInlineCard/Icon.js +6 -4
- package/dist/es2019/MediaInlineCard/IconAndTitleLayout/index.js +0 -14
- package/dist/es2019/MediaInlineCard/IconAndTitleLayout/styled.js +19 -13
- package/dist/es2019/MediaInlineCard/LoadedView/index.js +0 -1
- package/dist/es2019/MediaInlineCard/LoadingView/index.js +0 -2
- package/dist/es2019/browser.js +1 -5
- package/dist/es2019/camera.js +9 -52
- package/dist/es2019/codeViewer.js +1 -42
- package/dist/es2019/customMediaPlayer/analytics/utils/analytics.js +4 -2
- package/dist/es2019/customMediaPlayer/fullscreen.js +4 -9
- package/dist/es2019/customMediaPlayer/icons.js +0 -4
- package/dist/es2019/customMediaPlayer/index.js +9 -85
- package/dist/es2019/customMediaPlayer/playbackSpeedControls.js +14 -20
- package/dist/es2019/customMediaPlayer/simultaneousPlayManager.js +0 -4
- package/dist/es2019/customMediaPlayer/timeRange.js +12 -29
- package/dist/es2019/customMediaPlayer/timeSaver.js +5 -9
- package/dist/es2019/ellipsify.js +0 -8
- package/dist/es2019/formatDuration.js +0 -3
- package/dist/es2019/humanReadableSize.js +3 -2
- package/dist/es2019/imageMetaData/imageOrientationUtil.js +1 -2
- package/dist/es2019/imageMetaData/index.js +10 -24
- package/dist/es2019/imageMetaData/metatags.js +4 -4
- package/dist/es2019/imageMetaData/parseJPEG.js +0 -3
- package/dist/es2019/imageMetaData/parsePNG.js +5 -10
- package/dist/es2019/imageMetaData/parsePNGXMP.js +0 -3
- package/dist/es2019/imageMetaData/types.js +0 -5
- package/dist/es2019/inactivityDetector/inactivityDetector.js +5 -15
- package/dist/es2019/inactivityDetector/styled.js +0 -2
- package/dist/es2019/media-type-icon.js +0 -2
- package/dist/es2019/mediaImage/index.js +10 -24
- package/dist/es2019/mediaImage/styled.js +2 -1
- package/dist/es2019/mime-type-icon.js +5 -5
- package/dist/es2019/shortcut.js +0 -9
- package/dist/es2019/truncateText.js +1 -9
- package/dist/es2019/util.js +14 -26
- package/dist/es2019/version.json +1 -1
- package/dist/esm/MediaButton.js +12 -22
- package/dist/esm/MediaInlineCard/ErroredView/index.js +5 -17
- package/dist/esm/MediaInlineCard/Frame/index.js +4 -21
- package/dist/esm/MediaInlineCard/Frame/styled.js +1 -6
- package/dist/esm/MediaInlineCard/Icon.js +4 -4
- package/dist/esm/MediaInlineCard/IconAndTitleLayout/index.js +7 -24
- package/dist/esm/MediaInlineCard/IconAndTitleLayout/styled.js +17 -13
- package/dist/esm/MediaInlineCard/LoadedView/index.js +8 -16
- package/dist/esm/MediaInlineCard/LoadingView/index.js +6 -15
- package/dist/esm/MediaInlineCard/LoadingView/styled.js +0 -2
- package/dist/esm/MediaInlineCard/styled.js +0 -2
- package/dist/esm/browser.js +1 -5
- package/dist/esm/camera.js +14 -31
- package/dist/esm/codeViewer.js +1 -42
- package/dist/esm/customMediaPlayer/analytics/events/screen/customMediaPlayer.js +0 -3
- package/dist/esm/customMediaPlayer/analytics/events/track/playCount.js +0 -3
- package/dist/esm/customMediaPlayer/analytics/events/track/played.js +0 -3
- package/dist/esm/customMediaPlayer/analytics/events/ui/mediaButtonClicked.js +0 -3
- package/dist/esm/customMediaPlayer/analytics/events/ui/playPauseBlanketClicked.js +0 -3
- package/dist/esm/customMediaPlayer/analytics/events/ui/playbackSpeedChanged.js +0 -3
- package/dist/esm/customMediaPlayer/analytics/events/ui/shortcutPressed.js +0 -3
- package/dist/esm/customMediaPlayer/analytics/events/ui/timeRangeNavigated.js +0 -3
- package/dist/esm/customMediaPlayer/analytics/utils/analytics.js +4 -2
- package/dist/esm/customMediaPlayer/analytics/utils/playbackAttributes.js +10 -10
- package/dist/esm/customMediaPlayer/fullscreen.js +4 -9
- package/dist/esm/customMediaPlayer/icons.js +0 -4
- package/dist/esm/customMediaPlayer/index.js +54 -153
- package/dist/esm/customMediaPlayer/playPauseBlanket.js +0 -2
- package/dist/esm/customMediaPlayer/playbackSpeedControls.js +7 -30
- package/dist/esm/customMediaPlayer/simultaneousPlayManager.js +0 -4
- package/dist/esm/customMediaPlayer/styled.js +0 -2
- package/dist/esm/customMediaPlayer/timeRange.js +24 -51
- package/dist/esm/customMediaPlayer/timeSaver.js +5 -10
- package/dist/esm/ellipsify.js +4 -14
- package/dist/esm/formatDate.js +6 -6
- package/dist/esm/formatDuration.js +0 -3
- package/dist/esm/humanReadableSize.js +3 -2
- package/dist/esm/imageMetaData/imageOrientationUtil.js +1 -2
- package/dist/esm/imageMetaData/index.js +8 -40
- package/dist/esm/imageMetaData/metatags.js +0 -15
- package/dist/esm/imageMetaData/parseJPEG.js +1 -8
- package/dist/esm/imageMetaData/parsePNG.js +0 -21
- package/dist/esm/imageMetaData/parsePNGXMP.js +0 -3
- package/dist/esm/imageMetaData/types.js +0 -5
- package/dist/esm/inactivityDetector/inactivityDetector.js +5 -25
- package/dist/esm/inactivityDetector/styled.js +0 -4
- package/dist/esm/media-type-icon.js +3 -13
- package/dist/esm/mediaImage/index.js +28 -51
- package/dist/esm/mediaImage/styled.js +2 -6
- package/dist/esm/mime-type-icon.js +13 -13
- package/dist/esm/mixins.js +0 -2
- package/dist/esm/modalSpinner.js +1 -3
- package/dist/esm/shortcut.js +3 -19
- package/dist/esm/truncateText.js +12 -22
- package/dist/esm/util.js +16 -46
- package/dist/esm/version.json +1 -1
- package/package.json +2 -2
package/dist/cjs/truncateText.js
CHANGED
|
@@ -1,45 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.calculateTruncation = exports.TruncateRight = exports.TruncateLeft = exports.Truncate = void 0;
|
|
9
|
-
|
|
10
8
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
-
|
|
12
9
|
var _react = _interopRequireDefault(require("react"));
|
|
13
|
-
|
|
14
10
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
15
|
-
|
|
16
11
|
var _templateObject, _templateObject2;
|
|
17
|
-
|
|
18
12
|
var truncateCommonStyles = "\n display: inline-block;\n vertical-align: bottom;\n white-space: nowrap;\n overflow: hidden;\n";
|
|
19
|
-
|
|
20
13
|
var TruncateLeft = _styled.default.span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", "\n max-width: calc(100% - ", "em);\n min-width: ", ";\n text-overflow: ellipsis;\n"])), truncateCommonStyles, function (_ref) {
|
|
21
14
|
var fontSizePX = _ref.fontSizePX,
|
|
22
|
-
|
|
15
|
+
endFixedChars = _ref.endFixedChars;
|
|
23
16
|
return fontFaceScaleFactor(fontSizePX) * endFixedChars + 1;
|
|
24
17
|
}, function (_ref2) {
|
|
25
18
|
var fontSizePX = _ref2.fontSizePX,
|
|
26
|
-
|
|
19
|
+
startFixedChars = _ref2.startFixedChars;
|
|
27
20
|
return fontFaceScaleFactor(fontSizePX) * startFixedChars;
|
|
28
21
|
});
|
|
29
|
-
|
|
30
22
|
exports.TruncateLeft = TruncateLeft;
|
|
31
|
-
|
|
32
23
|
var TruncateRight = _styled.default.span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n max-width: calc(100% - ", ");\n position: relative;\n"])), truncateCommonStyles, function (_ref3) {
|
|
33
24
|
var fontSizePX = _ref3.fontSizePX,
|
|
34
|
-
|
|
25
|
+
startFixedChars = _ref3.startFixedChars;
|
|
35
26
|
return fontFaceScaleFactor(fontSizePX) * startFixedChars;
|
|
36
27
|
});
|
|
37
|
-
|
|
38
28
|
exports.TruncateRight = TruncateRight;
|
|
39
|
-
|
|
40
29
|
var calculateTruncation = function calculateTruncation(text, startFixedChars, endFixedChars) {
|
|
41
30
|
var minAllowedLength = endFixedChars + startFixedChars;
|
|
42
|
-
|
|
43
31
|
if (text.length <= minAllowedLength) {
|
|
44
32
|
// if no truncation return same value for left and right
|
|
45
33
|
return {
|
|
@@ -47,7 +35,6 @@ var calculateTruncation = function calculateTruncation(text, startFixedChars, en
|
|
|
47
35
|
right: text
|
|
48
36
|
};
|
|
49
37
|
}
|
|
50
|
-
|
|
51
38
|
var splitAt = text.length - endFixedChars;
|
|
52
39
|
var left = text.substr(0, splitAt);
|
|
53
40
|
var right = text.substr(splitAt);
|
|
@@ -56,32 +43,25 @@ var calculateTruncation = function calculateTruncation(text, startFixedChars, en
|
|
|
56
43
|
right: right
|
|
57
44
|
};
|
|
58
45
|
};
|
|
59
|
-
|
|
60
46
|
exports.calculateTruncation = calculateTruncation;
|
|
61
|
-
|
|
62
47
|
var fontFaceScaleFactor = function fontFaceScaleFactor(fontSizePX) {
|
|
63
48
|
return fontSizePX / 11 * 0.46;
|
|
64
|
-
};
|
|
65
|
-
/* factor for fontSize of 11px */
|
|
66
|
-
|
|
49
|
+
}; /* factor for fontSize of 11px */
|
|
67
50
|
|
|
68
51
|
var Truncate = function Truncate(_ref4) {
|
|
69
52
|
var text = _ref4.text,
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
53
|
+
_ref4$fontSizePX = _ref4.fontSizePX,
|
|
54
|
+
fontSizePX = _ref4$fontSizePX === void 0 ? 11 : _ref4$fontSizePX,
|
|
55
|
+
_ref4$startFixedChars = _ref4.startFixedChars,
|
|
56
|
+
startFixedChars = _ref4$startFixedChars === void 0 ? 4 : _ref4$startFixedChars,
|
|
57
|
+
_ref4$endFixedChars = _ref4.endFixedChars,
|
|
58
|
+
endFixedChars = _ref4$endFixedChars === void 0 ? 7 : _ref4$endFixedChars;
|
|
77
59
|
var _calculateTruncation = calculateTruncation(text, startFixedChars, endFixedChars),
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
60
|
+
leftStr = _calculateTruncation.left,
|
|
61
|
+
rightStr = _calculateTruncation.right;
|
|
81
62
|
if (leftStr === rightStr) {
|
|
82
63
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, text);
|
|
83
64
|
}
|
|
84
|
-
|
|
85
65
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(TruncateLeft, {
|
|
86
66
|
fontSizePX: fontSizePX,
|
|
87
67
|
startFixedChars: startFixedChars,
|
|
@@ -92,5 +72,4 @@ var Truncate = function Truncate(_ref4) {
|
|
|
92
72
|
endFixedChars: endFixedChars
|
|
93
73
|
}, rightStr));
|
|
94
74
|
};
|
|
95
|
-
|
|
96
75
|
exports.Truncate = Truncate;
|
package/dist/cjs/util.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
@@ -14,74 +13,51 @@ exports.getFileInfoFromSrc = getFileInfoFromSrc;
|
|
|
14
13
|
exports.getMimeIcon = getMimeIcon;
|
|
15
14
|
exports.loadImage = loadImage;
|
|
16
15
|
exports.readImageNaturalOrientationFromDOM = readImageNaturalOrientationFromDOM;
|
|
17
|
-
|
|
18
16
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
19
|
-
|
|
20
17
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
21
|
-
|
|
22
18
|
var _ = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/pdf-document/24"));
|
|
23
|
-
|
|
24
19
|
var _2 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/gif/24"));
|
|
25
|
-
|
|
26
20
|
var _3 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/powerpoint-presentation/24"));
|
|
27
|
-
|
|
28
21
|
var _4 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/word-document/24"));
|
|
29
|
-
|
|
30
22
|
var _5 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/sketch/24"));
|
|
31
|
-
|
|
32
23
|
var _6 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/figma/24"));
|
|
33
|
-
|
|
34
24
|
var _7 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/executable/24"));
|
|
35
|
-
|
|
36
25
|
var _8 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/google-doc/24"));
|
|
37
|
-
|
|
38
26
|
var _9 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/google-form/24"));
|
|
39
|
-
|
|
40
27
|
var _10 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/google-sheet/24"));
|
|
41
|
-
|
|
42
28
|
var _11 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/google-slide/24"));
|
|
43
|
-
|
|
44
29
|
var _12 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/excel-spreadsheet/24"));
|
|
45
|
-
|
|
46
30
|
var _13 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/spreadsheet/24"));
|
|
47
|
-
|
|
48
31
|
var _14 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/presentation/24"));
|
|
49
|
-
|
|
50
32
|
var _15 = _interopRequireDefault(require("@atlaskit/icon-file-type/glyph/source-code/24"));
|
|
51
|
-
|
|
52
33
|
var _codeViewer = require("./codeViewer");
|
|
53
|
-
|
|
54
34
|
function dataURItoFile(dataURI) {
|
|
55
35
|
var filename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'untitled';
|
|
56
|
-
|
|
57
36
|
if (dataURI.length === 0) {
|
|
58
37
|
throw new Error('dataURI not found');
|
|
59
|
-
}
|
|
60
|
-
|
|
38
|
+
}
|
|
61
39
|
|
|
40
|
+
// convert base64/URLEncoded data component to raw binary data held in a string
|
|
62
41
|
var dataURIParts = dataURI.split(',');
|
|
63
|
-
var byteString = dataURIParts[0].indexOf('base64') >= 0 ? atob(dataURIParts[1]) : decodeURIComponent(dataURIParts[1]);
|
|
42
|
+
var byteString = dataURIParts[0].indexOf('base64') >= 0 ? atob(dataURIParts[1]) : decodeURIComponent(dataURIParts[1]);
|
|
64
43
|
|
|
44
|
+
// separate out the mime component
|
|
65
45
|
var mimeString;
|
|
66
|
-
|
|
67
46
|
try {
|
|
68
47
|
mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
|
|
69
48
|
} catch (e) {
|
|
70
49
|
// https://stackoverflow.com/questions/1176022/unknown-file-type-mime
|
|
71
50
|
mimeString = 'application/octet-stream';
|
|
72
|
-
}
|
|
73
|
-
|
|
51
|
+
}
|
|
74
52
|
|
|
53
|
+
// write the bytes of the string to a typed array
|
|
75
54
|
var intArray = new Uint8Array(byteString.length);
|
|
76
|
-
|
|
77
55
|
for (var i = 0; i < byteString.length; i++) {
|
|
78
56
|
intArray[i] = byteString.charCodeAt(i);
|
|
79
57
|
}
|
|
80
|
-
|
|
81
58
|
var blob = new Blob([intArray], {
|
|
82
59
|
type: mimeString
|
|
83
60
|
});
|
|
84
|
-
|
|
85
61
|
try {
|
|
86
62
|
return new File([blob], filename, {
|
|
87
63
|
type: mimeString
|
|
@@ -99,13 +75,11 @@ function dataURItoFile(dataURI) {
|
|
|
99
75
|
return ie11File;
|
|
100
76
|
}
|
|
101
77
|
}
|
|
102
|
-
|
|
103
78
|
function fileToDataURI(blob) {
|
|
104
79
|
return new Promise(function (resolve, reject) {
|
|
105
80
|
var reader = new FileReader();
|
|
106
81
|
reader.addEventListener('load', function () {
|
|
107
82
|
var result = reader.result;
|
|
108
|
-
|
|
109
83
|
if (typeof result === 'string') {
|
|
110
84
|
resolve(result);
|
|
111
85
|
} else if (result === null) {
|
|
@@ -116,11 +90,9 @@ function fileToDataURI(blob) {
|
|
|
116
90
|
reader.readAsDataURL(blob);
|
|
117
91
|
});
|
|
118
92
|
}
|
|
119
|
-
|
|
120
93
|
function getFileInfo(_x, _x2) {
|
|
121
94
|
return _getFileInfo.apply(this, arguments);
|
|
122
95
|
}
|
|
123
|
-
|
|
124
96
|
function _getFileInfo() {
|
|
125
97
|
_getFileInfo = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(file, src) {
|
|
126
98
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
@@ -129,25 +101,20 @@ function _getFileInfo() {
|
|
|
129
101
|
case 0:
|
|
130
102
|
_context.t0 = file;
|
|
131
103
|
_context.t1 = src;
|
|
132
|
-
|
|
133
104
|
if (_context.t1) {
|
|
134
105
|
_context.next = 6;
|
|
135
106
|
break;
|
|
136
107
|
}
|
|
137
|
-
|
|
138
108
|
_context.next = 5;
|
|
139
109
|
return fileToDataURI(file);
|
|
140
|
-
|
|
141
110
|
case 5:
|
|
142
111
|
_context.t1 = _context.sent;
|
|
143
|
-
|
|
144
112
|
case 6:
|
|
145
113
|
_context.t2 = _context.t1;
|
|
146
114
|
return _context.abrupt("return", {
|
|
147
115
|
file: _context.t0,
|
|
148
116
|
src: _context.t2
|
|
149
117
|
});
|
|
150
|
-
|
|
151
118
|
case 8:
|
|
152
119
|
case "end":
|
|
153
120
|
return _context.stop();
|
|
@@ -157,11 +124,9 @@ function _getFileInfo() {
|
|
|
157
124
|
}));
|
|
158
125
|
return _getFileInfo.apply(this, arguments);
|
|
159
126
|
}
|
|
160
|
-
|
|
161
127
|
function getFileInfoFromSrc(_x3, _x4) {
|
|
162
128
|
return _getFileInfoFromSrc.apply(this, arguments);
|
|
163
129
|
}
|
|
164
|
-
|
|
165
130
|
function _getFileInfoFromSrc() {
|
|
166
131
|
_getFileInfoFromSrc = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(src, file) {
|
|
167
132
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
@@ -169,18 +134,14 @@ function _getFileInfoFromSrc() {
|
|
|
169
134
|
switch (_context2.prev = _context2.next) {
|
|
170
135
|
case 0:
|
|
171
136
|
_context2.t0 = file;
|
|
172
|
-
|
|
173
137
|
if (_context2.t0) {
|
|
174
138
|
_context2.next = 5;
|
|
175
139
|
break;
|
|
176
140
|
}
|
|
177
|
-
|
|
178
141
|
_context2.next = 4;
|
|
179
142
|
return dataURItoFile(src);
|
|
180
|
-
|
|
181
143
|
case 4:
|
|
182
144
|
_context2.t0 = _context2.sent;
|
|
183
|
-
|
|
184
145
|
case 5:
|
|
185
146
|
_context2.t1 = _context2.t0;
|
|
186
147
|
_context2.t2 = src;
|
|
@@ -188,7 +149,6 @@ function _getFileInfoFromSrc() {
|
|
|
188
149
|
file: _context2.t1,
|
|
189
150
|
src: _context2.t2
|
|
190
151
|
});
|
|
191
|
-
|
|
192
152
|
case 8:
|
|
193
153
|
case "end":
|
|
194
154
|
return _context2.stop();
|
|
@@ -198,7 +158,6 @@ function _getFileInfoFromSrc() {
|
|
|
198
158
|
}));
|
|
199
159
|
return _getFileInfoFromSrc.apply(this, arguments);
|
|
200
160
|
}
|
|
201
|
-
|
|
202
161
|
function fileToArrayBuffer(file) {
|
|
203
162
|
return new Promise(function (resolve, reject) {
|
|
204
163
|
var reader = new FileReader();
|
|
@@ -210,49 +169,38 @@ function fileToArrayBuffer(file) {
|
|
|
210
169
|
reader.readAsArrayBuffer(file);
|
|
211
170
|
});
|
|
212
171
|
}
|
|
213
|
-
|
|
214
172
|
function loadImage(src) {
|
|
215
173
|
return new Promise(function (resolve, reject) {
|
|
216
174
|
var img = new Image();
|
|
217
175
|
img.src = src;
|
|
218
|
-
|
|
219
176
|
img.onload = function () {
|
|
220
177
|
resolve(img);
|
|
221
178
|
};
|
|
222
|
-
|
|
223
179
|
img.onerror = reject;
|
|
224
180
|
});
|
|
225
181
|
}
|
|
226
|
-
|
|
227
182
|
function readImageNaturalOrientationFromDOM(img) {
|
|
228
183
|
img.style.position = 'absolute';
|
|
229
184
|
img.style.visibility = 'hidden';
|
|
230
185
|
document.body.appendChild(img);
|
|
231
|
-
|
|
232
186
|
var _img$getBoundingClien = img.getBoundingClientRect(),
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
187
|
+
width = _img$getBoundingClien.width,
|
|
188
|
+
height = _img$getBoundingClien.height;
|
|
236
189
|
document.body.removeChild(img);
|
|
237
190
|
return {
|
|
238
191
|
width: width,
|
|
239
192
|
height: height
|
|
240
193
|
};
|
|
241
194
|
}
|
|
242
|
-
|
|
243
195
|
var findParentByClassname = function findParentByClassname(element, className) {
|
|
244
196
|
var maxParentElement = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document.body;
|
|
245
|
-
|
|
246
197
|
if (element.classList.contains(className)) {
|
|
247
198
|
return element;
|
|
248
199
|
}
|
|
249
|
-
|
|
250
200
|
var currentElement = element;
|
|
251
|
-
|
|
252
201
|
while (currentElement.parentElement !== maxParentElement) {
|
|
253
202
|
if (currentElement.parentElement) {
|
|
254
203
|
currentElement = currentElement.parentElement;
|
|
255
|
-
|
|
256
204
|
if (currentElement.classList.contains(className)) {
|
|
257
205
|
return currentElement;
|
|
258
206
|
}
|
|
@@ -260,10 +208,8 @@ var findParentByClassname = function findParentByClassname(element, className) {
|
|
|
260
208
|
return undefined;
|
|
261
209
|
}
|
|
262
210
|
}
|
|
263
|
-
|
|
264
211
|
return undefined;
|
|
265
212
|
};
|
|
266
|
-
|
|
267
213
|
exports.findParentByClassname = findParentByClassname;
|
|
268
214
|
var mimeTypes = [{
|
|
269
215
|
label: 'pdf',
|
|
@@ -314,50 +260,48 @@ var mimeTypes = [{
|
|
|
314
260
|
mimeTypes: ['application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/vnd.ms-excel', 'application/x-iwork-keynote-sffnumbers'],
|
|
315
261
|
icon: _12.default
|
|
316
262
|
}];
|
|
263
|
+
|
|
317
264
|
/*
|
|
318
265
|
* Returns a label and icon
|
|
319
266
|
*/
|
|
320
|
-
|
|
321
267
|
function getMimeIcon(mimeType, fileName) {
|
|
322
268
|
// based on the mimeType, determine the corresponding icon and label
|
|
323
269
|
var iconInfo = mimeTypes.find(function (file) {
|
|
324
270
|
return file.mimeTypes.indexOf(mimeType) > -1;
|
|
325
|
-
});
|
|
271
|
+
});
|
|
326
272
|
|
|
273
|
+
//return the appropriate icon and its label if we have it
|
|
327
274
|
if (iconInfo) {
|
|
328
275
|
return iconInfo;
|
|
329
276
|
}
|
|
330
|
-
|
|
331
277
|
if ((0, _codeViewer.isCodeViewerItem)(fileName, mimeType)) {
|
|
332
278
|
return {
|
|
333
279
|
label: 'source-code',
|
|
334
280
|
icon: _15.default
|
|
335
281
|
};
|
|
336
|
-
}
|
|
337
|
-
// hence we render the icon based on the filename
|
|
338
|
-
|
|
282
|
+
}
|
|
339
283
|
|
|
284
|
+
// we are not able to determine what icon to render based on the mimeType
|
|
285
|
+
// hence we render the icon based on the filename
|
|
340
286
|
if (fileName.match(/.*\.sketch$/)) {
|
|
341
287
|
return {
|
|
342
288
|
label: 'sketch',
|
|
343
289
|
icon: _5.default
|
|
344
290
|
};
|
|
345
291
|
}
|
|
346
|
-
|
|
347
292
|
if (fileName.match(/.*\.fig$/)) {
|
|
348
293
|
return {
|
|
349
294
|
label: 'figma',
|
|
350
295
|
icon: _6.default
|
|
351
296
|
};
|
|
352
297
|
}
|
|
353
|
-
|
|
354
298
|
if (fileName.match(/.*\.exe$/) || fileName.match(/.*\.dmg$/)) {
|
|
355
299
|
return {
|
|
356
300
|
label: 'executable',
|
|
357
301
|
icon: _7.default
|
|
358
302
|
};
|
|
359
|
-
}
|
|
360
|
-
|
|
303
|
+
}
|
|
361
304
|
|
|
305
|
+
// cannot find a corresponding mimeType icon.
|
|
362
306
|
return undefined;
|
|
363
307
|
}
|
package/dist/cjs/version.json
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
-
|
|
3
2
|
/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
|
|
4
3
|
// Keep Media buttons to use static colors from the new color palette to support the hybrid
|
|
5
4
|
// theming in media viewer https://product-fabric.atlassian.net/browse/DSP-6067
|
|
@@ -75,7 +74,6 @@ const buttonTheme = {
|
|
|
75
74
|
}
|
|
76
75
|
}
|
|
77
76
|
};
|
|
78
|
-
|
|
79
77
|
function extract(newTheme, {
|
|
80
78
|
appearance,
|
|
81
79
|
state,
|
|
@@ -84,9 +82,8 @@ function extract(newTheme, {
|
|
|
84
82
|
// @ts-ignore
|
|
85
83
|
if (!newTheme[appearance]) {
|
|
86
84
|
return;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
|
|
85
|
+
}
|
|
86
|
+
// @ts-ignore
|
|
90
87
|
const root = newTheme[appearance];
|
|
91
88
|
return Object.keys(root).reduce((acc, val) => {
|
|
92
89
|
let node = root;
|
|
@@ -94,26 +91,24 @@ function extract(newTheme, {
|
|
|
94
91
|
if (!node[item]) {
|
|
95
92
|
return;
|
|
96
93
|
}
|
|
97
|
-
|
|
98
94
|
if (typeof node[item] !== 'object') {
|
|
99
95
|
acc[val] = node[item];
|
|
100
96
|
return;
|
|
101
97
|
}
|
|
102
|
-
|
|
103
98
|
node = node[item];
|
|
104
99
|
return;
|
|
105
100
|
});
|
|
106
101
|
return acc;
|
|
107
102
|
}, {});
|
|
108
103
|
}
|
|
109
|
-
|
|
110
104
|
export default function MediaButton({
|
|
111
105
|
appearance = 'default',
|
|
112
106
|
buttonRef,
|
|
113
107
|
...rest
|
|
114
108
|
}) {
|
|
115
109
|
return /*#__PURE__*/React.createElement(Button, _extends({}, rest, {
|
|
116
|
-
ref: buttonRef
|
|
110
|
+
ref: buttonRef
|
|
111
|
+
// Giving button the 'default' appearance so it can calculate the base styles
|
|
117
112
|
,
|
|
118
113
|
appearance: appearance,
|
|
119
114
|
theme: (currentTheme, themeProps) => {
|
|
@@ -122,9 +117,11 @@ export default function MediaButton({
|
|
|
122
117
|
...rest
|
|
123
118
|
} = currentTheme(themeProps);
|
|
124
119
|
return {
|
|
125
|
-
buttonStyles: {
|
|
120
|
+
buttonStyles: {
|
|
121
|
+
...buttonStyles,
|
|
126
122
|
// giving our extract function the real appearance value
|
|
127
|
-
...extract(buttonTheme, {
|
|
123
|
+
...extract(buttonTheme, {
|
|
124
|
+
...themeProps,
|
|
128
125
|
appearance
|
|
129
126
|
})
|
|
130
127
|
},
|
|
@@ -9,7 +9,6 @@ import { NoLinkAppearance } from '../styled';
|
|
|
9
9
|
export class MediaInlineCardErroredView extends React.Component {
|
|
10
10
|
constructor(...args) {
|
|
11
11
|
super(...args);
|
|
12
|
-
|
|
13
12
|
_defineProperty(this, "renderMessage", () => {
|
|
14
13
|
const {
|
|
15
14
|
message
|
|
@@ -18,7 +17,6 @@ export class MediaInlineCardErroredView extends React.Component {
|
|
|
18
17
|
return /*#__PURE__*/React.createElement(React.Fragment, null, errorMessage);
|
|
19
18
|
});
|
|
20
19
|
}
|
|
21
|
-
|
|
22
20
|
render() {
|
|
23
21
|
const {
|
|
24
22
|
onClick,
|
|
@@ -39,5 +37,4 @@ export class MediaInlineCardErroredView extends React.Component {
|
|
|
39
37
|
title: this.renderMessage()
|
|
40
38
|
}));
|
|
41
39
|
}
|
|
42
|
-
|
|
43
40
|
}
|
|
@@ -4,40 +4,33 @@ import { Wrapper } from './styled';
|
|
|
4
4
|
export class Frame extends React.Component {
|
|
5
5
|
constructor(...args) {
|
|
6
6
|
super(...args);
|
|
7
|
-
|
|
8
7
|
_defineProperty(this, "handleClick", event => {
|
|
9
8
|
const {
|
|
10
9
|
onClick
|
|
11
10
|
} = this.props;
|
|
12
|
-
|
|
13
11
|
if (onClick) {
|
|
14
12
|
event.preventDefault();
|
|
15
13
|
event.stopPropagation();
|
|
16
14
|
onClick(event);
|
|
17
15
|
}
|
|
18
16
|
});
|
|
19
|
-
|
|
20
17
|
_defineProperty(this, "handleKeyPress", event => {
|
|
21
18
|
if (event.key !== ' ' && event.key !== 'Enter') {
|
|
22
19
|
return;
|
|
23
20
|
}
|
|
24
|
-
|
|
25
21
|
const {
|
|
26
22
|
onClick
|
|
27
23
|
} = this.props;
|
|
28
|
-
|
|
29
24
|
if (onClick) {
|
|
30
25
|
event.preventDefault();
|
|
31
26
|
event.stopPropagation();
|
|
32
27
|
onClick(event);
|
|
33
28
|
}
|
|
34
29
|
});
|
|
35
|
-
|
|
36
30
|
_defineProperty(this, "handleMouseDown", e => {
|
|
37
31
|
e.preventDefault();
|
|
38
32
|
});
|
|
39
33
|
}
|
|
40
|
-
|
|
41
34
|
render() {
|
|
42
35
|
const {
|
|
43
36
|
isSelected,
|
|
@@ -56,5 +49,4 @@ export class Frame extends React.Component {
|
|
|
56
49
|
"data-testid": testId
|
|
57
50
|
}, children);
|
|
58
51
|
}
|
|
59
|
-
|
|
60
52
|
}
|
|
@@ -13,7 +13,6 @@ const selected = `
|
|
|
13
13
|
text-decoration: none;
|
|
14
14
|
}
|
|
15
15
|
`;
|
|
16
|
-
|
|
17
16
|
const isSelected = ({
|
|
18
17
|
isSelected
|
|
19
18
|
}) => {
|
|
@@ -23,6 +22,7 @@ const isSelected = ({
|
|
|
23
22
|
return 'user-select: text';
|
|
24
23
|
}
|
|
25
24
|
};
|
|
25
|
+
|
|
26
26
|
/*
|
|
27
27
|
Media Inline cards should have the following layout:
|
|
28
28
|
-----------------
|
|
@@ -35,8 +35,6 @@ const isSelected = ({
|
|
|
35
35
|
// NB: `padding` consistent with @mentions.
|
|
36
36
|
// NB: `display: inline` required for `box-decoration-break` to work.
|
|
37
37
|
// NB: `box-decoration-break` required for retaining properties (border-radius) on wrap.
|
|
38
|
-
|
|
39
|
-
|
|
40
38
|
export const Wrapper = styled.span`
|
|
41
39
|
line-height: 16px;
|
|
42
40
|
padding: 2px 4px 2px 4px;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import styled from '@emotion/styled';
|
|
1
|
+
import styled from '@emotion/styled';
|
|
2
|
+
|
|
3
|
+
// TODO: Figure out a more scalable/responsive solution
|
|
2
4
|
// for vertical alignment.
|
|
3
5
|
// Current rationale: vertically positioned at the top of
|
|
4
6
|
// the smart card container (when set to 0). Offset this
|
|
5
7
|
// to position it with appropriate whitespace from the top.
|
|
6
|
-
|
|
7
8
|
export const Icon = styled.img`
|
|
8
9
|
height: 14px;
|
|
9
10
|
width: 14px;
|
|
@@ -14,10 +15,11 @@ export const Icon = styled.img`
|
|
|
14
15
|
top: 50%;
|
|
15
16
|
left: 50%;
|
|
16
17
|
transform: translate(-50%, -50%);
|
|
17
|
-
`;
|
|
18
|
+
`;
|
|
19
|
+
|
|
20
|
+
// Used for 'untrue' icons which claim to be 16x16 but
|
|
18
21
|
// are less than that in height/width.
|
|
19
22
|
// TODO: Replace this override with proper AtlasKit solution.
|
|
20
|
-
|
|
21
23
|
export const AKIconWrapper = styled.span`
|
|
22
24
|
margin-right: -2px;
|
|
23
25
|
`;
|
|
@@ -10,27 +10,21 @@ export class IconAndTitleLayout extends React.Component {
|
|
|
10
10
|
icon,
|
|
11
11
|
emoji
|
|
12
12
|
} = this.props;
|
|
13
|
-
|
|
14
13
|
if (emoji) {
|
|
15
14
|
return /*#__PURE__*/React.createElement(EmojiWrapper, null, emoji);
|
|
16
15
|
}
|
|
17
|
-
|
|
18
16
|
if (!icon || typeof icon === 'string') {
|
|
19
17
|
return null;
|
|
20
18
|
}
|
|
21
|
-
|
|
22
19
|
return /*#__PURE__*/React.createElement(IconWrapper, null, icon);
|
|
23
20
|
}
|
|
24
|
-
|
|
25
21
|
renderImageIcon(errored, testId) {
|
|
26
22
|
const {
|
|
27
23
|
icon: url
|
|
28
24
|
} = this.props;
|
|
29
|
-
|
|
30
25
|
if (!url || typeof url !== 'string') {
|
|
31
26
|
return null;
|
|
32
27
|
}
|
|
33
|
-
|
|
34
28
|
return /*#__PURE__*/React.createElement(ImageLoader, {
|
|
35
29
|
src: url,
|
|
36
30
|
loaded: /*#__PURE__*/React.createElement(Icon, {
|
|
@@ -41,39 +35,32 @@ export class IconAndTitleLayout extends React.Component {
|
|
|
41
35
|
errored: errored
|
|
42
36
|
});
|
|
43
37
|
}
|
|
44
|
-
|
|
45
38
|
renderIconPlaceholder(testId) {
|
|
46
39
|
const {
|
|
47
40
|
defaultIcon
|
|
48
41
|
} = this.props;
|
|
49
|
-
|
|
50
42
|
if (defaultIcon) {
|
|
51
43
|
return /*#__PURE__*/React.createElement(IconWrapper, null, defaultIcon);
|
|
52
44
|
}
|
|
53
|
-
|
|
54
45
|
return /*#__PURE__*/React.createElement(IconWrapper, null, /*#__PURE__*/React.createElement(LinkIcon, {
|
|
55
46
|
label: "link",
|
|
56
47
|
size: "small",
|
|
57
48
|
testId: `${testId}-default`
|
|
58
49
|
}));
|
|
59
50
|
}
|
|
60
|
-
|
|
61
51
|
renderIcon(testId) {
|
|
62
52
|
// We render two kinds of icons here:
|
|
63
53
|
// - Image: acquired from either DAC or Teamwork Platform Apps;
|
|
64
54
|
// - Atlaskit Icon: an Atlaskit SVG;
|
|
65
55
|
// Each of these are scaled down to 12x12.
|
|
66
56
|
const icon = this.renderAtlaskitIcon();
|
|
67
|
-
|
|
68
57
|
if (icon) {
|
|
69
58
|
return icon;
|
|
70
59
|
}
|
|
71
|
-
|
|
72
60
|
const placeholder = this.renderIconPlaceholder(testId);
|
|
73
61
|
const image = this.renderImageIcon(placeholder, testId);
|
|
74
62
|
return image || placeholder;
|
|
75
63
|
}
|
|
76
|
-
|
|
77
64
|
render() {
|
|
78
65
|
const {
|
|
79
66
|
children,
|
|
@@ -87,5 +74,4 @@ export class IconAndTitleLayout extends React.Component {
|
|
|
87
74
|
}
|
|
88
75
|
}, /*#__PURE__*/React.createElement(IconPositionWrapper, null, children || /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IconEmptyWrapper, null), this.renderIcon(testId))), /*#__PURE__*/React.createElement(TitleWrapper, null, title)));
|
|
89
76
|
}
|
|
90
|
-
|
|
91
77
|
}
|