primereact 10.9.4 → 10.9.5
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/autocomplete/autocomplete.cjs.js +13 -1
- package/autocomplete/autocomplete.cjs.min.js +1 -1
- package/autocomplete/autocomplete.esm.js +14 -2
- package/autocomplete/autocomplete.esm.min.js +1 -1
- package/autocomplete/autocomplete.js +13 -1
- package/autocomplete/autocomplete.min.js +1 -1
- package/breadcrumb/breadcrumb.cjs.js +2 -1
- package/breadcrumb/breadcrumb.cjs.min.js +1 -1
- package/breadcrumb/breadcrumb.esm.js +2 -1
- package/breadcrumb/breadcrumb.esm.min.js +1 -1
- package/breadcrumb/breadcrumb.js +2 -1
- package/breadcrumb/breadcrumb.min.js +1 -1
- package/calendar/calendar.cjs.js +10 -2
- package/calendar/calendar.cjs.min.js +1 -1
- package/calendar/calendar.esm.js +11 -3
- package/calendar/calendar.esm.min.js +1 -1
- package/calendar/calendar.js +10 -2
- package/calendar/calendar.min.js +1 -1
- package/cascadeselect/cascadeselect.cjs.js +9 -2
- package/cascadeselect/cascadeselect.cjs.min.js +1 -1
- package/cascadeselect/cascadeselect.d.ts +9 -0
- package/cascadeselect/cascadeselect.esm.js +9 -2
- package/cascadeselect/cascadeselect.esm.min.js +1 -1
- package/cascadeselect/cascadeselect.js +9 -2
- package/cascadeselect/cascadeselect.min.js +1 -1
- package/checkbox/checkbox.cjs.js +1 -1
- package/checkbox/checkbox.cjs.min.js +1 -1
- package/checkbox/checkbox.esm.js +1 -1
- package/checkbox/checkbox.esm.min.js +1 -1
- package/checkbox/checkbox.js +1 -1
- package/checkbox/checkbox.min.js +1 -1
- package/chip/chip.cjs.js +15 -2
- package/chip/chip.cjs.min.js +1 -1
- package/chip/chip.esm.js +17 -4
- package/chip/chip.esm.min.js +1 -1
- package/chip/chip.js +15 -2
- package/chip/chip.min.js +1 -1
- package/chips/chips.cjs.js +1 -1
- package/chips/chips.cjs.min.js +1 -1
- package/chips/chips.esm.js +1 -1
- package/chips/chips.esm.min.js +1 -1
- package/chips/chips.js +1 -1
- package/chips/chips.min.js +1 -1
- package/colorpicker/colorpicker.cjs.js +9 -2
- package/colorpicker/colorpicker.cjs.min.js +1 -1
- package/colorpicker/colorpicker.esm.js +9 -2
- package/colorpicker/colorpicker.esm.min.js +1 -1
- package/colorpicker/colorpicker.js +9 -2
- package/colorpicker/colorpicker.min.js +1 -1
- package/confirmpopup/confirmpopup.cjs.js +10 -2
- package/confirmpopup/confirmpopup.cjs.min.js +1 -1
- package/confirmpopup/confirmpopup.esm.js +10 -2
- package/confirmpopup/confirmpopup.esm.min.js +1 -1
- package/confirmpopup/confirmpopup.js +10 -2
- package/confirmpopup/confirmpopup.min.js +1 -1
- package/core/core.js +172 -30
- package/core/core.min.js +6 -6
- package/datatable/datatable.cjs.js +278 -238
- package/datatable/datatable.cjs.min.js +1 -1
- package/datatable/datatable.esm.js +279 -239
- package/datatable/datatable.esm.min.js +1 -1
- package/datatable/datatable.js +278 -238
- package/datatable/datatable.min.js +1 -1
- package/dropdown/dropdown.cjs.js +13 -2
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.d.ts +4 -0
- package/dropdown/dropdown.esm.js +13 -2
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +13 -2
- package/dropdown/dropdown.min.js +1 -1
- package/hooks/hooks.cjs.js +16 -6
- package/hooks/hooks.cjs.min.js +1 -1
- package/hooks/hooks.esm.js +16 -6
- package/hooks/hooks.esm.min.js +1 -1
- package/hooks/hooks.js +16 -6
- package/hooks/hooks.min.js +1 -1
- package/inputmask/inputmask.cjs.js +1 -1
- package/inputmask/inputmask.cjs.min.js +1 -1
- package/inputmask/inputmask.esm.js +1 -1
- package/inputmask/inputmask.esm.min.js +1 -1
- package/inputmask/inputmask.js +1 -1
- package/inputmask/inputmask.min.js +1 -1
- package/inputnumber/inputnumber.cjs.js +5 -2
- package/inputnumber/inputnumber.cjs.min.js +1 -1
- package/inputnumber/inputnumber.esm.js +5 -2
- package/inputnumber/inputnumber.esm.min.js +1 -1
- package/inputnumber/inputnumber.js +5 -2
- package/inputnumber/inputnumber.min.js +1 -1
- package/inputotp/inputotp.cjs.js +1 -0
- package/inputotp/inputotp.cjs.min.js +1 -1
- package/inputotp/inputotp.esm.js +1 -0
- package/inputotp/inputotp.esm.min.js +1 -1
- package/inputotp/inputotp.js +1 -0
- package/inputotp/inputotp.min.js +1 -1
- package/mention/mention.cjs.js +18 -9
- package/mention/mention.cjs.min.js +1 -1
- package/mention/mention.d.ts +5 -0
- package/mention/mention.esm.js +18 -9
- package/mention/mention.esm.min.js +1 -1
- package/mention/mention.js +18 -9
- package/mention/mention.min.js +1 -1
- package/menu/menu.cjs.js +11 -3
- package/menu/menu.cjs.min.js +1 -1
- package/menu/menu.esm.js +12 -4
- package/menu/menu.esm.min.js +1 -1
- package/menu/menu.js +11 -3
- package/menu/menu.min.js +1 -1
- package/menubar/menubar.cjs.js +6 -9
- package/menubar/menubar.cjs.min.js +1 -1
- package/menubar/menubar.esm.js +6 -9
- package/menubar/menubar.esm.min.js +1 -1
- package/menubar/menubar.js +6 -9
- package/menubar/menubar.min.js +1 -1
- package/multiselect/multiselect.cjs.js +7 -3
- package/multiselect/multiselect.cjs.min.js +1 -1
- package/multiselect/multiselect.esm.js +7 -3
- package/multiselect/multiselect.esm.min.js +1 -1
- package/multiselect/multiselect.js +7 -3
- package/multiselect/multiselect.min.js +1 -1
- package/multistatecheckbox/multistatecheckbox.cjs.js +1 -1
- package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
- package/multistatecheckbox/multistatecheckbox.esm.js +1 -1
- package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
- package/multistatecheckbox/multistatecheckbox.js +1 -1
- package/multistatecheckbox/multistatecheckbox.min.js +1 -1
- package/orderlist/orderlist.cjs.js +34 -3
- package/orderlist/orderlist.cjs.min.js +1 -1
- package/orderlist/orderlist.esm.js +34 -3
- package/orderlist/orderlist.esm.min.js +1 -1
- package/orderlist/orderlist.js +34 -3
- package/orderlist/orderlist.min.js +1 -1
- package/overlaypanel/overlaypanel.cjs.js +9 -10
- package/overlaypanel/overlaypanel.cjs.min.js +1 -1
- package/overlaypanel/overlaypanel.esm.js +9 -10
- package/overlaypanel/overlaypanel.esm.min.js +1 -1
- package/overlaypanel/overlaypanel.js +9 -10
- package/overlaypanel/overlaypanel.min.js +1 -1
- package/package.json +1 -1
- package/password/password.cjs.js +9 -2
- package/password/password.cjs.min.js +1 -1
- package/password/password.esm.js +10 -3
- package/password/password.esm.min.js +1 -1
- package/password/password.js +9 -2
- package/password/password.min.js +1 -1
- package/primereact.all.cjs.js +641 -334
- package/primereact.all.cjs.min.js +1 -1
- package/primereact.all.esm.js +642 -335
- package/primereact.all.esm.min.js +1 -1
- package/primereact.all.js +641 -334
- package/primereact.all.min.js +1 -1
- package/radiobutton/radiobutton.cjs.js +2 -2
- package/radiobutton/radiobutton.cjs.min.js +1 -1
- package/radiobutton/radiobutton.d.ts +1 -1
- package/radiobutton/radiobutton.esm.js +2 -2
- package/radiobutton/radiobutton.esm.min.js +1 -1
- package/radiobutton/radiobutton.js +2 -2
- package/radiobutton/radiobutton.min.js +1 -1
- package/slidemenu/slidemenu.cjs.js +9 -2
- package/slidemenu/slidemenu.cjs.min.js +1 -1
- package/slidemenu/slidemenu.esm.js +10 -3
- package/slidemenu/slidemenu.esm.min.js +1 -1
- package/slidemenu/slidemenu.js +9 -2
- package/slidemenu/slidemenu.min.js +1 -1
- package/tree/tree.cjs.js +1 -1
- package/tree/tree.cjs.min.js +1 -1
- package/tree/tree.esm.js +1 -1
- package/tree/tree.esm.min.js +1 -1
- package/tree/tree.js +1 -1
- package/tree/tree.min.js +1 -1
- package/treeselect/treeselect.cjs.js +15 -8
- package/treeselect/treeselect.cjs.min.js +1 -1
- package/treeselect/treeselect.esm.js +15 -8
- package/treeselect/treeselect.esm.min.js +1 -1
- package/treeselect/treeselect.js +15 -8
- package/treeselect/treeselect.min.js +1 -1
- package/treetable/treetable.cjs.js +1 -1
- package/treetable/treetable.cjs.min.js +1 -1
- package/treetable/treetable.esm.js +1 -1
- package/treetable/treetable.esm.min.js +1 -1
- package/treetable/treetable.js +1 -1
- package/treetable/treetable.min.js +1 -1
- package/tristatecheckbox/tristatecheckbox.cjs.js +6 -6
- package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
- package/tristatecheckbox/tristatecheckbox.esm.js +6 -6
- package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
- package/tristatecheckbox/tristatecheckbox.js +6 -6
- package/tristatecheckbox/tristatecheckbox.min.js +1 -1
- package/utils/utils.cjs.js +136 -18
- package/utils/utils.cjs.min.js +1 -1
- package/utils/utils.d.ts +5 -1
- package/utils/utils.esm.js +136 -18
- package/utils/utils.esm.min.js +1 -1
- package/utils/utils.js +136 -18
- package/utils/utils.min.js +1 -1
- package/web-types.json +29 -2
package/datatable/datatable.js
CHANGED
|
@@ -707,7 +707,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
707
707
|
return props.checked === props.trueValue;
|
|
708
708
|
};
|
|
709
709
|
var _onChange = function onChange(event) {
|
|
710
|
-
if (props.disabled || props.
|
|
710
|
+
if (props.disabled || props.readOnly) {
|
|
711
711
|
return;
|
|
712
712
|
}
|
|
713
713
|
if (props.onChange) {
|
|
@@ -966,7 +966,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
966
966
|
onChange(event);
|
|
967
967
|
};
|
|
968
968
|
var onChange = function onChange(event) {
|
|
969
|
-
if (props.disabled || props.
|
|
969
|
+
if (props.disabled || props.readOnly) {
|
|
970
970
|
return;
|
|
971
971
|
}
|
|
972
972
|
if (props.onChange) {
|
|
@@ -1069,7 +1069,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1069
1069
|
onBlur: onBlur,
|
|
1070
1070
|
onChange: onChange,
|
|
1071
1071
|
disabled: props.disabled,
|
|
1072
|
-
readOnly: props.
|
|
1072
|
+
readOnly: props.readOnly,
|
|
1073
1073
|
required: props.required,
|
|
1074
1074
|
tabIndex: props.tabIndex,
|
|
1075
1075
|
className: cx('input')
|
|
@@ -1142,7 +1142,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1142
1142
|
|
|
1143
1143
|
function ownKeys$b(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
1144
1144
|
function _objectSpread$b(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$b(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$b(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
1145
|
-
var
|
|
1145
|
+
var Cell = function Cell(props) {
|
|
1146
1146
|
var mergeProps = hooks.useMergeProps();
|
|
1147
1147
|
var _React$useState = React__namespace.useState(props.editing),
|
|
1148
1148
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -1170,13 +1170,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1170
1170
|
var getColumnProp = function getColumnProp(name) {
|
|
1171
1171
|
return ColumnBase.getCProp(props.column, name);
|
|
1172
1172
|
};
|
|
1173
|
-
var getColumnProps = function getColumnProps() {
|
|
1174
|
-
return ColumnBase.getCProps(props.column);
|
|
1175
|
-
};
|
|
1176
1173
|
var getColumnPTOptions = function getColumnPTOptions(key) {
|
|
1177
|
-
var cProps = getColumnProps();
|
|
1178
1174
|
var columnMetaData = {
|
|
1179
|
-
props: cProps,
|
|
1175
|
+
props: props.cProps,
|
|
1180
1176
|
parent: props.metaData,
|
|
1181
1177
|
hostName: props.hostName,
|
|
1182
1178
|
state: {
|
|
@@ -1192,10 +1188,8 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1192
1188
|
};
|
|
1193
1189
|
return mergeProps(ptm("column.".concat(key), {
|
|
1194
1190
|
column: columnMetaData
|
|
1195
|
-
}), ptm("column.".concat(key), columnMetaData), ptmo(cProps, key, columnMetaData));
|
|
1191
|
+
}), ptm("column.".concat(key), columnMetaData), ptmo(props.cProps, key, columnMetaData));
|
|
1196
1192
|
};
|
|
1197
|
-
var field = getColumnProp('field') || "field_".concat(props.index);
|
|
1198
|
-
var editingKey = props.dataKey ? props.rowData && props.rowData[props.dataKey] || props.rowIndex : props.rowIndex;
|
|
1199
1193
|
var isEditable = function isEditable() {
|
|
1200
1194
|
return utils.ObjectUtils.isNotEmpty(props.editMode) && getColumnProp('editor');
|
|
1201
1195
|
};
|
|
@@ -1220,34 +1214,22 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1220
1214
|
_useEventListener2 = _slicedToArray(_useEventListener, 2),
|
|
1221
1215
|
bindDocumentClickListener = _useEventListener2[0],
|
|
1222
1216
|
unbindDocumentClickListener = _useEventListener2[1];
|
|
1223
|
-
var isSelected = function isSelected() {
|
|
1224
|
-
return props.selection ? props.selection instanceof Array ? findIndex(props.selection) > -1 : equals(props.selection) : false;
|
|
1225
|
-
};
|
|
1226
|
-
var equalsData = function equalsData(data) {
|
|
1227
|
-
return props.compareSelectionBy === 'equals' ? data === props.rowData : utils.ObjectUtils.equals(data, props.rowData, props.dataKey);
|
|
1228
|
-
};
|
|
1229
|
-
var equals = function equals(selectedCell) {
|
|
1230
|
-
return selectedCell && (selectedCell.rowIndex === props.rowIndex || equalsData(selectedCell.rowData)) && (selectedCell.field === field || selectedCell.cellIndex === props.index);
|
|
1231
|
-
};
|
|
1232
1217
|
var isOutsideClicked = function isOutsideClicked(target) {
|
|
1233
1218
|
return elementRef.current && !(elementRef.current.isSameNode(target) || elementRef.current.contains(target));
|
|
1234
1219
|
};
|
|
1235
|
-
var getVirtualScrollerOption = function getVirtualScrollerOption(option) {
|
|
1236
|
-
return props.virtualScrollerOptions ? props.virtualScrollerOptions[option] : null;
|
|
1237
|
-
};
|
|
1238
1220
|
var getStyle = function getStyle() {
|
|
1239
1221
|
var bodyStyle = getColumnProp('bodyStyle');
|
|
1240
1222
|
var columnStyle = getColumnProp('style');
|
|
1241
|
-
return
|
|
1223
|
+
return props.frozenCol ? Object.assign({}, columnStyle, bodyStyle, styleObjectState) : Object.assign({}, columnStyle, bodyStyle);
|
|
1242
1224
|
};
|
|
1243
1225
|
var getCellParams = function getCellParams() {
|
|
1244
1226
|
return {
|
|
1245
|
-
value: resolveFieldData(),
|
|
1246
|
-
field: field,
|
|
1227
|
+
value: props.resolveFieldData(),
|
|
1228
|
+
field: props.field,
|
|
1247
1229
|
rowData: props.rowData,
|
|
1248
1230
|
rowIndex: props.rowIndex,
|
|
1249
1231
|
cellIndex: props.index,
|
|
1250
|
-
selected:
|
|
1232
|
+
selected: props.isCellSelected,
|
|
1251
1233
|
column: props.column,
|
|
1252
1234
|
props: props
|
|
1253
1235
|
};
|
|
@@ -1258,20 +1240,6 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1258
1240
|
originalEvent: event
|
|
1259
1241
|
}, params);
|
|
1260
1242
|
};
|
|
1261
|
-
var resolveFieldData = function resolveFieldData(data) {
|
|
1262
|
-
return utils.ObjectUtils.resolveFieldData(data || props.rowData, field);
|
|
1263
|
-
};
|
|
1264
|
-
var getEditingRowData = function getEditingRowData() {
|
|
1265
|
-
return props.editingMeta && props.editingMeta[editingKey] ? props.editingMeta[editingKey].data : props.rowData;
|
|
1266
|
-
};
|
|
1267
|
-
var getTabIndex = function getTabIndex(cellSelected) {
|
|
1268
|
-
return props.allowCellSelection ? cellSelected ? 0 : props.rowIndex === 0 && props.index === 0 ? props.tabIndex : -1 : null;
|
|
1269
|
-
};
|
|
1270
|
-
var findIndex = function findIndex(collection) {
|
|
1271
|
-
return (collection || []).findIndex(function (data) {
|
|
1272
|
-
return equals(data);
|
|
1273
|
-
});
|
|
1274
|
-
};
|
|
1275
1243
|
var closeCell = function closeCell(event) {
|
|
1276
1244
|
var params = getCellCallbackParams(event);
|
|
1277
1245
|
var onBeforeCellEditHide = getColumnProp('onBeforeCellEditHide');
|
|
@@ -1292,7 +1260,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1292
1260
|
var switchCellToViewMode = function switchCellToViewMode(event, submit) {
|
|
1293
1261
|
var callbackParams = getCellCallbackParams(event);
|
|
1294
1262
|
var newRowData = _objectSpread$b({}, editingRowDataStateRef.current);
|
|
1295
|
-
var newValue = resolveFieldData(newRowData);
|
|
1263
|
+
var newValue = props.resolveFieldData(newRowData);
|
|
1296
1264
|
var params = _objectSpread$b(_objectSpread$b({}, callbackParams), {}, {
|
|
1297
1265
|
newRowData: newRowData,
|
|
1298
1266
|
newValue: newValue
|
|
@@ -1317,128 +1285,20 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1317
1285
|
}
|
|
1318
1286
|
setEditingRowDataState(newRowData);
|
|
1319
1287
|
};
|
|
1320
|
-
var _findNextSelectableCell = function findNextSelectableCell(cell) {
|
|
1321
|
-
var nextCell = cell.nextElementSibling;
|
|
1322
|
-
return nextCell ? utils.DomHandler.getAttribute(nextCell, 'data-p-selectable-cell') ? nextCell : _findNextSelectableCell(nextCell) : null;
|
|
1323
|
-
};
|
|
1324
|
-
var _findPrevSelectableCell = function findPrevSelectableCell(cell) {
|
|
1325
|
-
var prevCell = cell.previousElementSibling;
|
|
1326
|
-
return prevCell ? utils.DomHandler.getAttribute(prevCell, 'data-p-selectable-cell') ? prevCell : _findPrevSelectableCell(prevCell) : null;
|
|
1327
|
-
};
|
|
1328
|
-
var _findDownSelectableCell = function findDownSelectableCell(cell) {
|
|
1329
|
-
var downRow = cell.parentElement.nextElementSibling;
|
|
1330
|
-
var downCell = downRow ? downRow.children[props.index] : null;
|
|
1331
|
-
return downRow && downCell ? utils.DomHandler.getAttribute(downRow, 'data-p-selectable-row') && utils.DomHandler.getAttribute(downCell, 'data-p-selectable-cell') ? downCell : _findDownSelectableCell(downCell) : null;
|
|
1332
|
-
};
|
|
1333
|
-
var _findUpSelectableCell = function findUpSelectableCell(cell) {
|
|
1334
|
-
var upRow = cell.parentElement.previousElementSibling;
|
|
1335
|
-
var upCell = upRow ? upRow.children[props.index] : null;
|
|
1336
|
-
return upRow && upCell ? utils.DomHandler.getAttribute(upRow, 'data-p-selectable-row') && utils.DomHandler.getAttribute(upCell, 'data-p-selectable-cell') ? upCell : _findUpSelectableCell(upCell) : null;
|
|
1337
|
-
};
|
|
1338
|
-
var changeTabIndex = function changeTabIndex(currentCell, nextCell) {
|
|
1339
|
-
if (currentCell && nextCell) {
|
|
1340
|
-
currentCell.tabIndex = -1;
|
|
1341
|
-
nextCell.tabIndex = props.tabIndex;
|
|
1342
|
-
}
|
|
1343
|
-
};
|
|
1344
|
-
var focusOnElement = function focusOnElement() {
|
|
1345
|
-
clearTimeout(focusTimeout.current);
|
|
1346
|
-
focusTimeout.current = setTimeout(function () {
|
|
1347
|
-
if (editingState) {
|
|
1348
|
-
var focusableEl = props.editMode === 'cell' ? utils.DomHandler.getFirstFocusableElement(elementRef.current, ':not([data-pc-section="editorkeyhelperlabel"])') : utils.DomHandler.findSingle(elementRef.current, '[data-p-row-editor-save="true"]');
|
|
1349
|
-
focusableEl && focusableEl.focus();
|
|
1350
|
-
}
|
|
1351
|
-
keyHelperRef.current && (keyHelperRef.current.tabIndex = editingState ? -1 : 0);
|
|
1352
|
-
}, 1);
|
|
1353
|
-
};
|
|
1354
|
-
var focusOnInit = function focusOnInit() {
|
|
1355
|
-
clearTimeout(initFocusTimeout.current);
|
|
1356
|
-
initFocusTimeout.current = setTimeout(function () {
|
|
1357
|
-
var focusableEl = props.editMode === 'row' ? utils.DomHandler.findSingle(elementRef.current, '[data-p-row-editor-init="true"]') : null;
|
|
1358
|
-
focusableEl && focusableEl.focus();
|
|
1359
|
-
}, 1);
|
|
1360
|
-
};
|
|
1361
|
-
var updateStickyPosition = function updateStickyPosition() {
|
|
1362
|
-
if (getColumnProp('frozen')) {
|
|
1363
|
-
var styleObject = _objectSpread$b({}, styleObjectState);
|
|
1364
|
-
var align = getColumnProp('alignFrozen');
|
|
1365
|
-
if (align === 'right') {
|
|
1366
|
-
var right = 0;
|
|
1367
|
-
var next = elementRef.current && elementRef.current.nextElementSibling;
|
|
1368
|
-
if (next && next.classList.contains('p-frozen-column')) {
|
|
1369
|
-
right = utils.DomHandler.getOuterWidth(next) + parseFloat(next.style.right || 0);
|
|
1370
|
-
}
|
|
1371
|
-
styleObject.right = right + 'px';
|
|
1372
|
-
} else {
|
|
1373
|
-
var left = 0;
|
|
1374
|
-
var prev = elementRef.current && elementRef.current.previousElementSibling;
|
|
1375
|
-
if (prev && prev.classList.contains('p-frozen-column')) {
|
|
1376
|
-
left = utils.DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
|
|
1377
|
-
}
|
|
1378
|
-
styleObject.left = left + 'px';
|
|
1379
|
-
}
|
|
1380
|
-
var isSameStyle = styleObjectState.left === styleObject.left && styleObjectState.right === styleObject.right;
|
|
1381
|
-
!isSameStyle && setStyleObjectState(styleObject);
|
|
1382
|
-
}
|
|
1383
|
-
};
|
|
1384
1288
|
var editorCallback = function editorCallback(val) {
|
|
1385
1289
|
var editingRowData = _objectSpread$b({}, editingRowDataState);
|
|
1386
|
-
utils.ObjectUtils.mutateFieldData(editingRowData, field, val);
|
|
1290
|
+
utils.ObjectUtils.mutateFieldData(editingRowData, props.field, val);
|
|
1387
1291
|
setEditingRowDataState(editingRowData);
|
|
1388
1292
|
|
|
1389
1293
|
// update editing meta for complete methods on row mode
|
|
1390
|
-
var currentData = getEditingRowData();
|
|
1294
|
+
var currentData = props.getEditingRowData();
|
|
1391
1295
|
if (currentData) {
|
|
1392
|
-
utils.ObjectUtils.mutateFieldData(currentData, field, val);
|
|
1296
|
+
utils.ObjectUtils.mutateFieldData(currentData, props.field, val);
|
|
1393
1297
|
}
|
|
1394
1298
|
editingRowDataStateRef.current = editingRowData;
|
|
1395
1299
|
};
|
|
1396
1300
|
var _onClick = function onClick(event) {
|
|
1397
|
-
|
|
1398
|
-
if (props.editMode !== 'row' && isEditable() && !editingState && (props.selectOnEdit || !props.selectOnEdit && props.selected)) {
|
|
1399
|
-
selfClick.current = true;
|
|
1400
|
-
var onBeforeCellEditShow = getColumnProp('onBeforeCellEditShow');
|
|
1401
|
-
var onCellEditInit = getColumnProp('onCellEditInit');
|
|
1402
|
-
var cellEditValidatorEvent = getColumnProp('cellEditValidatorEvent');
|
|
1403
|
-
if (onBeforeCellEditShow) {
|
|
1404
|
-
// if user returns false do not show the editor
|
|
1405
|
-
if (onBeforeCellEditShow(params) === false) {
|
|
1406
|
-
return;
|
|
1407
|
-
}
|
|
1408
|
-
|
|
1409
|
-
// if user prevents default stop the editor
|
|
1410
|
-
if (event && event.defaultPrevented) {
|
|
1411
|
-
return;
|
|
1412
|
-
}
|
|
1413
|
-
}
|
|
1414
|
-
|
|
1415
|
-
// If the data is sorted using sort icon, it has been added to wait for the sort operation when any cell is wanted to be opened.
|
|
1416
|
-
setTimeout(function () {
|
|
1417
|
-
setEditingState(true);
|
|
1418
|
-
if (onCellEditInit) {
|
|
1419
|
-
if (onCellEditInit(params) === false) {
|
|
1420
|
-
return;
|
|
1421
|
-
}
|
|
1422
|
-
|
|
1423
|
-
// if user prevents default stop the editor
|
|
1424
|
-
if (event && event.defaultPrevented) {
|
|
1425
|
-
return;
|
|
1426
|
-
}
|
|
1427
|
-
}
|
|
1428
|
-
if (cellEditValidatorEvent === 'click') {
|
|
1429
|
-
bindDocumentClickListener();
|
|
1430
|
-
overlayEventListener.current = function (e) {
|
|
1431
|
-
if (!isOutsideClicked(e.target)) {
|
|
1432
|
-
selfClick.current = true;
|
|
1433
|
-
}
|
|
1434
|
-
};
|
|
1435
|
-
overlayservice.OverlayService.on('overlay-click', overlayEventListener.current);
|
|
1436
|
-
}
|
|
1437
|
-
}, 1);
|
|
1438
|
-
}
|
|
1439
|
-
if (props.allowCellSelection && props.onClick) {
|
|
1440
|
-
props.onClick(params);
|
|
1441
|
-
}
|
|
1301
|
+
props.onClick(event, getCellCallbackParams(event), isEditable(), editingState, setEditingState, selfClick, props.column, bindDocumentClickListener, overlayEventListener);
|
|
1442
1302
|
};
|
|
1443
1303
|
var _onMouseDown = function onMouseDown(event) {
|
|
1444
1304
|
var params = getCellCallbackParams(event);
|
|
@@ -1462,7 +1322,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1462
1322
|
cell = event.currentTarget;
|
|
1463
1323
|
switch (event.code) {
|
|
1464
1324
|
case 'ArrowLeft':
|
|
1465
|
-
var prevCell =
|
|
1325
|
+
var prevCell = props.findPrevSelectableCell(cell);
|
|
1466
1326
|
if (prevCell) {
|
|
1467
1327
|
changeTabIndex(cell, prevCell);
|
|
1468
1328
|
prevCell.focus();
|
|
@@ -1470,7 +1330,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1470
1330
|
event.preventDefault();
|
|
1471
1331
|
break;
|
|
1472
1332
|
case 'ArrowRight':
|
|
1473
|
-
var nextCell =
|
|
1333
|
+
var nextCell = props.findNextSelectableCell(cell);
|
|
1474
1334
|
if (nextCell) {
|
|
1475
1335
|
changeTabIndex(cell, nextCell);
|
|
1476
1336
|
nextCell.focus();
|
|
@@ -1478,7 +1338,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1478
1338
|
event.preventDefault();
|
|
1479
1339
|
break;
|
|
1480
1340
|
case 'ArrowUp':
|
|
1481
|
-
var upCell =
|
|
1341
|
+
var upCell = props.findUpSelectableCell(cell, index);
|
|
1482
1342
|
if (upCell) {
|
|
1483
1343
|
changeTabIndex(cell, upCell);
|
|
1484
1344
|
upCell.focus();
|
|
@@ -1486,7 +1346,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1486
1346
|
event.preventDefault();
|
|
1487
1347
|
break;
|
|
1488
1348
|
case 'ArrowDown':
|
|
1489
|
-
var downCell =
|
|
1349
|
+
var downCell = props.findDownSelectableCell(cell, index);
|
|
1490
1350
|
if (downCell) {
|
|
1491
1351
|
changeTabIndex(cell, downCell);
|
|
1492
1352
|
downCell.focus();
|
|
@@ -1525,13 +1385,6 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1525
1385
|
index: props.rowIndex
|
|
1526
1386
|
});
|
|
1527
1387
|
};
|
|
1528
|
-
var onCheckboxChange = function onCheckboxChange(event) {
|
|
1529
|
-
props.onCheckboxChange({
|
|
1530
|
-
originalEvent: event,
|
|
1531
|
-
data: props.rowData,
|
|
1532
|
-
index: props.rowIndex
|
|
1533
|
-
});
|
|
1534
|
-
};
|
|
1535
1388
|
var onRowToggle = function onRowToggle(event) {
|
|
1536
1389
|
props.onRowToggle({
|
|
1537
1390
|
originalEvent: event,
|
|
@@ -1544,8 +1397,8 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1544
1397
|
props.onRowEditInit({
|
|
1545
1398
|
originalEvent: event,
|
|
1546
1399
|
data: props.rowData,
|
|
1547
|
-
newData: getEditingRowData(),
|
|
1548
|
-
field: field,
|
|
1400
|
+
newData: props.getEditingRowData(),
|
|
1401
|
+
field: props.field,
|
|
1549
1402
|
index: props.rowIndex
|
|
1550
1403
|
});
|
|
1551
1404
|
};
|
|
@@ -1553,32 +1406,26 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1553
1406
|
props.onRowEditSave({
|
|
1554
1407
|
originalEvent: event,
|
|
1555
1408
|
data: props.rowData,
|
|
1556
|
-
newData: getEditingRowData(),
|
|
1557
|
-
field: field,
|
|
1409
|
+
newData: props.getEditingRowData(),
|
|
1410
|
+
field: props.field,
|
|
1558
1411
|
index: props.rowIndex
|
|
1559
1412
|
});
|
|
1560
|
-
focusOnInit();
|
|
1413
|
+
props.focusOnInit(initFocusTimeout, elementRef);
|
|
1561
1414
|
};
|
|
1562
1415
|
var onRowEditCancel = function onRowEditCancel(event) {
|
|
1563
1416
|
props.onRowEditCancel({
|
|
1564
1417
|
originalEvent: event,
|
|
1565
1418
|
data: props.rowData,
|
|
1566
|
-
newData: getEditingRowData(),
|
|
1567
|
-
field: field,
|
|
1419
|
+
newData: props.getEditingRowData(),
|
|
1420
|
+
field: props.field,
|
|
1568
1421
|
index: props.rowIndex
|
|
1569
1422
|
});
|
|
1570
|
-
focusOnInit();
|
|
1423
|
+
props.focusOnInit();
|
|
1571
1424
|
};
|
|
1572
1425
|
React__namespace.useEffect(function () {
|
|
1573
|
-
if (
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
});
|
|
1577
|
-
React__namespace.useEffect(function () {
|
|
1578
|
-
if (props.editMode === 'cell' || props.editMode === 'row') {
|
|
1579
|
-
focusOnElement();
|
|
1580
|
-
}
|
|
1581
|
-
}, [props.editMode, props.editing, editingState]); // eslint-disable-line react-hooks/exhaustive-deps
|
|
1426
|
+
if (props.frozenCol) props.updateStickyPosition(elementRef, props.frozenCol, props.alignFrozenCol, styleObjectState, setStyleObjectState);
|
|
1427
|
+
if (props.editMode === 'cell' || props.editMode === 'row') props.focusOnElement(focusTimeout, editingState, elementRef, keyHelperRef);
|
|
1428
|
+
}, [props.editMode, props.editing, editingState, props.frozenCol, props.alignFrozenCol]); // eslint-disable-line react-hooks/exhaustive-deps
|
|
1582
1429
|
|
|
1583
1430
|
React__namespace.useEffect(function () {
|
|
1584
1431
|
if (props.editMode === 'row' && props.editing !== editingState) {
|
|
@@ -1587,7 +1434,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1587
1434
|
}, [props.editMode, props.editing, editingState]);
|
|
1588
1435
|
hooks.useUpdateEffect(function () {
|
|
1589
1436
|
if (props.editMode === 'cell' || props.editMode === 'row') {
|
|
1590
|
-
var editingRowData = getEditingRowData();
|
|
1437
|
+
var editingRowData = props.getEditingRowData();
|
|
1591
1438
|
setEditingRowDataState(editingRowData);
|
|
1592
1439
|
editingRowDataStateRef.current = editingRowData;
|
|
1593
1440
|
}
|
|
@@ -1597,7 +1444,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1597
1444
|
var callbackParams = getCellCallbackParams();
|
|
1598
1445
|
var params = _objectSpread$b(_objectSpread$b({}, callbackParams), {}, {
|
|
1599
1446
|
editing: editingState,
|
|
1600
|
-
editingKey: editingKey
|
|
1447
|
+
editingKey: props.editingKey
|
|
1601
1448
|
});
|
|
1602
1449
|
props.onEditingMetaChange(params);
|
|
1603
1450
|
}
|
|
@@ -1610,16 +1457,16 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1610
1457
|
}
|
|
1611
1458
|
});
|
|
1612
1459
|
var createLoading = function createLoading() {
|
|
1613
|
-
var options = getVirtualScrollerOption('getLoaderOptions')(props.rowIndex, {
|
|
1460
|
+
var options = props.getVirtualScrollerOption('getLoaderOptions')(props.rowIndex, {
|
|
1614
1461
|
cellIndex: props.index,
|
|
1615
1462
|
cellFirst: props.index === 0,
|
|
1616
|
-
cellLast: props.index === getVirtualScrollerOption('columns').length - 1,
|
|
1463
|
+
cellLast: props.index === props.getVirtualScrollerOption('columns').length - 1,
|
|
1617
1464
|
cellEven: props.index % 2 === 0,
|
|
1618
1465
|
cellOdd: props.index % 2 !== 0,
|
|
1619
1466
|
column: props.column,
|
|
1620
|
-
field: field
|
|
1467
|
+
field: props.field
|
|
1621
1468
|
});
|
|
1622
|
-
var content = utils.ObjectUtils.getJSXElement(getVirtualScrollerOption('loadingTemplate'), options);
|
|
1469
|
+
var content = utils.ObjectUtils.getJSXElement(props.getVirtualScrollerOption('loadingTemplate'), options);
|
|
1623
1470
|
var bodyCellProps = mergeProps(getColumnPTOptions('bodyCell'), {
|
|
1624
1471
|
role: 'cell'
|
|
1625
1472
|
});
|
|
@@ -1628,20 +1475,20 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1628
1475
|
var createElement = function createElement() {
|
|
1629
1476
|
var content;
|
|
1630
1477
|
var editorKeyHelper;
|
|
1631
|
-
var cellSelected = props.allowCellSelection &&
|
|
1478
|
+
var cellSelected = props.allowCellSelection && props.isCellSelected;
|
|
1632
1479
|
var isRowEditor = props.editMode === 'row';
|
|
1633
|
-
var tabIndex = getTabIndex(cellSelected);
|
|
1480
|
+
var tabIndex = props.getTabIndex(cellSelected, props.index);
|
|
1634
1481
|
var selectionMode = getColumnProp('selectionMode');
|
|
1635
1482
|
var rowReorder = getColumnProp('rowReorder');
|
|
1636
1483
|
var header = getColumnProp('header');
|
|
1637
1484
|
var body = getColumnProp('body');
|
|
1638
1485
|
var editor = getColumnProp('editor');
|
|
1639
|
-
var frozen =
|
|
1486
|
+
var frozen = props.frozenCol;
|
|
1640
1487
|
var align = getColumnProp('align');
|
|
1641
|
-
var value = resolveFieldData();
|
|
1488
|
+
var value = props.resolveFieldData();
|
|
1642
1489
|
var columnBodyOptions = {
|
|
1643
1490
|
column: props.column,
|
|
1644
|
-
field: field,
|
|
1491
|
+
field: props.field,
|
|
1645
1492
|
rowIndex: props.rowIndex,
|
|
1646
1493
|
frozenRow: props.frozenRow,
|
|
1647
1494
|
props: props.tableProps
|
|
@@ -1666,12 +1513,12 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1666
1513
|
if (showSelection) {
|
|
1667
1514
|
var ariaLabelField = props.selectionAriaLabel || props.tableProps.dataKey;
|
|
1668
1515
|
var ariaLabelText = utils.ObjectUtils.resolveFieldData(props.rowData, ariaLabelField);
|
|
1669
|
-
label = "".concat(props.
|
|
1516
|
+
label = "".concat(props.isRowSelected ? PrimeReact$1.ariaLabel('unselectRow') : PrimeReact$1.ariaLabel('selectRow'), " ").concat(ariaLabelText);
|
|
1670
1517
|
}
|
|
1671
1518
|
content = showSelection && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, selectionMode === 'single' && /*#__PURE__*/React__namespace.createElement(RowRadioButton, {
|
|
1672
1519
|
hostName: props.hostName,
|
|
1673
1520
|
column: props.column,
|
|
1674
|
-
checked: props.
|
|
1521
|
+
checked: props.isRowSelected,
|
|
1675
1522
|
disabled: !props.isSelectable({
|
|
1676
1523
|
data: props.rowData,
|
|
1677
1524
|
index: props.rowIndex
|
|
@@ -1686,12 +1533,12 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1686
1533
|
}), selectionMode === 'multiple' && /*#__PURE__*/React__namespace.createElement(RowCheckbox, {
|
|
1687
1534
|
hostName: props.hostName,
|
|
1688
1535
|
column: props.column,
|
|
1689
|
-
checked: props.
|
|
1536
|
+
checked: props.isRowSelected,
|
|
1690
1537
|
disabled: !props.isSelectable({
|
|
1691
1538
|
data: props.rowData,
|
|
1692
1539
|
index: props.rowIndex
|
|
1693
1540
|
}),
|
|
1694
|
-
onChange: onCheckboxChange,
|
|
1541
|
+
onChange: props.onCheckboxChange,
|
|
1695
1542
|
tabIndex: props.tabIndex,
|
|
1696
1543
|
ariaLabel: label,
|
|
1697
1544
|
checkIcon: props.checkIcon,
|
|
@@ -1741,7 +1588,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1741
1588
|
expanderProps.element = content;
|
|
1742
1589
|
content = utils.ObjectUtils.getJSXElement(body, props.rowData, {
|
|
1743
1590
|
column: props.column,
|
|
1744
|
-
field: field,
|
|
1591
|
+
field: props.field,
|
|
1745
1592
|
rowIndex: props.rowIndex,
|
|
1746
1593
|
frozenRow: props.frozenRow,
|
|
1747
1594
|
props: props.tableProps,
|
|
@@ -1815,7 +1662,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1815
1662
|
rowEditorProps.element = content;
|
|
1816
1663
|
content = utils.ObjectUtils.getJSXElement(body, props.rowData, {
|
|
1817
1664
|
column: props.column,
|
|
1818
|
-
field: field,
|
|
1665
|
+
field: props.field,
|
|
1819
1666
|
rowIndex: props.rowIndex,
|
|
1820
1667
|
frozenRow: props.frozenRow,
|
|
1821
1668
|
props: props.tableProps,
|
|
@@ -1825,7 +1672,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1825
1672
|
} else if (body && (!editingState || !editor)) {
|
|
1826
1673
|
content = body ? utils.ObjectUtils.getJSXElement(body, props.rowData, {
|
|
1827
1674
|
column: props.column,
|
|
1828
|
-
field: field,
|
|
1675
|
+
field: props.field,
|
|
1829
1676
|
rowIndex: props.rowIndex,
|
|
1830
1677
|
frozenRow: props.frozenRow,
|
|
1831
1678
|
props: props.tableProps
|
|
@@ -1833,9 +1680,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1833
1680
|
} else if (editor && editingState) {
|
|
1834
1681
|
content = utils.ObjectUtils.getJSXElement(editor, {
|
|
1835
1682
|
rowData: editingRowDataState,
|
|
1836
|
-
value: resolveFieldData(editingRowDataState),
|
|
1683
|
+
value: props.resolveFieldData(editingRowDataState),
|
|
1837
1684
|
column: props.column,
|
|
1838
|
-
field: field,
|
|
1685
|
+
field: props.field,
|
|
1839
1686
|
rowIndex: props.rowIndex,
|
|
1840
1687
|
frozenRow: props.frozenRow,
|
|
1841
1688
|
props: props.tableProps,
|
|
@@ -1903,7 +1750,22 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1903
1750
|
ref: elementRef
|
|
1904
1751
|
}, bodyCellProps), editorKeyHelper, title, content);
|
|
1905
1752
|
};
|
|
1906
|
-
return getVirtualScrollerOption('loading') ? createLoading() : createElement();
|
|
1753
|
+
return props.getVirtualScrollerOption('loading') ? createLoading() : createElement();
|
|
1754
|
+
};
|
|
1755
|
+
|
|
1756
|
+
// RadioCheckCell is used for the Radio and Checkbox selection and has the isRowSelected dependency
|
|
1757
|
+
var RadioCheckCell = /*#__PURE__*/React__namespace.memo(function (props) {
|
|
1758
|
+
return /*#__PURE__*/React__namespace.createElement(Cell, props);
|
|
1759
|
+
}, function (prevProps, nextProps) {
|
|
1760
|
+
var keysToCompare = ['isRowSelected', 'field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'rowData'];
|
|
1761
|
+
return utils.ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare);
|
|
1762
|
+
});
|
|
1763
|
+
RadioCheckCell.displayName = 'RadioCheckCell';
|
|
1764
|
+
var BodyCell = /*#__PURE__*/React__namespace.memo(function (props) {
|
|
1765
|
+
return /*#__PURE__*/React__namespace.createElement(Cell, props);
|
|
1766
|
+
}, function (prevProps, nextProps) {
|
|
1767
|
+
var keysToCompare = ['field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'rowData', 'frozenCol', 'alignFrozenCol'];
|
|
1768
|
+
return utils.ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare);
|
|
1907
1769
|
});
|
|
1908
1770
|
BodyCell.displayName = 'BodyCell';
|
|
1909
1771
|
|
|
@@ -1919,6 +1781,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1919
1781
|
var _props$ptCallbacks = props.ptCallbacks,
|
|
1920
1782
|
ptm = _props$ptCallbacks.ptm,
|
|
1921
1783
|
cx = _props$ptCallbacks.cx;
|
|
1784
|
+
var isRowSelected = !props.allowCellSelection && props.selected || props.contextMenuSelected;
|
|
1922
1785
|
var getBodyRowPTOptions = function getBodyRowPTOptions(key) {
|
|
1923
1786
|
return ptm(key, {
|
|
1924
1787
|
parent: props.metaData,
|
|
@@ -1932,7 +1795,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1932
1795
|
data: props.rowData,
|
|
1933
1796
|
index: props.rowIndex
|
|
1934
1797
|
}),
|
|
1935
|
-
selected:
|
|
1798
|
+
selected: isRowSelected,
|
|
1936
1799
|
stripedRows: props.metaData.props.stripedRows
|
|
1937
1800
|
}
|
|
1938
1801
|
});
|
|
@@ -1961,10 +1824,10 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
1961
1824
|
return equals(rowData, data);
|
|
1962
1825
|
});
|
|
1963
1826
|
};
|
|
1964
|
-
var changeTabIndex = function changeTabIndex(
|
|
1965
|
-
if (
|
|
1966
|
-
|
|
1967
|
-
|
|
1827
|
+
var changeTabIndex = function changeTabIndex(currentElement, nextElement) {
|
|
1828
|
+
if (currentElement && nextElement) {
|
|
1829
|
+
currentElement.tabIndex = -1;
|
|
1830
|
+
nextElement.tabIndex = props.tabIndex;
|
|
1968
1831
|
}
|
|
1969
1832
|
};
|
|
1970
1833
|
var findFirstSelectableRow = function findFirstSelectableRow(row) {
|
|
@@ -2291,32 +2154,176 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2291
2154
|
onEditChange(e, false);
|
|
2292
2155
|
event.preventDefault();
|
|
2293
2156
|
};
|
|
2157
|
+
var equalsDataCell = function equalsDataCell(data) {
|
|
2158
|
+
return props.compareSelectionBy === 'equals' ? data === props.rowData : utils.ObjectUtils.equals(data, props.rowData, props.dataKey);
|
|
2159
|
+
};
|
|
2160
|
+
var equalsCell = function equalsCell(selectedCell, field, colIndex) {
|
|
2161
|
+
return selectedCell && (selectedCell.rowIndex === props.rowIndex || equalsDataCell(selectedCell.rowData)) && (selectedCell.field === field || selectedCell.cellIndex === colIndex);
|
|
2162
|
+
};
|
|
2163
|
+
var findIndexCell = function findIndexCell(collection, field, colIndex) {
|
|
2164
|
+
return (collection || []).findIndex(function (data) {
|
|
2165
|
+
return equalsCell(data, field, colIndex);
|
|
2166
|
+
});
|
|
2167
|
+
};
|
|
2168
|
+
var isCellSelected = function isCellSelected(selection, field, colIndex) {
|
|
2169
|
+
return selection ? selection instanceof Array ? findIndexCell(selection, field, colIndex) > -1 : equalsCell(selection, field, colIndex) : false;
|
|
2170
|
+
};
|
|
2171
|
+
var onCheckboxChange = function onCheckboxChange(event) {
|
|
2172
|
+
props.onCheckboxChange({
|
|
2173
|
+
originalEvent: event,
|
|
2174
|
+
data: props.rowData,
|
|
2175
|
+
index: props.rowIndex
|
|
2176
|
+
});
|
|
2177
|
+
};
|
|
2178
|
+
var editingKey = props.dataKey ? props.rowData && props.rowData[props.dataKey] || props.rowIndex : props.rowIndex;
|
|
2179
|
+
var getVirtualScrollerOption = React__namespace.useCallback(function (option) {
|
|
2180
|
+
return props.virtualScrollerOptions ? props.virtualScrollerOptions[option] : null;
|
|
2181
|
+
}, [props.virtualScrollerOptions]);
|
|
2182
|
+
var getEditingRowData = function getEditingRowData() {
|
|
2183
|
+
return props.editingMeta && props.editingMeta[editingKey] ? props.editingMeta[editingKey].data : props.rowData;
|
|
2184
|
+
};
|
|
2185
|
+
var getTabIndexCell = React__namespace.useCallback(function (cellSelected, cellIndex) {
|
|
2186
|
+
return props.allowCellSelection ? cellSelected ? 0 : props.rowIndex === 0 && cellIndex === 0 ? props.tabIndex : -1 : null;
|
|
2187
|
+
}, [props.allowCellSelection, props.rowIndex, props.tabIndex]);
|
|
2188
|
+
var findNextSelectableCell = React__namespace.useCallback(function (cell) {
|
|
2189
|
+
var nextCell = cell.nextElementSibling;
|
|
2190
|
+
return nextCell ? utils.DomHandler.getAttribute(nextCell, 'data-p-selectable-cell') ? nextCell : findNextSelectableCell(nextCell) : null;
|
|
2191
|
+
}, []);
|
|
2192
|
+
var findPrevSelectableCell = React__namespace.useCallback(function (cell) {
|
|
2193
|
+
var prevCell = cell.previousElementSibling;
|
|
2194
|
+
return prevCell ? utils.DomHandler.getAttribute(prevCell, 'data-p-selectable-cell') ? prevCell : findPrevSelectableCell(prevCell) : null;
|
|
2195
|
+
}, []);
|
|
2196
|
+
var findDownSelectableCell = React__namespace.useCallback(function (cell, cellIndex) {
|
|
2197
|
+
var downRow = cell.parentElement.nextElementSibling;
|
|
2198
|
+
var downCell = downRow ? downRow.children[cellIndex] : null;
|
|
2199
|
+
return downRow && downCell ? utils.DomHandler.getAttribute(downRow, 'data-p-selectable-row') && utils.DomHandler.getAttribute(downCell, 'data-p-selectable-cell') ? downCell : findDownSelectableCell(downCell) : null;
|
|
2200
|
+
}, []);
|
|
2201
|
+
var findUpSelectableCell = React__namespace.useCallback(function (cell, cellIndex) {
|
|
2202
|
+
var upRow = cell.parentElement.previousElementSibling;
|
|
2203
|
+
var upCell = upRow ? upRow.children[cellIndex] : null;
|
|
2204
|
+
return upRow && upCell ? utils.DomHandler.getAttribute(upRow, 'data-p-selectable-row') && utils.DomHandler.getAttribute(upCell, 'data-p-selectable-cell') ? upCell : findUpSelectableCell(upCell) : null;
|
|
2205
|
+
}, []);
|
|
2206
|
+
var focusOnElement = React__namespace.useCallback(function (focusTimeoutRef, editingState, elementRef, keyHelperRef) {
|
|
2207
|
+
clearTimeout(focusTimeoutRef.current);
|
|
2208
|
+
focusTimeoutRef.current = setTimeout(function () {
|
|
2209
|
+
if (editingState) {
|
|
2210
|
+
var focusableEl = props.editMode === 'cell' ? utils.DomHandler.getFirstFocusableElement(elementRef.current, ':not([data-pc-section="editorkeyhelperlabel"])') : utils.DomHandler.findSingle(elementRef.current, '[data-p-row-editor-save="true"]');
|
|
2211
|
+
focusableEl && focusableEl.focus();
|
|
2212
|
+
}
|
|
2213
|
+
keyHelperRef.current && (keyHelperRef.current.tabIndex = editingState ? -1 : 0);
|
|
2214
|
+
}, 1);
|
|
2215
|
+
}, [props.editMode]);
|
|
2216
|
+
var focusOnInit = React__namespace.useCallback(function (initFocusTimeoutRef, elementRef) {
|
|
2217
|
+
clearTimeout(initFocusTimeoutRef.current);
|
|
2218
|
+
initFocusTimeoutRef.current = setTimeout(function () {
|
|
2219
|
+
var focusableEl = props.editMode === 'row' ? utils.DomHandler.findSingle(elementRef.current, '[data-p-row-editor-init="true"]') : null;
|
|
2220
|
+
focusableEl && focusableEl.focus();
|
|
2221
|
+
}, 1);
|
|
2222
|
+
}, [props.editMode]);
|
|
2223
|
+
var updateStickyPosition = React__namespace.useCallback(function (elementRef, frozen, alignFrozen, styleObjectState, setStyleObjectState) {
|
|
2224
|
+
if (frozen) {
|
|
2225
|
+
var styleObject = _objectSpread$a({}, styleObjectState);
|
|
2226
|
+
if (alignFrozen === 'right') {
|
|
2227
|
+
var right = 0;
|
|
2228
|
+
var next = elementRef.current && elementRef.current.nextElementSibling;
|
|
2229
|
+
if (next && next.classList.contains('p-frozen-column')) {
|
|
2230
|
+
right = utils.DomHandler.getOuterWidth(next) + parseFloat(next.style.right || 0);
|
|
2231
|
+
}
|
|
2232
|
+
styleObject.right = right + 'px';
|
|
2233
|
+
} else {
|
|
2234
|
+
var left = 0;
|
|
2235
|
+
var prev = elementRef.current && elementRef.current.previousElementSibling;
|
|
2236
|
+
if (prev && prev.classList.contains('p-frozen-column')) {
|
|
2237
|
+
left = utils.DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left || 0);
|
|
2238
|
+
}
|
|
2239
|
+
styleObject.left = left + 'px';
|
|
2240
|
+
}
|
|
2241
|
+
var isSameStyle = styleObjectState.left === styleObject.left && styleObjectState.right === styleObject.right;
|
|
2242
|
+
!isSameStyle && setStyleObjectState(styleObject);
|
|
2243
|
+
}
|
|
2244
|
+
}, []);
|
|
2245
|
+
var onCellClick = function onCellClick(event, params, isEditable, editingState, setEditingState, selfClick, column, bindDocumentClickListener, overlayEventListener) {
|
|
2246
|
+
if (props.editMode !== 'row' && isEditable && !editingState && (props.selectOnEdit || !props.selectOnEdit && props.isRowSelected)) {
|
|
2247
|
+
selfClick.current = true;
|
|
2248
|
+
var onBeforeCellEditShow = getColumnProp(column, 'onBeforeCellEditShow');
|
|
2249
|
+
var onCellEditInit = getColumnProp(column, 'onCellEditInit');
|
|
2250
|
+
var cellEditValidatorEvent = getColumnProp(column, 'cellEditValidatorEvent');
|
|
2251
|
+
if (onBeforeCellEditShow) {
|
|
2252
|
+
// if user returns false do not show the editor
|
|
2253
|
+
if (onBeforeCellEditShow(params) === false) {
|
|
2254
|
+
return;
|
|
2255
|
+
}
|
|
2256
|
+
|
|
2257
|
+
// if user prevents default stop the editor
|
|
2258
|
+
if (event && event.defaultPrevented) {
|
|
2259
|
+
return;
|
|
2260
|
+
}
|
|
2261
|
+
}
|
|
2262
|
+
|
|
2263
|
+
// If the data is sorted using sort icon, it has been added to wait for the sort operation when any cell is wanted to be opened.
|
|
2264
|
+
setTimeout(function () {
|
|
2265
|
+
setEditingState(true);
|
|
2266
|
+
if (onCellEditInit) {
|
|
2267
|
+
if (onCellEditInit(params) === false) {
|
|
2268
|
+
return;
|
|
2269
|
+
}
|
|
2270
|
+
|
|
2271
|
+
// if user prevents default stop the editor
|
|
2272
|
+
if (event && event.defaultPrevented) {
|
|
2273
|
+
return;
|
|
2274
|
+
}
|
|
2275
|
+
}
|
|
2276
|
+
if (cellEditValidatorEvent === 'click') {
|
|
2277
|
+
bindDocumentClickListener();
|
|
2278
|
+
overlayEventListener.current = function (e) {
|
|
2279
|
+
if (!isOutsideClicked(e.target)) {
|
|
2280
|
+
selfClick.current = true;
|
|
2281
|
+
}
|
|
2282
|
+
};
|
|
2283
|
+
overlayservice.OverlayService.on('overlay-click', overlayEventListener.current);
|
|
2284
|
+
}
|
|
2285
|
+
}, 1);
|
|
2286
|
+
}
|
|
2287
|
+
if (props.allowCellSelection && props.onCellClick) {
|
|
2288
|
+
props.onCellClick(params);
|
|
2289
|
+
}
|
|
2290
|
+
};
|
|
2294
2291
|
var createContent = function createContent() {
|
|
2295
2292
|
return props.columns.map(function (col, i) {
|
|
2296
2293
|
if (shouldRenderBodyCell(props.value, col, props.index)) {
|
|
2297
2294
|
var key = "".concat(props.rowIndex, "_").concat(getColumnProp(col, 'columnKey') || getColumnProp(col, 'field'), "_").concat(i);
|
|
2298
2295
|
var rowSpan = props.rowGroupMode === 'rowspan' ? calculateRowGroupSize(props.value, col, props.index) : null;
|
|
2299
|
-
|
|
2296
|
+
var field = getColumnProp(col, 'field') || "field_".concat(i);
|
|
2297
|
+
var resolveFieldData = function resolveFieldData(data) {
|
|
2298
|
+
return utils.ObjectUtils.resolveFieldData(data || props.rowData, field);
|
|
2299
|
+
};
|
|
2300
|
+
var selectionMode = getColumnProp(col, 'selectionMode');
|
|
2301
|
+
var cellProps = mergeProps({
|
|
2300
2302
|
hostName: props.hostName,
|
|
2301
|
-
key: key,
|
|
2302
2303
|
allowCellSelection: props.allowCellSelection,
|
|
2303
2304
|
cellClassName: props.cellClassName,
|
|
2304
2305
|
checkIcon: props.checkIcon,
|
|
2305
2306
|
collapsedRowIcon: props.collapsedRowIcon,
|
|
2307
|
+
field: field,
|
|
2308
|
+
resolveFieldData: resolveFieldData,
|
|
2306
2309
|
column: col,
|
|
2307
|
-
|
|
2310
|
+
cProps: props.colsProps[i],
|
|
2308
2311
|
dataKey: props.dataKey,
|
|
2309
2312
|
editMode: props.editMode,
|
|
2310
2313
|
editing: editing,
|
|
2311
2314
|
editingMeta: props.editingMeta,
|
|
2315
|
+
onEditingMetaChange: props.onEditingMetaChange,
|
|
2316
|
+
editingKey: editingKey,
|
|
2317
|
+
getEditingRowData: getEditingRowData,
|
|
2312
2318
|
expanded: props.expanded,
|
|
2313
2319
|
expandedRowIcon: props.expandedRowIcon,
|
|
2314
2320
|
frozenRow: props.frozenRow,
|
|
2321
|
+
frozenCol: getColumnProp(col, 'frozen'),
|
|
2322
|
+
alignFrozenCol: getColumnProp(col, 'alignFrozen'),
|
|
2315
2323
|
index: i,
|
|
2316
2324
|
isSelectable: props.isSelectable,
|
|
2317
|
-
onCheckboxChange:
|
|
2318
|
-
onClick:
|
|
2319
|
-
onEditingMetaChange: props.onEditingMetaChange,
|
|
2325
|
+
onCheckboxChange: onCheckboxChange,
|
|
2326
|
+
onClick: onCellClick,
|
|
2320
2327
|
onMouseDown: props.onCellMouseDown,
|
|
2321
2328
|
onMouseUp: props.onCellMouseUp,
|
|
2322
2329
|
onRadioChange: props.onRadioChange,
|
|
@@ -2332,20 +2339,31 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2332
2339
|
rowIndex: props.rowIndex,
|
|
2333
2340
|
rowSpan: rowSpan,
|
|
2334
2341
|
selectOnEdit: props.selectOnEdit,
|
|
2335
|
-
|
|
2336
|
-
|
|
2342
|
+
isRowSelected: isRowSelected,
|
|
2343
|
+
isCellSelected: isCellSelected(props.selection, field, i),
|
|
2337
2344
|
selectionAriaLabel: props.tableProps.selectionAriaLabel,
|
|
2338
2345
|
showRowReorderElement: props.showRowReorderElement,
|
|
2339
2346
|
showSelectionElement: props.showSelectionElement,
|
|
2340
2347
|
tabIndex: props.tabIndex,
|
|
2348
|
+
getTabIndex: getTabIndexCell,
|
|
2341
2349
|
tableProps: props.tableProps,
|
|
2342
2350
|
tableSelector: props.tableSelector,
|
|
2343
2351
|
value: props.value,
|
|
2344
|
-
|
|
2352
|
+
getVirtualScrollerOption: getVirtualScrollerOption,
|
|
2345
2353
|
ptCallbacks: props.ptCallbacks,
|
|
2346
2354
|
metaData: props.metaData,
|
|
2347
|
-
unstyled: props.unstyled
|
|
2355
|
+
unstyled: props.unstyled,
|
|
2356
|
+
findNextSelectableCell: findNextSelectableCell,
|
|
2357
|
+
findPrevSelectableCell: findPrevSelectableCell,
|
|
2358
|
+
findDownSelectableCell: findDownSelectableCell,
|
|
2359
|
+
findUpSelectableCell: findUpSelectableCell,
|
|
2360
|
+
focusOnElement: focusOnElement,
|
|
2361
|
+
focusOnInit: focusOnInit,
|
|
2362
|
+
updateStickyPosition: updateStickyPosition
|
|
2348
2363
|
});
|
|
2364
|
+
return /*#__PURE__*/React__namespace.createElement(React.Fragment, {
|
|
2365
|
+
key: key
|
|
2366
|
+
}, selectionMode ? /*#__PURE__*/React__namespace.createElement(RadioCheckCell, cellProps) : /*#__PURE__*/React__namespace.createElement(BodyCell, cellProps));
|
|
2349
2367
|
}
|
|
2350
2368
|
return null;
|
|
2351
2369
|
});
|
|
@@ -2495,8 +2513,11 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2495
2513
|
var getColumnProps = function getColumnProps(column) {
|
|
2496
2514
|
return ColumnBase.getCProps(column);
|
|
2497
2515
|
};
|
|
2516
|
+
var cProps = getColumnProps(props.column);
|
|
2517
|
+
var colsProps = props.columns ? props.columns.map(function (col) {
|
|
2518
|
+
return getColumnProps(col);
|
|
2519
|
+
}) : [];
|
|
2498
2520
|
var getColumnPTOptions = function getColumnPTOptions(key) {
|
|
2499
|
-
var cProps = getColumnProps(props.column);
|
|
2500
2521
|
var columnMetaData = {
|
|
2501
2522
|
props: cProps,
|
|
2502
2523
|
parent: props.metaData,
|
|
@@ -2621,8 +2642,12 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2621
2642
|
var allowSelection = function allowSelection(event) {
|
|
2622
2643
|
return !utils.DomHandler.isClickable(event.originalEvent.target);
|
|
2623
2644
|
};
|
|
2645
|
+
var metaKeySelectionRef = React__namespace.useRef(props.metaKeySelection);
|
|
2646
|
+
React__namespace.useEffect(function () {
|
|
2647
|
+
metaKeySelectionRef.current = props.metaKeySelection;
|
|
2648
|
+
}, [props.metaKeySelection]);
|
|
2624
2649
|
var allowMetaKeySelection = function allowMetaKeySelection(event) {
|
|
2625
|
-
return !rowTouched.current && (!
|
|
2650
|
+
return !rowTouched.current && (!metaKeySelectionRef.current || metaKeySelectionRef.current && (event.originalEvent.metaKey || event.originalEvent.ctrlKey));
|
|
2626
2651
|
};
|
|
2627
2652
|
var allowRangeSelection = function allowRangeSelection(event) {
|
|
2628
2653
|
return isMultipleSelection() && event.originalEvent.shiftKey && anchorRowIndex.current !== null;
|
|
@@ -2695,6 +2720,10 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2695
2720
|
});
|
|
2696
2721
|
}
|
|
2697
2722
|
};
|
|
2723
|
+
var selectionRef = React__namespace.useRef(props.selection);
|
|
2724
|
+
React__namespace.useEffect(function () {
|
|
2725
|
+
selectionRef.current = props.selection;
|
|
2726
|
+
}, [props.selection]);
|
|
2698
2727
|
var onSingleSelection = function onSingleSelection(_ref) {
|
|
2699
2728
|
var originalEvent = _ref.originalEvent,
|
|
2700
2729
|
data = _ref.data,
|
|
@@ -2708,10 +2737,11 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2708
2737
|
return;
|
|
2709
2738
|
}
|
|
2710
2739
|
var selected = isSelected(data);
|
|
2711
|
-
var
|
|
2740
|
+
var currentSelection = selectionRef.current || [];
|
|
2741
|
+
var newSelection = currentSelection;
|
|
2712
2742
|
if (selected) {
|
|
2713
2743
|
if (toggleable) {
|
|
2714
|
-
|
|
2744
|
+
newSelection = null;
|
|
2715
2745
|
onUnselect({
|
|
2716
2746
|
originalEvent: originalEvent,
|
|
2717
2747
|
data: data,
|
|
@@ -2719,7 +2749,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2719
2749
|
});
|
|
2720
2750
|
}
|
|
2721
2751
|
} else {
|
|
2722
|
-
|
|
2752
|
+
newSelection = data;
|
|
2723
2753
|
onSelect({
|
|
2724
2754
|
originalEvent: originalEvent,
|
|
2725
2755
|
data: data,
|
|
@@ -2727,10 +2757,10 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2727
2757
|
});
|
|
2728
2758
|
}
|
|
2729
2759
|
focusOnElement(originalEvent, true);
|
|
2730
|
-
if (props.onSelectionChange &&
|
|
2760
|
+
if (props.onSelectionChange && newSelection !== currentSelection) {
|
|
2731
2761
|
props.onSelectionChange({
|
|
2732
2762
|
originalEvent: originalEvent,
|
|
2733
|
-
value:
|
|
2763
|
+
value: newSelection,
|
|
2734
2764
|
type: type
|
|
2735
2765
|
});
|
|
2736
2766
|
}
|
|
@@ -2748,11 +2778,12 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2748
2778
|
return;
|
|
2749
2779
|
}
|
|
2750
2780
|
var selected = isSelected(data);
|
|
2751
|
-
var
|
|
2781
|
+
var currentSelection = selectionRef.current || [];
|
|
2782
|
+
var newSelection = currentSelection;
|
|
2752
2783
|
if (selected) {
|
|
2753
2784
|
if (toggleable) {
|
|
2754
|
-
var selectionIndex = findIndex(
|
|
2755
|
-
|
|
2785
|
+
var selectionIndex = findIndex(currentSelection, data);
|
|
2786
|
+
newSelection = currentSelection.filter(function (val, i) {
|
|
2756
2787
|
return i !== selectionIndex;
|
|
2757
2788
|
});
|
|
2758
2789
|
onUnselect({
|
|
@@ -2760,15 +2791,15 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2760
2791
|
data: data,
|
|
2761
2792
|
type: type
|
|
2762
2793
|
});
|
|
2763
|
-
} else if (
|
|
2764
|
-
|
|
2794
|
+
} else if (currentSelection.length) {
|
|
2795
|
+
currentSelection.forEach(function (d) {
|
|
2765
2796
|
return onUnselect({
|
|
2766
2797
|
originalEvent: originalEvent,
|
|
2767
2798
|
data: d,
|
|
2768
2799
|
type: type
|
|
2769
2800
|
});
|
|
2770
2801
|
});
|
|
2771
|
-
|
|
2802
|
+
newSelection = [data];
|
|
2772
2803
|
onSelect({
|
|
2773
2804
|
originalEvent: originalEvent,
|
|
2774
2805
|
data: data,
|
|
@@ -2776,18 +2807,18 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
2776
2807
|
});
|
|
2777
2808
|
}
|
|
2778
2809
|
} else {
|
|
2779
|
-
|
|
2780
|
-
|
|
2810
|
+
newSelection = utils.ObjectUtils.isObject(currentSelection) ? [currentSelection] : currentSelection;
|
|
2811
|
+
newSelection = toggleable && isMultipleSelection() ? [].concat(_toConsumableArray(newSelection), [data]) : [data];
|
|
2781
2812
|
onSelect({
|
|
2782
2813
|
originalEvent: originalEvent,
|
|
2783
2814
|
data: data,
|
|
2784
2815
|
type: type
|
|
2785
2816
|
});
|
|
2786
2817
|
}
|
|
2787
|
-
if (props.onSelectionChange &&
|
|
2818
|
+
if (props.onSelectionChange && newSelection !== currentSelection) {
|
|
2788
2819
|
props.onSelectionChange({
|
|
2789
2820
|
originalEvent: originalEvent,
|
|
2790
|
-
value:
|
|
2821
|
+
value: newSelection,
|
|
2791
2822
|
type: type
|
|
2792
2823
|
});
|
|
2793
2824
|
}
|
|
@@ -3389,6 +3420,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
3389
3420
|
checkIcon: props.checkIcon,
|
|
3390
3421
|
collapsedRowIcon: props.collapsedRowIcon,
|
|
3391
3422
|
columns: props.columns,
|
|
3423
|
+
colsProps: colsProps,
|
|
3392
3424
|
compareSelectionBy: props.compareSelectionBy,
|
|
3393
3425
|
contextMenuSelected: contextMenuSelected,
|
|
3394
3426
|
dataKey: props.dataKey,
|
|
@@ -4172,9 +4204,17 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
|
|
|
4172
4204
|
var type = _ref.type,
|
|
4173
4205
|
valid = _ref.valid;
|
|
4174
4206
|
if (valid) {
|
|
4175
|
-
type === 'outside'
|
|
4207
|
+
if (type === 'outside') {
|
|
4208
|
+
if (!selfClick.current && !isTargetClicked(event.target)) {
|
|
4209
|
+
hide();
|
|
4210
|
+
}
|
|
4211
|
+
selfClick.current = false;
|
|
4212
|
+
} else if (context.hideOverlaysOnDocumentScrolling) {
|
|
4213
|
+
hide();
|
|
4214
|
+
} else if (!utils.DomHandler.isDocument(event.target)) {
|
|
4215
|
+
utils.DomHandler.alignOverlay(overlayRef.current, iconRef.current, context && context.appendTo || PrimeReact__default["default"].appendTo, false);
|
|
4216
|
+
}
|
|
4176
4217
|
}
|
|
4177
|
-
selfClick.current = false;
|
|
4178
4218
|
},
|
|
4179
4219
|
when: overlayVisibleState
|
|
4180
4220
|
}),
|