material-react-table 0.14.1 → 0.14.4

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.
@@ -4,9 +4,9 @@ interface Props {
4
4
  dragRef?: Ref<HTMLButtonElement>;
5
5
  dropRef?: Ref<HTMLDivElement>;
6
6
  header: MRT_Header;
7
+ instance: MRT_TableInstance;
7
8
  isDragging?: boolean;
8
9
  previewRef?: Ref<HTMLTableCellElement>;
9
- instance: MRT_TableInstance;
10
10
  }
11
11
  export declare const MRT_TableHeadCell: FC<Props>;
12
12
  export {};
@@ -4,5 +4,5 @@ interface Props {
4
4
  header: MRT_Header;
5
5
  instance: MRT_TableInstance;
6
6
  }
7
- export declare const MRT_ToggleColumnActionMenuButton: FC<Props>;
7
+ export declare const MRT_TableHeadCellColumnActionsButton: FC<Props>;
8
8
  export {};
@@ -5687,7 +5687,9 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom(_ref) {
5687
5687
  }), {
5688
5688
  bottom: isFullScreen ? '0' : undefined,
5689
5689
  boxShadow: "-3px 0 6px " + material.alpha(theme.palette.common.black, 0.1),
5690
- position: isFullScreen ? 'fixed' : 'relative'
5690
+ left: 0,
5691
+ position: isFullScreen ? 'fixed' : 'relative',
5692
+ right: 0
5691
5693
  }, toolbarProps == null ? void 0 : toolbarProps.sx);
5692
5694
  }
5693
5695
  }), React__default.createElement(MRT_LinearProgressBar, {
@@ -6012,27 +6014,28 @@ var MRT_TableHeadCellFilterContainer = function MRT_TableHeadCellFilterContainer
6012
6014
  };
6013
6015
 
6014
6016
  var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
6015
- var _getState2, _getState2$currentFil;
6017
+ var _column$getFilterValu, _column$getFilterValu2;
6016
6018
 
6017
6019
  var header = _ref.header,
6018
6020
  instance = _ref.instance;
6019
6021
  var getState = instance.getState,
6020
6022
  _instance$options = instance.options,
6021
- _instance$options$ico = _instance$options.icons,
6022
- FilterAltIcon = _instance$options$ico.FilterAltIcon,
6023
- FilterAltOffIcon = _instance$options$ico.FilterAltOffIcon,
6024
- localization = _instance$options.localization,
6025
- setShowFilters = instance.setShowFilters;
6023
+ FilterAltIcon = _instance$options.icons.FilterAltIcon,
6024
+ localization = _instance$options.localization;
6026
6025
 
6027
6026
  var _getState = getState(),
6028
- showFilters = _getState.showFilters;
6027
+ currentFilterFns = _getState.currentFilterFns;
6029
6028
 
6030
6029
  var column = header.column;
6031
6030
  var columnDef = column.columnDef;
6032
- var filterFn = (_getState2 = getState()) == null ? void 0 : (_getState2$currentFil = _getState2.currentFilterFns) == null ? void 0 : _getState2$currentFil[header.id];
6033
- var filterTooltip = !!column.getFilterValue() ? localization.filteringByColumn.replace('{column}', String(columnDef.header)).replace('{filterType}', filterFn instanceof Function ? '' : // @ts-ignore
6034
- localization["filter" + (filterFn.charAt(0).toUpperCase() + filterFn.slice(1))]).replace('{filterValue}', "\"" + (Array.isArray(column.getFilterValue()) ? column.getFilterValue().join("\" " + localization.and + " \"") : column.getFilterValue()) + "\"").replace('" "', '') : localization.showHideFilters;
6035
- return React__default.createElement(material.Tooltip, {
6031
+ var filterFn = currentFilterFns == null ? void 0 : currentFilterFns[header.id];
6032
+ var filterTooltip = localization.filteringByColumn.replace('{column}', String(columnDef.header)).replace('{filterType}', filterFn instanceof Function ? '' : // @ts-ignore
6033
+ localization["filter" + (filterFn.charAt(0).toUpperCase() + filterFn.slice(1))]).replace('{filterValue}', "\"" + (Array.isArray(column.getFilterValue()) ? column.getFilterValue().join("\" " + localization.and + " \"") : column.getFilterValue()) + "\"").replace('" "', '');
6034
+ return React__default.createElement(material.Grow, {
6035
+ unmountOnExit: true,
6036
+ "in": !!column.getFilterValue() && filterFn !== 'between' || filterFn === 'between' && ( // @ts-ignore
6037
+ !!((_column$getFilterValu = column.getFilterValue()) != null && _column$getFilterValu[0]) || !!((_column$getFilterValu2 = column.getFilterValue()) != null && _column$getFilterValu2[1]))
6038
+ }, React__default.createElement("span", null, React__default.createElement(material.Tooltip, {
6036
6039
  arrow: true,
6037
6040
  placement: "top",
6038
6041
  title: filterTooltip
@@ -6040,21 +6043,16 @@ var MRT_TableHeadCellFilterLabel = function MRT_TableHeadCellFilterLabel(_ref) {
6040
6043
  disableRipple: true,
6041
6044
  onClick: function onClick(event) {
6042
6045
  event.stopPropagation();
6043
- setShowFilters(!showFilters);
6044
6046
  },
6045
6047
  size: "small",
6046
6048
  sx: {
6047
6049
  m: 0,
6048
- opacity: !!column.getFilterValue() || showFilters ? 0.8 : 0,
6050
+ opacity: 0.8,
6049
6051
  p: '2px',
6050
- transition: 'all 0.2s ease-in-out',
6051
6052
  transform: 'scale(0.66)',
6052
- '&:hover': {
6053
- backgroundColor: 'transparent',
6054
- opacity: 0.8
6055
- }
6053
+ width: '1.5ch'
6056
6054
  }
6057
- }, showFilters && !column.getFilterValue() ? React__default.createElement(FilterAltOffIcon, null) : React__default.createElement(FilterAltIcon, null)));
6055
+ }, React__default.createElement(FilterAltIcon, null)))));
6058
6056
  };
