@panneau/field-upload 3.0.10 → 3.0.12
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/es/index.js +55 -6
- package/lib/index.js +56 -6
- package/package.json +5 -5
package/es/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
2
3
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
3
4
|
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
4
5
|
import { faTimes, faFileVideo, faFileImage, faFileAudio } from '@fortawesome/free-solid-svg-icons';
|
|
@@ -39,6 +40,7 @@ var propTypes = {
|
|
|
39
40
|
withFind: PropTypes.bool,
|
|
40
41
|
addButtonLabel: PropTypes$1.label,
|
|
41
42
|
searchButtonLabel: PropTypes$1.label,
|
|
43
|
+
confirmButtonLabel: PropTypes$1.label,
|
|
42
44
|
allowMultipleUploads: PropTypes.bool,
|
|
43
45
|
maxNumberOfFiles: PropTypes.number,
|
|
44
46
|
namePath: PropTypes.string,
|
|
@@ -74,6 +76,13 @@ var defaultProps = {
|
|
|
74
76
|
"value": "Find a file"
|
|
75
77
|
}]
|
|
76
78
|
}),
|
|
79
|
+
confirmButtonLabel: /*#__PURE__*/React.createElement(FormattedMessage, {
|
|
80
|
+
id: "UaVu03",
|
|
81
|
+
defaultMessage: [{
|
|
82
|
+
"type": 0,
|
|
83
|
+
"value": "Confirm"
|
|
84
|
+
}]
|
|
85
|
+
}),
|
|
77
86
|
allowMultipleUploads: false,
|
|
78
87
|
maxNumberOfFiles: 1,
|
|
79
88
|
namePath: null,
|
|
@@ -95,6 +104,7 @@ var UploadField = function UploadField(_ref) {
|
|
|
95
104
|
withFind = _ref.withFind,
|
|
96
105
|
addButtonLabel = _ref.addButtonLabel,
|
|
97
106
|
searchButtonLabel = _ref.searchButtonLabel,
|
|
107
|
+
confirmButtonLabel = _ref.confirmButtonLabel,
|
|
98
108
|
allowMultipleUploads = _ref.allowMultipleUploads,
|
|
99
109
|
maxNumberOfFiles = _ref.maxNumberOfFiles,
|
|
100
110
|
namePath = _ref.namePath,
|
|
@@ -204,12 +214,45 @@ var UploadField = function UploadField(_ref) {
|
|
|
204
214
|
var closeResourceModal = useCallback(function () {
|
|
205
215
|
setResourceModalOpen(false);
|
|
206
216
|
}, [resourceModalOpen, setResourceModalOpen]);
|
|
217
|
+
var _useState5 = useState([]),
|
|
218
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
219
|
+
modalItems = _useState6[0],
|
|
220
|
+
setModalItems = _useState6[1];
|
|
207
221
|
var onClickSelect = useCallback(function (newValue) {
|
|
208
|
-
if (
|
|
222
|
+
if (allowMultipleUploads) {
|
|
223
|
+
if (newValue !== null) {
|
|
224
|
+
var _ref2 = newValue || {},
|
|
225
|
+
_ref2$id = _ref2.id,
|
|
226
|
+
id = _ref2$id === void 0 ? null : _ref2$id;
|
|
227
|
+
if (id !== null) {
|
|
228
|
+
var previous = (modalItems || []).find(function (_ref3) {
|
|
229
|
+
var _ref3$id = _ref3.id,
|
|
230
|
+
itemId = _ref3$id === void 0 ? null : _ref3$id;
|
|
231
|
+
return id === itemId;
|
|
232
|
+
});
|
|
233
|
+
if (previous) {
|
|
234
|
+
setModalItems((modalItems || []).filter(function (_ref4) {
|
|
235
|
+
var _ref4$id = _ref4.id,
|
|
236
|
+
itemId = _ref4$id === void 0 ? null : _ref4$id;
|
|
237
|
+
return id !== itemId;
|
|
238
|
+
}));
|
|
239
|
+
} else {
|
|
240
|
+
setModalItems([].concat(_toConsumableArray(modalItems), [newValue]));
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
} else if (onChange !== null) {
|
|
209
245
|
onChange(newValue);
|
|
210
246
|
setResourceModalOpen(false);
|
|
211
247
|
}
|
|
212
|
-
}, [onChange, setResourceModalOpen]);
|
|
248
|
+
}, [onChange, setResourceModalOpen, allowMultipleUploads, modalItems, setModalItems]);
|
|
249
|
+
console.log(modalItems);
|
|
250
|
+
var confirmResourceModal = useCallback(function () {
|
|
251
|
+
if (onChange !== null) {
|
|
252
|
+
onChange(modalItems);
|
|
253
|
+
setResourceModalOpen(false);
|
|
254
|
+
}
|
|
255
|
+
}, [onChange, setResourceModalOpen, allowMultipleUploads]);
|
|
213
256
|
var initialQuery = useMemo(function () {
|
|
214
257
|
return {
|
|
215
258
|
types: types
|
|
@@ -237,9 +280,9 @@ var UploadField = function UploadField(_ref) {
|
|
|
237
280
|
_media$data = media.data,
|
|
238
281
|
data = _media$data === void 0 ? {} : _media$data,
|
|
239
282
|
type = media.type;
|
|
240
|
-
var
|
|
241
|
-
|
|
242
|
-
file =
|
|
283
|
+
var _ref6 = data || {},
|
|
284
|
+
_ref6$file = _ref6.file,
|
|
285
|
+
file = _ref6$file === void 0 ? null : _ref6$file;
|
|
243
286
|
var faIcon = null;
|
|
244
287
|
switch (type) {
|
|
245
288
|
case 'audio':
|
|
@@ -368,7 +411,13 @@ var UploadField = function UploadField(_ref) {
|
|
|
368
411
|
},
|
|
369
412
|
withoutActionsColumn: true
|
|
370
413
|
}
|
|
371
|
-
})
|
|
414
|
+
}), allowMultipleUploads ? /*#__PURE__*/React.createElement(Button, {
|
|
415
|
+
type: "button",
|
|
416
|
+
theme: "primary",
|
|
417
|
+
onClick: confirmResourceModal,
|
|
418
|
+
disabled: disabled,
|
|
419
|
+
className: "d-block ms-auto mt-2"
|
|
420
|
+
}, /*#__PURE__*/React.createElement(Label, null, confirmButtonLabel)) : null) : null);
|
|
372
421
|
};
|
|
373
422
|
UploadField.propTypes = propTypes;
|
|
374
423
|
UploadField.defaultProps = defaultProps;
|
package/lib/index.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
6
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
6
7
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
7
8
|
var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
|
|
8
9
|
var freeSolidSvgIcons = require('@fortawesome/free-solid-svg-icons');
|
|
@@ -31,6 +32,7 @@ require('@uppy/status-bar/dist/style.min.css');
|
|
|
31
32
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
32
33
|
|
|
33
34
|
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
35
|
+
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
|
|
34
36
|
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
|
|
35
37
|
var _objectSpread__default = /*#__PURE__*/_interopDefaultLegacy(_objectSpread);
|
|
36
38
|
var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
|
@@ -60,6 +62,7 @@ var propTypes = {
|
|
|
60
62
|
withFind: PropTypes__default["default"].bool,
|
|
61
63
|
addButtonLabel: core.PropTypes.label,
|
|
62
64
|
searchButtonLabel: core.PropTypes.label,
|
|
65
|
+
confirmButtonLabel: core.PropTypes.label,
|
|
63
66
|
allowMultipleUploads: PropTypes__default["default"].bool,
|
|
64
67
|
maxNumberOfFiles: PropTypes__default["default"].number,
|
|
65
68
|
namePath: PropTypes__default["default"].string,
|
|
@@ -95,6 +98,13 @@ var defaultProps = {
|
|
|
95
98
|
"value": "Find a file"
|
|
96
99
|
}]
|
|
97
100
|
}),
|
|
101
|
+
confirmButtonLabel: /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
102
|
+
id: "UaVu03",
|
|
103
|
+
defaultMessage: [{
|
|
104
|
+
"type": 0,
|
|
105
|
+
"value": "Confirm"
|
|
106
|
+
}]
|
|
107
|
+
}),
|
|
98
108
|
allowMultipleUploads: false,
|
|
99
109
|
maxNumberOfFiles: 1,
|
|
100
110
|
namePath: null,
|
|
@@ -116,6 +126,7 @@ var UploadField = function UploadField(_ref) {
|
|
|
116
126
|
withFind = _ref.withFind,
|
|
117
127
|
addButtonLabel = _ref.addButtonLabel,
|
|
118
128
|
searchButtonLabel = _ref.searchButtonLabel,
|
|
129
|
+
confirmButtonLabel = _ref.confirmButtonLabel,
|
|
119
130
|
allowMultipleUploads = _ref.allowMultipleUploads,
|
|
120
131
|
maxNumberOfFiles = _ref.maxNumberOfFiles,
|
|
121
132
|
namePath = _ref.namePath,
|
|
@@ -225,12 +236,45 @@ var UploadField = function UploadField(_ref) {
|
|
|
225
236
|
var closeResourceModal = React.useCallback(function () {
|
|
226
237
|
setResourceModalOpen(false);
|
|
227
238
|
}, [resourceModalOpen, setResourceModalOpen]);
|
|
239
|
+
var _useState5 = React.useState([]),
|
|
240
|
+
_useState6 = _slicedToArray__default["default"](_useState5, 2),
|
|
241
|
+
modalItems = _useState6[0],
|
|
242
|
+
setModalItems = _useState6[1];
|
|
228
243
|
var onClickSelect = React.useCallback(function (newValue) {
|
|
229
|
-
if (
|
|
244
|
+
if (allowMultipleUploads) {
|
|
245
|
+
if (newValue !== null) {
|
|
246
|
+
var _ref2 = newValue || {},
|
|
247
|
+
_ref2$id = _ref2.id,
|
|
248
|
+
id = _ref2$id === void 0 ? null : _ref2$id;
|
|
249
|
+
if (id !== null) {
|
|
250
|
+
var previous = (modalItems || []).find(function (_ref3) {
|
|
251
|
+
var _ref3$id = _ref3.id,
|
|
252
|
+
itemId = _ref3$id === void 0 ? null : _ref3$id;
|
|
253
|
+
return id === itemId;
|
|
254
|
+
});
|
|
255
|
+
if (previous) {
|
|
256
|
+
setModalItems((modalItems || []).filter(function (_ref4) {
|
|
257
|
+
var _ref4$id = _ref4.id,
|
|
258
|
+
itemId = _ref4$id === void 0 ? null : _ref4$id;
|
|
259
|
+
return id !== itemId;
|
|
260
|
+
}));
|
|
261
|
+
} else {
|
|
262
|
+
setModalItems([].concat(_toConsumableArray__default["default"](modalItems), [newValue]));
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
} else if (onChange !== null) {
|
|
230
267
|
onChange(newValue);
|
|
231
268
|
setResourceModalOpen(false);
|
|
232
269
|
}
|
|
233
|
-
}, [onChange, setResourceModalOpen]);
|
|
270
|
+
}, [onChange, setResourceModalOpen, allowMultipleUploads, modalItems, setModalItems]);
|
|
271
|
+
console.log(modalItems);
|
|
272
|
+
var confirmResourceModal = React.useCallback(function () {
|
|
273
|
+
if (onChange !== null) {
|
|
274
|
+
onChange(modalItems);
|
|
275
|
+
setResourceModalOpen(false);
|
|
276
|
+
}
|
|
277
|
+
}, [onChange, setResourceModalOpen, allowMultipleUploads]);
|
|
234
278
|
var initialQuery = React.useMemo(function () {
|
|
235
279
|
return {
|
|
236
280
|
types: types
|
|
@@ -258,9 +302,9 @@ var UploadField = function UploadField(_ref) {
|
|
|
258
302
|
_media$data = media.data,
|
|
259
303
|
data = _media$data === void 0 ? {} : _media$data,
|
|
260
304
|
type = media.type;
|
|
261
|
-
var
|
|
262
|
-
|
|
263
|
-
file =
|
|
305
|
+
var _ref6 = data || {},
|
|
306
|
+
_ref6$file = _ref6.file,
|
|
307
|
+
file = _ref6$file === void 0 ? null : _ref6$file;
|
|
264
308
|
var faIcon = null;
|
|
265
309
|
switch (type) {
|
|
266
310
|
case 'audio':
|
|
@@ -389,7 +433,13 @@ var UploadField = function UploadField(_ref) {
|
|
|
389
433
|
},
|
|
390
434
|
withoutActionsColumn: true
|
|
391
435
|
}
|
|
392
|
-
})
|
|
436
|
+
}), allowMultipleUploads ? /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
437
|
+
type: "button",
|
|
438
|
+
theme: "primary",
|
|
439
|
+
onClick: confirmResourceModal,
|
|
440
|
+
disabled: disabled,
|
|
441
|
+
className: "d-block ms-auto mt-2"
|
|
442
|
+
}, /*#__PURE__*/React__default["default"].createElement(Label__default["default"], null, confirmButtonLabel)) : null) : null);
|
|
393
443
|
};
|
|
394
444
|
UploadField.propTypes = propTypes;
|
|
395
445
|
UploadField.defaultProps = defaultProps;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@panneau/field-upload",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.12",
|
|
4
4
|
"description": "An Upload field",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"javascript"
|
|
@@ -59,10 +59,10 @@
|
|
|
59
59
|
"@fortawesome/react-fontawesome": "^0.1.14",
|
|
60
60
|
"@panneau/core": "^3.0.9",
|
|
61
61
|
"@panneau/element-button": "^3.0.9",
|
|
62
|
-
"@panneau/element-card": "^3.0.
|
|
62
|
+
"@panneau/element-card": "^3.0.11",
|
|
63
63
|
"@panneau/element-label": "^3.0.9",
|
|
64
|
-
"@panneau/list-resource-items": "^3.0.
|
|
65
|
-
"@panneau/modal-dialog": "^3.0.
|
|
64
|
+
"@panneau/list-resource-items": "^3.0.12",
|
|
65
|
+
"@panneau/modal-dialog": "^3.0.12",
|
|
66
66
|
"@panneau/themes": "^3.0.9",
|
|
67
67
|
"@uppy/core": "^3.2.0",
|
|
68
68
|
"@uppy/dashboard": "^3.4.0",
|
|
@@ -81,5 +81,5 @@
|
|
|
81
81
|
"publishConfig": {
|
|
82
82
|
"access": "public"
|
|
83
83
|
},
|
|
84
|
-
"gitHead": "
|
|
84
|
+
"gitHead": "8165af45b604374d0e3707536197ed9f3098e83c"
|
|
85
85
|
}
|