@panneau/medias 3.0.185 → 3.0.186
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 +32 -47
- package/lib/index.js +32 -47
- package/package.json +4 -4
package/es/index.js
CHANGED
@@ -817,6 +817,8 @@ var propTypes$5 = {
|
|
817
817
|
onUpload: PropTypes.func,
|
818
818
|
onItemsChange: PropTypes.func,
|
819
819
|
onLayoutChange: PropTypes.func,
|
820
|
+
onMediaFormOpen: PropTypes.func,
|
821
|
+
onMediaFormClose: PropTypes.func,
|
820
822
|
selectable: PropTypes.bool,
|
821
823
|
selectedItems: PropTypes.arrayOf(PropTypes.shape({})),
|
822
824
|
onSelectionChange: PropTypes.func,
|
@@ -853,6 +855,8 @@ var defaultProps$5 = {
|
|
853
855
|
onUpload: null,
|
854
856
|
onItemsChange: null,
|
855
857
|
onLayoutChange: null,
|
858
|
+
onMediaFormOpen: null,
|
859
|
+
onMediaFormClose: null,
|
856
860
|
selectable: null,
|
857
861
|
selectedItems: null,
|
858
862
|
onSelectionChange: null,
|
@@ -879,6 +883,8 @@ function MediasBrowser(_ref) {
|
|
879
883
|
onUpload = _ref.onUpload,
|
880
884
|
onItemsChange = _ref.onItemsChange,
|
881
885
|
onLayoutChange = _ref.onLayoutChange,
|
886
|
+
onMediaFormOpen = _ref.onMediaFormOpen,
|
887
|
+
onMediaFormClose = _ref.onMediaFormClose,
|
882
888
|
selectable = _ref.selectable,
|
883
889
|
selectedItems = _ref.selectedItems,
|
884
890
|
onSelectionChange = _ref.onSelectionChange,
|
@@ -982,6 +988,14 @@ function MediasBrowser(_ref) {
|
|
982
988
|
var _useMedia = useMedia(),
|
983
989
|
currentMedia = _useMedia.media,
|
984
990
|
setCurrentMedia = _useMedia.setMedia;
|
991
|
+
useEffect(function () {
|
992
|
+
if (currentMedia !== null && onMediaFormOpen !== null) {
|
993
|
+
onMediaFormOpen();
|
994
|
+
}
|
995
|
+
if (currentMedia === null && onMediaFormClose !== null) {
|
996
|
+
onMediaFormClose();
|
997
|
+
}
|
998
|
+
}, [currentMedia]);
|
985
999
|
var onOpenMedia = useCallback(function (media) {
|
986
1000
|
setCurrentMedia(media);
|
987
1001
|
}, [setCurrentMedia]);
|
@@ -992,18 +1006,22 @@ function MediasBrowser(_ref) {
|
|
992
1006
|
setCurrentMedia(null);
|
993
1007
|
updateItem(item);
|
994
1008
|
}, [setCurrentMedia, updateItem]);
|
995
|
-
var onMediaUploaded = useCallback(function (
|
1009
|
+
var onMediaUploaded = useCallback(function () {
|
1010
|
+
var medias = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
1011
|
+
if (medias === null) return;
|
996
1012
|
var rawMedias = isArray(medias) ? medias : [medias];
|
997
1013
|
if (onUpload !== null) {
|
998
1014
|
onUpload(rawMedias).then(function (newMedias) {
|
999
1015
|
if (onSelectionChange !== null) {
|
1000
1016
|
onSelectionChange(newMedias);
|
1017
|
+
onQueryReset();
|
1001
1018
|
reload();
|
1002
1019
|
}
|
1003
1020
|
});
|
1004
1021
|
}
|
1005
1022
|
if (onSelectionChange !== null) {
|
1006
1023
|
onSelectionChange(rawMedias);
|
1024
|
+
onQueryReset();
|
1007
1025
|
reload();
|
1008
1026
|
}
|
1009
1027
|
}, [onUpload]);
|
@@ -1100,7 +1118,7 @@ function MediasBrowser(_ref) {
|
|
1100
1118
|
}]
|
1101
1119
|
}))), /*#__PURE__*/React.createElement(MediaForm, {
|
1102
1120
|
value: currentMedia,
|
1103
|
-
fields:
|
1121
|
+
fields: fields,
|
1104
1122
|
onChange: setCurrentMedia,
|
1105
1123
|
onSave: onSaveMedia,
|
1106
1124
|
onClose: onCloseMedia,
|
@@ -1198,70 +1216,43 @@ function MediasBrowser(_ref) {
|
|
1198
1216
|
MediasBrowser.propTypes = propTypes$5;
|
1199
1217
|
MediasBrowser.defaultProps = defaultProps$5;
|
1200
1218
|
|
1201
|
-
var _excluded$4 = ["items", "value", "
|
1202
|
-
|
1203
|
-
// import { useMediasForm } from './MediasFormContext';
|
1204
|
-
|
1219
|
+
var _excluded$4 = ["items", "value", "onChange", "multiple", "className"];
|
1205
1220
|
var propTypes$4 = {
|
1206
|
-
// eslint-disable-next-line react/forbid-prop-types
|
1207
1221
|
items: PropTypes.arrayOf(PropTypes.shape({})),
|
1208
1222
|
value: PropTypes.arrayOf(PropTypes.shape({})),
|
1209
|
-
|
1210
|
-
multipleSelection: PropTypes.bool,
|
1211
|
-
types: PropTypes.arrayOf(PropTypes.string),
|
1223
|
+
multiple: PropTypes.bool,
|
1212
1224
|
onChange: PropTypes.func.isRequired,
|
1213
|
-
onClose: PropTypes.func,
|
1214
|
-
withoutButtons: PropTypes.bool,
|
1215
1225
|
className: PropTypes.string
|
1216
1226
|
};
|
1217
1227
|
var defaultProps$4 = {
|
1218
1228
|
items: null,
|
1219
1229
|
value: null,
|
1220
|
-
|
1221
|
-
multipleSelection: false,
|
1222
|
-
types: null,
|
1223
|
-
onClose: null,
|
1224
|
-
withoutButtons: false,
|
1230
|
+
multiple: false,
|
1225
1231
|
className: null
|
1226
1232
|
};
|
1227
1233
|
function MediasPicker(_ref) {
|
1228
1234
|
var initialItems = _ref.items,
|
1229
1235
|
initialSelectedItems = _ref.value,
|
1230
|
-
|
1231
|
-
|
1232
|
-
|
1233
|
-
_ref.onChange;
|
1234
|
-
_ref.onClose;
|
1235
|
-
_ref.withoutButtons;
|
1236
|
-
var className = _ref.className,
|
1236
|
+
onChange = _ref.onChange,
|
1237
|
+
multiple = _ref.multiple,
|
1238
|
+
className = _ref.className,
|
1237
1239
|
props = _objectWithoutProperties(_ref, _excluded$4);
|
1238
|
-
// const { media: currentMedia } = useMediasForm();
|
1239
|
-
|
1240
1240
|
var _useState = useState(initialSelectedItems || null),
|
1241
1241
|
_useState2 = _slicedToArray(_useState, 2),
|
1242
1242
|
selectedItems = _useState2[0],
|
1243
1243
|
setSelectedItems = _useState2[1];
|
1244
1244
|
var onSelectionChange = useCallback(function (newSelection) {
|
1245
1245
|
setSelectedItems(newSelection);
|
1246
|
+
if (onChange !== null) {
|
1247
|
+
onChange(selectedItems);
|
1248
|
+
}
|
1246
1249
|
}, [setSelectedItems]);
|
1250
|
+
|
1247
1251
|
// Sync from the top
|
1248
1252
|
useEffect(function () {
|
1249
1253
|
setSelectedItems(initialSelectedItems);
|
1250
1254
|
}, [initialSelectedItems, setSelectedItems]);
|
1251
|
-
|
1252
|
-
if (parentOnSelectionChange !== null) {
|
1253
|
-
parentOnSelectionChange(selectedItems);
|
1254
|
-
}
|
1255
|
-
}, [selectedItems, parentOnSelectionChange]);
|
1256
|
-
|
1257
|
-
// const onConfirmSelection = useCallback(() => {
|
1258
|
-
// if (onChange !== null) {
|
1259
|
-
// onChange(selectedItems || null);
|
1260
|
-
// }
|
1261
|
-
// }, [selectedItems, onChange]);
|
1262
|
-
|
1263
|
-
// const empty = selectedItems === null || (isArray(selectedItems) && selectedItems.length === 0);
|
1264
|
-
|
1255
|
+
console.log('selectedItems', selectedItems);
|
1265
1256
|
return /*#__PURE__*/React.createElement("div", {
|
1266
1257
|
className: className
|
1267
1258
|
}, /*#__PURE__*/React.createElement(MediasBrowser, Object.assign({
|
@@ -1270,13 +1261,7 @@ function MediasPicker(_ref) {
|
|
1270
1261
|
selectable: true,
|
1271
1262
|
selectedItems: selectedItems,
|
1272
1263
|
onSelectionChange: onSelectionChange,
|
1273
|
-
multipleSelection:
|
1274
|
-
types: types
|
1275
|
-
// extraItems={
|
1276
|
-
// !multiple && initialSelectedItems !== null
|
1277
|
-
// ? [initialSelectedItems]
|
1278
|
-
// : initialSelectedItems
|
1279
|
-
// }
|
1264
|
+
multipleSelection: multiple
|
1280
1265
|
}, props)));
|
1281
1266
|
}
|
1282
1267
|
MediasPicker.propTypes = propTypes$4;
|
package/lib/index.js
CHANGED
@@ -819,6 +819,8 @@ var propTypes$5 = {
|
|
819
819
|
onUpload: PropTypes.func,
|
820
820
|
onItemsChange: PropTypes.func,
|
821
821
|
onLayoutChange: PropTypes.func,
|
822
|
+
onMediaFormOpen: PropTypes.func,
|
823
|
+
onMediaFormClose: PropTypes.func,
|
822
824
|
selectable: PropTypes.bool,
|
823
825
|
selectedItems: PropTypes.arrayOf(PropTypes.shape({})),
|
824
826
|
onSelectionChange: PropTypes.func,
|
@@ -855,6 +857,8 @@ var defaultProps$5 = {
|
|
855
857
|
onUpload: null,
|
856
858
|
onItemsChange: null,
|
857
859
|
onLayoutChange: null,
|
860
|
+
onMediaFormOpen: null,
|
861
|
+
onMediaFormClose: null,
|
858
862
|
selectable: null,
|
859
863
|
selectedItems: null,
|
860
864
|
onSelectionChange: null,
|
@@ -881,6 +885,8 @@ function MediasBrowser(_ref) {
|
|
881
885
|
onUpload = _ref.onUpload,
|
882
886
|
onItemsChange = _ref.onItemsChange,
|
883
887
|
onLayoutChange = _ref.onLayoutChange,
|
888
|
+
onMediaFormOpen = _ref.onMediaFormOpen,
|
889
|
+
onMediaFormClose = _ref.onMediaFormClose,
|
884
890
|
selectable = _ref.selectable,
|
885
891
|
selectedItems = _ref.selectedItems,
|
886
892
|
onSelectionChange = _ref.onSelectionChange,
|
@@ -984,6 +990,14 @@ function MediasBrowser(_ref) {
|
|
984
990
|
var _useMedia = useMedia(),
|
985
991
|
currentMedia = _useMedia.media,
|
986
992
|
setCurrentMedia = _useMedia.setMedia;
|
993
|
+
React.useEffect(function () {
|
994
|
+
if (currentMedia !== null && onMediaFormOpen !== null) {
|
995
|
+
onMediaFormOpen();
|
996
|
+
}
|
997
|
+
if (currentMedia === null && onMediaFormClose !== null) {
|
998
|
+
onMediaFormClose();
|
999
|
+
}
|
1000
|
+
}, [currentMedia]);
|
987
1001
|
var onOpenMedia = React.useCallback(function (media) {
|
988
1002
|
setCurrentMedia(media);
|
989
1003
|
}, [setCurrentMedia]);
|
@@ -994,18 +1008,22 @@ function MediasBrowser(_ref) {
|
|
994
1008
|
setCurrentMedia(null);
|
995
1009
|
updateItem(item);
|
996
1010
|
}, [setCurrentMedia, updateItem]);
|
997
|
-
var onMediaUploaded = React.useCallback(function (
|
1011
|
+
var onMediaUploaded = React.useCallback(function () {
|
1012
|
+
var medias = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
1013
|
+
if (medias === null) return;
|
998
1014
|
var rawMedias = isArray(medias) ? medias : [medias];
|
999
1015
|
if (onUpload !== null) {
|
1000
1016
|
onUpload(rawMedias).then(function (newMedias) {
|
1001
1017
|
if (onSelectionChange !== null) {
|
1002
1018
|
onSelectionChange(newMedias);
|
1019
|
+
onQueryReset();
|
1003
1020
|
reload();
|
1004
1021
|
}
|
1005
1022
|
});
|
1006
1023
|
}
|
1007
1024
|
if (onSelectionChange !== null) {
|
1008
1025
|
onSelectionChange(rawMedias);
|
1026
|
+
onQueryReset();
|
1009
1027
|
reload();
|
1010
1028
|
}
|
1011
1029
|
}, [onUpload]);
|
@@ -1102,7 +1120,7 @@ function MediasBrowser(_ref) {
|
|
1102
1120
|
}]
|
1103
1121
|
}))), /*#__PURE__*/React.createElement(MediaForm, {
|
1104
1122
|
value: currentMedia,
|
1105
|
-
fields:
|
1123
|
+
fields: fields,
|
1106
1124
|
onChange: setCurrentMedia,
|
1107
1125
|
onSave: onSaveMedia,
|
1108
1126
|
onClose: onCloseMedia,
|
@@ -1200,70 +1218,43 @@ function MediasBrowser(_ref) {
|
|
1200
1218
|
MediasBrowser.propTypes = propTypes$5;
|
1201
1219
|
MediasBrowser.defaultProps = defaultProps$5;
|
1202
1220
|
|
1203
|
-
var _excluded$4 = ["items", "value", "
|
1204
|
-
|
1205
|
-
// import { useMediasForm } from './MediasFormContext';
|
1206
|
-
|
1221
|
+
var _excluded$4 = ["items", "value", "onChange", "multiple", "className"];
|
1207
1222
|
var propTypes$4 = {
|
1208
|
-
// eslint-disable-next-line react/forbid-prop-types
|
1209
1223
|
items: PropTypes.arrayOf(PropTypes.shape({})),
|
1210
1224
|
value: PropTypes.arrayOf(PropTypes.shape({})),
|
1211
|
-
|
1212
|
-
multipleSelection: PropTypes.bool,
|
1213
|
-
types: PropTypes.arrayOf(PropTypes.string),
|
1225
|
+
multiple: PropTypes.bool,
|
1214
1226
|
onChange: PropTypes.func.isRequired,
|
1215
|
-
onClose: PropTypes.func,
|
1216
|
-
withoutButtons: PropTypes.bool,
|
1217
1227
|
className: PropTypes.string
|
1218
1228
|
};
|
1219
1229
|
var defaultProps$4 = {
|
1220
1230
|
items: null,
|
1221
1231
|
value: null,
|
1222
|
-
|
1223
|
-
multipleSelection: false,
|
1224
|
-
types: null,
|
1225
|
-
onClose: null,
|
1226
|
-
withoutButtons: false,
|
1232
|
+
multiple: false,
|
1227
1233
|
className: null
|
1228
1234
|
};
|
1229
1235
|
function MediasPicker(_ref) {
|
1230
1236
|
var initialItems = _ref.items,
|
1231
1237
|
initialSelectedItems = _ref.value,
|
1232
|
-
|
1233
|
-
|
1234
|
-
|
1235
|
-
_ref.onChange;
|
1236
|
-
_ref.onClose;
|
1237
|
-
_ref.withoutButtons;
|
1238
|
-
var className = _ref.className,
|
1238
|
+
onChange = _ref.onChange,
|
1239
|
+
multiple = _ref.multiple,
|
1240
|
+
className = _ref.className,
|
1239
1241
|
props = _objectWithoutProperties(_ref, _excluded$4);
|
1240
|
-
// const { media: currentMedia } = useMediasForm();
|
1241
|
-
|
1242
1242
|
var _useState = React.useState(initialSelectedItems || null),
|
1243
1243
|
_useState2 = _slicedToArray(_useState, 2),
|
1244
1244
|
selectedItems = _useState2[0],
|
1245
1245
|
setSelectedItems = _useState2[1];
|
1246
1246
|
var onSelectionChange = React.useCallback(function (newSelection) {
|
1247
1247
|
setSelectedItems(newSelection);
|
1248
|
+
if (onChange !== null) {
|
1249
|
+
onChange(selectedItems);
|
1250
|
+
}
|
1248
1251
|
}, [setSelectedItems]);
|
1252
|
+
|
1249
1253
|
// Sync from the top
|
1250
1254
|
React.useEffect(function () {
|
1251
1255
|
setSelectedItems(initialSelectedItems);
|
1252
1256
|
}, [initialSelectedItems, setSelectedItems]);
|
1253
|
-
|
1254
|
-
if (parentOnSelectionChange !== null) {
|
1255
|
-
parentOnSelectionChange(selectedItems);
|
1256
|
-
}
|
1257
|
-
}, [selectedItems, parentOnSelectionChange]);
|
1258
|
-
|
1259
|
-
// const onConfirmSelection = useCallback(() => {
|
1260
|
-
// if (onChange !== null) {
|
1261
|
-
// onChange(selectedItems || null);
|
1262
|
-
// }
|
1263
|
-
// }, [selectedItems, onChange]);
|
1264
|
-
|
1265
|
-
// const empty = selectedItems === null || (isArray(selectedItems) && selectedItems.length === 0);
|
1266
|
-
|
1257
|
+
console.log('selectedItems', selectedItems);
|
1267
1258
|
return /*#__PURE__*/React.createElement("div", {
|
1268
1259
|
className: className
|
1269
1260
|
}, /*#__PURE__*/React.createElement(MediasBrowser, Object.assign({
|
@@ -1272,13 +1263,7 @@ function MediasPicker(_ref) {
|
|
1272
1263
|
selectable: true,
|
1273
1264
|
selectedItems: selectedItems,
|
1274
1265
|
onSelectionChange: onSelectionChange,
|
1275
|
-
multipleSelection:
|
1276
|
-
types: types
|
1277
|
-
// extraItems={
|
1278
|
-
// !multiple && initialSelectedItems !== null
|
1279
|
-
// ? [initialSelectedItems]
|
1280
|
-
// : initialSelectedItems
|
1281
|
-
// }
|
1266
|
+
multipleSelection: multiple
|
1282
1267
|
}, props)));
|
1283
1268
|
}
|
1284
1269
|
MediasPicker.propTypes = propTypes$4;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@panneau/medias",
|
3
|
-
"version": "3.0.
|
3
|
+
"version": "3.0.186",
|
4
4
|
"description": "",
|
5
5
|
"keywords": [
|
6
6
|
"javascript"
|
@@ -58,8 +58,8 @@
|
|
58
58
|
"@panneau/element-media-card": "^3.0.182",
|
59
59
|
"@panneau/element-media-player": "^3.0.182",
|
60
60
|
"@panneau/element-pagination": "^3.0.182",
|
61
|
-
"@panneau/element-table": "^3.0.
|
62
|
-
"@panneau/field-upload": "^3.0.
|
61
|
+
"@panneau/element-table": "^3.0.186",
|
62
|
+
"@panneau/field-upload": "^3.0.186",
|
63
63
|
"@panneau/filter-filters": "^3.0.182",
|
64
64
|
"classnames": "^2.5.1",
|
65
65
|
"lodash": "^4.17.21",
|
@@ -69,5 +69,5 @@
|
|
69
69
|
"publishConfig": {
|
70
70
|
"access": "public"
|
71
71
|
},
|
72
|
-
"gitHead": "
|
72
|
+
"gitHead": "28e6bd3e2185ae5ad5f0962f9883d1777d6a25aa"
|
73
73
|
}
|