primereact 10.9.5 → 10.9.6

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 (120) hide show
  1. package/api/api.cjs.js +9 -1
  2. package/api/api.cjs.min.js +1 -1
  3. package/api/api.d.ts +5 -3
  4. package/api/api.esm.js +9 -1
  5. package/api/api.esm.min.js +1 -1
  6. package/api/api.js +9 -1
  7. package/api/api.min.js +1 -1
  8. package/autocomplete/autocomplete.d.ts +5 -5
  9. package/calendar/calendar.cjs.js +27 -5
  10. package/calendar/calendar.cjs.min.js +1 -1
  11. package/calendar/calendar.esm.js +27 -5
  12. package/calendar/calendar.esm.min.js +1 -1
  13. package/calendar/calendar.js +27 -5
  14. package/calendar/calendar.min.js +1 -1
  15. package/cascadeselect/cascadeselect.cjs.js +53 -3
  16. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  17. package/cascadeselect/cascadeselect.d.ts +13 -0
  18. package/cascadeselect/cascadeselect.esm.js +54 -4
  19. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  20. package/cascadeselect/cascadeselect.js +54 -5
  21. package/cascadeselect/cascadeselect.min.js +1 -1
  22. package/core/core.js +44 -10
  23. package/core/core.min.js +6 -6
  24. package/datatable/datatable.cjs.js +86 -58
  25. package/datatable/datatable.cjs.min.js +1 -1
  26. package/datatable/datatable.d.ts +79 -3
  27. package/datatable/datatable.esm.js +86 -58
  28. package/datatable/datatable.esm.min.js +1 -1
  29. package/datatable/datatable.js +86 -58
  30. package/datatable/datatable.min.js +1 -1
  31. package/dialog/dialog.cjs.js +3 -2
  32. package/dialog/dialog.cjs.min.js +1 -1
  33. package/dialog/dialog.d.ts +6 -1
  34. package/dialog/dialog.esm.js +3 -2
  35. package/dialog/dialog.esm.min.js +1 -1
  36. package/dialog/dialog.js +3 -2
  37. package/dialog/dialog.min.js +1 -1
  38. package/dropdown/dropdown.cjs.js +13 -3
  39. package/dropdown/dropdown.cjs.min.js +1 -1
  40. package/dropdown/dropdown.esm.js +13 -3
  41. package/dropdown/dropdown.esm.min.js +1 -1
  42. package/dropdown/dropdown.js +13 -3
  43. package/dropdown/dropdown.min.js +1 -1
  44. package/fileupload/fileupload.cjs.js +4 -2
  45. package/fileupload/fileupload.cjs.min.js +1 -1
  46. package/fileupload/fileupload.esm.js +4 -2
  47. package/fileupload/fileupload.esm.min.js +1 -1
  48. package/fileupload/fileupload.js +4 -2
  49. package/fileupload/fileupload.min.js +1 -1
  50. package/galleria/galleria.cjs.js +1 -0
  51. package/galleria/galleria.cjs.min.js +1 -1
  52. package/galleria/galleria.esm.js +1 -0
  53. package/galleria/galleria.esm.min.js +1 -1
  54. package/galleria/galleria.js +1 -0
  55. package/galleria/galleria.min.js +1 -1
  56. package/inputnumber/inputnumber.cjs.js +7 -2
  57. package/inputnumber/inputnumber.cjs.min.js +1 -1
  58. package/inputnumber/inputnumber.esm.js +7 -2
  59. package/inputnumber/inputnumber.esm.min.js +1 -1
  60. package/inputnumber/inputnumber.js +7 -2
  61. package/inputnumber/inputnumber.min.js +1 -1
  62. package/listbox/listbox.d.ts +4 -4
  63. package/menu/menu.cjs.js +3 -0
  64. package/menu/menu.cjs.min.js +1 -1
  65. package/menu/menu.esm.js +3 -0
  66. package/menu/menu.esm.min.js +1 -1
  67. package/menu/menu.js +3 -0
  68. package/menu/menu.min.js +1 -1
  69. package/multiselect/multiselect.cjs.js +61 -15
  70. package/multiselect/multiselect.cjs.min.js +1 -1
  71. package/multiselect/multiselect.esm.js +61 -15
  72. package/multiselect/multiselect.esm.min.js +1 -1
  73. package/multiselect/multiselect.js +61 -15
  74. package/multiselect/multiselect.min.js +1 -1
  75. package/multistatecheckbox/multistatecheckbox.cjs.js +16 -8
  76. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  77. package/multistatecheckbox/multistatecheckbox.esm.js +16 -8
  78. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  79. package/multistatecheckbox/multistatecheckbox.js +16 -8
  80. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  81. package/package.json +1 -1
  82. package/paginator/paginator.cjs.js +9 -1
  83. package/paginator/paginator.cjs.min.js +1 -1
  84. package/paginator/paginator.esm.js +9 -1
  85. package/paginator/paginator.esm.min.js +1 -1
  86. package/paginator/paginator.js +9 -1
  87. package/paginator/paginator.min.js +1 -1
  88. package/picklist/picklist.cjs.js +9 -1
  89. package/picklist/picklist.cjs.min.js +1 -1
  90. package/picklist/picklist.esm.js +9 -1
  91. package/picklist/picklist.esm.min.js +1 -1
  92. package/picklist/picklist.js +9 -1
  93. package/picklist/picklist.min.js +1 -1
  94. package/primereact.all.cjs.js +297 -115
  95. package/primereact.all.cjs.min.js +1 -1
  96. package/primereact.all.esm.js +297 -115
  97. package/primereact.all.esm.min.js +1 -1
  98. package/primereact.all.js +297 -115
  99. package/primereact.all.min.js +1 -1
  100. package/treeselect/treeselect.cjs.js +4 -0
  101. package/treeselect/treeselect.cjs.min.js +1 -1
  102. package/treeselect/treeselect.d.ts +33 -0
  103. package/treeselect/treeselect.esm.js +4 -0
  104. package/treeselect/treeselect.esm.min.js +1 -1
  105. package/treeselect/treeselect.js +4 -0
  106. package/treeselect/treeselect.min.js +1 -1
  107. package/tristatecheckbox/tristatecheckbox.cjs.js +1 -0
  108. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  109. package/tristatecheckbox/tristatecheckbox.esm.js +1 -0
  110. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  111. package/tristatecheckbox/tristatecheckbox.js +1 -0
  112. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  113. package/utils/utils.cjs.js +3 -1
  114. package/utils/utils.cjs.min.js +1 -1
  115. package/utils/utils.d.ts +1 -1
  116. package/utils/utils.esm.js +3 -1
  117. package/utils/utils.esm.min.js +1 -1
  118. package/utils/utils.js +3 -1
  119. package/utils/utils.min.js +1 -1
  120. package/web-types.json +77 -10