6059
6057
 
6060
6058
  var MRT_TableHeadCellResizeHandle = function MRT_TableHeadCellResizeHandle(_ref) {
@@ -6081,6 +6079,7 @@ var MRT_TableHeadCellResizeHandle = function MRT_TableHeadCellResizeHandle(_ref)
6081
6079
  height: showFilters && columnDefType === 'data' ? '4rem' : '2rem',
6082
6080
  opacity: 0.8,
6083
6081
  position: 'absolute',
6082
+ mr: '-1rem',
6084
6083
  right: '1px',
6085
6084
  touchAction: 'none',
6086
6085
  transition: column.getIsResizing() ? undefined : 'all 0.2s ease-in-out',
@@ -6114,11 +6113,15 @@ var MRT_TableHeadCellSortLabel = function MRT_TableHeadCellSortLabel(_ref) {
6114
6113
  }, React__default.createElement(material.TableSortLabel, {
6115
6114
  "aria-label": sortTooltip,
6116
6115
  active: !!column.getIsSorted(),
6117
- direction: column.getIsSorted() ? column.getIsSorted() : undefined
6116
+ direction: column.getIsSorted() ? column.getIsSorted() : undefined,
6117
+ sx: {
6118
+ width: '2ch',
6119
+ transform: 'translateX(-0.5ch)'
6120
+ }
6118
6121
  }));
6119
6122
  };
6120
6123
 
