@panneau/medias 3.0.192 → 3.0.193

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 +23 -10
  2. package/lib/index.js +23 -10
  3. package/package.json +17 -17
package/es/index.js CHANGED
@@ -1008,6 +1008,10 @@ function MediasBrowser(_ref) {
1008
1008
  _useState8 = _slicedToArray(_useState7, 2),
1009
1009
  uploadedMedias = _useState8[0],
1010
1010
  setUploadedMedias = _useState8[1];
1011
+ var _useState9 = useState(false),
1012
+ _useState10 = _slicedToArray(_useState9, 2),
1013
+ uploadProcessing = _useState10[0],
1014
+ setUploadProcessing = _useState10[1];
1011
1015
  var onUploadComplete = useCallback(function () {
1012
1016
  var medias = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1013
1017
  if (medias === null) return;
@@ -1015,18 +1019,20 @@ function MediasBrowser(_ref) {
1015
1019
  return it !== null;
1016
1020
  });
1017
1021
  if (onMediaUploaded !== null) {
1018
- console.log('rawMedias', rawMedias);
1022
+ setUploadProcessing(true);
1019
1023
  onMediaUploaded(rawMedias).then(function (newMedias) {
1020
1024
  var uploadedNewMedias = (isArray(newMedias) ? [].concat(_toConsumableArray(uploadedMedias || []), _toConsumableArray(newMedias)) : [].concat(_toConsumableArray(uploadedMedias || []), [newMedias])).filter(function (it) {
1021
1025
  return it !== null;
1022
1026
  });
1023
1027
  setUploadedMedias(uploadedNewMedias);
1024
- console.log('uploaded', uploadedNewMedias, onSelectionChange);
1025
1028
  if (onSelectionChange !== null) {
1026
1029
  onSelectionChange(newMedias);
1027
1030
  onQueryReset(); // think about this
1028
1031
  reload();
1029
1032
  }
1033
+ setUploadProcessing(false);
1034
+ })["catch"](function () {
1035
+ setUploadProcessing(false);
1030
1036
  });
1031
1037
  } else {
1032
1038
  setUploadedMedias(rawMedias);
@@ -1036,7 +1042,7 @@ function MediasBrowser(_ref) {
1036
1042
  reload();
1037
1043
  }
1038
1044
  }
1039
- }, [onMediaUploaded, reload, onQueryReset, onSelectionChange, uploadedMedias, setUploadedMedias]);
1045
+ }, [onMediaUploaded, reload, onQueryReset, onSelectionChange, uploadedMedias, setUploadedMedias, setUploadProcessing]);
1040
1046
  var pagination = /*#__PURE__*/React.createElement(Pagination, {
1041
1047
  page: page,
1042
1048
  lastPage: lastPage,
@@ -1093,7 +1099,6 @@ function MediasBrowser(_ref) {
1093
1099
  });
1094
1100
  }
1095
1101
  if (columnId === 'actions') {
1096
- // console.log('column', column);
1097
1102
  var _ref6 = column || {},
1098
1103
  _ref6$actions = _ref6.actions,
1099
1104
  actions = _ref6$actions === void 0 ? [] : _ref6$actions;
@@ -1111,8 +1116,14 @@ function MediasBrowser(_ref) {
1111
1116
  }) : columns;
1112
1117
  }, [columns, withTrash, showTrashed]);