@@ -1298,7 +1298,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
1298
1298
  editingRowDataStateRef.current = editingRowData;
1299
1299
  };
1300
1300
  var _onClick = function onClick(event) {
1301
- props.onClick(event, getCellCallbackParams(event), isEditable(), editingState, setEditingState, selfClick, props.column, bindDocumentClickListener, overlayEventListener);
1301
+ props.onClick(event, getCellCallbackParams(event), isEditable(), editingState, setEditingState, selfClick, props.column, bindDocumentClickListener, overlayEventListener, isOutsideClicked);
1302
1302
  };
1303
1303
  var _onMouseDown = function onMouseDown(event) {
1304
1304
  var params = getCellCallbackParams(event);
@@ -1420,7 +1420,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
1420
1420
  field: props.field,
1421
1421
  index: props.rowIndex
1422
1422
  });
1423
- props.focusOnInit();
1423
+ props.focusOnInit(initFocusTimeout, elementRef);
1424
1424
  };
1425
1425
  React__namespace.useEffect(function () {
1426
1426
  if (props.frozenCol) props.updateStickyPosition(elementRef, props.frozenCol, props.alignFrozenCol, styleObjectState, setStyleObjectState);
@@ -1761,11 +1761,18 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
1761
1761
  return utils.ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare);
1762
1762
  });
1763
1763
  RadioCheckCell.displayName = 'RadioCheckCell';
1764
+ var defaultKeysToCompare = ['rowData', 'field', 'allowCellSelection', 'isCellSelected', 'editMode', 'index', 'tabIndex', 'editing', 'expanded', 'editingMeta', 'frozenCol', 'alignFrozenCol'];
1764
1765
  var BodyCell = /*#__PURE__*/React__namespace.memo(function (props) {
1765
1766
  return /*#__PURE__*/React__namespace.createElement(Cell, props);
1766
1767
  }, 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);