6121
- var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton(_ref) {
6124
+ var MRT_TableHeadCellColumnActionsButton = function MRT_TableHeadCellColumnActionsButton(_ref) {
6122
6125
  var header = _ref.header,
6123
6126
  instance = _ref.instance;
6124
6127
  var _instance$options = instance.options,
@@ -6162,7 +6165,6 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
6162
6165
  }, iconButtonProps, {
6163
6166
  sx: _extends({
6164
6167
  height: '2rem',
6165
- mr: '2px',
6166
6168
  mt: '-0.2rem',
6167
6169
  opacity: 0.5,
6168
6170
  transition: 'opacity 0.2s',
@@ -6185,20 +6187,21 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
6185
6187
  var dragRef = _ref.dragRef,
6186
6188
  dropRef = _ref.dropRef,
6187
6189
  header = _ref.header,
6190
+ instance = _ref.instance,
6188
6191
  isDragging = _ref.isDragging,
6189
- previewRef = _ref.previewRef,
6190
- instance = _ref.instance;
6192
+ previewRef = _ref.previewRef;
6191
6193
  var getState = instance.getState,
6192
6194
  _instance$options = instance.options,
6193
6195
  enableColumnActions = _instance$options.enableColumnActions,
6194
- enableColumnFilters = _instance$options.enableColumnFilters,
6195
6196
  enableColumnOrdering = _instance$options.enableColumnOrdering,
6196
6197
  enableColumnResizing = _instance$options.enableColumnResizing,
6197
6198
  enableGrouping = _instance$options.enableGrouping,
6199
+ enableMultiSort = _instance$options.enableMultiSort,
6198
6200
  muiTableHeadCellProps = _instance$options.muiTableHeadCellProps;
6199
6201
 
6200
6202
  var _getState = getState(),
6201
- density = _getState.density;
6203
+ density = _getState.density,
6204
+ showFilters = _getState.showFilters;
6202
6205
 
6203
6206
  var column = header.column;
6204
6207
  var columnDef = column.columnDef,
@@ -6253,7 +6256,8 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
6253
6256
  pt: columnDefType !== 'data' ? 0 : density === 'compact' ? '0.25' : density === 'comfortable' ? '.75rem' : '1.25rem',
6254
6257
  right: column.getIsPinned() === 'right' ? getTotalRight() + "px" : undefined,
6255
6258
  transition: "all " + (enableColumnResizing ? 0 : '0.2s') + " ease-in-out",
6256
- verticalAlign: 'text-top',
6259
+ userSelect: enableMultiSort ? 'none' : undefined,
6260
+ verticalAlign: columnDefType === 'display' && showFilters ? 'center' : 'text-top',
6257
6261
  zIndex: column.getIsResizing() ? 3 : column.getIsPinned() && columnDefType !== 'group' ? 2 : 1
6258
6262
  }, tableCellProps == null ? void 0 : tableCellProps.sx, {
6259
6263
  maxWidth: "min(" + column.getSize() + "px, fit-content)",
@@ -6268,12 +6272,11 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
6268
6272
  display: 'flex',
6269
6273
  justifyContent: columnDefType === 'group' ? 'center' : 'space-between',
6270
6274
  opacity: isDragging ? 0.5 : 1,
6275
+ position: 'relative',
6271
6276
  width: '100%'
6272
6277
  }
6273
6278
  }, React__default.createElement(material.Box, {
6274
- onClick: function onClick() {
6275
- return column.toggleSorting();
6276
- },
6279
+ onClick: column.getToggleSortingHandler(),
6277
6280
  sx: {
6278
6281
  alignItems: 'center',
6279
6282
  cursor: column.getCanSort() && columnDefType !== 'group' ? 'pointer' : undefined,
@@ -6284,7 +6287,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
6284
6287
  }, headerElement, columnDefType === 'data' && column.getCanSort() && React__default.createElement(MRT_TableHeadCellSortLabel, {
6285
6288
  header: header,
6286
6289
  instance: instance
6287
- }), columnDefType === 'data' && enableColumnFilters && column.getCanFilter() && React__default.createElement(MRT_TableHeadCellFilterLabel, {
6290
+ }), columnDefType === 'data' && column.getCanFilter() && React__default.createElement(MRT_TableHeadCellFilterLabel, {
6288
6291
  header: header,
6289
6292
  instance: instance
6290
6293
  })), React__default.createElement(material.Box, {
@@ -6294,7 +6297,7 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref) {
6294
6297
  }, columnDefType === 'data' && (enableColumnOrdering && columnDef.enableColumnOrdering !== false || enableGrouping && columnDef.enableGrouping !== false) && React__default.createElement(MRT_GrabHandleButton, {
6295
6298
  ref: dragRef,
6296
6299
  instance: instance
6297
- }), (enableColumnActions || columnDef.enableColumnActions) && columnDef.enableColumnActions !== false && columnDefType !== 'group' && React__default.createElement(MRT_ToggleColumnActionMenuButton, {
6300
+ }), (enableColumnActions || columnDef.enableColumnActions) && columnDef.enableColumnActions !== false && columnDefType !== 'group' && React__default.createElement(MRT_TableHeadCellColumnActionsButton, {
6298
6301
  header: header,
6299
6302
  instance: instance
6300
6303
  })), column.getCanResize() && React__default.createElement(MRT_TableHeadCellResizeHandle, {