@atlaskit/media-picker 64.2.2 → 64.2.3
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/components/browser/browser.js +3 -2
- package/dist/cjs/components/clipboard/clipboard.js +12 -4
- package/dist/cjs/components/dropzone/dropzone.js +11 -11
- package/dist/cjs/service/uploadServiceImpl.js +4 -4
- package/dist/cjs/util/analytics.js +1 -1
- package/dist/cjs/util/ufoExperiences.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/components/browser/browser.js +5 -2
- package/dist/es2019/components/clipboard/clipboard.js +12 -3
- package/dist/es2019/components/dropzone/dropzone.js +6 -4
- package/dist/es2019/service/uploadServiceImpl.js +4 -4
- package/dist/es2019/util/analytics.js +1 -1
- package/dist/es2019/util/ufoExperiences.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/components/browser/browser.js +3 -2
- package/dist/esm/components/clipboard/clipboard.js +12 -4
- package/dist/esm/components/dropzone/dropzone.js +11 -11
- package/dist/esm/service/uploadServiceImpl.js +4 -4
- package/dist/esm/util/analytics.js +1 -1
- package/dist/esm/util/ufoExperiences.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/components/clipboard/clipboard.d.ts +4 -1
- package/dist/types/service/types.d.ts +4 -3
- package/dist/types/service/uploadServiceImpl.d.ts +3 -2
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# @atlaskit/media-picker
|
|
2
2
|
|
|
3
|
+
## 64.2.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`0e2981295ce`](https://bitbucket.org/atlassian/atlassian-frontend/commits/0e2981295ce) - Media Picker passes feature flags object through Media Client upload method, overriding internal Media Client flags
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
|
|
3
10
|
## 64.2.2
|
|
4
11
|
|
|
5
12
|
### Patch Changes
|
|
@@ -37,15 +37,16 @@ var BrowserBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
37
37
|
return;
|
|
38
38
|
}
|
|
39
39
|
var replaceFileId = _this.props.config.replaceFileId;
|
|
40
|
+
var featureFlags = _this.props.featureFlags;
|
|
40
41
|
var filesArray = [].slice.call(event.target.files);
|
|
41
42
|
|
|
42
43
|
// refreshes uploadParams as only set once in parent constructor
|
|
43
44
|
_this.setUploadParams(_this.props.config.uploadParams);
|
|
44
45
|
try {
|
|
45
46
|
if (replaceFileId) {
|
|
46
|
-
_this.uploadService.addFile(filesArray[0], replaceFileId);
|
|
47
|
+
_this.uploadService.addFile(filesArray[0], replaceFileId, featureFlags);
|
|
47
48
|
} else {
|
|
48
|
-
_this.uploadService.addFiles(filesArray);
|
|
49
|
+
_this.uploadService.addFiles(filesArray, featureFlags);
|
|
49
50
|
}
|
|
50
51
|
} finally {
|
|
51
52
|
if (_this.browserRef.current) {
|
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.getFilesFromClipboard = exports.default = exports.ClipboardBase = exports.Clipboard = void 0;
|
|
8
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
9
8
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
10
9
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
11
10
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
@@ -38,10 +37,11 @@ var defaultConfig = {
|
|
|
38
37
|
};
|
|
39
38
|
var COMPONENT_NAME = 'clipboard';
|
|
40
39
|
var ClipboardImpl = /*#__PURE__*/function () {
|
|
41
|
-
function ClipboardImpl(uploadService, createAnalyticsEvent) {
|
|
40
|
+
function ClipboardImpl(uploadService, createAnalyticsEvent, featureFlags) {
|
|
42
41
|
(0, _classCallCheck2.default)(this, ClipboardImpl);
|
|
43
42
|
this.uploadService = uploadService;
|
|
44
43
|
this.createAnalyticsEvent = createAnalyticsEvent;
|
|
44
|
+
this.featureFlags = featureFlags;
|
|
45
45
|
}
|
|
46
46
|
(0, _createClass2.default)(ClipboardImpl, [{
|
|
47
47
|
key: "activate",
|
|
@@ -68,7 +68,8 @@ var ClipboardImpl = /*#__PURE__*/function () {
|
|
|
68
68
|
}, {
|
|
69
69
|
key: "onFilesPasted",
|
|
70
70
|
value: function onFilesPasted(files) {
|
|
71
|
-
this.
|
|
71
|
+
var featureFlags = this.featureFlags;
|
|
72
|
+
this.uploadService.addFilesWithSource(files, featureFlags);
|
|
72
73
|
this.fireAnalyticsEvent(files);
|
|
73
74
|
}
|
|
74
75
|
}, {
|
|
@@ -145,7 +146,7 @@ var ClipboardBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
145
146
|
var _this;
|
|
146
147
|
(0, _classCallCheck2.default)(this, ClipboardBase);
|
|
147
148
|
_this = _super.call(this, props, COMPONENT_NAME);
|
|
148
|
-
|
|
149
|
+
_this.clipboard = new ClipboardImpl(_this.uploadService, _this.props.createAnalyticsEvent, props.featureFlags);
|
|
149
150
|
return _this;
|
|
150
151
|
}
|
|
151
152
|
(0, _createClass2.default)(ClipboardBase, [{
|
|
@@ -153,6 +154,13 @@ var ClipboardBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
153
154
|
value: function componentDidMount() {
|
|
154
155
|
this.clipboard.activate();
|
|
155
156
|
}
|
|
157
|
+
}, {
|
|
158
|
+
key: "componentDidUpdate",
|
|
159
|
+
value: function componentDidUpdate(prevProps) {
|
|
160
|
+
if (prevProps.featureFlags !== this.props.featureFlags) {
|
|
161
|
+
this.clipboard.featureFlags = this.props.featureFlags;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
156
164
|
}, {
|
|
157
165
|
key: "componentWillUnmount",
|
|
158
166
|
value: function componentWillUnmount() {
|
|
@@ -83,7 +83,7 @@ var DropzoneBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
83
83
|
});
|
|
84
84
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onFileDropped", /*#__PURE__*/function () {
|
|
85
85
|
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(dragEvent) {
|
|
86
|
-
var flattenedDirectoryFiles, files;
|
|
86
|
+
var featureFlags, flattenedDirectoryFiles, files;
|
|
87
87
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
88
88
|
while (1) {
|
|
89
89
|
switch (_context.prev = _context.next) {
|
|
@@ -96,30 +96,30 @@ var DropzoneBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
96
96
|
case 2:
|
|
97
97
|
dragEvent.preventDefault();
|
|
98
98
|
dragEvent.stopPropagation();
|
|
99
|
-
|
|
99
|
+
featureFlags = _this.props.featureFlags;
|
|
100
100
|
/*
|
|
101
101
|
* Only enable support for folders if (1) the browser is supported (2) feature flag is enabled
|
|
102
102
|
* The file flattening library used to add support for Folders uses a function called webkitEntry.
|
|
103
103
|
* Some browser types are not supported https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitEntries
|
|
104
104
|
*/
|
|
105
|
-
if (!((0, _browser.isWebkitSupported)() && (0, _mediaCommon.getMediaFeatureFlag)('folderUploads',
|
|
106
|
-
_context.next =
|
|
105
|
+
if (!((0, _browser.isWebkitSupported)() && (0, _mediaCommon.getMediaFeatureFlag)('folderUploads', featureFlags))) {
|
|
106
|
+
_context.next = 14;
|
|
107
107
|
break;
|
|
108
108
|
}
|
|
109
109
|
_this.fireAnalyticsForFolders(dragEvent.dataTransfer.items);
|
|
110
|
-
_context.next =
|
|
110
|
+
_context.next = 9;
|
|
111
111
|
return _this.getFilesFromDragEvent(dragEvent.dataTransfer.items);
|
|
112
|
-
case
|
|
112
|
+
case 9:
|
|
113
113
|
flattenedDirectoryFiles = _context.sent;
|
|
114
114
|
_this.onDropFolders(flattenedDirectoryFiles.length);
|
|
115
|
-
_this.uploadService.addFiles(flattenedDirectoryFiles);
|
|
116
|
-
_context.next =
|
|
115
|
+
_this.uploadService.addFiles(flattenedDirectoryFiles, featureFlags);
|
|
116
|
+
_context.next = 17;
|
|
117
117
|
break;
|
|
118
|
-
case
|
|
118
|
+
case 14:
|
|
119
119
|
_this.onDrop(dragEvent);
|
|
120
120
|
files = Array.from(dragEvent.dataTransfer.files);
|
|
121
|
-
_this.uploadService.addFiles(files);
|
|
122
|
-
case
|
|
121
|
+
_this.uploadService.addFiles(files, featureFlags);
|
|
122
|
+
case 17:
|
|
123
123
|
case "end":
|
|
124
124
|
return _context.stop();
|
|
125
125
|
}
|
|
@@ -91,13 +91,13 @@ var UploadServiceImpl = /*#__PURE__*/function () {
|
|
|
91
91
|
}
|
|
92
92
|
}, {
|
|
93
93
|
key: "addFiles",
|
|
94
|
-
value: function addFiles(files) {
|
|
94
|
+
value: function addFiles(files, featureFlags) {
|
|
95
95
|
this.addFilesWithSource(files.map(function (file) {
|
|
96
96
|
return {
|
|
97
97
|
file: file,
|
|
98
98
|
source: _types.LocalFileSource.LocalUpload
|
|
99
99
|
};
|
|
100
|
-
}));
|
|
100
|
+
}), featureFlags);
|
|
101
101
|
}
|
|
102
102
|
}, {
|
|
103
103
|
key: "addFile",
|
|
@@ -110,7 +110,7 @@ var UploadServiceImpl = /*#__PURE__*/function () {
|
|
|
110
110
|
}
|
|
111
111
|
}, {
|
|
112
112
|
key: "addFilesWithSource",
|
|
113
|
-
value: function addFilesWithSource(files) {
|
|
113
|
+
value: function addFilesWithSource(files, featureFlags) {
|
|
114
114
|
var _this2 = this;
|
|
115
115
|
if (files.length === 0) {
|
|
116
116
|
return;
|
|
@@ -176,7 +176,7 @@ var UploadServiceImpl = /*#__PURE__*/function () {
|
|
|
176
176
|
deferredUploadId: deferredUploadId
|
|
177
177
|
};
|
|
178
178
|
var controller = _this2.createUploadController();
|
|
179
|
-
var sourceFileObservable = mediaClient.file.upload(uploadableFile, controller, uploadableUpfrontIds, traceContext);
|
|
179
|
+
var sourceFileObservable = mediaClient.file.upload(uploadableFile, controller, uploadableUpfrontIds, traceContext, featureFlags);
|
|
180
180
|
var mediaFile = {
|
|
181
181
|
id: id,
|
|
182
182
|
name: file.name,
|
|
@@ -19,7 +19,7 @@ var relevantFlags = {
|
|
|
19
19
|
fetchFileStateAfterUpload: true
|
|
20
20
|
};
|
|
21
21
|
var packageName = "@atlaskit/media-picker";
|
|
22
|
-
var packageVersion = "64.2.
|
|
22
|
+
var packageVersion = "64.2.3";
|
|
23
23
|
var LOGGED_FEATURE_FLAGS = (0, _mediaCommon.filterFeatureFlagNames)(relevantFlags);
|
|
24
24
|
exports.LOGGED_FEATURE_FLAGS = LOGGED_FEATURE_FLAGS;
|
|
25
25
|
var LOGGED_FEATURE_FLAG_KEYS = (0, _mediaCommon.filterFeatureFlagKeysAllProducts)(relevantFlags);
|
|
@@ -12,7 +12,7 @@ var _analytics = require("./analytics");
|
|
|
12
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
|
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; }
|
|
14
14
|
var packageName = "@atlaskit/media-picker";
|
|
15
|
-
var packageVersion = "64.2.
|
|
15
|
+
var packageVersion = "64.2.3";
|
|
16
16
|
var ufoExperience;
|
|
17
17
|
var initExperience = function initExperience(id, componentName) {
|
|
18
18
|
if (!ufoExperience) {
|
package/dist/cjs/version.json
CHANGED
|
@@ -20,15 +20,18 @@ export class BrowserBase extends LocalUploadComponentReact {
|
|
|
20
20
|
const {
|
|
21
21
|
replaceFileId
|
|
22
22
|
} = this.props.config;
|
|
23
|
+
const {
|
|
24
|
+
featureFlags
|
|
25
|
+
} = this.props;
|
|
23
26
|
const filesArray = [].slice.call(event.target.files);
|
|
24
27
|
|
|
25
28
|
// refreshes uploadParams as only set once in parent constructor
|
|
26
29
|
this.setUploadParams(this.props.config.uploadParams);
|
|
27
30
|
try {
|
|
28
31
|
if (replaceFileId) {
|
|
29
|
-
this.uploadService.addFile(filesArray[0], replaceFileId);
|
|
32
|
+
this.uploadService.addFile(filesArray[0], replaceFileId, featureFlags);
|
|
30
33
|
} else {
|
|
31
|
-
this.uploadService.addFiles(filesArray);
|
|
34
|
+
this.uploadService.addFiles(filesArray, featureFlags);
|
|
32
35
|
}
|
|
33
36
|
} finally {
|
|
34
37
|
if (this.browserRef.current) {
|
|
@@ -22,9 +22,10 @@ const defaultConfig = {
|
|
|
22
22
|
};
|
|
23
23
|
const COMPONENT_NAME = 'clipboard';
|
|
24
24
|
class ClipboardImpl {
|
|
25
|
-
constructor(uploadService, createAnalyticsEvent) {
|
|
25
|
+
constructor(uploadService, createAnalyticsEvent, featureFlags) {
|
|
26
26
|
this.uploadService = uploadService;
|
|
27
27
|
this.createAnalyticsEvent = createAnalyticsEvent;
|
|
28
|
+
this.featureFlags = featureFlags;
|
|
28
29
|
}
|
|
29
30
|
static get latestInstance() {
|
|
30
31
|
return ClipboardImpl.instances[ClipboardImpl.instances.length - 1];
|
|
@@ -48,7 +49,10 @@ class ClipboardImpl {
|
|
|
48
49
|
}
|
|
49
50
|
}
|
|
50
51
|
onFilesPasted(files) {
|
|
51
|
-
|
|
52
|
+
const {
|
|
53
|
+
featureFlags
|
|
54
|
+
} = this;
|
|
55
|
+
this.uploadService.addFilesWithSource(files, featureFlags);
|
|
52
56
|
this.fireAnalyticsEvent(files);
|
|
53
57
|
}
|
|
54
58
|
fireAnalyticsEvent(files) {
|
|
@@ -112,11 +116,16 @@ _defineProperty(ClipboardImpl, "handleEvent", event => {
|
|
|
112
116
|
export class ClipboardBase extends LocalUploadComponentReact {
|
|
113
117
|
constructor(props) {
|
|
114
118
|
super(props, COMPONENT_NAME);
|
|
115
|
-
|
|
119
|
+
this.clipboard = new ClipboardImpl(this.uploadService, this.props.createAnalyticsEvent, props.featureFlags);
|
|
116
120
|
}
|
|
117
121
|
componentDidMount() {
|
|
118
122
|
this.clipboard.activate();
|
|
119
123
|
}
|
|
124
|
+
componentDidUpdate(prevProps) {
|
|
125
|
+
if (prevProps.featureFlags !== this.props.featureFlags) {
|
|
126
|
+
this.clipboard.featureFlags = this.props.featureFlags;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
120
129
|
componentWillUnmount() {
|
|
121
130
|
this.clipboard.deactivate();
|
|
122
131
|
}
|
|
@@ -66,21 +66,23 @@ export class DropzoneBase extends LocalUploadComponentReact {
|
|
|
66
66
|
}
|
|
67
67
|
dragEvent.preventDefault();
|
|
68
68
|
dragEvent.stopPropagation();
|
|
69
|
-
|
|
69
|
+
const {
|
|
70
|
+
featureFlags
|
|
71
|
+
} = this.props;
|
|
70
72
|
/*
|
|
71
73
|
* Only enable support for folders if (1) the browser is supported (2) feature flag is enabled
|
|
72
74
|
* The file flattening library used to add support for Folders uses a function called webkitEntry.
|
|
73
75
|
* Some browser types are not supported https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitEntries
|
|
74
76
|
*/
|
|
75
|
-
if (isWebkitSupported() && getMediaFeatureFlag('folderUploads',
|
|
77
|
+
if (isWebkitSupported() && getMediaFeatureFlag('folderUploads', featureFlags)) {
|
|
76
78
|
this.fireAnalyticsForFolders(dragEvent.dataTransfer.items);
|
|
77
79
|
const flattenedDirectoryFiles = await this.getFilesFromDragEvent(dragEvent.dataTransfer.items);
|
|
78
80
|
this.onDropFolders(flattenedDirectoryFiles.length);
|
|
79
|
-
this.uploadService.addFiles(flattenedDirectoryFiles);
|
|
81
|
+
this.uploadService.addFiles(flattenedDirectoryFiles, featureFlags);
|
|
80
82
|
} else {
|
|
81
83
|
this.onDrop(dragEvent);
|
|
82
84
|
const files = Array.from(dragEvent.dataTransfer.files);
|
|
83
|
-
this.uploadService.addFiles(files);
|
|
85
|
+
this.uploadService.addFiles(files, featureFlags);
|
|
84
86
|
}
|
|
85
87
|
});
|
|
86
88
|
_defineProperty(this, "fireAnalyticsForFolders", items => {
|
|
@@ -58,11 +58,11 @@ export class UploadServiceImpl {
|
|
|
58
58
|
createUploadController() {
|
|
59
59
|
return new UploadController();
|
|
60
60
|
}
|
|
61
|
-
addFiles(files) {
|
|
61
|
+
addFiles(files, featureFlags) {
|
|
62
62
|
this.addFilesWithSource(files.map(file => ({
|
|
63
63
|
file,
|
|
64
64
|
source: LocalFileSource.LocalUpload
|
|
65
|
-
})));
|
|
65
|
+
})), featureFlags);
|
|
66
66
|
}
|
|
67
67
|
addFile(file, replaceFileId) {
|
|
68
68
|
this.addFilesWithSource([{
|
|
@@ -71,7 +71,7 @@ export class UploadServiceImpl {
|
|
|
71
71
|
replaceFileId
|
|
72
72
|
}]);
|
|
73
73
|
}
|
|
74
|
-
addFilesWithSource(files) {
|
|
74
|
+
addFilesWithSource(files, featureFlags) {
|
|
75
75
|
if (files.length === 0) {
|
|
76
76
|
return;
|
|
77
77
|
}
|
|
@@ -141,7 +141,7 @@ export class UploadServiceImpl {
|
|
|
141
141
|
deferredUploadId
|
|
142
142
|
};
|
|
143
143
|
const controller = this.createUploadController();
|
|
144
|
-
const sourceFileObservable = mediaClient.file.upload(uploadableFile, controller, uploadableUpfrontIds, traceContext);
|
|
144
|
+
const sourceFileObservable = mediaClient.file.upload(uploadableFile, controller, uploadableUpfrontIds, traceContext, featureFlags);
|
|
145
145
|
const mediaFile = {
|
|
146
146
|
id,
|
|
147
147
|
name: file.name,
|
|
@@ -14,7 +14,7 @@ const relevantFlags = {
|
|
|
14
14
|
fetchFileStateAfterUpload: true
|
|
15
15
|
};
|
|
16
16
|
const packageName = "@atlaskit/media-picker";
|
|
17
|
-
const packageVersion = "64.2.
|
|
17
|
+
const packageVersion = "64.2.3";
|
|
18
18
|
export const LOGGED_FEATURE_FLAGS = filterFeatureFlagNames(relevantFlags);
|
|
19
19
|
export const LOGGED_FEATURE_FLAG_KEYS = filterFeatureFlagKeysAllProducts(relevantFlags);
|
|
20
20
|
export function getPackageAttributes(componentName) {
|
|
@@ -2,7 +2,7 @@ import { ConcurrentExperience, ExperiencePerformanceTypes, ExperienceTypes } fro
|
|
|
2
2
|
import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
|
|
3
3
|
import { LOGGED_FEATURE_FLAG_KEYS } from './analytics';
|
|
4
4
|
const packageName = "@atlaskit/media-picker";
|
|
5
|
-
const packageVersion = "64.2.
|
|
5
|
+
const packageVersion = "64.2.3";
|
|
6
6
|
let ufoExperience;
|
|
7
7
|
const initExperience = (id, componentName) => {
|
|
8
8
|
if (!ufoExperience) {
|
package/dist/es2019/version.json
CHANGED
|
@@ -30,15 +30,16 @@ export var BrowserBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
30
30
|
return;
|
|
31
31
|
}
|
|
32
32
|
var replaceFileId = _this.props.config.replaceFileId;
|
|
33
|
+
var featureFlags = _this.props.featureFlags;
|
|
33
34
|
var filesArray = [].slice.call(event.target.files);
|
|
34
35
|
|
|
35
36
|
// refreshes uploadParams as only set once in parent constructor
|
|
36
37
|
_this.setUploadParams(_this.props.config.uploadParams);
|
|
37
38
|
try {
|
|
38
39
|
if (replaceFileId) {
|
|
39
|
-
_this.uploadService.addFile(filesArray[0], replaceFileId);
|
|
40
|
+
_this.uploadService.addFile(filesArray[0], replaceFileId, featureFlags);
|
|
40
41
|
} else {
|
|
41
|
-
_this.uploadService.addFiles(filesArray);
|
|
42
|
+
_this.uploadService.addFiles(filesArray, featureFlags);
|
|
42
43
|
}
|
|
43
44
|
} finally {
|
|
44
45
|
if (_this.browserRef.current) {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
2
1
|
import _inherits from "@babel/runtime/helpers/inherits";
|
|
3
2
|
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
4
3
|
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
@@ -30,10 +29,11 @@ var defaultConfig = {
|
|
|
30
29
|
};
|
|
31
30
|
var COMPONENT_NAME = 'clipboard';
|
|
32
31
|
var ClipboardImpl = /*#__PURE__*/function () {
|
|
33
|
-
function ClipboardImpl(uploadService, createAnalyticsEvent) {
|
|
32
|
+
function ClipboardImpl(uploadService, createAnalyticsEvent, featureFlags) {
|
|
34
33
|
_classCallCheck(this, ClipboardImpl);
|
|
35
34
|
this.uploadService = uploadService;
|
|
36
35
|
this.createAnalyticsEvent = createAnalyticsEvent;
|
|
36
|
+
this.featureFlags = featureFlags;
|
|
37
37
|
}
|
|
38
38
|
_createClass(ClipboardImpl, [{
|
|
39
39
|
key: "activate",
|
|
@@ -60,7 +60,8 @@ var ClipboardImpl = /*#__PURE__*/function () {
|
|
|
60
60
|
}, {
|
|
61
61
|
key: "onFilesPasted",
|
|
62
62
|
value: function onFilesPasted(files) {
|
|
63
|
-
this.
|
|
63
|
+
var featureFlags = this.featureFlags;
|
|
64
|
+
this.uploadService.addFilesWithSource(files, featureFlags);
|
|
64
65
|
this.fireAnalyticsEvent(files);
|
|
65
66
|
}
|
|
66
67
|
}, {
|
|
@@ -137,7 +138,7 @@ export var ClipboardBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
137
138
|
var _this;
|
|
138
139
|
_classCallCheck(this, ClipboardBase);
|
|
139
140
|
_this = _super.call(this, props, COMPONENT_NAME);
|
|
140
|
-
|
|
141
|
+
_this.clipboard = new ClipboardImpl(_this.uploadService, _this.props.createAnalyticsEvent, props.featureFlags);
|
|
141
142
|
return _this;
|
|
142
143
|
}
|
|
143
144
|
_createClass(ClipboardBase, [{
|
|
@@ -145,6 +146,13 @@ export var ClipboardBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
145
146
|
value: function componentDidMount() {
|
|
146
147
|
this.clipboard.activate();
|
|
147
148
|
}
|
|
149
|
+
}, {
|
|
150
|
+
key: "componentDidUpdate",
|
|
151
|
+
value: function componentDidUpdate(prevProps) {
|
|
152
|
+
if (prevProps.featureFlags !== this.props.featureFlags) {
|
|
153
|
+
this.clipboard.featureFlags = this.props.featureFlags;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
148
156
|
}, {
|
|
149
157
|
key: "componentWillUnmount",
|
|
150
158
|
value: function componentWillUnmount() {
|
|
@@ -76,7 +76,7 @@ export var DropzoneBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
76
76
|
});
|
|
77
77
|
_defineProperty(_assertThisInitialized(_this), "onFileDropped", /*#__PURE__*/function () {
|
|
78
78
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(dragEvent) {
|
|
79
|
-
var flattenedDirectoryFiles, files;
|
|
79
|
+
var featureFlags, flattenedDirectoryFiles, files;
|
|
80
80
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
81
81
|
while (1) {
|
|
82
82
|
switch (_context.prev = _context.next) {
|
|
@@ -89,30 +89,30 @@ export var DropzoneBase = /*#__PURE__*/function (_LocalUploadComponent) {
|
|
|
89
89
|
case 2:
|
|
90
90
|
dragEvent.preventDefault();
|
|
91
91
|
dragEvent.stopPropagation();
|
|
92
|
-
|
|
92
|
+
featureFlags = _this.props.featureFlags;
|
|
93
93
|
/*
|
|
94
94
|
* Only enable support for folders if (1) the browser is supported (2) feature flag is enabled
|
|
95
95
|
* The file flattening library used to add support for Folders uses a function called webkitEntry.
|
|
96
96
|
* Some browser types are not supported https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitEntries
|
|
97
97
|
*/
|
|
98
|
-
if (!(isWebkitSupported() && getMediaFeatureFlag('folderUploads',
|
|
99
|
-
_context.next =
|
|
98
|
+
if (!(isWebkitSupported() && getMediaFeatureFlag('folderUploads', featureFlags))) {
|
|
99
|
+
_context.next = 14;
|
|
100
100
|
break;
|
|
101
101
|
}
|
|
102
102
|
_this.fireAnalyticsForFolders(dragEvent.dataTransfer.items);
|
|
103
|
-
_context.next =
|
|
103
|
+
_context.next = 9;
|
|
104
104
|
return _this.getFilesFromDragEvent(dragEvent.dataTransfer.items);
|
|
105
|
-
case
|
|
105
|
+
case 9:
|
|
106
106
|
flattenedDirectoryFiles = _context.sent;
|
|
107
107
|
_this.onDropFolders(flattenedDirectoryFiles.length);
|
|
108
|
-
_this.uploadService.addFiles(flattenedDirectoryFiles);
|
|
109
|
-
_context.next =
|
|
108
|
+
_this.uploadService.addFiles(flattenedDirectoryFiles, featureFlags);
|
|
109
|
+
_context.next = 17;
|
|
110
110
|
break;
|
|
111
|
-
case
|
|
111
|
+
case 14:
|
|
112
112
|
_this.onDrop(dragEvent);
|
|
113
113
|
files = Array.from(dragEvent.dataTransfer.files);
|
|
114
|
-
_this.uploadService.addFiles(files);
|
|
115
|
-
case
|
|
114
|
+
_this.uploadService.addFiles(files, featureFlags);
|
|
115
|
+
case 17:
|
|
116
116
|
case "end":
|
|
117
117
|
return _context.stop();
|
|
118
118
|
}
|
|
@@ -84,13 +84,13 @@ export var UploadServiceImpl = /*#__PURE__*/function () {
|
|
|
84
84
|
}
|
|
85
85
|
}, {
|
|
86
86
|
key: "addFiles",
|
|
87
|
-
value: function addFiles(files) {
|
|
87
|
+
value: function addFiles(files, featureFlags) {
|
|
88
88
|
this.addFilesWithSource(files.map(function (file) {
|
|
89
89
|
return {
|
|
90
90
|
file: file,
|
|
91
91
|
source: LocalFileSource.LocalUpload
|
|
92
92
|
};
|
|
93
|
-
}));
|
|
93
|
+
}), featureFlags);
|
|
94
94
|
}
|
|
95
95
|
}, {
|
|
96
96
|
key: "addFile",
|
|
@@ -103,7 +103,7 @@ export var UploadServiceImpl = /*#__PURE__*/function () {
|
|
|
103
103
|
}
|
|
104
104
|
}, {
|
|
105
105
|
key: "addFilesWithSource",
|
|
106
|
-
value: function addFilesWithSource(files) {
|
|
106
|
+
value: function addFilesWithSource(files, featureFlags) {
|
|
107
107
|
var _this2 = this;
|
|
108
108
|
if (files.length === 0) {
|
|
109
109
|
return;
|
|
@@ -169,7 +169,7 @@ export var UploadServiceImpl = /*#__PURE__*/function () {
|
|
|
169
169
|
deferredUploadId: deferredUploadId
|
|
170
170
|
};
|
|
171
171
|
var controller = _this2.createUploadController();
|
|
172
|
-
var sourceFileObservable = mediaClient.file.upload(uploadableFile, controller, uploadableUpfrontIds, traceContext);
|
|
172
|
+
var sourceFileObservable = mediaClient.file.upload(uploadableFile, controller, uploadableUpfrontIds, traceContext, featureFlags);
|
|
173
173
|
var mediaFile = {
|
|
174
174
|
id: id,
|
|
175
175
|
name: file.name,
|
|
@@ -14,7 +14,7 @@ var relevantFlags = {
|
|
|
14
14
|
fetchFileStateAfterUpload: true
|
|
15
15
|
};
|
|
16
16
|
var packageName = "@atlaskit/media-picker";
|
|
17
|
-
var packageVersion = "64.2.
|
|
17
|
+
var packageVersion = "64.2.3";
|
|
18
18
|
export var LOGGED_FEATURE_FLAGS = filterFeatureFlagNames(relevantFlags);
|
|
19
19
|
export var LOGGED_FEATURE_FLAG_KEYS = filterFeatureFlagKeysAllProducts(relevantFlags);
|
|
20
20
|
export function getPackageAttributes(componentName) {
|
|
@@ -5,7 +5,7 @@ import { ConcurrentExperience, ExperiencePerformanceTypes, ExperienceTypes } fro
|
|
|
5
5
|
import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
|
|
6
6
|
import { LOGGED_FEATURE_FLAG_KEYS } from './analytics';
|
|
7
7
|
var packageName = "@atlaskit/media-picker";
|
|
8
|
-
var packageVersion = "64.2.
|
|
8
|
+
var packageVersion = "64.2.3";
|
|
9
9
|
var ufoExperience;
|
|
10
10
|
var initExperience = function initExperience(id, componentName) {
|
|
11
11
|
if (!ufoExperience) {
|
package/dist/esm/version.json
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';
|
|
3
|
+
import { MediaFeatureFlags } from '@atlaskit/media-common';
|
|
3
4
|
import { LocalUploadComponentReact, LocalUploadComponentBaseProps } from '../localUploadReact';
|
|
4
5
|
import { LocalFileWithSource, UploadService } from '../../service/types';
|
|
5
6
|
import { ClipboardConfig } from '../../types';
|
|
@@ -13,8 +14,9 @@ export declare type ClipboardProps = LocalUploadComponentBaseProps & {
|
|
|
13
14
|
declare class ClipboardImpl {
|
|
14
15
|
private readonly uploadService;
|
|
15
16
|
private readonly createAnalyticsEvent?;
|
|
17
|
+
featureFlags?: MediaFeatureFlags | undefined;
|
|
16
18
|
static instances: ClipboardImpl[];
|
|
17
|
-
constructor(uploadService: UploadService, createAnalyticsEvent?: CreateUIAnalyticsEvent | undefined);
|
|
19
|
+
constructor(uploadService: UploadService, createAnalyticsEvent?: CreateUIAnalyticsEvent | undefined, featureFlags?: MediaFeatureFlags | undefined);
|
|
18
20
|
static get latestInstance(): ClipboardImpl | undefined;
|
|
19
21
|
activate(): void;
|
|
20
22
|
deactivate(): void;
|
|
@@ -29,6 +31,7 @@ export declare class ClipboardBase extends LocalUploadComponentReact<ClipboardPr
|
|
|
29
31
|
config: ClipboardConfig;
|
|
30
32
|
};
|
|
31
33
|
componentDidMount(): void;
|
|
34
|
+
componentDidUpdate(prevProps: ClipboardProps): void;
|
|
32
35
|
componentWillUnmount(): void;
|
|
33
36
|
render(): null;
|
|
34
37
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { MediaFeatureFlags } from '@atlaskit/media-common';
|
|
1
2
|
import { UploadEndEventPayload, UploadErrorEventPayload, UploadPreviewUpdateEventPayload, UploadsStartEventPayload, UploadParams } from '../types';
|
|
2
3
|
export declare type UploadServiceEventPayloadTypes = {
|
|
3
4
|
readonly 'files-added': UploadsStartEventPayload;
|
|
@@ -10,9 +11,9 @@ export declare type UploadServiceEventListener<E extends keyof UploadServiceEven
|
|
|
10
11
|
export declare const MAX_FILE_SIZE_FOR_PREVIEW = 10000000;
|
|
11
12
|
export interface UploadService {
|
|
12
13
|
setUploadParams(uploadParams: UploadParams): void;
|
|
13
|
-
addFile(file: File, replaceFileId?: string): void;
|
|
14
|
-
addFiles(files: File[]): void;
|
|
15
|
-
addFilesWithSource(files: LocalFileWithSource[]): void;
|
|
14
|
+
addFile(file: File, replaceFileId?: string, featureFlags?: MediaFeatureFlags): void;
|
|
15
|
+
addFiles(files: File[], featureFlags?: MediaFeatureFlags): void;
|
|
16
|
+
addFilesWithSource(files: LocalFileWithSource[], featureFlags?: MediaFeatureFlags): void;
|
|
16
17
|
cancel(id?: string): void;
|
|
17
18
|
on<E extends keyof UploadServiceEventPayloadTypes>(event: E, listener: UploadServiceEventListener<E>): void;
|
|
18
19
|
off<E extends keyof UploadServiceEventPayloadTypes>(event: E, listener: UploadServiceEventListener<E>): void;
|
|
@@ -2,6 +2,7 @@ import { MediaClient } from '@atlaskit/media-client';
|
|
|
2
2
|
import { MediaFile, UploadParams } from '../types';
|
|
3
3
|
import { UploadService, UploadServiceEventListener, UploadServiceEventPayloadTypes } from './types';
|
|
4
4
|
import { LocalFileSource, LocalFileWithSource } from '../service/types';
|
|
5
|
+
import { MediaFeatureFlags } from '@atlaskit/media-common';
|
|
5
6
|
export interface CancellableFileUpload {
|
|
6
7
|
mediaFile: MediaFile;
|
|
7
8
|
file: File;
|
|
@@ -18,9 +19,9 @@ export declare class UploadServiceImpl implements UploadService {
|
|
|
18
19
|
constructor(tenantMediaClient: MediaClient, tenantUploadParams: UploadParams, shouldCopyFileToRecents: boolean);
|
|
19
20
|
setUploadParams(uploadParams: UploadParams): void;
|
|
20
21
|
private createUploadController;
|
|
21
|
-
addFiles(files: File[]): void;
|
|
22
|
+
addFiles(files: File[], featureFlags?: MediaFeatureFlags): void;
|
|
22
23
|
addFile(file: File, replaceFileId?: string): void;
|
|
23
|
-
addFilesWithSource(files: LocalFileWithSource[]): void;
|
|
24
|
+
addFilesWithSource(files: LocalFileWithSource[], featureFlags?: MediaFeatureFlags): void;
|
|
24
25
|
cancel(id?: string): void;
|
|
25
26
|
on<E extends keyof UploadServiceEventPayloadTypes>(event: E, listener: UploadServiceEventListener<E>): void;
|
|
26
27
|
off<E extends keyof UploadServiceEventPayloadTypes>(event: E, listener: UploadServiceEventListener<E>): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/media-picker",
|
|
3
|
-
"version": "64.2.
|
|
3
|
+
"version": "64.2.3",
|
|
4
4
|
"description": "Library for handling file uploads",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"@atlaskit/analytics-next": "^9.0.0",
|
|
30
|
-
"@atlaskit/media-client": "^20.
|
|
30
|
+
"@atlaskit/media-client": "^20.2.0",
|
|
31
31
|
"@atlaskit/media-common": "^3.0.0",
|
|
32
32
|
"@atlaskit/media-ui": "^22.3.0",
|
|
33
33
|
"@atlaskit/ufo": "^0.1.0",
|