1113
1118
  var finalItems = useMemo(function () {
1114
- if (withStickySelection && extraItems !== null) {
1115
- return uniqBy([].concat(_toConsumableArray(page === 1 ? uploadedMedias || [] : []), _toConsumableArray((extraItems || []).map(function (item) {
1119
+ if (withStickySelection && (extraItems !== null || uploadedMedias !== null || uploadProcessing === true)) {
1120
+ return uniqBy([].concat(_toConsumableArray(uploadProcessing ? [{
1121
+ id: '-',
1122
+ loading: true,
1123
+ rowDisabled: true,
1124
+ actionsDisabled: true,
1125
+ selectionDisabled: true
1126
+ }] : null), _toConsumableArray(page === 1 ? uploadedMedias || [] : []), _toConsumableArray((extraItems || []).map(function (item) {
1116
1127
  var _item$id = item.id,
1117
1128
  itemId = _item$id === void 0 ? null : _item$id;
1118
1129
  return (allItems || []).find(function () {
@@ -1128,7 +1139,7 @@ function MediasBrowser(_ref) {
1128
1139
  });
1129
1140
  }
1130
1141
  return items;
1131
- }, [items, page, allItems, withStickySelection, extraItems]);
1142
+ }, [items, page, allItems, withStickySelection, extraItems, uploadProcessing]);
1132
1143
  return /*#__PURE__*/React.createElement("div", {
1133
1144
  className: className
1134
1145
  }, currentMedia !== null ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
@@ -1164,7 +1175,9 @@ function MediasBrowser(_ref) {
1164
1175
  withButton: true,
1165
1176
  withoutMedia: true,
1166
1177
  uppyConfig: uppyConfig,
1167
- onChange: onUploadComplete
1178
+ onChange: onUploadComplete,
1179
+ disabled: uploadProcessing,
1180
+ loading: uploadProcessing
1168
1181
  }) : null), /*#__PURE__*/React.createElement("div", {
1169
1182
  className: classNames(['d-flex', 'mt-1', 'mb-3', {
1170
1183
  'justify-content-between': hasLayouts,
@@ -1197,7 +1210,7 @@ function MediasBrowser(_ref) {
1197
1210
  },
1198
1211
  selectable: selectable,
1199
1212
  selectedItems: selectedItems,
1200
- onSelectionChange: onSelectionChange,
1213
+ onSelectionChange: uploadProcessing ? null : onSelectionChange,
1201
1214
  multipleSelection: multipleSelection,
1202
1215
  items: finalItems || [],
1203
1216
  loading: loading
@@ -1209,7 +1222,7 @@ function MediasBrowser(_ref) {
1209
1222
  }, "\u2014"),
1210
1223
  selectable: selectable,
1211
1224
  selectedItems: selectedItems,
1212
- onSelectionChange: onSelectionChange,
1225
+ onSelectionChange: uploadProcessing ? null : onSelectionChange,
1213
1226
  multipleSelection: multipleSelection,
1214
1227
  items: finalItems,
1215
1228
  loading: loading,
package/lib/index.js CHANGED
@@ -1010,6 +1010,10 @@ function MediasBrowser(_ref) {
1010
1010
  _useState8 = _slicedToArray(_useState7, 2),
1011
1011
  uploadedMedias = _useState8[0],
1012
1012
  setUploadedMedias = _useState8[1];
1013
+ var _useState9 = React.useState(false),
1014
+ _useState10 = _slicedToArray(_useState9, 2),
1015
+ uploadProcessing = _useState10[0],
1016
+ setUploadProcessing = _useState10[1];
1013
1017
  var onUploadComplete = React.useCallback(function () {
1014
1018
  var medias = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1015
1019
  if (medias === null) return;
@@ -1017,18 +1021,20 @@ function MediasBrowser(_ref) {
1017
1021
  return it !== null;
1018
1022
  });
1019
1023
  if (onMediaUploaded !== null) {
1020
- console.log('rawMedias', rawMedias);
1024
+ setUploadProcessing(true);
1021
1025
  onMediaUploaded(rawMedias).then(function (newMedias) {
1022
1026
  var uploadedNewMedias = (isArray(newMedias) ? [].concat(_toConsumableArray(uploadedMedias || []), _toConsumableArray(newMedias)) : [].concat(_toConsumableArray(uploadedMedias || []), [newMedias])).filter(function (it) {
1023
1027
  return it !== null;
1024
1028
  });
1025
1029
  setUploadedMedias(uploadedNewMedias);
1026
- console.log('uploaded', uploadedNewMedias, onSelectionChange);
1027
1030
  if (onSelectionChange !== null) {
1028
1031
  onSelectionChange(newMedias);
1029
1032
  onQueryReset(); // think about this
1030
1033
  reload();
1031
1034
  }
1035
+ setUploadProcessing(false);
1036
+ })["catch"](function () {
1037
+ setUploadProcessing(false);
1032
1038
  });
1033
1039
  } else {
1034
1040
  setUploadedMedias(rawMedias);
@@ -1038,7 +1044,7 @@ function MediasBrowser(_ref) {
1038
1044
  reload();
1039
1045
  }
1040
1046
  }
1041
- }, [onMediaUploaded, reload, onQueryReset, onSelectionChange, uploadedMedias, setUploadedMedias]);
1047
+ }, [onMediaUploaded, reload, onQueryReset, onSelectionChange, uploadedMedias, setUploadedMedias, setUploadProcessing]);
1042
1048
  var pagination = /*#__PURE__*/React.createElement(Pagination, {
1043
1049
  page: page,
1044
1050
  lastPage: lastPage,
@@ -1095,7 +1101,6 @@ function MediasBrowser(_ref) {
1095
1101
  });
1096
1102
  }
1097
1103
  if (columnId === 'actions') {
1098
- // console.log('column', column);
1099
1104
  var _ref6 = column || {},
1100
1105
  _ref6$actions = _ref6.actions,
1101
1106
  actions = _ref6$actions === void 0 ? [] : _ref6$actions;
@@ -1113,8 +1118,14 @@ function MediasBrowser(_ref) {
1113
1118
  }) : columns;
1114
1119
  }, [columns, withTrash, showTrashed]);
1115
1120
  var finalItems = React.useMemo(function () {
1116
- if (withStickySelection && extraItems !== null) {
1117
- return uniqBy([].concat(_toConsumableArray(page === 1 ? uploadedMedias || [] : []), _toConsumableArray((extraItems || []).map(function (item) {
1121
+ if (withStickySelection && (extraItems !== null || uploadedMedias !== null || uploadProcessing === true)) {
1122
+ return uniqBy([].concat(_toConsumableArray(uploadProcessing ? [{
1123
+ id: '-',
1124
+ loading: true,
1125
+ rowDisabled: true,
1126
+ actionsDisabled: true,
1127
+ selectionDisabled: true
1128
+ }] : null), _toConsumableArray(page === 1 ? uploadedMedias || [] : []), _toConsumableArray((extraItems || []).map(function (item) {
1118
1129
  var _item$id = item.id,
1119
1130
  itemId = _item$id === void 0 ? null : _item$id;
1120
1131
  return (allItems || []).find(function () {
@@ -1130,7 +1141,7 @@ function MediasBrowser(_ref) {
1130
1141
  });
1131
1142
  }
1132
1143
  return items;
1133
- }, [items, page, allItems, withStickySelection, extraItems]);
1144
+ }, [items, page, allItems, withStickySelection, extraItems, uploadProcessing]);
1134
1145
  return /*#__PURE__*/React.createElement("div", {
1135
1146
  className: className
1136
1147
  }, currentMedia !== null ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
@@ -1166,7 +1177,9 @@ function MediasBrowser(_ref) {
1166
1177
  withButton: true,
1167
1178
  withoutMedia: true,
1168
1179
  uppyConfig: uppyConfig,
1169
- onChange: onUploadComplete
1180
+ onChange: onUploadComplete,
1181
+ disabled: uploadProcessing,
1182
+ loading: uploadProcessing
1170
1183
  }) : null), /*#__PURE__*/React.createElement("div", {
1171
1184
  className: classNames(['d-flex', 'mt-1', 'mb-3', {
1172
1185
  'justify-content-between': hasLayouts,
@@ -1199,7 +1212,7 @@ function MediasBrowser(_ref) {
1199
1212
  },
1200
1213
  selectable: selectable,
1201
1214
  selectedItems: selectedItems,
1202
- onSelectionChange: onSelectionChange,
1215
+ onSelectionChange: uploadProcessing ? null : onSelectionChange,
1203
1216
  multipleSelection: multipleSelection,
1204
1217
  items: finalItems || [],
1205
1218
  loading: loading
@@ -1211,7 +1224,7 @@ function MediasBrowser(_ref) {
1211
1224
  }, "\u2014"),
1212
1225
  selectable: selectable,
1213
1226
  selectedItems: selectedItems,
1214
- onSelectionChange: onSelectionChange,
1227
+ onSelectionChange: uploadProcessing ? null : onSelectionChange,
1215
1228
  multipleSelection: multipleSelection,
1216
1229
  items: finalItems,
1217
1230
  loading: loading,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@panneau/medias",
3
- "version": "3.0.192",
3
+ "version": "3.0.193",
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.192",
50
- "@panneau/data": "^3.0.192",
51
- "@panneau/display-image": "^3.0.192",
52
- "@panneau/element-button": "^3.0.192",
53
- "@panneau/element-buttons": "^3.0.192",
54
- "@panneau/element-form": "^3.0.192",
55
- "@panneau/element-form-status": "^3.0.192",
56
- "@panneau/element-grid": "^3.0.192",
57
- "@panneau/element-icon": "^3.0.192",
58
- "@panneau/element-media-card": "^3.0.192",
59
- "@panneau/element-media-player": "^3.0.192",
60
- "@panneau/element-pagination": "^3.0.192",
61
- "@panneau/element-table": "^3.0.192",
62
- "@panneau/field-upload": "^3.0.192",
63
- "@panneau/filter-filters": "^3.0.192",
49
+ "@panneau/core": "^3.0.193",
50
+ "@panneau/data": "^3.0.193",
51
+ "@panneau/display-image": "^3.0.193",
52
+ "@panneau/element-button": "^3.0.193",
53
+ "@panneau/element-buttons": "^3.0.193",
54
+ "@panneau/element-form": "^3.0.193",
55
+ "@panneau/element-form-status": "^3.0.193",
56
+ "@panneau/element-grid": "^3.0.193",
57
+ "@panneau/element-icon": "^3.0.193",
58
+ "@panneau/element-media-card": "^3.0.193",
59
+ "@panneau/element-media-player": "^3.0.193",
60
+ "@panneau/element-pagination": "^3.0.193",
61
+ "@panneau/element-table": "^3.0.193",
62
+ "@panneau/field-upload": "^3.0.193",
63
+ "@panneau/filter-filters": "^3.0.193",
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": "fdea2ce9766bf695810d652ddd7db8d768ea5332"
72
+ "gitHead": "cd6f69216ddbee75b352f3bd1d39352ff3332848"
73
73
  }