1768
+ if (nextProps.cellMemo === false) return false;
1769
+ var memoProps = nextProps.cellMemoProps;
1770
+ var keysToCompare = Array.isArray(memoProps) && memoProps.every(function (prop) {
1771
+ return typeof prop === 'string';
1772
+ }) ? memoProps : defaultKeysToCompare;
1773
+ var memoPropsDepth = nextProps.cellMemoPropsDepth;
1774
+ var depth = typeof memoPropsDepth === 'number' && memoPropsDepth > 0 ? memoPropsDepth : 1;
1775
+ return utils.ObjectUtils.selectiveCompare(prevProps, nextProps, keysToCompare, depth);
1769
1776
  });
1770
1777
  BodyCell.displayName = 'BodyCell';
1771
1778
 
@@ -2242,7 +2249,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
2242
2249
  !isSameStyle && setStyleObjectState(styleObject);
2243
2250
  }
2244
2251
  }, []);
2245
- var onCellClick = function onCellClick(event, params, isEditable, editingState, setEditingState, selfClick, column, bindDocumentClickListener, overlayEventListener) {
2252
+ var onCellClick = function onCellClick(event, params, isEditable, editingState, setEditingState, selfClick, column, bindDocumentClickListener, overlayEventListener, isOutsideClicked) {
2246
2253
  if (props.editMode !== 'row' && isEditable && !editingState && (props.selectOnEdit || !props.selectOnEdit && props.isRowSelected)) {
2247
2254
  selfClick.current = true;
2248
2255
  var onBeforeCellEditShow = getColumnProp(column, 'onBeforeCellEditShow');
@@ -2301,6 +2308,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
2301
2308
  var cellProps = mergeProps({
2302
2309
  hostName: props.hostName,
2303
2310
  allowCellSelection: props.allowCellSelection,
2311
+ cellMemo: props.cellMemo,
2312
+ cellMemoProps: props.cellMemoProps,
2313
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
2304
2314
  cellClassName: props.cellClassName,
2305
2315
  checkIcon: props.checkIcon,
2306
2316
  collapsedRowIcon: props.collapsedRowIcon,
@@ -2668,9 +2678,6 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
2668
2678
  options = options || props.virtualScrollerOptions;
2669
2679
  return options ? options[option] : null;
2670
2680
  };
2671
- var getProcessedDataIndex = function getProcessedDataIndex(rowIndex) {
2672
- return props.lazy ? rowIndex - props.first : rowIndex;
2673
- };
2674
2681
  var findIndex = function findIndex(collection, rowData) {
2675
2682
  return (collection || []).findIndex(function (data) {
2676
2683
  return equals(rowData, data);
@@ -2841,16 +2848,14 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
2841
2848
  var rangeStart;
2842
2849
  var rangeEnd;
2843
2850
  var isAllowCellSelection = allowCellSelection();
2844
- var rangeRowIndexInProcessedData = getProcessedDataIndex(rangeRowIndex.current);
2845
- var anchorRowIndexInProcessedData = getProcessedDataIndex(anchorRowIndex.current);
2846
- if (rangeRowIndexInProcessedData > anchorRowIndexInProcessedData) {
2847
- rangeStart = anchorRowIndexInProcessedData;
2848
- rangeEnd = rangeRowIndexInProcessedData;
2849
- } else if (rangeRowIndexInProcessedData < anchorRowIndexInProcessedData) {
2850
- rangeStart = rangeRowIndexInProcessedData;
2851
- rangeEnd = anchorRowIndexInProcessedData;
2851
+ if (rangeRowIndex.current > anchorRowIndex.current) {
2852
+ rangeStart = anchorRowIndex.current;
2853
+ rangeEnd = rangeRowIndex.current;
2854
+ } else if (rangeRowIndex.current < anchorRowIndex.current) {
2855
+ rangeStart = rangeRowIndex.current;
2856
+ rangeEnd = anchorRowIndex.current;
2852
2857
  } else {
2853
- rangeStart = rangeEnd = rangeRowIndexInProcessedData;
2858
+ rangeStart = rangeEnd = rangeRowIndex.current;
2854
2859
  }
2855
2860
  return isAllowCellSelection ? selectRangeOnCell(event, rangeStart, rangeEnd) : selectRangeOnRow(event, rangeStart, rangeEnd);
2856
2861
  };
@@ -2891,7 +2896,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
2891
2896
  for (var i = rowRangeStart; i <= rowRangeEnd; i++) {
2892
2897
  var rowData = value[i];
2893
2898
  var columns = props.columns;
2894
- var rowIndex = props.lazy ? i + props.first : i;
2899
+ var rowIndex = props.paginator ? i + props.first : i;
2895
2900
  for (var j = cellRangeStart; j <= cellRangeEnd; j++) {
2896
2901
  var field = getColumnProp(columns[j], 'field');
2897
2902
  var _value = utils.ObjectUtils.resolveFieldData(rowData, field);
@@ -3090,13 +3095,17 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3090
3095
  onRangeSelection(event, 'row');
3091
3096
  }
3092
3097
  };
3098
+ var expandedRowsRef = React__namespace.useRef(props.expandedRows);
3099
+ React__namespace.useEffect(function () {
3100
+ expandedRowsRef.current = props.expandedRows;
3101
+ }, [props.expandedRows]);
3093
3102
  var onRowToggle = function onRowToggle(event) {
3094
3103
  var expandedRows;
3095
3104
  var dataKey = props.dataKey;
3096
3105
  var hasDataKey = props.groupRowsBy ? dataKey === props.groupRowsBy : !!dataKey;
3097
3106
  if (hasDataKey) {
3098
3107
  var dataKeyValue = String(utils.ObjectUtils.resolveFieldData(event.data, dataKey));
3099
- expandedRows = props.expandedRows ? _objectSpread$8({}, props.expandedRows) : {};
3108
+ expandedRows = expandedRowsRef.current ? _objectSpread$8({}, expandedRowsRef.current) : {};
3100
3109
  if (expandedRows[dataKeyValue] != null) {
3101
3110
  delete expandedRows[dataKeyValue];
3102
3111
  if (props.onRowCollapse) {
@@ -3115,8 +3124,8 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3115
3124
  }
3116
3125
  }
3117
3126
  } else {
3118
- var expandedRowIndex = findIndex(props.expandedRows, event.data);
3119
- expandedRows = props.expandedRows ? _toConsumableArray(props.expandedRows) : [];
3127
+ var expandedRowIndex = findIndex(expandedRowsRef.current, event.data);
3128
+ expandedRows = expandedRowsRef.current ? _toConsumableArray(expandedRowsRef.current) : [];
3120
3129
  if (expandedRowIndex !== -1) {
3121
3130
  expandedRows = expandedRows.filter(function (_, i) {
3122
3131
  return i !== expandedRowIndex;
@@ -3366,7 +3375,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3366
3375
  return null;
3367
3376
  };
3368
3377
  var createGroupHeader = function createGroupHeader(rowData, rowIndex, expanded, colSpan) {
3369
- if (isSubheaderGrouping && shouldRenderRowGroupHeader(props.value, rowData, getProcessedDataIndex(rowIndex))) {
3378
+ if (isSubheaderGrouping && shouldRenderRowGroupHeader(props.value, rowData, rowIndex - props.first)) {
3370
3379
  var style = rowGroupHeaderStyle();
3371
3380
  var toggler = props.expandableRowGroups && /*#__PURE__*/React__namespace.createElement(RowTogglerButton, {
3372
3381
  hostName: props.hostName,
@@ -3416,6 +3425,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3416
3425
  hostName: props.hostName,
3417
3426
  allowCellSelection: _allowCellSelection,
3418
3427
  allowRowSelection: _allowRowSelection,
3428
+ cellMemo: props.cellMemo,
3429
+ cellMemoProps: props.cellMemoProps,
3430
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
3419
3431
  cellClassName: props.cellClassName,
3420
3432
  checkIcon: props.checkIcon,
3421
3433
  collapsedRowIcon: props.collapsedRowIcon,
@@ -3808,6 +3820,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3808
3820
  EQUALS: 'equals',
3809
3821
  NOT_EQUALS: 'notEquals',
3810
3822
  IN: 'in',
3823
+ NOT_IN: 'notIn',
3811
3824
  LESS_THAN: 'lt',
3812
3825
  LESS_THAN_OR_EQUAL_TO: 'lte',
3813
3826
  GREATER_THAN: 'gt',
@@ -3896,6 +3909,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3896
3909
  emptySelectionMessage: 'No selected item',
3897
3910
  endsWith: 'Ends with',
3898
3911
  equals: 'Equals',
3912
+ fileChosenMessage: '{0} files',
3899
3913
  fileSizeTypes: ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'],
3900
3914
  filter: 'Filter',
3901
3915
  firstDayOfWeek: 0,
@@ -3914,6 +3928,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3914
3928
  nextMonth: 'Next Month',
3915
3929
  nextSecond: 'Next Second',
3916
3930
  nextYear: 'Next Year',
3931
+ noFileChosenMessage: 'No file chosen',
3917
3932
  noFilter: 'No Filter',
3918
3933
  notContains: 'Not contains',
3919
3934
  notEquals: 'Not equals',
@@ -3941,8 +3956,10 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3941
3956
  aria: {
3942
3957
  cancelEdit: 'Cancel Edit',
3943
3958
  close: 'Close',
3959
+ collapseLabel: 'Collapse',
3944
3960
  collapseRow: 'Row Collapsed',
3945
3961
  editRow: 'Edit Row',
3962
+ expandLabel: 'Expand',
3946
3963
  expandRow: 'Row Expanded',
3947
3964
  falseLabel: 'False',
3948
3965
  filterConstraint: 'Filter Constraint',
@@ -3967,18 +3984,20 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3967
3984
  next: 'Next',
3968
3985
  nextPageLabel: 'Next Page',
3969
3986
  nullLabel: 'Not Selected',
3970
- pageLabel: 'Page {page}',
3971
3987
  otpLabel: 'Please enter one time password character {0}',
3988
+ pageLabel: 'Page {page}',
3972
3989
  passwordHide: 'Hide Password',
3973
3990
  passwordShow: 'Show Password',
3974
3991
  previous: 'Previous',
3975
3992
  prevPageLabel: 'Previous Page',
3993
+ removeLabel: 'Remove',
3976
3994
  rotateLeft: 'Rotate Left',
3977
3995
  rotateRight: 'Rotate Right',
3978
3996
  rowsPerPageLabel: 'Rows per page',
3979
3997
  saveEdit: 'Save Edit',
3980
3998
  scrollTop: 'Scroll Top',
3981
3999
  selectAll: 'All items selected',
4000
+ selectLabel: 'Select',
3982
4001
  selectRow: 'Row Selected',
3983
4002
  showFilterMenu: 'Show Filter Menu',
3984
4003
  slide: 'Slide',
@@ -3987,6 +4006,7 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
3987
4006
  stars: '{star} stars',
3988
4007
  trueLabel: 'True',
3989
4008
  unselectAll: 'All items unselected',
4009
+ unselectLabel: 'Unselect',
3990
4010
  unselectRow: 'Row Unselected',
3991
4011
  zoomImage: 'Zoom Image',
3992
4012
  zoomIn: 'Zoom In',
@@ -6913,58 +6933,60 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
6913
6933
  var exportCSV = function exportCSV(options) {
6914
6934
  var data;
6915
6935
  var csv = "\uFEFF";
6916
- var columns = getColumns();
6917
6936
  if (options && options.selectionOnly) {
6918
6937
  data = props.selection || [];
6919
6938
  } else {
6920
6939
  data = [].concat(_toConsumableArray(props.frozenValue || []), _toConsumableArray(processedData() || []));
6921
6940
  }
6922
6941
 
6923
- //headers
6924
- columns.forEach(function (column, i) {
6925
- var _ref5 = [getColumnProp(column, 'field'), getColumnProp(column, 'header'), getColumnProp(column, 'exportHeader'), getColumnProp(column, 'exportable')],
6942
+ // First build collection of exportable columns
6943
+ var exportableColumns = getColumns().filter(function (column) {
6944
+ var exportable = getColumnProp(column, 'exportable');
6945
+ var field = getColumnProp(column, 'field');
6946
+
6947
+ // Column must be exportable (or undefined/not set) and have a field defined
6948
+ return exportable !== false && field;
6949
+ });
6950
+
6951
+ // headers
6952
+ exportableColumns.forEach(function (column, i) {
6953
+ var _ref5 = [getColumnProp(column, 'field'), getColumnProp(column, 'header'), getColumnProp(column, 'exportHeader')],
6926
6954
  field = _ref5[0],
6927
6955
  header = _ref5[1],
6928
- exportHeader = _ref5[2],
6929
- exportable = _ref5[3];
6930
- if (exportable && field) {
6931
- var columnHeader = String(exportHeader || header || field).replace(/"/g, '""').replace(/\n/g, "\u2028");
6932
- csv = csv + ('"' + columnHeader + '"');
6933
- if (i < columns.length - 1) {
6934
- csv = csv + props.csvSeparator;
6935
- }
6956
+ exportHeader = _ref5[2];
6957
+ var columnHeader = String(exportHeader || header || field).replace(/"/g, '""').replace(/\n/g, "\u2028");
6958
+ csv = csv + ('"' + columnHeader + '"');
6959
+ if (i < exportableColumns.length - 1) {
6960
+ csv = csv + props.csvSeparator;
6936
6961
  }
6937
6962
  });
6938
6963
 
6939
- //body
6964
+ // body
6940
6965
  data.forEach(function (record) {
6941
6966
  csv = csv + '\n';
6942
- columns.forEach(function (column, i) {
6943
- var _ref6 = [getColumnProp(column, 'field'), getColumnProp(column, 'exportField'), getColumnProp(column, 'exportable')],
6967
+ exportableColumns.forEach(function (column, i) {
6968
+ var _ref6 = [getColumnProp(column, 'field'), getColumnProp(column, 'exportField')],
6944
6969
  colField = _ref6[0],
6945
- exportField = _ref6[1],
6946
- exportable = _ref6[2];
6970
+ exportField = _ref6[1];
6947
6971
  var field = exportField || colField;
6948
- if (exportable && field) {
6949
- var cellData = utils.ObjectUtils.resolveFieldData(record, field);
6950
- if (cellData != null) {
6951
- if (props.exportFunction) {
6952
- cellData = props.exportFunction({
6953
- data: cellData,
6954
- field: field,
6955
- rowData: record,
6956
- column: column
6957
- });
6958
- } else {
6959
- cellData = String(cellData).replace(/"/g, '""').replace(/\n/g, "\u2028");
6960
- }
6972
+ var cellData = utils.ObjectUtils.resolveFieldData(record, field);
6973
+ if (cellData != null) {
6974
+ if (props.exportFunction) {
6975
+ cellData = props.exportFunction({
6976
+ data: cellData,
6977
+ field: field,
6978
+ rowData: record,
6979
+ column: column
6980
+ });
6961
6981
  } else {
6962
- cellData = '';
6963
- }
6964
- csv = csv + ('"' + cellData + '"');
6965
- if (i < columns.length - 1) {
6966
- csv = csv + props.csvSeparator;
6982
+ cellData = String(cellData).replace(/"/g, '""').replace(/\n/g, "\u2028");
6967
6983
  }
6984
+ } else {
6985
+ cellData = '';
6986
+ }
6987
+ csv = csv + ('"' + cellData + '"');
6988
+ if (i < exportableColumns.length - 1) {
6989
+ csv = csv + props.csvSeparator;
6968
6990
  }
6969
6991
  });
6970
6992
  });
@@ -7229,6 +7251,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
7229
7251
  var frozenBody = utils.ObjectUtils.isNotEmpty(props.frozenValue) && /*#__PURE__*/React__namespace.createElement(TableBody, {
7230
7252
  hostName: "DataTable",
7231
7253
  ref: frozenBodyRef,
7254
+ cellMemo: props.cellMemo,
7255
+ cellMemoProps: props.cellMemoProps,
7256
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
7232
7257
  cellClassName: props.cellClassName,
7233
7258
  cellSelection: props.cellSelection,
7234
7259
  checkIcon: props.checkIcon,
@@ -7313,6 +7338,9 @@ this.primereact.datatable = (function (exports, React, PrimeReact$1, componentba
7313
7338
  var body = /*#__PURE__*/React__namespace.createElement(TableBody, {
7314
7339
  hostName: "DataTable",
7315
7340
  ref: bodyRef,
7341
+ cellMemo: props.cellMemo,
7342
+ cellMemoProps: props.cellMemoProps,
7343
+ cellMemoPropsDepth: props.cellMemoPropsDepth,
7316
7344
  cellClassName: props.cellClassName,
7317
7345
  cellSelection: props.cellSelection,
7318
7346
  checkIcon: props.checkIcon,