@panneau/medias 3.0.182 → 3.0.184
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 +37 -22
- package/lib/index.js +37 -22
- package/package.json +2 -2
package/es/index.js
CHANGED
@@ -14,6 +14,7 @@ import MediaPlayer from '@panneau/element-media-player';
|
|
14
14
|
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
15
15
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
16
16
|
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
17
|
+
import isArray from 'lodash/isArray';
|
17
18
|
import uniqBy from 'lodash/uniqBy';
|
18
19
|
import { PropTypes as PropTypes$1 } from '@panneau/core';
|
19
20
|
import Buttons from '@panneau/element-buttons';
|
@@ -733,7 +734,8 @@ var defaultColumns = [{
|
|
733
734
|
var defaultFilters = [{
|
734
735
|
id: 'search',
|
735
736
|
component: 'search',
|
736
|
-
name: 'search'
|
737
|
+
name: 'search',
|
738
|
+
width: 220
|
737
739
|
}, {
|
738
740
|
id: 'types',
|
739
741
|
component: 'select',
|
@@ -818,6 +820,7 @@ var propTypes$5 = {
|
|
818
820
|
layout: PropTypes.string,
|
819
821
|
layouts: PropTypes.arrayOf(PropTypes.shape({})),
|
820
822
|
theme: PropTypes.string,
|
823
|
+
onUpload: PropTypes.func,
|
821
824
|
onItemsChange: PropTypes.func,
|
822
825
|
onLayoutChange: PropTypes.func,
|
823
826
|
selectable: PropTypes.bool,
|
@@ -835,7 +838,6 @@ var defaultProps$5 = {
|
|
835
838
|
items: null,
|
836
839
|
extraItems: null,
|
837
840
|
types: null,
|
838
|
-
buttons: null,
|
839
841
|
filters: defaultFilters,
|
840
842
|
columns: defaultColumns,
|
841
843
|
fields: defaultFields,
|
@@ -854,6 +856,7 @@ var defaultProps$5 = {
|
|
854
856
|
})
|
855
857
|
}],
|
856
858
|
theme: null,
|
859
|
+
onUpload: null,
|
857
860
|
onItemsChange: null,
|
858
861
|
onLayoutChange: null,
|
859
862
|
selectable: null,
|
@@ -879,6 +882,7 @@ function MediasBrowser(_ref) {
|
|
879
882
|
initialLayout = _ref.layout,
|
880
883
|
layouts = _ref.layouts,
|
881
884
|
theme = _ref.theme,
|
885
|
+
onUpload = _ref.onUpload,
|
882
886
|
onItemsChange = _ref.onItemsChange,
|
883
887
|
onLayoutChange = _ref.onLayoutChange,
|
884
888
|
selectable = _ref.selectable,
|
@@ -959,7 +963,8 @@ function MediasBrowser(_ref) {
|
|
959
963
|
lastPage = _useMedias$pagination2.lastPage,
|
960
964
|
total = _useMedias$pagination2.total,
|
961
965
|
_useMedias$pages = _useMedias.pages,
|
962
|
-
pages = _useMedias$pages === void 0 ? null : _useMedias$pages
|
966
|
+
pages = _useMedias$pages === void 0 ? null : _useMedias$pages,
|
967
|
+
reload = _useMedias.reload;
|
963
968
|
|
964
969
|
// For picker
|
965
970
|
useEffect(function () {
|
@@ -995,6 +1000,21 @@ function MediasBrowser(_ref) {
|
|
995
1000
|
setCurrentMedia(null);
|
996
1001
|
updateItem(item);
|
997
1002
|
}, [setCurrentMedia, updateItem]);
|
1003
|
+
var onMediaUploaded = useCallback(function (medias) {
|
1004
|
+
var rawMedias = isArray(medias) ? medias : [medias];
|
1005
|
+
if (onUpload !== null) {
|
1006
|
+
onUpload(rawMedias).then(function (newMedias) {
|
1007
|
+
if (onSelectionChange !== null) {
|
1008
|
+
onSelectionChange(newMedias);
|
1009
|
+
reload();
|
1010
|
+
}
|
1011
|
+
});
|
1012
|
+
}
|
1013
|
+
if (onSelectionChange !== null) {
|
1014
|
+
onSelectionChange(rawMedias);
|
1015
|
+
reload();
|
1016
|
+
}
|
1017
|
+
}, [onUpload]);
|
998
1018
|
var pagination = /*#__PURE__*/React.createElement(Pagination, {
|
999
1019
|
page: page,
|
1000
1020
|
lastPage: lastPage,
|
@@ -1106,7 +1126,8 @@ function MediasBrowser(_ref) {
|
|
1106
1126
|
className: "ms-auto w-auto text-nowrap mt-2",
|
1107
1127
|
withButton: true,
|
1108
1128
|
withoutMedia: true,
|
1109
|
-
uppyConfig: uppyConfig
|
1129
|
+
uppyConfig: uppyConfig,
|
1130
|
+
onChange: onMediaUploaded
|
1110
1131
|
}) : null), /*#__PURE__*/React.createElement("div", {
|
1111
1132
|
className: classNames(['d-flex', 'mt-1', 'mb-3', {
|
1112
1133
|
'justify-content-between': hasLayouts,
|
@@ -1221,20 +1242,10 @@ function MediasPicker(_ref) {
|
|
1221
1242
|
props = _objectWithoutProperties(_ref, _excluded$4);
|
1222
1243
|
var _useMediasForm = useMediasForm(),
|
1223
1244
|
currentMedia = _useMediasForm.media;
|
1224
|
-
|
1225
|
-
// For selection
|
1226
|
-
var _useState = useState(initialItems),
|
1245
|
+
var _useState = useState(initialSelectedItems || null),
|
1227
1246
|
_useState2 = _slicedToArray(_useState, 2),
|
1228
|
-
|
1229
|
-
|
1230
|
-
var disabled = pageItems === null || pageItems.length < 1;
|
1231
|
-
var onItemsChange = useCallback(function (newPageItems) {
|
1232
|
-
setItems(newPageItems);
|
1233
|
-
}, [setItems]);
|
1234
|
-
var _useState3 = useState(initialSelectedItems || null),
|
1235
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
1236
|
-
selectedItems = _useState4[0],
|
1237
|
-
setSelectedItems = _useState4[1];
|
1247
|
+
selectedItems = _useState2[0],
|
1248
|
+
setSelectedItems = _useState2[1];
|
1238
1249
|
var onSelectionChange = useCallback(function (newSelection) {
|
1239
1250
|
setSelectedItems(newSelection);
|
1240
1251
|
}, [setSelectedItems]);
|
@@ -1249,9 +1260,10 @@ function MediasPicker(_ref) {
|
|
1249
1260
|
}, [selectedItems, parentOnSelectionChange]);
|
1250
1261
|
var onConfirmSelection = useCallback(function () {
|
1251
1262
|
if (onChange !== null) {
|
1252
|
-
onChange(selectedItems);
|
1263
|
+
onChange(selectedItems || null);
|
1253
1264
|
}
|
1254
1265
|
}, [selectedItems, onChange]);
|
1266
|
+
var empty = selectedItems === null || isArray(selectedItems) && selectedItems.length === 0;
|
1255
1267
|
return /*#__PURE__*/React.createElement("div", {
|
1256
1268
|
className: className
|
1257
1269
|
}, /*#__PURE__*/React.createElement(MediasBrowser, Object.assign({
|
@@ -1261,7 +1273,6 @@ function MediasPicker(_ref) {
|
|
1261
1273
|
selectedItems: selectedItems,
|
1262
1274
|
onSelectionChange: onSelectionChange,
|
1263
1275
|
multipleSelection: multipleSelection,
|
1264
|
-
onItemsChange: onItemsChange,
|
1265
1276
|
types: types
|
1266
1277
|
// extraItems={
|
1267
1278
|
// !multiple && initialSelectedItems !== null
|
@@ -1287,10 +1298,14 @@ function MediasPicker(_ref) {
|
|
1287
1298
|
type: "button",
|
1288
1299
|
theme: "primary",
|
1289
1300
|
onClick: onConfirmSelection,
|
1290
|
-
disabled: disabled,
|
1291
|
-
outline: disabled,
|
1292
1301
|
className: "d-block"
|
1293
|
-
}, /*#__PURE__*/React.createElement(FormattedMessage, {
|
1302
|
+
}, empty ? /*#__PURE__*/React.createElement(FormattedMessage, {
|
1303
|
+
id: "Krgf6j",
|
1304
|
+
defaultMessage: [{
|
1305
|
+
"type": 0,
|
1306
|
+
"value": "Clear selection"
|
1307
|
+
}]
|
1308
|
+
}) : /*#__PURE__*/React.createElement(FormattedMessage, {
|
1294
1309
|
id: "rvOVCV",
|
1295
1310
|
defaultMessage: [{
|
1296
1311
|
"type": 0,
|
package/lib/index.js
CHANGED
@@ -16,6 +16,7 @@ var MediaPlayer = require('@panneau/element-media-player');
|
|
16
16
|
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
17
17
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
18
18
|
var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
|
19
|
+
var isArray = require('lodash/isArray');
|
19
20
|
var uniqBy = require('lodash/uniqBy');
|
20
21
|
var core = require('@panneau/core');
|
21
22
|
var Buttons = require('@panneau/element-buttons');
|
@@ -735,7 +736,8 @@ var defaultColumns = [{
|
|
735
736
|
var defaultFilters = [{
|
736
737
|
id: 'search',
|
737
738
|
component: 'search',
|
738
|
-
name: 'search'
|
739
|
+
name: 'search',
|
740
|
+
width: 220
|
739
741
|
}, {
|
740
742
|
id: 'types',
|
741
743
|
component: 'select',
|
@@ -820,6 +822,7 @@ var propTypes$5 = {
|
|
820
822
|
layout: PropTypes.string,
|
821
823
|
layouts: PropTypes.arrayOf(PropTypes.shape({})),
|
822
824
|
theme: PropTypes.string,
|
825
|
+
onUpload: PropTypes.func,
|
823
826
|
onItemsChange: PropTypes.func,
|
824
827
|
onLayoutChange: PropTypes.func,
|
825
828
|
selectable: PropTypes.bool,
|
@@ -837,7 +840,6 @@ var defaultProps$5 = {
|
|
837
840
|
items: null,
|
838
841
|
extraItems: null,
|
839
842
|
types: null,
|
840
|
-
buttons: null,
|
841
843
|
filters: defaultFilters,
|
842
844
|
columns: defaultColumns,
|
843
845
|
fields: defaultFields,
|
@@ -856,6 +858,7 @@ var defaultProps$5 = {
|
|
856
858
|
})
|
857
859
|
}],
|
858
860
|
theme: null,
|
861
|
+
onUpload: null,
|
859
862
|
onItemsChange: null,
|
860
863
|
onLayoutChange: null,
|
861
864
|
selectable: null,
|
@@ -881,6 +884,7 @@ function MediasBrowser(_ref) {
|
|
881
884
|
initialLayout = _ref.layout,
|
882
885
|
layouts = _ref.layouts,
|
883
886
|
theme = _ref.theme,
|
887
|
+
onUpload = _ref.onUpload,
|
884
888
|
onItemsChange = _ref.onItemsChange,
|
885
889
|
onLayoutChange = _ref.onLayoutChange,
|
886
890
|
selectable = _ref.selectable,
|
@@ -961,7 +965,8 @@ function MediasBrowser(_ref) {
|
|
961
965
|
lastPage = _useMedias$pagination2.lastPage,
|
962
966
|
total = _useMedias$pagination2.total,
|
963
967
|
_useMedias$pages = _useMedias.pages,
|
964
|
-
pages = _useMedias$pages === void 0 ? null : _useMedias$pages
|
968
|
+
pages = _useMedias$pages === void 0 ? null : _useMedias$pages,
|
969
|
+
reload = _useMedias.reload;
|
965
970
|
|
966
971
|
// For picker
|
967
972
|
React.useEffect(function () {
|
@@ -997,6 +1002,21 @@ function MediasBrowser(_ref) {
|
|
997
1002
|
setCurrentMedia(null);
|
998
1003
|
updateItem(item);
|
999
1004
|
}, [setCurrentMedia, updateItem]);
|
1005
|
+
var onMediaUploaded = React.useCallback(function (medias) {
|
1006
|
+
var rawMedias = isArray(medias) ? medias : [medias];
|
1007
|
+
if (onUpload !== null) {
|
1008
|
+
onUpload(rawMedias).then(function (newMedias) {
|
1009
|
+
if (onSelectionChange !== null) {
|
1010
|
+
onSelectionChange(newMedias);
|
1011
|
+
reload();
|
1012
|
+
}
|
1013
|
+
});
|
1014
|
+
}
|
1015
|
+
if (onSelectionChange !== null) {
|
1016
|
+
onSelectionChange(rawMedias);
|
1017
|
+
reload();
|
1018
|
+
}
|
1019
|
+
}, [onUpload]);
|
1000
1020
|
var pagination = /*#__PURE__*/React.createElement(Pagination, {
|
1001
1021
|
page: page,
|
1002
1022
|
lastPage: lastPage,
|
@@ -1108,7 +1128,8 @@ function MediasBrowser(_ref) {
|
|
1108
1128
|
className: "ms-auto w-auto text-nowrap mt-2",
|
1109
1129
|
withButton: true,
|
1110
1130
|
withoutMedia: true,
|
1111
|
-
uppyConfig: uppyConfig
|
1131
|
+
uppyConfig: uppyConfig,
|
1132
|
+
onChange: onMediaUploaded
|
1112
1133
|
}) : null), /*#__PURE__*/React.createElement("div", {
|
1113
1134
|
className: classNames(['d-flex', 'mt-1', 'mb-3', {
|
1114
1135
|
'justify-content-between': hasLayouts,
|
@@ -1223,20 +1244,10 @@ function MediasPicker(_ref) {
|
|
1223
1244
|
props = _objectWithoutProperties(_ref, _excluded$4);
|
1224
1245
|
var _useMediasForm = useMediasForm(),
|
1225
1246
|
currentMedia = _useMediasForm.media;
|
1226
|
-
|
1227
|
-
// For selection
|
1228
|
-
var _useState = React.useState(initialItems),
|
1247
|
+
var _useState = React.useState(initialSelectedItems || null),
|
1229
1248
|
_useState2 = _slicedToArray(_useState, 2),
|
1230
|
-
|
1231
|
-
|
1232
|
-
var disabled = pageItems === null || pageItems.length < 1;
|
1233
|
-
var onItemsChange = React.useCallback(function (newPageItems) {
|
1234
|
-
setItems(newPageItems);
|
1235
|
-
}, [setItems]);
|
1236
|
-
var _useState3 = React.useState(initialSelectedItems || null),
|
1237
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
1238
|
-
selectedItems = _useState4[0],
|
1239
|
-
setSelectedItems = _useState4[1];
|
1249
|
+
selectedItems = _useState2[0],
|
1250
|
+
setSelectedItems = _useState2[1];
|
1240
1251
|
var onSelectionChange = React.useCallback(function (newSelection) {
|
1241
1252
|
setSelectedItems(newSelection);
|
1242
1253
|
}, [setSelectedItems]);
|
@@ -1251,9 +1262,10 @@ function MediasPicker(_ref) {
|
|
1251
1262
|
}, [selectedItems, parentOnSelectionChange]);
|
1252
1263
|
var onConfirmSelection = React.useCallback(function () {
|
1253
1264
|
if (onChange !== null) {
|
1254
|
-
onChange(selectedItems);
|
1265
|
+
onChange(selectedItems || null);
|
1255
1266
|
}
|
1256
1267
|
}, [selectedItems, onChange]);
|
1268
|
+
var empty = selectedItems === null || isArray(selectedItems) && selectedItems.length === 0;
|
1257
1269
|
return /*#__PURE__*/React.createElement("div", {
|
1258
1270
|
className: className
|
1259
1271
|
}, /*#__PURE__*/React.createElement(MediasBrowser, Object.assign({
|
@@ -1263,7 +1275,6 @@ function MediasPicker(_ref) {
|
|
1263
1275
|
selectedItems: selectedItems,
|
1264
1276
|
onSelectionChange: onSelectionChange,
|
1265
1277
|
multipleSelection: multipleSelection,
|
1266
|
-
onItemsChange: onItemsChange,
|
1267
1278
|
types: types
|
1268
1279
|
// extraItems={
|
1269
1280
|
// !multiple && initialSelectedItems !== null
|
@@ -1289,10 +1300,14 @@ function MediasPicker(_ref) {
|
|
1289
1300
|
type: "button",
|
1290
1301
|
theme: "primary",
|
1291
1302
|
onClick: onConfirmSelection,
|
1292
|
-
disabled: disabled,
|
1293
|
-
outline: disabled,
|
1294
1303
|
className: "d-block"
|
1295
|
-
}, /*#__PURE__*/React.createElement(reactIntl.FormattedMessage, {
|
1304
|
+
}, empty ? /*#__PURE__*/React.createElement(reactIntl.FormattedMessage, {
|
1305
|
+
id: "Krgf6j",
|
1306
|
+
defaultMessage: [{
|
1307
|
+
"type": 0,
|
1308
|
+
"value": "Clear selection"
|
1309
|
+
}]
|
1310
|
+
}) : /*#__PURE__*/React.createElement(reactIntl.FormattedMessage, {
|
1296
1311
|
id: "rvOVCV",
|
1297
1312
|
defaultMessage: [{
|
1298
1313
|
"type": 0,
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@panneau/medias",
|
3
|
-
"version": "3.0.
|
3
|
+
"version": "3.0.184",
|
4
4
|
"description": "",
|
5
5
|
"keywords": [
|
6
6
|
"javascript"
|
@@ -69,5 +69,5 @@
|
|
69
69
|
"publishConfig": {
|
70
70
|
"access": "public"
|
71
71
|
},
|
72
|
-
"gitHead": "
|
72
|
+
"gitHead": "1d2948618d41595e4c6a40a72f1d9f196cf369ef"
|
73
73
|
}
|