@atlaskit/media-viewer 48.3.4 → 48.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/cjs/analytics/index.js +1 -1
- package/dist/cjs/analytics/ufoExperiences.js +1 -1
- package/dist/cjs/v2/item-viewer-v2.js +66 -58
- package/dist/cjs/viewers/doc/pdfPasswordInput.js +2 -2
- package/dist/es2019/analytics/index.js +1 -1
- package/dist/es2019/analytics/ufoExperiences.js +1 -1
- package/dist/es2019/v2/item-viewer-v2.js +68 -60
- package/dist/es2019/viewers/doc/pdfPasswordInput.js +2 -2
- package/dist/esm/analytics/index.js +1 -1
- package/dist/esm/analytics/ufoExperiences.js +1 -1
- package/dist/esm/v2/item-viewer-v2.js +66 -58
- package/dist/esm/viewers/doc/pdfPasswordInput.js +2 -2
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# @atlaskit/media-viewer
|
|
2
2
|
|
|
3
|
+
## 48.3.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#79731](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/79731) [`f41d502dc466`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/f41d502dc466) - fix missing password pdf support for media-viewer v2
|
|
8
|
+
fix a11y issue for password error message
|
|
9
|
+
|
|
3
10
|
## 48.3.4
|
|
4
11
|
|
|
5
12
|
### Patch Changes
|
|
@@ -10,7 +10,7 @@ exports.packageVersion = exports.packageName = void 0;
|
|
|
10
10
|
var _mediaCommon = require("@atlaskit/media-common");
|
|
11
11
|
var componentName = exports.component = exports.componentName = 'mediaViewer';
|
|
12
12
|
var packageName = exports.packageName = "@atlaskit/media-viewer";
|
|
13
|
-
var packageVersion = exports.packageVersion = "48.3.
|
|
13
|
+
var packageVersion = exports.packageVersion = "48.3.5";
|
|
14
14
|
function getFileAttributes(fileState) {
|
|
15
15
|
if (!fileState) {
|
|
16
16
|
return {
|
|
@@ -12,7 +12,7 @@ var _mediaCommon = require("@atlaskit/media-common");
|
|
|
12
12
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
13
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
14
|
var packageName = "@atlaskit/media-viewer";
|
|
15
|
-
var packageVersion = "48.3.
|
|
15
|
+
var packageVersion = "48.3.5";
|
|
16
16
|
var ufoExperience;
|
|
17
17
|
var getExperience = function getExperience() {
|
|
18
18
|
if (!ufoExperience) {
|
|
@@ -14,6 +14,7 @@ var _mediaClient = require("@atlaskit/media-client");
|
|
|
14
14
|
var _reactIntlNext = require("react-intl-next");
|
|
15
15
|
var _mediaUi = require("@atlaskit/media-ui");
|
|
16
16
|
var _codeViewer = require("@atlaskit/media-ui/codeViewer");
|
|
17
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
17
18
|
var _mediaClientReact = require("@atlaskit/media-client-react");
|
|
18
19
|
var _domain = require("../domain");
|
|
19
20
|
var _loading = require("../loading");
|
|
@@ -181,9 +182,68 @@ var ItemViewerV2Base = exports.ItemViewerV2Base = function ItemViewerV2Base(_ref
|
|
|
181
182
|
}
|
|
182
183
|
});
|
|
183
184
|
}, [item]);
|
|
184
|
-
var onLoadFail = (0, _react.useCallback)(function (mediaViewerError) {
|
|
185
|
-
setItem(_domain.Outcome.failed(mediaViewerError));
|
|
185
|
+
var onLoadFail = (0, _react.useCallback)(function (mediaViewerError, data) {
|
|
186
|
+
setItem(_domain.Outcome.failed(mediaViewerError, data));
|
|
186
187
|
}, []);
|
|
188
|
+
var renderItem = function renderItem(fileItem) {
|
|
189
|
+
var collectionName = (0, _mediaClient.isFileIdentifier)(identifier) ? identifier.collectionName : undefined;
|
|
190
|
+
var viewerProps = {
|
|
191
|
+
mediaClient: mediaClient,
|
|
192
|
+
item: fileItem,
|
|
193
|
+
collectionName: collectionName,
|
|
194
|
+
onClose: onClose,
|
|
195
|
+
previewCount: previewCount
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
// TODO: fix all of the item errors
|
|
199
|
+
|
|
200
|
+
if ((0, _codeViewer.isCodeViewerItem)(fileItem.name, fileItem.mimeType)) {
|
|
201
|
+
//Render error message if code file has size over 10MB.
|
|
202
|
+
//Required by https://product-fabric.atlassian.net/browse/MEX-1788
|
|
203
|
+
if (fileItem.size > MAX_FILE_SIZE_SUPPORTED_BY_CODEVIEWER) {
|
|
204
|
+
return renderError(new _errors.MediaViewerError('codeviewer-file-size-exceeds'), fileItem);
|
|
205
|
+
}
|
|
206
|
+
return /*#__PURE__*/_react.default.createElement(CodeViewerV2, (0, _extends2.default)({
|
|
207
|
+
onSuccess: onSuccess,
|
|
208
|
+
onError: onLoadFail
|
|
209
|
+
}, viewerProps));
|
|
210
|
+
}
|
|
211
|
+
var mediaType = fileItem.mediaType;
|
|
212
|
+
switch (mediaType) {
|
|
213
|
+
case 'image':
|
|
214
|
+
return /*#__PURE__*/_react.default.createElement(ImageViewerV2, (0, _extends2.default)({
|
|
215
|
+
onLoad: onSuccess,
|
|
216
|
+
onError: onLoadFail,
|
|
217
|
+
contextId: contextId,
|
|
218
|
+
traceContext: traceContext.current
|
|
219
|
+
}, viewerProps));
|
|
220
|
+
case 'audio':
|
|
221
|
+
return /*#__PURE__*/_react.default.createElement(AudioViewerV2, (0, _extends2.default)({
|
|
222
|
+
showControls: showControls,
|
|
223
|
+
onCanPlay: onSuccess,
|
|
224
|
+
onError: onLoadFail
|
|
225
|
+
}, viewerProps));
|
|
226
|
+
case 'video':
|
|
227
|
+
return /*#__PURE__*/_react.default.createElement(VideoViewerV2, (0, _extends2.default)({
|
|
228
|
+
showControls: showControls,
|
|
229
|
+
onCanPlay: onSuccess,
|
|
230
|
+
onError: onLoadFail
|
|
231
|
+
}, viewerProps));
|
|
232
|
+
case 'doc':
|
|
233
|
+
return /*#__PURE__*/_react.default.createElement(DocViewerV2, (0, _extends2.default)({
|
|
234
|
+
onSuccess: onSuccess,
|
|
235
|
+
onError: function onError(err) {
|
|
236
|
+
onLoadFail(err, fileState);
|
|
237
|
+
}
|
|
238
|
+
}, viewerProps));
|
|
239
|
+
case 'archive':
|
|
240
|
+
return /*#__PURE__*/_react.default.createElement(_archiveViewerLoader.default, (0, _extends2.default)({
|
|
241
|
+
onSuccess: onSuccess,
|
|
242
|
+
onError: onLoadFail
|
|
243
|
+
}, viewerProps));
|
|
244
|
+
}
|
|
245
|
+
return renderError(new _errors.MediaViewerError('unsupported'), fileItem);
|
|
246
|
+
};
|
|
187
247
|
var renderError = (0, _react.useCallback)(function (error, fileItem) {
|
|
188
248
|
if (fileItem) {
|
|
189
249
|
var _fileState;
|
|
@@ -241,63 +301,11 @@ var ItemViewerV2Base = exports.ItemViewerV2Base = function ItemViewerV2Base(_ref
|
|
|
241
301
|
case 'processed':
|
|
242
302
|
case 'uploading':
|
|
243
303
|
case 'processing':
|
|
244
|
-
|
|
245
|
-
var collectionName = (0, _mediaClient.isFileIdentifier)(identifier) ? identifier.collectionName : undefined;
|
|
246
|
-
var viewerProps = {
|
|
247
|
-
mediaClient: mediaClient,
|
|
248
|
-
item: fileItem,
|
|
249
|
-
collectionName: collectionName,
|
|
250
|
-
onClose: onClose,
|
|
251
|
-
previewCount: previewCount
|
|
252
|
-
};
|
|
253
|
-
|
|
254
|
-
// TODO: fix all of the item errors
|
|
255
|
-
|
|
256
|
-
if ((0, _codeViewer.isCodeViewerItem)(fileItem.name, fileItem.mimeType)) {
|
|
257
|
-
//Render error message if code file has size over 10MB.
|
|
258
|
-
//Required by https://product-fabric.atlassian.net/browse/MEX-1788
|
|
259
|
-
if (fileItem.size > MAX_FILE_SIZE_SUPPORTED_BY_CODEVIEWER) {
|
|
260
|
-
return renderError(new _errors.MediaViewerError('codeviewer-file-size-exceeds'), fileItem);
|
|
261
|
-
}
|
|
262
|
-
return /*#__PURE__*/_react.default.createElement(CodeViewerV2, (0, _extends2.default)({
|
|
263
|
-
onSuccess: onSuccess,
|
|
264
|
-
onError: onLoadFail
|
|
265
|
-
}, viewerProps));
|
|
266
|
-
}
|
|
267
|
-
var mediaType = fileItem.mediaType;
|
|
268
|
-
switch (mediaType) {
|
|
269
|
-
case 'image':
|
|
270
|
-
return /*#__PURE__*/_react.default.createElement(ImageViewerV2, (0, _extends2.default)({
|
|
271
|
-
onLoad: onSuccess,
|
|
272
|
-
onError: onLoadFail,
|
|
273
|
-
contextId: contextId,
|
|
274
|
-
traceContext: traceContext.current
|
|
275
|
-
}, viewerProps));
|
|
276
|
-
case 'audio':
|
|
277
|
-
return /*#__PURE__*/_react.default.createElement(AudioViewerV2, (0, _extends2.default)({
|
|
278
|
-
showControls: showControls,
|
|
279
|
-
onCanPlay: onSuccess,
|
|
280
|
-
onError: onLoadFail
|
|
281
|
-
}, viewerProps));
|
|
282
|
-
case 'video':
|
|
283
|
-
return /*#__PURE__*/_react.default.createElement(VideoViewerV2, (0, _extends2.default)({
|
|
284
|
-
showControls: showControls,
|
|
285
|
-
onCanPlay: onSuccess,
|
|
286
|
-
onError: onLoadFail
|
|
287
|
-
}, viewerProps));
|
|
288
|
-
case 'doc':
|
|
289
|
-
return /*#__PURE__*/_react.default.createElement(DocViewerV2, (0, _extends2.default)({
|
|
290
|
-
onSuccess: onSuccess,
|
|
291
|
-
onError: onLoadFail
|
|
292
|
-
}, viewerProps));
|
|
293
|
-
case 'archive':
|
|
294
|
-
return /*#__PURE__*/_react.default.createElement(_archiveViewerLoader.default, (0, _extends2.default)({
|
|
295
|
-
onSuccess: onSuccess,
|
|
296
|
-
onError: onLoadFail
|
|
297
|
-
}, viewerProps));
|
|
298
|
-
}
|
|
299
|
-
return renderError(new _errors.MediaViewerError('unsupported'), fileItem);
|
|
304
|
+
return renderItem(fileItem);
|
|
300
305
|
case 'failed-processing':
|
|
306
|
+
if ((0, _platformFeatureFlags.getBooleanFF)('platform.corex.password-protected-pdf_ht8re') && fileItem.mediaType === 'doc' && fileItem.mimeType === 'application/pdf') {
|
|
307
|
+
return renderItem(fileItem);
|
|
308
|
+
}
|
|
301
309
|
return renderError(new _errors.MediaViewerError('itemviewer-file-failed-processing-status'), fileItem);
|
|
302
310
|
case 'error':
|
|
303
311
|
return renderError(new _errors.MediaViewerError('itemviewer-file-error-status'), fileItem);
|
|
@@ -102,14 +102,14 @@ var PDFPasswordInput = exports.PDFPasswordInput = function PDFPasswordInput(_ref
|
|
|
102
102
|
"aria-label": intl.formatMessage(_mediaUi.messages.password),
|
|
103
103
|
placeholder: intl.formatMessage(_mediaUi.messages.enter_password),
|
|
104
104
|
ref: passwordInputRef,
|
|
105
|
+
"aria-describedby": formError ? "".concat(fieldProps.id, "-error") : undefined,
|
|
105
106
|
onChange: function onChange(value) {
|
|
106
107
|
fieldProps.onChange(value);
|
|
107
108
|
setFormError(false);
|
|
108
109
|
}
|
|
109
110
|
})), formError && (0, _react2.jsx)("div", {
|
|
110
111
|
css: errorMessageWrapperStyle,
|
|
111
|
-
id: "".concat(fieldProps.id, "-error")
|
|
112
|
-
"aria-live": "polite"
|
|
112
|
+
id: "".concat(fieldProps.id, "-error")
|
|
113
113
|
}, (0, _react2.jsx)(_error.default, {
|
|
114
114
|
size: "small",
|
|
115
115
|
label: ""
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ANALYTICS_MEDIA_CHANNEL } from '@atlaskit/media-common';
|
|
2
2
|
const componentName = 'mediaViewer';
|
|
3
3
|
const packageName = "@atlaskit/media-viewer";
|
|
4
|
-
const packageVersion = "48.3.
|
|
4
|
+
const packageVersion = "48.3.5";
|
|
5
5
|
export { packageName, packageVersion, componentName, componentName as component };
|
|
6
6
|
export function getFileAttributes(fileState) {
|
|
7
7
|
if (!fileState) {
|
|
@@ -2,7 +2,7 @@ import { UFOExperience, ExperiencePerformanceTypes, ExperienceTypes } from '@atl
|
|
|
2
2
|
import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
|
|
3
3
|
import { getFeatureFlagKeysAllProducts } from '@atlaskit/media-common';
|
|
4
4
|
const packageName = "@atlaskit/media-viewer";
|
|
5
|
-
const packageVersion = "48.3.
|
|
5
|
+
const packageVersion = "48.3.5";
|
|
6
6
|
let ufoExperience;
|
|
7
7
|
const getExperience = () => {
|
|
8
8
|
if (!ufoExperience) {
|
|
@@ -5,6 +5,7 @@ import { isExternalImageIdentifier, isFileIdentifier } from '@atlaskit/media-cli
|
|
|
5
5
|
import { FormattedMessage } from 'react-intl-next';
|
|
6
6
|
import { messages } from '@atlaskit/media-ui';
|
|
7
7
|
import { isCodeViewerItem } from '@atlaskit/media-ui/codeViewer';
|
|
8
|
+
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
8
9
|
import { useFileState, useMediaClient, MediaFileStateError } from '@atlaskit/media-client-react';
|
|
9
10
|
import { Outcome } from '../domain';
|
|
10
11
|
import { Spinner } from '../loading';
|
|
@@ -127,9 +128,70 @@ export const ItemViewerV2Base = ({
|
|
|
127
128
|
}
|
|
128
129
|
});
|
|
129
130
|
}, [item]);
|
|
130
|
-
const onLoadFail = useCallback(mediaViewerError => {
|
|
131
|
-
setItem(Outcome.failed(mediaViewerError));
|
|
131
|
+
const onLoadFail = useCallback((mediaViewerError, data) => {
|
|
132
|
+
setItem(Outcome.failed(mediaViewerError, data));
|
|
132
133
|
}, []);
|
|
134
|
+
const renderItem = fileItem => {
|
|
135
|
+
const collectionName = isFileIdentifier(identifier) ? identifier.collectionName : undefined;
|
|
136
|
+
const viewerProps = {
|
|
137
|
+
mediaClient,
|
|
138
|
+
item: fileItem,
|
|
139
|
+
collectionName,
|
|
140
|
+
onClose,
|
|
141
|
+
previewCount
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
// TODO: fix all of the item errors
|
|
145
|
+
|
|
146
|
+
if (isCodeViewerItem(fileItem.name, fileItem.mimeType)) {
|
|
147
|
+
//Render error message if code file has size over 10MB.
|
|
148
|
+
//Required by https://product-fabric.atlassian.net/browse/MEX-1788
|
|
149
|
+
if (fileItem.size > MAX_FILE_SIZE_SUPPORTED_BY_CODEVIEWER) {
|
|
150
|
+
return renderError(new MediaViewerError('codeviewer-file-size-exceeds'), fileItem);
|
|
151
|
+
}
|
|
152
|
+
return /*#__PURE__*/React.createElement(CodeViewerV2, _extends({
|
|
153
|
+
onSuccess: onSuccess,
|
|
154
|
+
onError: onLoadFail
|
|
155
|
+
}, viewerProps));
|
|
156
|
+
}
|
|
157
|
+
const {
|
|
158
|
+
mediaType
|
|
159
|
+
} = fileItem;
|
|
160
|
+
switch (mediaType) {
|
|
161
|
+
case 'image':
|
|
162
|
+
return /*#__PURE__*/React.createElement(ImageViewerV2, _extends({
|
|
163
|
+
onLoad: onSuccess,
|
|
164
|
+
onError: onLoadFail,
|
|
165
|
+
contextId: contextId,
|
|
166
|
+
traceContext: traceContext.current
|
|
167
|
+
}, viewerProps));
|
|
168
|
+
case 'audio':
|
|
169
|
+
return /*#__PURE__*/React.createElement(AudioViewerV2, _extends({
|
|
170
|
+
showControls: showControls,
|
|
171
|
+
onCanPlay: onSuccess,
|
|
172
|
+
onError: onLoadFail
|
|
173
|
+
}, viewerProps));
|
|
174
|
+
case 'video':
|
|
175
|
+
return /*#__PURE__*/React.createElement(VideoViewerV2, _extends({
|
|
176
|
+
showControls: showControls,
|
|
177
|
+
onCanPlay: onSuccess,
|
|
178
|
+
onError: onLoadFail
|
|
179
|
+
}, viewerProps));
|
|
180
|
+
case 'doc':
|
|
181
|
+
return /*#__PURE__*/React.createElement(DocViewerV2, _extends({
|
|
182
|
+
onSuccess: onSuccess,
|
|
183
|
+
onError: err => {
|
|
184
|
+
onLoadFail(err, fileState);
|
|
185
|
+
}
|
|
186
|
+
}, viewerProps));
|
|
187
|
+
case 'archive':
|
|
188
|
+
return /*#__PURE__*/React.createElement(ArchiveViewerLoader, _extends({
|
|
189
|
+
onSuccess: onSuccess,
|
|
190
|
+
onError: onLoadFail
|
|
191
|
+
}, viewerProps));
|
|
192
|
+
}
|
|
193
|
+
return renderError(new MediaViewerError('unsupported'), fileItem);
|
|
194
|
+
};
|
|
133
195
|
const renderError = useCallback((error, fileItem) => {
|
|
134
196
|
if (fileItem) {
|
|
135
197
|
let fileState;
|
|
@@ -188,65 +250,11 @@ export const ItemViewerV2Base = ({
|
|
|
188
250
|
case 'processed':
|
|
189
251
|
case 'uploading':
|
|
190
252
|
case 'processing':
|
|
191
|
-
|
|
192
|
-
const collectionName = isFileIdentifier(identifier) ? identifier.collectionName : undefined;
|
|
193
|
-
const viewerProps = {
|
|
194
|
-
mediaClient,
|
|
195
|
-
item: fileItem,
|
|
196
|
-
collectionName,
|
|
197
|
-
onClose,
|
|
198
|
-
previewCount
|
|
199
|
-
};
|
|
200
|
-
|
|
201
|
-
// TODO: fix all of the item errors
|
|
202
|
-
|
|
203
|
-
if (isCodeViewerItem(fileItem.name, fileItem.mimeType)) {
|
|
204
|
-
//Render error message if code file has size over 10MB.
|
|
205
|
-
//Required by https://product-fabric.atlassian.net/browse/MEX-1788
|
|
206
|
-
if (fileItem.size > MAX_FILE_SIZE_SUPPORTED_BY_CODEVIEWER) {
|
|
207
|
-
return renderError(new MediaViewerError('codeviewer-file-size-exceeds'), fileItem);
|
|
208
|
-
}
|
|
209
|
-
return /*#__PURE__*/React.createElement(CodeViewerV2, _extends({
|
|
210
|
-
onSuccess: onSuccess,
|
|
211
|
-
onError: onLoadFail
|
|
212
|
-
}, viewerProps));
|
|
213
|
-
}
|
|
214
|
-
const {
|
|
215
|
-
mediaType
|
|
216
|
-
} = fileItem;
|
|
217
|
-
switch (mediaType) {
|
|
218
|
-
case 'image':
|
|
219
|
-
return /*#__PURE__*/React.createElement(ImageViewerV2, _extends({
|
|
220
|
-
onLoad: onSuccess,
|
|
221
|
-
onError: onLoadFail,
|
|
222
|
-
contextId: contextId,
|
|
223
|
-
traceContext: traceContext.current
|
|
224
|
-
}, viewerProps));
|
|
225
|
-
case 'audio':
|
|
226
|
-
return /*#__PURE__*/React.createElement(AudioViewerV2, _extends({
|
|
227
|
-
showControls: showControls,
|
|
228
|
-
onCanPlay: onSuccess,
|
|
229
|
-
onError: onLoadFail
|
|
230
|
-
}, viewerProps));
|
|
231
|
-
case 'video':
|
|
232
|
-
return /*#__PURE__*/React.createElement(VideoViewerV2, _extends({
|
|
233
|
-
showControls: showControls,
|
|
234
|
-
onCanPlay: onSuccess,
|
|
235
|
-
onError: onLoadFail
|
|
236
|
-
}, viewerProps));
|
|
237
|
-
case 'doc':
|
|
238
|
-
return /*#__PURE__*/React.createElement(DocViewerV2, _extends({
|
|
239
|
-
onSuccess: onSuccess,
|
|
240
|
-
onError: onLoadFail
|
|
241
|
-
}, viewerProps));
|
|
242
|
-
case 'archive':
|
|
243
|
-
return /*#__PURE__*/React.createElement(ArchiveViewerLoader, _extends({
|
|
244
|
-
onSuccess: onSuccess,
|
|
245
|
-
onError: onLoadFail
|
|
246
|
-
}, viewerProps));
|
|
247
|
-
}
|
|
248
|
-
return renderError(new MediaViewerError('unsupported'), fileItem);
|
|
253
|
+
return renderItem(fileItem);
|
|
249
254
|
case 'failed-processing':
|
|
255
|
+
if (getBooleanFF('platform.corex.password-protected-pdf_ht8re') && fileItem.mediaType === 'doc' && fileItem.mimeType === 'application/pdf') {
|
|
256
|
+
return renderItem(fileItem);
|
|
257
|
+
}
|
|
250
258
|
return renderError(new MediaViewerError('itemviewer-file-failed-processing-status'), fileItem);
|
|
251
259
|
case 'error':
|
|
252
260
|
return renderError(new MediaViewerError('itemviewer-file-error-status'), fileItem);
|
|
@@ -88,14 +88,14 @@ export const PDFPasswordInput = ({
|
|
|
88
88
|
"aria-label": intl.formatMessage(messages.password),
|
|
89
89
|
placeholder: intl.formatMessage(messages.enter_password),
|
|
90
90
|
ref: passwordInputRef,
|
|
91
|
+
"aria-describedby": formError ? `${fieldProps.id}-error` : undefined,
|
|
91
92
|
onChange: value => {
|
|
92
93
|
fieldProps.onChange(value);
|
|
93
94
|
setFormError(false);
|
|
94
95
|
}
|
|
95
96
|
})), formError && jsx("div", {
|
|
96
97
|
css: errorMessageWrapperStyle,
|
|
97
|
-
id: `${fieldProps.id}-error
|
|
98
|
-
"aria-live": "polite"
|
|
98
|
+
id: `${fieldProps.id}-error`
|
|
99
99
|
}, jsx(ErrorIcon, {
|
|
100
100
|
size: "small",
|
|
101
101
|
label: ""
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ANALYTICS_MEDIA_CHANNEL } from '@atlaskit/media-common';
|
|
2
2
|
var componentName = 'mediaViewer';
|
|
3
3
|
var packageName = "@atlaskit/media-viewer";
|
|
4
|
-
var packageVersion = "48.3.
|
|
4
|
+
var packageVersion = "48.3.5";
|
|
5
5
|
export { packageName, packageVersion, componentName, componentName as component };
|
|
6
6
|
export function getFileAttributes(fileState) {
|
|
7
7
|
if (!fileState) {
|
|
@@ -5,7 +5,7 @@ import { UFOExperience, ExperiencePerformanceTypes, ExperienceTypes } from '@atl
|
|
|
5
5
|
import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
|
|
6
6
|
import { getFeatureFlagKeysAllProducts } from '@atlaskit/media-common';
|
|
7
7
|
var packageName = "@atlaskit/media-viewer";
|
|
8
|
-
var packageVersion = "48.3.
|
|
8
|
+
var packageVersion = "48.3.5";
|
|
9
9
|
var ufoExperience;
|
|
10
10
|
var getExperience = function getExperience() {
|
|
11
11
|
if (!ufoExperience) {
|
|
@@ -6,6 +6,7 @@ import { isExternalImageIdentifier, isFileIdentifier } from '@atlaskit/media-cli
|
|
|
6
6
|
import { FormattedMessage } from 'react-intl-next';
|
|
7
7
|
import { messages } from '@atlaskit/media-ui';
|
|
8
8
|
import { isCodeViewerItem } from '@atlaskit/media-ui/codeViewer';
|
|
9
|
+
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
9
10
|
import { useFileState, useMediaClient, MediaFileStateError } from '@atlaskit/media-client-react';
|
|
10
11
|
import { Outcome } from '../domain';
|
|
11
12
|
import { Spinner } from '../loading';
|
|
@@ -161,9 +162,68 @@ export var ItemViewerV2Base = function ItemViewerV2Base(_ref) {
|
|
|
161
162
|
}
|
|
162
163
|
});
|
|
163
164
|
}, [item]);
|
|
164
|
-
var onLoadFail = useCallback(function (mediaViewerError) {
|
|
165
|
-
setItem(Outcome.failed(mediaViewerError));
|
|
165
|
+
var onLoadFail = useCallback(function (mediaViewerError, data) {
|
|
166
|
+
setItem(Outcome.failed(mediaViewerError, data));
|
|
166
167
|
}, []);
|
|
168
|
+
var renderItem = function renderItem(fileItem) {
|
|
169
|
+
var collectionName = isFileIdentifier(identifier) ? identifier.collectionName : undefined;
|
|
170
|
+
var viewerProps = {
|
|
171
|
+
mediaClient: mediaClient,
|
|
172
|
+
item: fileItem,
|
|
173
|
+
collectionName: collectionName,
|
|
174
|
+
onClose: onClose,
|
|
175
|
+
previewCount: previewCount
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
// TODO: fix all of the item errors
|
|
179
|
+
|
|
180
|
+
if (isCodeViewerItem(fileItem.name, fileItem.mimeType)) {
|
|
181
|
+
//Render error message if code file has size over 10MB.
|
|
182
|
+
//Required by https://product-fabric.atlassian.net/browse/MEX-1788
|
|
183
|
+
if (fileItem.size > MAX_FILE_SIZE_SUPPORTED_BY_CODEVIEWER) {
|
|
184
|
+
return renderError(new MediaViewerError('codeviewer-file-size-exceeds'), fileItem);
|
|
185
|
+
}
|
|
186
|
+
return /*#__PURE__*/React.createElement(CodeViewerV2, _extends({
|
|
187
|
+
onSuccess: onSuccess,
|
|
188
|
+
onError: onLoadFail
|
|
189
|
+
}, viewerProps));
|
|
190
|
+
}
|
|
191
|
+
var mediaType = fileItem.mediaType;
|
|
192
|
+
switch (mediaType) {
|
|
193
|
+
case 'image':
|
|
194
|
+
return /*#__PURE__*/React.createElement(ImageViewerV2, _extends({
|
|
195
|
+
onLoad: onSuccess,
|
|
196
|
+
onError: onLoadFail,
|
|
197
|
+
contextId: contextId,
|
|
198
|
+
traceContext: traceContext.current
|
|
199
|
+
}, viewerProps));
|
|
200
|
+
case 'audio':
|
|
201
|
+
return /*#__PURE__*/React.createElement(AudioViewerV2, _extends({
|
|
202
|
+
showControls: showControls,
|
|
203
|
+
onCanPlay: onSuccess,
|
|
204
|
+
onError: onLoadFail
|
|
205
|
+
}, viewerProps));
|
|
206
|
+
case 'video':
|
|
207
|
+
return /*#__PURE__*/React.createElement(VideoViewerV2, _extends({
|
|
208
|
+
showControls: showControls,
|
|
209
|
+
onCanPlay: onSuccess,
|
|
210
|
+
onError: onLoadFail
|
|
211
|
+
}, viewerProps));
|
|
212
|
+
case 'doc':
|
|
213
|
+
return /*#__PURE__*/React.createElement(DocViewerV2, _extends({
|
|
214
|
+
onSuccess: onSuccess,
|
|
215
|
+
onError: function onError(err) {
|
|
216
|
+
onLoadFail(err, fileState);
|
|
217
|
+
}
|
|
218
|
+
}, viewerProps));
|
|
219
|
+
case 'archive':
|
|
220
|
+
return /*#__PURE__*/React.createElement(ArchiveViewerLoader, _extends({
|
|
221
|
+
onSuccess: onSuccess,
|
|
222
|
+
onError: onLoadFail
|
|
223
|
+
}, viewerProps));
|
|
224
|
+
}
|
|
225
|
+
return renderError(new MediaViewerError('unsupported'), fileItem);
|
|
226
|
+
};
|
|
167
227
|
var renderError = useCallback(function (error, fileItem) {
|
|
168
228
|
if (fileItem) {
|
|
169
229
|
var _fileState;
|
|
@@ -221,63 +281,11 @@ export var ItemViewerV2Base = function ItemViewerV2Base(_ref) {
|
|
|
221
281
|
case 'processed':
|
|
222
282
|
case 'uploading':
|
|
223
283
|
case 'processing':
|
|
224
|
-
|
|
225
|
-
var collectionName = isFileIdentifier(identifier) ? identifier.collectionName : undefined;
|
|
226
|
-
var viewerProps = {
|
|
227
|
-
mediaClient: mediaClient,
|
|
228
|
-
item: fileItem,
|
|
229
|
-
collectionName: collectionName,
|
|
230
|
-
onClose: onClose,
|
|
231
|
-
previewCount: previewCount
|
|
232
|
-
};
|
|
233
|
-
|
|
234
|
-
// TODO: fix all of the item errors
|
|
235
|
-
|
|
236
|
-
if (isCodeViewerItem(fileItem.name, fileItem.mimeType)) {
|
|
237
|
-
//Render error message if code file has size over 10MB.
|
|
238
|
-
//Required by https://product-fabric.atlassian.net/browse/MEX-1788
|
|
239
|
-
if (fileItem.size > MAX_FILE_SIZE_SUPPORTED_BY_CODEVIEWER) {
|
|
240
|
-
return renderError(new MediaViewerError('codeviewer-file-size-exceeds'), fileItem);
|
|
241
|
-
}
|
|
242
|
-
return /*#__PURE__*/React.createElement(CodeViewerV2, _extends({
|
|
243
|
-
onSuccess: onSuccess,
|
|
244
|
-
onError: onLoadFail
|
|
245
|
-
}, viewerProps));
|
|
246
|
-
}
|
|
247
|
-
var mediaType = fileItem.mediaType;
|
|
248
|
-
switch (mediaType) {
|
|
249
|
-
case 'image':
|
|
250
|
-
return /*#__PURE__*/React.createElement(ImageViewerV2, _extends({
|
|
251
|
-
onLoad: onSuccess,
|
|
252
|
-
onError: onLoadFail,
|
|
253
|
-
contextId: contextId,
|
|
254
|
-
traceContext: traceContext.current
|
|
255
|
-
}, viewerProps));
|
|
256
|
-
case 'audio':
|
|
257
|
-
return /*#__PURE__*/React.createElement(AudioViewerV2, _extends({
|
|
258
|
-
showControls: showControls,
|
|
259
|
-
onCanPlay: onSuccess,
|
|
260
|
-
onError: onLoadFail
|
|
261
|
-
}, viewerProps));
|
|
262
|
-
case 'video':
|
|
263
|
-
return /*#__PURE__*/React.createElement(VideoViewerV2, _extends({
|
|
264
|
-
showControls: showControls,
|
|
265
|
-
onCanPlay: onSuccess,
|
|
266
|
-
onError: onLoadFail
|
|
267
|
-
}, viewerProps));
|
|
268
|
-
case 'doc':
|
|
269
|
-
return /*#__PURE__*/React.createElement(DocViewerV2, _extends({
|
|
270
|
-
onSuccess: onSuccess,
|
|
271
|
-
onError: onLoadFail
|
|
272
|
-
}, viewerProps));
|
|
273
|
-
case 'archive':
|
|
274
|
-
return /*#__PURE__*/React.createElement(ArchiveViewerLoader, _extends({
|
|
275
|
-
onSuccess: onSuccess,
|
|
276
|
-
onError: onLoadFail
|
|
277
|
-
}, viewerProps));
|
|
278
|
-
}
|
|
279
|
-
return renderError(new MediaViewerError('unsupported'), fileItem);
|
|
284
|
+
return renderItem(fileItem);
|
|
280
285
|
case 'failed-processing':
|
|
286
|
+
if (getBooleanFF('platform.corex.password-protected-pdf_ht8re') && fileItem.mediaType === 'doc' && fileItem.mimeType === 'application/pdf') {
|
|
287
|
+
return renderItem(fileItem);
|
|
288
|
+
}
|
|
281
289
|
return renderError(new MediaViewerError('itemviewer-file-failed-processing-status'), fileItem);
|
|
282
290
|
case 'error':
|
|
283
291
|
return renderError(new MediaViewerError('itemviewer-file-error-status'), fileItem);
|
|
@@ -91,14 +91,14 @@ export var PDFPasswordInput = function PDFPasswordInput(_ref) {
|
|
|
91
91
|
"aria-label": intl.formatMessage(messages.password),
|
|
92
92
|
placeholder: intl.formatMessage(messages.enter_password),
|
|
93
93
|
ref: passwordInputRef,
|
|
94
|
+
"aria-describedby": formError ? "".concat(fieldProps.id, "-error") : undefined,
|
|
94
95
|
onChange: function onChange(value) {
|
|
95
96
|
fieldProps.onChange(value);
|
|
96
97
|
setFormError(false);
|
|
97
98
|
}
|
|
98
99
|
})), formError && jsx("div", {
|
|
99
100
|
css: errorMessageWrapperStyle,
|
|
100
|
-
id: "".concat(fieldProps.id, "-error")
|
|
101
|
-
"aria-live": "polite"
|
|
101
|
+
id: "".concat(fieldProps.id, "-error")
|
|
102
102
|
}, jsx(ErrorIcon, {
|
|
103
103
|
size: "small",
|
|
104
104
|
label: ""
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/media-viewer",
|
|
3
|
-
"version": "48.3.
|
|
3
|
+
"version": "48.3.5",
|
|
4
4
|
"description": "MediaViewer is Atlassian's powerful solution for viewing files on the web. It's both powerful and extendable yet easy-to-integrate",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@atlaskit/analytics-next": "^9.2.0",
|
|
39
|
-
"@atlaskit/button": "^17.
|
|
39
|
+
"@atlaskit/button": "^17.7.0",
|
|
40
40
|
"@atlaskit/code": "^15.1.0",
|
|
41
41
|
"@atlaskit/form": "^9.0.3",
|
|
42
42
|
"@atlaskit/icon": "^22.1.0",
|