@atlaskit/media-client 14.3.2 → 15.1.0
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 +111 -0
- package/dist/cjs/client/collection-fetcher.js +5 -3
- package/dist/cjs/client/file-fetcher/index.js +17 -15
- package/dist/cjs/client/media-store/index.js +2 -2
- package/dist/cjs/index.js +12 -11
- package/dist/cjs/models/errors/index.js +3 -1
- package/dist/cjs/models/file-state.js +2 -2
- package/dist/cjs/models/media-subscribable.js +5 -0
- package/dist/cjs/utils/{createFileStateSubject.js → createMediaSubject.js} +3 -5
- package/dist/cjs/utils/{observableToPromise.js → mediaSubscribableToPromise.js} +6 -7
- package/dist/cjs/utils/mobileUpload/helpers.js +2 -2
- package/dist/cjs/utils/mobileUpload/stateMachine/states/uploading.js +2 -2
- package/dist/cjs/utils/polling/index.js +2 -2
- package/dist/cjs/utils/request/helpers.js +2 -2
- package/dist/cjs/utils/toMediaSubscribable.js +28 -0
- package/dist/cjs/utils/url.js +2 -2
- package/dist/cjs/utils/with-media-client-hoc.js +3 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/client/collection-fetcher.js +2 -1
- package/dist/es2019/client/file-fetcher/index.js +13 -12
- package/dist/es2019/index.js +3 -2
- package/dist/es2019/models/media-subscribable.js +1 -0
- package/dist/es2019/utils/{createFileStateSubject.js → createMediaSubject.js} +2 -2
- package/dist/es2019/utils/mediaSubscribableToPromise.js +20 -0
- package/dist/es2019/utils/mobileUpload/helpers.js +2 -2
- package/dist/es2019/utils/toMediaSubscribable.js +18 -0
- package/dist/es2019/version.json +1 -1
- package/dist/esm/client/collection-fetcher.js +4 -3
- package/dist/esm/client/file-fetcher/index.js +16 -15
- package/dist/esm/client/media-store/index.js +2 -2
- package/dist/esm/index.js +3 -2
- package/dist/esm/models/errors/index.js +2 -1
- package/dist/esm/models/file-state.js +2 -2
- package/dist/esm/models/media-subscribable.js +1 -0
- package/dist/esm/utils/{createFileStateSubject.js → createMediaSubject.js} +2 -2
- package/dist/esm/utils/{observableToPromise.js → mediaSubscribableToPromise.js} +5 -6
- package/dist/esm/utils/mobileUpload/helpers.js +2 -2
- package/dist/esm/utils/mobileUpload/stateMachine/states/uploading.js +2 -2
- package/dist/esm/utils/polling/index.js +2 -2
- package/dist/esm/utils/request/helpers.js +2 -2
- package/dist/esm/utils/toMediaSubscribable.js +18 -0
- package/dist/esm/utils/url.js +2 -2
- package/dist/esm/utils/with-media-client-hoc.js +2 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/client/collection-fetcher.d.ts +2 -1
- package/dist/types/client/file-fetcher/index.d.ts +5 -5
- package/dist/types/client/media-store/resolveAuth.d.ts +1 -1
- package/dist/types/globalMediaEventEmitter.d.ts +3 -3
- package/dist/types/index.d.ts +5 -3
- package/dist/types/models/file-state.d.ts +1 -1
- package/dist/types/models/media-subscribable.d.ts +3 -0
- package/dist/types/utils/createMediaSubject.d.ts +3 -0
- package/dist/types/utils/imageResizeModeToFileImageMode.d.ts +1 -1
- package/dist/types/utils/mediaSubscribableToPromise.d.ts +10 -0
- package/dist/types/utils/overrideMediaTypeIfUnknown.d.ts +2 -2
- package/dist/types/utils/request/errors.d.ts +1 -1
- package/dist/types/utils/safeUnsubscribe.d.ts +2 -2
- package/dist/types/utils/toMediaSubscribable.d.ts +20 -0
- package/package.json +11 -13
- package/dist/es2019/utils/observableToPromise.js +0 -21
- package/dist/types/utils/createFileStateSubject.d.ts +0 -3
- package/dist/types/utils/observableToPromise.d.ts +0 -10
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,116 @@
|
|
|
1
1
|
# @atlaskit/media-client
|
|
2
2
|
|
|
3
|
+
## 15.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`cb2392f6d33`](https://bitbucket.org/atlassian/atlassian-frontend/commits/cb2392f6d33) - Export `WithMediaClient` type to resolve a deep import path d.ts reference
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- [`cb2392f6d33`](https://bitbucket.org/atlassian/atlassian-frontend/commits/cb2392f6d33) - Upgrade to TypeScript 4.2.4
|
|
12
|
+
- Updated dependencies
|
|
13
|
+
|
|
14
|
+
## 15.0.0
|
|
15
|
+
|
|
16
|
+
### Major Changes
|
|
17
|
+
|
|
18
|
+
- [`fdc41ee7a0b`](https://bitbucket.org/atlassian/atlassian-frontend/commits/fdc41ee7a0b) - Stop exposing observableToPromise from media client API.
|
|
19
|
+
mediaSubscribableToPromise is used internally.
|
|
20
|
+
- [`118f3af101f`](https://bitbucket.org/atlassian/atlassian-frontend/commits/118f3af101f) - Media Client APIs has been updated to use MediaSubscribable which provides subscription functionality (similar to RxJs observables).
|
|
21
|
+
It exposes subscribe method that is called with MediaObserver as an argument and returns MediaSubscription.
|
|
22
|
+
MediaSubscription exposes unsubscribe method.
|
|
23
|
+
|
|
24
|
+
getFileState:
|
|
25
|
+
The returned type of this function has changed from RxJs ReplaySubject to MediaSubscribable.
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
import { MediaClient, MediaObserver, MediaSubscribable, MediaSubscription } from '@atlaskit/media-client';
|
|
29
|
+
|
|
30
|
+
const mediaClient = new MediaClient({ authProvider });
|
|
31
|
+
|
|
32
|
+
const fileStateSubscribable: MediaSubscribable<FileState> = mediaClient.file.getFileState(id);
|
|
33
|
+
|
|
34
|
+
const mediaObserver: MediaObserver<FileState> = {
|
|
35
|
+
next: (fileState) => {
|
|
36
|
+
nextCallback(fileState)
|
|
37
|
+
},
|
|
38
|
+
error: (error) => {
|
|
39
|
+
errorCallback(error)
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const subscription: MediaSubscription = fileStateSubscribable.subscribe(mediaObserver);
|
|
44
|
+
|
|
45
|
+
subscription.unsubscribe();
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
upload:
|
|
49
|
+
The returned type of this function has changed from RxJs ReplaySubject to MediaSubscribable.
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
import { MediaClient, MediaObserver, MediaSubscribable, MediaSubscription } from '@atlaskit/media-client';
|
|
53
|
+
|
|
54
|
+
const mediaClient = new MediaClient({ authProvider });
|
|
55
|
+
|
|
56
|
+
const uploadFileSubscribable: MediaSubscribable<FileState> = mediaClient.file.upload(uploadableFile);
|
|
57
|
+
|
|
58
|
+
const mediaObserver: MediaObserver<FileState> = {
|
|
59
|
+
next: (fileState) => {
|
|
60
|
+
nextCallback(fileState)
|
|
61
|
+
},
|
|
62
|
+
error: (error) => {
|
|
63
|
+
errorCallback(error)
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
const subscription: MediaSubscription = uploadFileSubscribable.subscribe(mediaObserver);
|
|
68
|
+
|
|
69
|
+
subscription.unsubscribe();
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
getItems:
|
|
73
|
+
The returned type of this function has changed from RxJs ReplaySubject to MediaSubscribable.
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
import { MediaClient, MediaObserver, MediaSubscribable, MediaSubscription } from '@atlaskit/media-client';
|
|
77
|
+
|
|
78
|
+
const mediaClient = new MediaClient({ authProvider });
|
|
79
|
+
|
|
80
|
+
const collectionItemsSubscribable: MediaSubscribable<MediaCollectionItem[]> = mediaClient.collection.getItems(collectionName);
|
|
81
|
+
|
|
82
|
+
const mediaObserver: MediaObserver<MediaCollectionItem[]> = {
|
|
83
|
+
next: (items) => {
|
|
84
|
+
nextCallback(items)
|
|
85
|
+
},
|
|
86
|
+
error: (error) => {
|
|
87
|
+
errorCallback(error)
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
const subscription: MediaSubscription = collectionItemsSubscribable.subscribe(mediaObserver);
|
|
92
|
+
|
|
93
|
+
subscription.unsubscribe();
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### Minor Changes
|
|
97
|
+
|
|
98
|
+
- [`f862d5ae7aa`](https://bitbucket.org/atlassian/atlassian-frontend/commits/f862d5ae7aa) - remove RxJs peer dependency
|
|
99
|
+
|
|
100
|
+
### Patch Changes
|
|
101
|
+
|
|
102
|
+
- Updated dependencies
|
|
103
|
+
|
|
104
|
+
## 14.4.0
|
|
105
|
+
|
|
106
|
+
### Minor Changes
|
|
107
|
+
|
|
108
|
+
- [`7d2943a6038`](https://bitbucket.org/atlassian/atlassian-frontend/commits/7d2943a6038) - Created MediaSubscribable wrapper around RxJs Observable
|
|
109
|
+
|
|
110
|
+
### Patch Changes
|
|
111
|
+
|
|
112
|
+
- Updated dependencies
|
|
113
|
+
|
|
3
114
|
## 14.3.2
|
|
4
115
|
|
|
5
116
|
### Patch Changes
|
|
@@ -25,9 +25,11 @@ var _fileStreamsCache = require("../file-streams-cache");
|
|
|
25
25
|
|
|
26
26
|
var _fileState = require("../models/file-state");
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
var _toMediaSubscribable = require("../utils/toMediaSubscribable");
|
|
29
29
|
|
|
30
|
-
function
|
|
30
|
+
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; }
|
|
31
|
+
|
|
32
|
+
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; }
|
|
31
33
|
|
|
32
34
|
var collectionCache = {};
|
|
33
35
|
exports.collectionCache = collectionCache;
|
|
@@ -114,7 +116,7 @@ var CollectionFetcher = /*#__PURE__*/function () {
|
|
|
114
116
|
}).catch(function (error) {
|
|
115
117
|
return subject.error(error);
|
|
116
118
|
});
|
|
117
|
-
return subject;
|
|
119
|
+
return (0, _toMediaSubscribable.toMediaSubscribable)(subject);
|
|
118
120
|
}
|
|
119
121
|
}, {
|
|
120
122
|
key: "removeFile",
|
|
@@ -69,11 +69,11 @@ var _overrideMediaTypeIfUnknown = require("../../utils/overrideMediaTypeIfUnknow
|
|
|
69
69
|
|
|
70
70
|
var _convertBase64ToBlob = require("../../utils/convertBase64ToBlob");
|
|
71
71
|
|
|
72
|
-
var
|
|
72
|
+
var _mediaSubscribableToPromise = require("../../utils/mediaSubscribableToPromise");
|
|
73
73
|
|
|
74
74
|
var _getDimensionsFromBlob = require("../../utils/getDimensionsFromBlob");
|
|
75
75
|
|
|
76
|
-
var
|
|
76
|
+
var _createMediaSubject = require("../../utils/createMediaSubject");
|
|
77
77
|
|
|
78
78
|
var _mediaTypeUtils = require("@atlaskit/media-common/mediaTypeUtils");
|
|
79
79
|
|
|
@@ -83,9 +83,11 @@ var _polling = require("../../utils/polling");
|
|
|
83
83
|
|
|
84
84
|
var _detectEmptyFile = require("../../utils/detectEmptyFile");
|
|
85
85
|
|
|
86
|
-
|
|
86
|
+
var _toMediaSubscribable = require("../../utils/toMediaSubscribable");
|
|
87
87
|
|
|
88
|
-
function
|
|
88
|
+
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; }
|
|
89
|
+
|
|
90
|
+
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; }
|
|
89
91
|
|
|
90
92
|
var FileFetcherImpl = /*#__PURE__*/function () {
|
|
91
93
|
function FileFetcherImpl(mediaStore) {
|
|
@@ -93,7 +95,7 @@ var FileFetcherImpl = /*#__PURE__*/function () {
|
|
|
93
95
|
|
|
94
96
|
(0, _classCallCheck2.default)(this, FileFetcherImpl);
|
|
95
97
|
(0, _defineProperty2.default)(this, "createDownloadFileStream", function (id, collectionName, occurrenceKey) {
|
|
96
|
-
var subject = (0,
|
|
98
|
+
var subject = (0, _createMediaSubject.createMediaSubject)();
|
|
97
99
|
var poll = new _polling.PollingFunction(); // ensure subject errors if polling exceeds max iterations or uncaught exception in executor
|
|
98
100
|
|
|
99
101
|
poll.onError = function (error) {
|
|
@@ -175,22 +177,22 @@ var FileFetcherImpl = /*#__PURE__*/function () {
|
|
|
175
177
|
occurrenceKey = options.occurrenceKey;
|
|
176
178
|
|
|
177
179
|
if (!(0, _uuidValidate.default)(id)) {
|
|
178
|
-
var subject = (0,
|
|
180
|
+
var subject = (0, _createMediaSubject.createMediaSubject)();
|
|
179
181
|
subject.error(new _error.FileFetcherError('invalidFileId', id, {
|
|
180
182
|
collectionName: collectionName,
|
|
181
183
|
occurrenceKey: occurrenceKey
|
|
182
184
|
}));
|
|
183
|
-
return subject;
|
|
185
|
+
return (0, _toMediaSubscribable.toMediaSubscribable)(subject);
|
|
184
186
|
}
|
|
185
187
|
|
|
186
|
-
return (0, _fileStreamsCache.getFileStreamsCache)().getOrInsert(id, function () {
|
|
188
|
+
return (0, _toMediaSubscribable.toMediaSubscribable)((0, _fileStreamsCache.getFileStreamsCache)().getOrInsert(id, function () {
|
|
187
189
|
return _this2.createDownloadFileStream(id, collectionName);
|
|
188
|
-
});
|
|
190
|
+
}));
|
|
189
191
|
}
|
|
190
192
|
}, {
|
|
191
193
|
key: "getCurrentState",
|
|
192
194
|
value: function getCurrentState(id, options) {
|
|
193
|
-
return (0,
|
|
195
|
+
return (0, _mediaSubscribableToPromise.mediaSubscribableToPromise)(this.getFileState(id, options));
|
|
194
196
|
}
|
|
195
197
|
}, {
|
|
196
198
|
key: "getArtifactURL",
|
|
@@ -246,7 +248,7 @@ var FileFetcherImpl = /*#__PURE__*/function () {
|
|
|
246
248
|
case 0:
|
|
247
249
|
uploadableFileUpfrontIds = this.generateUploadableFileUpfrontIds(collection);
|
|
248
250
|
id = uploadableFileUpfrontIds.id, occurrenceKey = uploadableFileUpfrontIds.occurrenceKey;
|
|
249
|
-
subject = (0,
|
|
251
|
+
subject = (0, _createMediaSubject.createMediaSubject)();
|
|
250
252
|
deferredBlob = fetch(url).then(function (response) {
|
|
251
253
|
return response.blob();
|
|
252
254
|
}).catch(function () {
|
|
@@ -408,7 +410,7 @@ var FileFetcherImpl = /*#__PURE__*/function () {
|
|
|
408
410
|
var preview; // TODO [MSW-796]: get file size for base64
|
|
409
411
|
|
|
410
412
|
var mediaType = (0, _getMediaTypeFromUploadableFile.getMediaTypeFromUploadableFile)(file);
|
|
411
|
-
var subject = (0,
|
|
413
|
+
var subject = (0, _createMediaSubject.createMediaSubject)();
|
|
412
414
|
var processingSubscription = new _Subscription.Subscription();
|
|
413
415
|
|
|
414
416
|
if (content instanceof Blob) {
|
|
@@ -480,7 +482,7 @@ var FileFetcherImpl = /*#__PURE__*/function () {
|
|
|
480
482
|
});
|
|
481
483
|
}
|
|
482
484
|
|
|
483
|
-
return subject;
|
|
485
|
+
return (0, _toMediaSubscribable.toMediaSubscribable)(subject);
|
|
484
486
|
}
|
|
485
487
|
}, {
|
|
486
488
|
key: "downloadBinary",
|
|
@@ -610,7 +612,7 @@ var FileFetcherImpl = /*#__PURE__*/function () {
|
|
|
610
612
|
data: copiedFileWithMimeType
|
|
611
613
|
});
|
|
612
614
|
fileCache = cache.get(copiedId);
|
|
613
|
-
subject = fileCache || (0,
|
|
615
|
+
subject = fileCache || (0, _createMediaSubject.createMediaSubject)(); // if we were passed a "preview", we propagate it into the copiedFileState
|
|
614
616
|
|
|
615
617
|
previewOverride = !(0, _fileState.isErrorFileState)(copiedFileState) && !!preview ? {
|
|
616
618
|
preview: preview
|
|
@@ -678,7 +680,7 @@ var FileFetcherImpl = /*#__PURE__*/function () {
|
|
|
678
680
|
_fileCache.error(_context6.t3);
|
|
679
681
|
} else {
|
|
680
682
|
// Create a new subject with the error state for new subscriptions
|
|
681
|
-
cache.set(id, (0,
|
|
683
|
+
cache.set(id, (0, _createMediaSubject.createMediaSubject)(_context6.t3));
|
|
682
684
|
}
|
|
683
685
|
}
|
|
684
686
|
|
|
@@ -41,9 +41,9 @@ var _resolveAuth = require("./resolveAuth");
|
|
|
41
41
|
|
|
42
42
|
var _error = require("./error");
|
|
43
43
|
|
|
44
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
44
|
+
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; }
|
|
45
45
|
|
|
46
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
46
|
+
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; }
|
|
47
47
|
|
|
48
48
|
var defaultImageOptions = {
|
|
49
49
|
'max-age': _constants.FILE_CACHE_MAX_AGE,
|
package/dist/cjs/index.js
CHANGED
|
@@ -99,10 +99,16 @@ Object.defineProperty(exports, "checkWebpSupport", {
|
|
|
99
99
|
return _checkWebpSupport.checkWebpSupport;
|
|
100
100
|
}
|
|
101
101
|
});
|
|
102
|
-
Object.defineProperty(exports, "
|
|
102
|
+
Object.defineProperty(exports, "createMediaSubject", {
|
|
103
103
|
enumerable: true,
|
|
104
104
|
get: function get() {
|
|
105
|
-
return
|
|
105
|
+
return _createMediaSubject.createMediaSubject;
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
Object.defineProperty(exports, "createMediaSubscribable", {
|
|
109
|
+
enumerable: true,
|
|
110
|
+
get: function get() {
|
|
111
|
+
return _toMediaSubscribable.createMediaSubscribable;
|
|
106
112
|
}
|
|
107
113
|
});
|
|
108
114
|
Object.defineProperty(exports, "createUrl", {
|
|
@@ -328,12 +334,6 @@ Object.defineProperty(exports, "objectToQueryString", {
|
|
|
328
334
|
return _url.objectToQueryString;
|
|
329
335
|
}
|
|
330
336
|
});
|
|
331
|
-
Object.defineProperty(exports, "observableToPromise", {
|
|
332
|
-
enumerable: true,
|
|
333
|
-
get: function get() {
|
|
334
|
-
return _observableToPromise.observableToPromise;
|
|
335
|
-
}
|
|
336
|
-
});
|
|
337
337
|
Object.defineProperty(exports, "request", {
|
|
338
338
|
enumerable: true,
|
|
339
339
|
get: function get() {
|
|
@@ -397,11 +397,9 @@ var _isImageRemote = require("./utils/isImageRemote");
|
|
|
397
397
|
|
|
398
398
|
var _checkWebpSupport = require("./utils/checkWebpSupport");
|
|
399
399
|
|
|
400
|
-
var _observableToPromise = require("./utils/observableToPromise");
|
|
401
|
-
|
|
402
400
|
var _getDimensionsFromBlob = require("./utils/getDimensionsFromBlob");
|
|
403
401
|
|
|
404
|
-
var
|
|
402
|
+
var _createMediaSubject = require("./utils/createMediaSubject");
|
|
405
403
|
|
|
406
404
|
var _safeUnsubscribe = require("./utils/safeUnsubscribe");
|
|
407
405
|
|
|
@@ -413,10 +411,13 @@ var _globalMediaEventEmitter = require("./globalMediaEventEmitter");
|
|
|
413
411
|
|
|
414
412
|
var _url = require("./utils/url");
|
|
415
413
|
|
|
414
|
+
var _toMediaSubscribable = require("./utils/toMediaSubscribable");
|
|
415
|
+
|
|
416
416
|
var _constants = require("./constants");
|
|
417
417
|
|
|
418
418
|
var _mediaTypeUtils = require("@atlaskit/media-common/mediaTypeUtils");
|
|
419
419
|
|
|
420
|
+
// TODO: remove access to media file stream cache https://product-fabric.atlassian.net/browse/MEX-1417
|
|
420
421
|
// TODO MEX-659 Remove these exports when all the usages from media-client are replaced with media-common.
|
|
421
422
|
|
|
422
423
|
/**
|
|
@@ -19,6 +19,8 @@ Object.defineProperty(exports, "isMediaClientError", {
|
|
|
19
19
|
}
|
|
20
20
|
});
|
|
21
21
|
|
|
22
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
23
|
+
|
|
22
24
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
23
25
|
|
|
24
26
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
@@ -61,7 +63,7 @@ var BaseMediaClientError = /*#__PURE__*/function (_Error) {
|
|
|
61
63
|
return _this;
|
|
62
64
|
}
|
|
63
65
|
|
|
64
|
-
return BaseMediaClientError;
|
|
66
|
+
return (0, _createClass2.default)(BaseMediaClientError);
|
|
65
67
|
}( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
|
|
66
68
|
|
|
67
69
|
exports.BaseMediaClientError = BaseMediaClientError;
|
|
@@ -9,9 +9,9 @@ exports.mapMediaItemToFileState = exports.mapMediaFileToFileState = exports.isUp
|
|
|
9
9
|
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
11
|
|
|
12
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
12
|
+
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; }
|
|
13
13
|
|
|
14
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
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; }
|
|
15
15
|
|
|
16
16
|
var isUploadingFileState = function isUploadingFileState(fileState) {
|
|
17
17
|
return fileState.status === 'uploading';
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.createMediaSubject = createMediaSubject;
|
|
7
7
|
|
|
8
8
|
var _ReplaySubject = require("rxjs/ReplaySubject");
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
function createMediaSubject(initialState) {
|
|
11
11
|
var subject = new _ReplaySubject.ReplaySubject(1);
|
|
12
12
|
|
|
13
13
|
if (initialState instanceof Error) {
|
|
@@ -17,6 +17,4 @@ var createFileStateSubject = function createFileStateSubject(initialState) {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
return subject;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
exports.createFileStateSubject = createFileStateSubject;
|
|
20
|
+
}
|
|
@@ -3,21 +3,20 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.mediaSubscribableToPromise = void 0;
|
|
7
7
|
|
|
8
8
|
var _Subscription = require("rxjs/Subscription");
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
* Note that in RxJS 7 ".toPromise()" is deprecated and replaced by "firstValueFrom()/.lastValueFrom()"
|
|
11
|
+
* This is a helper to transform the first value emitted by an MediaSubscribable into a Promise.
|
|
13
12
|
*
|
|
14
|
-
* @param
|
|
13
|
+
* @param mediaSubscribable a given MediaSubscribable<MediaSubscribableItem>
|
|
15
14
|
* @param subscription a default Subscription (this parameter exists for testing purpose)
|
|
16
15
|
*/
|
|
17
|
-
var
|
|
16
|
+
var mediaSubscribableToPromise = function mediaSubscribableToPromise(mediaSubscribable) {
|
|
18
17
|
var subscription = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new _Subscription.Subscription();
|
|
19
18
|
return new Promise(function (resolve, reject) {
|
|
20
|
-
return subscription.add(
|
|
19
|
+
return subscription.add(mediaSubscribable.subscribe({
|
|
21
20
|
next: function next(state) {
|
|
22
21
|
resolve(state);
|
|
23
22
|
subscription.unsubscribe();
|
|
@@ -30,4 +29,4 @@ var observableToPromise = function observableToPromise(observable) {
|
|
|
30
29
|
});
|
|
31
30
|
};
|
|
32
31
|
|
|
33
|
-
exports.
|
|
32
|
+
exports.mediaSubscribableToPromise = mediaSubscribableToPromise;
|
|
@@ -19,7 +19,7 @@ var _map = require("rxjs/operators/map");
|
|
|
19
19
|
|
|
20
20
|
var _fileState = require("../../models/file-state");
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _createMediaSubject = require("../createMediaSubject");
|
|
23
23
|
|
|
24
24
|
var _detectEmptyFile = require("../detectEmptyFile");
|
|
25
25
|
|
|
@@ -38,7 +38,7 @@ var createMobileFileStateSubject = function createMobileFileStateSubject(service
|
|
|
38
38
|
exports.createMobileFileStateSubject = createMobileFileStateSubject;
|
|
39
39
|
|
|
40
40
|
var createMobileDownloadFileStream = function createMobileDownloadFileStream(dataloader, id, collectionName, occurrenceKey) {
|
|
41
|
-
var subject = (0,
|
|
41
|
+
var subject = (0, _createMediaSubject.createMediaSubject)();
|
|
42
42
|
var poll = new _polling.PollingFunction(); // ensure subject errors if polling exceeds max iterations or uncaught exception in executor
|
|
43
43
|
|
|
44
44
|
poll.onError = function (error) {
|
|
@@ -13,9 +13,9 @@ var _xstate = require("xstate");
|
|
|
13
13
|
|
|
14
14
|
var _fileState = require("../../../../models/file-state");
|
|
15
15
|
|
|
16
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
16
|
+
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; }
|
|
17
17
|
|
|
18
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
18
|
+
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; }
|
|
19
19
|
|
|
20
20
|
var machineUploadingState = {
|
|
21
21
|
// Events
|
|
@@ -19,9 +19,9 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
19
19
|
|
|
20
20
|
var _errors = require("./errors");
|
|
21
21
|
|
|
22
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
22
|
+
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; }
|
|
23
23
|
|
|
24
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
24
|
+
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; }
|
|
25
25
|
|
|
26
26
|
// default polling options without using feature flags
|
|
27
27
|
var defaultPollingOptions = {
|
|
@@ -40,9 +40,9 @@ var _authQueryParameters = require("../../models/auth-query-parameters");
|
|
|
40
40
|
|
|
41
41
|
var _errors = require("./errors");
|
|
42
42
|
|
|
43
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
43
|
+
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; }
|
|
44
44
|
|
|
45
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
45
|
+
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; }
|
|
46
46
|
|
|
47
47
|
function clientTimeoutPromise(timeout) {
|
|
48
48
|
return new Promise(function (resolve, reject) {
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createMediaSubscribable = createMediaSubscribable;
|
|
7
|
+
exports.toMediaSubscribable = toMediaSubscribable;
|
|
8
|
+
|
|
9
|
+
var _createMediaSubject = require("./createMediaSubject");
|
|
10
|
+
|
|
11
|
+
function toMediaSubscribable(observable) {
|
|
12
|
+
return {
|
|
13
|
+
subscribe: function subscribe(observer) {
|
|
14
|
+
var subscription = // This is needed to handle "subscribe" function overload.
|
|
15
|
+
// It allows accepting a single "next" callback function as an argument.
|
|
16
|
+
observer instanceof Function ? observable.subscribe(observer) : observable.subscribe(observer);
|
|
17
|
+
return {
|
|
18
|
+
unsubscribe: function unsubscribe() {
|
|
19
|
+
subscription.unsubscribe();
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
function createMediaSubscribable(mediaSubscribableItem) {
|
|
27
|
+
return toMediaSubscribable((0, _createMediaSubject.createMediaSubject)(mediaSubscribableItem));
|
|
28
|
+
}
|
package/dist/cjs/utils/url.js
CHANGED
|
@@ -9,9 +9,9 @@ exports.objectToQueryString = exports.isMediaBlobUrl = exports.getAttrsFromUrl =
|
|
|
9
9
|
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
11
|
|
|
12
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
12
|
+
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; }
|
|
13
13
|
|
|
14
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
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; }
|
|
15
15
|
|
|
16
16
|
var mediaBlobUrlIdentifier = 'media-blob-url';
|
|
17
17
|
|
|
@@ -25,6 +25,8 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
25
25
|
|
|
26
26
|
var _mediaClient = require("../client/media-client");
|
|
27
27
|
|
|
28
|
+
var _excluded = ["mediaClientConfig"];
|
|
29
|
+
|
|
28
30
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
29
31
|
|
|
30
32
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
@@ -74,7 +76,7 @@ var withMediaClient = function withMediaClient(Component, featureFlags) {
|
|
|
74
76
|
// TODO MPT-315: clean up after we move mediaClientConfig into FileIdentifier
|
|
75
77
|
var _this$props = this.props,
|
|
76
78
|
mediaClientConfig = _this$props.mediaClientConfig,
|
|
77
|
-
otherProps = (0, _objectWithoutProperties2.default)(_this$props,
|
|
79
|
+
otherProps = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
|
|
78
80
|
var mediaClient = !mediaClientConfig ? createEmptyMediaClient(featureFlags) : getMediaClient(mediaClientConfig, featureFlags);
|
|
79
81
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, otherProps, {
|
|
80
82
|
mediaClient: mediaClient
|
package/dist/cjs/version.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ReplaySubject } from 'rxjs/ReplaySubject';
|
|
2
2
|
import { getFileStreamsCache } from '../file-streams-cache';
|
|
3
3
|
import { mapMediaFileToFileState } from '../models/file-state';
|
|
4
|
+
import { toMediaSubscribable } from '../utils/toMediaSubscribable';
|
|
4
5
|
export const collectionCache = {};
|
|
5
6
|
|
|
6
7
|
const createCacheEntry = () => ({
|
|
@@ -66,7 +67,7 @@ export class CollectionFetcher {
|
|
|
66
67
|
collection.nextInclusiveStartKey = nextInclusiveStartKey;
|
|
67
68
|
subject.next(collection.items);
|
|
68
69
|
}).catch(error => subject.error(error));
|
|
69
|
-
return subject;
|
|
70
|
+
return toMediaSubscribable(subject);
|
|
70
71
|
}
|
|
71
72
|
|
|
72
73
|
async removeFile(id, collectionName, occurrenceKey) {
|