@panneau/core 3.0.136 → 3.0.140

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/hooks.js +54 -54
  2. package/lib/hooks.js +54 -54
  3. package/package.json +2 -2
package/es/hooks.js CHANGED
@@ -1119,63 +1119,64 @@ var useItemSelection = function useItemSelection(_ref) {
1119
1119
  selectedItems = _useState2[0],
1120
1120
  setSelectedItems = _useState2[1];
1121
1121
  var onSelectItem = useCallback(function (item, index) {
1122
- var newItems = selectedItems !== null && multipleSelection ? [].concat(_toConsumableArray(selectedItems), [item]) : [item];
1123
- setSelectedItems(newItems);
1124
- if (onSelectionChange !== null) {
1125
- onSelectionChange(newItems, item, index);
1126
- }
1127
- }, [selectedItems, onSelectionChange, multipleSelection]);
1128
- var onDeselectItem = useCallback(function (item, index) {
1129
1122
  var _ref2 = item || {},
1130
1123
  _ref2$id = _ref2.id,
1131
1124
  itemId = _ref2$id === void 0 ? null : _ref2$id;
1132
- var newItems = (selectedItems || []).filter(function (_ref3) {
1125
+ var oldItem = (selectedItems || []).find(function (_ref3) {
1133
1126
  var id = _ref3.id;
1134
- return id !== itemId;
1135
- });
1127
+ return id === itemId;
1128
+ }) || null;
1129
+ var newItems = [];
1130
+ if (oldItem === null) {
1131
+ newItems = selectedItems !== null && multipleSelection ? [].concat(_toConsumableArray(selectedItems), [item]) : [item];
1132
+ } else {
1133
+ newItems = (selectedItems || []).filter(function (_ref4) {
1134
+ var id = _ref4.id;
1135
+ return id !== itemId;
1136
+ });
1137
+ }
1136
1138
  setSelectedItems(newItems);
1137
1139
  if (onSelectionChange !== null) {
1138
- onSelectionChange(multipleSelection ? newItems : null, item, index);
1140
+ onSelectionChange(newItems, item, index);
1139
1141
  }
1140
1142
  }, [selectedItems, onSelectionChange, multipleSelection]);
1141
1143
  var onSelectPage = useCallback(function () {
1142
- var nextItems = uniqBy([].concat(_toConsumableArray(items || []), _toConsumableArray(selectedItems || [])), function () {
1143
- var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1144
- _ref4$id = _ref4.id,
1145
- id = _ref4$id === void 0 ? null : _ref4$id;
1146
- return id;
1147
- });
1148
- setSelectedItems(nextItems);
1149
- if (onSelectionChange !== null) {
1150
- onSelectionChange(nextItems);
1144
+ var pageSelected = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
1145
+ var nextItems = [];
1146
+ if (!pageSelected) {
1147
+ nextItems = uniqBy([].concat(_toConsumableArray(items || []), _toConsumableArray(selectedItems || [])), function () {
1148
+ var _ref5 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1149
+ _ref5$id = _ref5.id,
1150
+ id = _ref5$id === void 0 ? null : _ref5$id;
1151
+ return id;
1152
+ });
1153
+ } else {
1154
+ var ids = (items || []).map(function () {
1155
+ var _ref6 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1156
+ _ref6$id = _ref6.id,
1157
+ id = _ref6$id === void 0 ? null : _ref6$id;
1158
+ return id;
1159
+ }).filter(function (id) {
1160
+ return id !== null;
1161
+ });
1162
+ nextItems = uniqBy((selectedItems || []).filter(function (it) {
1163
+ var _ref7 = it || {},
1164
+ _ref7$id = _ref7.id,
1165
+ id = _ref7$id === void 0 ? null : _ref7$id;
1166
+ return ids.indexOf(id) === -1;
1167
+ }), function () {
1168
+ var _ref8 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1169
+ _ref8$id = _ref8.id,
1170
+ id = _ref8$id === void 0 ? null : _ref8$id;
1171
+ return id;
1172
+ });
1151
1173
  }
1152
- }, [items, selectedItems, setSelectedItems, onSelectionChange]);
1153
- var onDeselectPage = useCallback(function () {
1154
- var ids = (items || []).map(function () {
1155
- var _ref5 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1156
- _ref5$id = _ref5.id,
1157
- id = _ref5$id === void 0 ? null : _ref5$id;
1158
- return id;
1159
- }).filter(function (id) {
1160
- return id !== null;
1161
- });
1162
- var nextItems = uniqBy((selectedItems || []).filter(function (it) {
1163
- var _ref6 = it || {},
1164
- _ref6$id = _ref6.id,
1165
- id = _ref6$id === void 0 ? null : _ref6$id;
1166
- return ids.indexOf(id) === -1;
1167
- }), function () {
1168
- var _ref7 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1169
- _ref7$id = _ref7.id,
1170
- id = _ref7$id === void 0 ? null : _ref7$id;
1171
- return id;
1172
- });
1173
1174
  setSelectedItems(nextItems);
1174
1175
  if (onSelectionChange !== null) {
1175
1176
  onSelectionChange(nextItems);
1176
1177
  }
1177
1178
  }, [items, selectedItems, setSelectedItems, onSelectionChange]);
1178
- var onClearAll = useCallback(function () {
1179
+ var onClearSelected = useCallback(function () {
1179
1180
  setSelectedItems([]);
1180
1181
  if (onSelectionChange !== null) {
1181
1182
  onSelectionChange([]);
@@ -1186,17 +1187,17 @@ var useItemSelection = function useItemSelection(_ref) {
1186
1187
  }, [initialSelectedItems]);
1187
1188
  var pageSelected = useMemo(function () {
1188
1189
  var ids = (items || []).map(function () {
1189
- var _ref8 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1190
- _ref8$id = _ref8.id,
1191
- id = _ref8$id === void 0 ? null : _ref8$id;
1190
+ var _ref9 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1191
+ _ref9$id = _ref9.id,
1192
+ id = _ref9$id === void 0 ? null : _ref9$id;
1192
1193
  return id;
1193
1194
  }).filter(function (id) {
1194
1195
  return id !== null;
1195
1196
  });
1196
1197
  var currentPageItems = (selectedItems || []).filter(function (it) {
1197
- var _ref9 = it || {},
1198
- _ref9$id = _ref9.id,
1199
- id = _ref9$id === void 0 ? null : _ref9$id;
1198
+ var _ref10 = it || {},
1199
+ _ref10$id = _ref10.id,
1200
+ id = _ref10$id === void 0 ? null : _ref10$id;
1200
1201
  return ids.indexOf(id) !== -1;
1201
1202
  });
1202
1203
  return currentPageItems.length === (items || []).length && currentPageItems.length > 0;
@@ -1204,19 +1205,18 @@ var useItemSelection = function useItemSelection(_ref) {
1204
1205
  var allSelected = useMemo(function () {
1205
1206
  return selectedItems !== null && items !== null && selectedItems.length === items.length;
1206
1207
  }, [selectedItems, items]);
1207
- var countSelected = useMemo(function () {
1208
+ var selectedCount = useMemo(function () {
1208
1209
  return selectedItems !== null && selectedItems.length > 0 ? selectedItems.length : null;
1209
1210
  }, [selectedItems]);
1210
1211
  return {
1211
1212
  onSelectItem: onSelectItem,
1212
- onDeselectItem: onDeselectItem,
1213
1213
  onSelectPage: onSelectPage,
1214
- onDeselectPage: onDeselectPage,
1215
- onClearAll: onClearAll,
1214
+ onClearSelected: onClearSelected,
1216
1215
  pageSelected: pageSelected,
1217
1216
  allSelected: allSelected,
1218
- count: countSelected,
1219
- selectedItems: selectedItems
1217
+ selectedCount: selectedCount,
1218
+ selectedItems: selectedItems,
1219
+ setSelectedItems: setSelectedItems
1220
1220
  };
1221
1221
  };
1222
1222
  var useItemSelection$1 = useItemSelection;
package/lib/hooks.js CHANGED
@@ -1121,63 +1121,64 @@ var useItemSelection = function useItemSelection(_ref) {
1121
1121
  selectedItems = _useState2[0],
1122
1122
  setSelectedItems = _useState2[1];
1123
1123
  var onSelectItem = react.useCallback(function (item, index) {
1124
- var newItems = selectedItems !== null && multipleSelection ? [].concat(_toConsumableArray(selectedItems), [item]) : [item];
1125
- setSelectedItems(newItems);
1126
- if (onSelectionChange !== null) {
1127
- onSelectionChange(newItems, item, index);
1128
- }
1129
- }, [selectedItems, onSelectionChange, multipleSelection]);
1130
- var onDeselectItem = react.useCallback(function (item, index) {
1131
1124
  var _ref2 = item || {},
1132
1125
  _ref2$id = _ref2.id,
1133
1126
  itemId = _ref2$id === void 0 ? null : _ref2$id;
1134
- var newItems = (selectedItems || []).filter(function (_ref3) {
1127
+ var oldItem = (selectedItems || []).find(function (_ref3) {
1135
1128
  var id = _ref3.id;
1136
- return id !== itemId;
1137
- });
1129
+ return id === itemId;
1130
+ }) || null;
1131
+ var newItems = [];
1132
+ if (oldItem === null) {
1133
+ newItems = selectedItems !== null && multipleSelection ? [].concat(_toConsumableArray(selectedItems), [item]) : [item];
1134
+ } else {
1135
+ newItems = (selectedItems || []).filter(function (_ref4) {
1136
+ var id = _ref4.id;
1137
+ return id !== itemId;
1138
+ });
1139
+ }
1138
1140
  setSelectedItems(newItems);
1139
1141
  if (onSelectionChange !== null) {
1140
- onSelectionChange(multipleSelection ? newItems : null, item, index);
1142
+ onSelectionChange(newItems, item, index);
1141
1143
  }
1142
1144
  }, [selectedItems, onSelectionChange, multipleSelection]);
1143
1145
  var onSelectPage = react.useCallback(function () {
1144
- var nextItems = uniqBy([].concat(_toConsumableArray(items || []), _toConsumableArray(selectedItems || [])), function () {
1145
- var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1146
- _ref4$id = _ref4.id,
1147
- id = _ref4$id === void 0 ? null : _ref4$id;
1148
- return id;
1149
- });
1150
- setSelectedItems(nextItems);
1151
- if (onSelectionChange !== null) {
1152
- onSelectionChange(nextItems);
1146
+ var pageSelected = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
1147
+ var nextItems = [];
1148
+ if (!pageSelected) {
1149
+ nextItems = uniqBy([].concat(_toConsumableArray(items || []), _toConsumableArray(selectedItems || [])), function () {
1150
+ var _ref5 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1151
+ _ref5$id = _ref5.id,
1152
+ id = _ref5$id === void 0 ? null : _ref5$id;
1153
+ return id;
1154
+ });
1155
+ } else {
1156
+ var ids = (items || []).map(function () {
1157
+ var _ref6 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1158
+ _ref6$id = _ref6.id,
1159
+ id = _ref6$id === void 0 ? null : _ref6$id;
1160
+ return id;
1161
+ }).filter(function (id) {
1162
+ return id !== null;
1163
+ });
1164
+ nextItems = uniqBy((selectedItems || []).filter(function (it) {
1165
+ var _ref7 = it || {},
1166
+ _ref7$id = _ref7.id,
1167
+ id = _ref7$id === void 0 ? null : _ref7$id;
1168
+ return ids.indexOf(id) === -1;
1169
+ }), function () {
1170
+ var _ref8 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1171
+ _ref8$id = _ref8.id,
1172
+ id = _ref8$id === void 0 ? null : _ref8$id;
1173
+ return id;
1174
+ });
1153
1175
  }
1154
- }, [items, selectedItems, setSelectedItems, onSelectionChange]);
1155
- var onDeselectPage = react.useCallback(function () {
1156
- var ids = (items || []).map(function () {
1157
- var _ref5 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1158
- _ref5$id = _ref5.id,
1159
- id = _ref5$id === void 0 ? null : _ref5$id;
1160
- return id;
1161
- }).filter(function (id) {
1162
- return id !== null;
1163
- });
1164
- var nextItems = uniqBy((selectedItems || []).filter(function (it) {
1165
- var _ref6 = it || {},
1166
- _ref6$id = _ref6.id,
1167
- id = _ref6$id === void 0 ? null : _ref6$id;
1168
- return ids.indexOf(id) === -1;
1169
- }), function () {
1170
- var _ref7 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1171
- _ref7$id = _ref7.id,
1172
- id = _ref7$id === void 0 ? null : _ref7$id;
1173
- return id;
1174
- });
1175
1176
  setSelectedItems(nextItems);
1176
1177
  if (onSelectionChange !== null) {
1177
1178
  onSelectionChange(nextItems);
1178
1179
  }
1179
1180
  }, [items, selectedItems, setSelectedItems, onSelectionChange]);
1180
- var onClearAll = react.useCallback(function () {
1181
+ var onClearSelected = react.useCallback(function () {
1181
1182
  setSelectedItems([]);
1182
1183
  if (onSelectionChange !== null) {
1183
1184
  onSelectionChange([]);
@@ -1188,17 +1189,17 @@ var useItemSelection = function useItemSelection(_ref) {
1188
1189
  }, [initialSelectedItems]);
1189
1190
  var pageSelected = react.useMemo(function () {
1190
1191
  var ids = (items || []).map(function () {
1191
- var _ref8 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1192
- _ref8$id = _ref8.id,
1193
- id = _ref8$id === void 0 ? null : _ref8$id;
1192
+ var _ref9 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1193
+ _ref9$id = _ref9.id,
1194
+ id = _ref9$id === void 0 ? null : _ref9$id;
1194
1195
  return id;
1195
1196
  }).filter(function (id) {
1196
1197
  return id !== null;
1197
1198
  });
1198
1199
  var currentPageItems = (selectedItems || []).filter(function (it) {
1199
- var _ref9 = it || {},
1200
- _ref9$id = _ref9.id,
1201
- id = _ref9$id === void 0 ? null : _ref9$id;
1200
+ var _ref10 = it || {},
1201
+ _ref10$id = _ref10.id,
1202
+ id = _ref10$id === void 0 ? null : _ref10$id;
1202
1203
  return ids.indexOf(id) !== -1;
1203
1204
  });
1204
1205
  return currentPageItems.length === (items || []).length && currentPageItems.length > 0;
@@ -1206,19 +1207,18 @@ var useItemSelection = function useItemSelection(_ref) {
1206
1207
  var allSelected = react.useMemo(function () {
1207
1208
  return selectedItems !== null && items !== null && selectedItems.length === items.length;
1208
1209
  }, [selectedItems, items]);
1209
- var countSelected = react.useMemo(function () {
1210
+ var selectedCount = react.useMemo(function () {
1210
1211
  return selectedItems !== null && selectedItems.length > 0 ? selectedItems.length : null;
1211
1212
  }, [selectedItems]);
1212
1213
  return {
1213
1214
  onSelectItem: onSelectItem,
1214
- onDeselectItem: onDeselectItem,
1215
1215
  onSelectPage: onSelectPage,
1216
- onDeselectPage: onDeselectPage,
1217
- onClearAll: onClearAll,
1216
+ onClearSelected: onClearSelected,
1218
1217
  pageSelected: pageSelected,
1219
1218
  allSelected: allSelected,
1220
- count: countSelected,
1221
- selectedItems: selectedItems
1219
+ selectedCount: selectedCount,
1220
+ selectedItems: selectedItems,
1221
+ setSelectedItems: setSelectedItems
1222
1222
  };
1223
1223
  };
1224
1224
  var useItemSelection$1 = useItemSelection;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@panneau/core",
3
- "version": "3.0.136",
3
+ "version": "3.0.140",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "javascript"
@@ -111,5 +111,5 @@
111
111
  "publishConfig": {
112
112
  "access": "public"
113
113
  },
114
- "gitHead": "c9a3de330286a6cadd73651f1893adbbe090cd0e"
114
+ "gitHead": "f148a421cabe2dfa529d2df1eaae42d0f4bb32c5"
115
115
  }