@panneau/medias 3.0.186 → 3.0.189

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.
Files changed (3) hide show
  1. package/es/index.js +27 -16
  2. package/lib/index.js +27 -16
  3. package/package.json +17 -17
package/es/index.js CHANGED
@@ -857,7 +857,7 @@ var defaultProps$5 = {
857
857
  onLayoutChange: null,
858
858
  onMediaFormOpen: null,
859
859
  onMediaFormClose: null,
860
- selectable: null,
860
+ selectable: false,
861
861
  selectedItems: null,
862
862
  onSelectionChange: null,
863
863
  multipleSelection: false,
@@ -965,8 +965,6 @@ function MediasBrowser(_ref) {
965
965
  _useMedias$pages = _useMedias.pages,
966
966
  pages = _useMedias$pages === void 0 ? null : _useMedias$pages,
967
967
  reload = _useMedias.reload;
968
-
969
- // For picker
970
968
  useEffect(function () {
971
969
  if (onItemsChange !== null) {
972
970
  onItemsChange(items);
@@ -1006,25 +1004,37 @@ function MediasBrowser(_ref) {
1006
1004
  setCurrentMedia(null);
1007
1005
  updateItem(item);
1008
1006
  }, [setCurrentMedia, updateItem]);
1007
+ var _useState7 = useState(null),
1008
+ _useState8 = _slicedToArray(_useState7, 2),
1009
+ uploadedMedias = _useState8[0],
1010
+ setUploadedMedias = _useState8[1];
1009
1011
  var onMediaUploaded = useCallback(function () {
1010
1012
  var medias = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1011
1013
  if (medias === null) return;
1012
- var rawMedias = isArray(medias) ? medias : [medias];
1014
+ var rawMedias = (isArray(medias) ? medias : [medias]).filter(function (it) {
1015
+ return it !== null;
1016
+ });
1013
1017
  if (onUpload !== null) {
1014
1018
  onUpload(rawMedias).then(function (newMedias) {
1019
+ var uploadedNewMedias = (isArray(newMedias) ? [].concat(_toConsumableArray(uploadedMedias || []), _toConsumableArray(newMedias)) : [].concat(_toConsumableArray(uploadedMedias || []), [newMedias])).filter(function (it) {
1020
+ return it !== null;
1021
+ });
1022
+ setUploadedMedias(uploadedNewMedias);
1015
1023
  if (onSelectionChange !== null) {
1016
1024
  onSelectionChange(newMedias);
1017
- onQueryReset();
1025
+ onQueryReset(); // think about this
1018
1026
  reload();
1019
1027
  }
1020
1028
  });
1029
+ } else {
1030
+ setUploadedMedias(rawMedias);
1031
+ if (onSelectionChange !== null) {
1032
+ onSelectionChange(rawMedias);
1033
+ onQueryReset();
1034
+ reload();
1035
+ }
1021
1036
  }
1022
- if (onSelectionChange !== null) {
1023
- onSelectionChange(rawMedias);
1024
- onQueryReset();
1025
- reload();
1026
- }
1027
- }, [onUpload]);
1037
+ }, [onUpload, reload, onQueryReset, onSelectionChange, uploadedMedias, setUploadedMedias]);
1028
1038
  var pagination = /*#__PURE__*/React.createElement(Pagination, {
1029
1039
  page: page,
1030
1040
  lastPage: lastPage,
@@ -1085,7 +1095,7 @@ function MediasBrowser(_ref) {
1085
1095
  }, [columns, withTrash, showTrashed]);
1086
1096
  var finalItems = useMemo(function () {
1087
1097
  if (withStickySelection && extraItems !== null) {
1088
- return uniqBy([].concat(_toConsumableArray((extraItems || []).map(function (item) {
1098
+ return uniqBy([].concat(_toConsumableArray(page === 1 ? uploadedMedias || [] : []), _toConsumableArray((extraItems || []).map(function (item) {
1089
1099
  var _item$id = item.id,
1090
1100
  itemId = _item$id === void 0 ? null : _item$id;
1091
1101
  return (allItems || []).find(function () {
@@ -1243,16 +1253,17 @@ function MediasPicker(_ref) {
1243
1253
  setSelectedItems = _useState2[1];
1244
1254
  var onSelectionChange = useCallback(function (newSelection) {
1245
1255
  setSelectedItems(newSelection);
1246
- if (onChange !== null) {
1247
- onChange(selectedItems);
1248
- }
1249
1256
  }, [setSelectedItems]);
1250
1257
 
1251
1258
  // Sync from the top
1252
1259
  useEffect(function () {
1253
1260
  setSelectedItems(initialSelectedItems);
1254
1261
  }, [initialSelectedItems, setSelectedItems]);
1255
- console.log('selectedItems', selectedItems);
1262
+ useEffect(function () {
1263
+ if (onChange !== null) {
1264
+ onChange(selectedItems);
1265
+ }
1266
+ }, [selectedItems, onChange]);
1256
1267
  return /*#__PURE__*/React.createElement("div", {
1257
1268
  className: className
1258
1269
  }, /*#__PURE__*/React.createElement(MediasBrowser, Object.assign({
package/lib/index.js CHANGED
@@ -859,7 +859,7 @@ var defaultProps$5 = {
859
859
  onLayoutChange: null,
860
860
  onMediaFormOpen: null,
861
861
  onMediaFormClose: null,
862
- selectable: null,
862
+ selectable: false,
863
863
  selectedItems: null,
864
864
  onSelectionChange: null,
865
865
  multipleSelection: false,
@@ -967,8 +967,6 @@ function MediasBrowser(_ref) {
967
967
  _useMedias$pages = _useMedias.pages,
968
968
  pages = _useMedias$pages === void 0 ? null : _useMedias$pages,
969
969
  reload = _useMedias.reload;
970
-
971
- // For picker
972
970
  React.useEffect(function () {
973
971
  if (onItemsChange !== null) {
974
972
  onItemsChange(items);
@@ -1008,25 +1006,37 @@ function MediasBrowser(_ref) {
1008
1006
  setCurrentMedia(null);
1009
1007
  updateItem(item);
1010
1008
  }, [setCurrentMedia, updateItem]);
1009
+ var _useState7 = React.useState(null),
1010
+ _useState8 = _slicedToArray(_useState7, 2),
1011
+ uploadedMedias = _useState8[0],
1012
+ setUploadedMedias = _useState8[1];
1011
1013
  var onMediaUploaded = React.useCallback(function () {
1012
1014
  var medias = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1013
1015
  if (medias === null) return;
1014
- var rawMedias = isArray(medias) ? medias : [medias];
1016
+ var rawMedias = (isArray(medias) ? medias : [medias]).filter(function (it) {
1017
+ return it !== null;
1018
+ });
1015
1019
  if (onUpload !== null) {
1016
1020
  onUpload(rawMedias).then(function (newMedias) {
1021
+ var uploadedNewMedias = (isArray(newMedias) ? [].concat(_toConsumableArray(uploadedMedias || []), _toConsumableArray(newMedias)) : [].concat(_toConsumableArray(uploadedMedias || []), [newMedias])).filter(function (it) {
1022
+ return it !== null;
1023
+ });
1024
+ setUploadedMedias(uploadedNewMedias);
1017
1025
  if (onSelectionChange !== null) {
1018
1026
  onSelectionChange(newMedias);
1019
- onQueryReset();
1027
+ onQueryReset(); // think about this
1020
1028
  reload();
1021
1029
  }
1022
1030
  });
1031
+ } else {
1032
+ setUploadedMedias(rawMedias);
1033
+ if (onSelectionChange !== null) {
1034
+ onSelectionChange(rawMedias);
1035
+ onQueryReset();
1036
+ reload();
1037
+ }
1023
1038
  }
1024
- if (onSelectionChange !== null) {
1025
- onSelectionChange(rawMedias);
1026
- onQueryReset();
1027
- reload();
1028
- }
1029
- }, [onUpload]);
1039
+ }, [onUpload, reload, onQueryReset, onSelectionChange, uploadedMedias, setUploadedMedias]);
1030
1040
  var pagination = /*#__PURE__*/React.createElement(Pagination, {
1031
1041
  page: page,
1032
1042
  lastPage: lastPage,
@@ -1087,7 +1097,7 @@ function MediasBrowser(_ref) {
1087
1097
  }, [columns, withTrash, showTrashed]);
1088
1098
  var finalItems = React.useMemo(function () {
1089
1099
  if (withStickySelection && extraItems !== null) {
1090
- return uniqBy([].concat(_toConsumableArray((extraItems || []).map(function (item) {
1100
+ return uniqBy([].concat(_toConsumableArray(page === 1 ? uploadedMedias || [] : []), _toConsumableArray((extraItems || []).map(function (item) {
1091
1101
  var _item$id = item.id,
1092
1102
  itemId = _item$id === void 0 ? null : _item$id;
1093
1103
  return (allItems || []).find(function () {
@@ -1245,16 +1255,17 @@ function MediasPicker(_ref) {
1245
1255
  setSelectedItems = _useState2[1];
1246
1256
  var onSelectionChange = React.useCallback(function (newSelection) {
1247
1257
  setSelectedItems(newSelection);
1248
- if (onChange !== null) {
1249
- onChange(selectedItems);
1250
- }
1251
1258
  }, [setSelectedItems]);
1252
1259
 
1253
1260
  // Sync from the top
1254
1261
  React.useEffect(function () {
1255
1262
  setSelectedItems(initialSelectedItems);
1256
1263
  }, [initialSelectedItems, setSelectedItems]);
1257
- console.log('selectedItems', selectedItems);
1264
+ React.useEffect(function () {
1265
+ if (onChange !== null) {
1266
+ onChange(selectedItems);
1267
+ }
1268
+ }, [selectedItems, onChange]);
1258
1269
  return /*#__PURE__*/React.createElement("div", {
1259
1270
  className: className
1260
1271
  }, /*#__PURE__*/React.createElement(MediasBrowser, Object.assign({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@panneau/medias",
3
- "version": "3.0.186",
3
+ "version": "3.0.189",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "javascript"
@@ -46,21 +46,21 @@
46
46
  },
47
47
  "dependencies": {
48
48
  "@babel/runtime": "^7.12.5",
49
- "@panneau/core": "^3.0.182",
50
- "@panneau/data": "^3.0.182",
51
- "@panneau/display-image": "^3.0.182",
52
- "@panneau/element-button": "^3.0.182",
53
- "@panneau/element-buttons": "^3.0.182",
54
- "@panneau/element-form": "^3.0.182",
55
- "@panneau/element-form-status": "^3.0.182",
56
- "@panneau/element-grid": "^3.0.182",
57
- "@panneau/element-icon": "^3.0.182",
58
- "@panneau/element-media-card": "^3.0.182",
59
- "@panneau/element-media-player": "^3.0.182",
60
- "@panneau/element-pagination": "^3.0.182",
61
- "@panneau/element-table": "^3.0.186",
62
- "@panneau/field-upload": "^3.0.186",
63
- "@panneau/filter-filters": "^3.0.182",
49
+ "@panneau/core": "^3.0.187",
50
+ "@panneau/data": "^3.0.187",
51
+ "@panneau/display-image": "^3.0.187",
52
+ "@panneau/element-button": "^3.0.187",
53
+ "@panneau/element-buttons": "^3.0.187",
54
+ "@panneau/element-form": "^3.0.187",
55
+ "@panneau/element-form-status": "^3.0.187",
56
+ "@panneau/element-grid": "^3.0.187",
57
+ "@panneau/element-icon": "^3.0.187",
58
+ "@panneau/element-media-card": "^3.0.187",
59
+ "@panneau/element-media-player": "^3.0.187",
60
+ "@panneau/element-pagination": "^3.0.187",
61
+ "@panneau/element-table": "^3.0.189",
62
+ "@panneau/field-upload": "^3.0.189",
63
+ "@panneau/filter-filters": "^3.0.187",
64
64
  "classnames": "^2.5.1",
65
65
  "lodash": "^4.17.21",
66
66
  "prop-types": "^15.7.2",
@@ -69,5 +69,5 @@
69
69
  "publishConfig": {
70
70
  "access": "public"
71
71
  },
72
- "gitHead": "28e6bd3e2185ae5ad5f0962f9883d1777d6a25aa"
72
+ "gitHead": "8858e57d8a8e8f70d35ac3bcb037fd884102c819"
73
73
  }