material-react-table 0.3.3 → 0.3.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.
Files changed (55) hide show
  1. package/dist/MaterialReactTable.d.ts +8 -5
  2. package/dist/buttons/MRT_ToggleSearchButton.d.ts +4 -0
  3. package/dist/inputs/{MRT_EditCellTextfield.d.ts → MRT_EditCellTextField.d.ts} +1 -1
  4. package/dist/inputs/MRT_FilterTextField.d.ts +1 -1
  5. package/dist/material-react-table.cjs.development.js +250 -160
  6. package/dist/material-react-table.cjs.development.js.map +1 -1
  7. package/dist/material-react-table.cjs.production.min.js +1 -1
  8. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  9. package/dist/material-react-table.esm.js +253 -163
  10. package/dist/material-react-table.esm.js.map +1 -1
  11. package/dist/menus/MRT_ColumnActionMenu.d.ts +2 -2
  12. package/dist/menus/MRT_RowActionMenu.d.ts +1 -0
  13. package/dist/table/MRT_TableButtonCell.d.ts +3 -0
  14. package/dist/useMaterialReactTable.d.ts +2 -0
  15. package/dist/utils/localization.d.ts +2 -0
  16. package/dist/utils/useMRTCalcs.d.ts +1 -1
  17. package/package.json +8 -6
  18. package/src/@types/react-table-config.d.ts +33 -55
  19. package/src/MaterialReactTable.tsx +22 -54
  20. package/src/body/MRT_TableBody.tsx +1 -2
  21. package/src/body/MRT_TableBodyCell.tsx +7 -14
  22. package/src/body/MRT_TableBodyRow.tsx +7 -24
  23. package/src/body/MRT_TableDetailPanel.tsx +3 -12
  24. package/src/buttons/MRT_EditActionButtons.tsx +4 -10
  25. package/src/buttons/MRT_ExpandAllButton.tsx +7 -18
  26. package/src/buttons/MRT_ExpandButton.tsx +8 -15
  27. package/src/buttons/MRT_ShowHideColumnsButton.tsx +2 -9
  28. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +4 -8
  29. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +42 -24
  30. package/src/buttons/MRT_ToggleSearchButton.tsx +29 -0
  31. package/src/footer/MRT_TableFooter.tsx +1 -4
  32. package/src/footer/MRT_TableFooterCell.tsx +2 -4
  33. package/src/footer/MRT_TableFooterRow.tsx +4 -10
  34. package/src/head/MRT_TableHead.tsx +2 -7
  35. package/src/head/MRT_TableHeadCell.tsx +15 -15
  36. package/src/head/MRT_TableHeadRow.tsx +2 -4
  37. package/src/inputs/MRT_DensePaddingSwitch.tsx +4 -2
  38. package/src/inputs/{MRT_EditCellTextfield.tsx → MRT_EditCellTextField.tsx} +21 -14
  39. package/src/inputs/MRT_FilterTextField.tsx +39 -16
  40. package/src/inputs/MRT_SearchTextField.tsx +40 -43
  41. package/src/inputs/MRT_SelectAllCheckbox.tsx +8 -13
  42. package/src/inputs/MRT_SelectCheckbox.tsx +9 -13
  43. package/src/menus/MRT_ColumnActionMenu.tsx +51 -35
  44. package/src/menus/MRT_RowActionMenu.tsx +6 -25
  45. package/src/table/MRT_Table.tsx +1 -2
  46. package/src/table/MRT_TableButtonCell.tsx +9 -0
  47. package/src/table/MRT_TableContainer.tsx +2 -7
  48. package/src/table/MRT_TableSpacerCell.tsx +1 -3
  49. package/src/toolbar/MRT_TablePagination.tsx +3 -6
  50. package/src/toolbar/MRT_ToolbarBottom.tsx +4 -6
  51. package/src/toolbar/MRT_ToolbarButtons.tsx +3 -1
  52. package/src/toolbar/MRT_ToolbarTop.tsx +8 -17
  53. package/src/useMaterialReactTable.tsx +14 -21
  54. package/src/utils/localization.ts +10 -6
  55. package/src/utils/useMRTCalcs.tsx +1 -3
@@ -1,6 +1,6 @@
1
1
  import React, { useMemo, useState, useContext, createContext } from 'react';
2
2
  import { useTable, useResizeColumns, useFilters, useGlobalFilter, useGroupBy, useSortBy, useExpanded, usePagination, useRowSelect, useFlexLayout, useAsyncDebounce } from 'react-table';
3
- import { TextField as TextField$1, InputAdornment, IconButton as IconButton$2, Menu, Divider as Divider$1, styled, MenuItem as MenuItem$2, TableCell as TableCell$6, TableSortLabel, Collapse, Checkbox, TableRow as TableRow$1, TableHead, Tooltip, alpha, TableBody as TableBody$1, TableFooter, Table, FormControlLabel, Switch, Typography, TablePagination, Toolbar as Toolbar$2, TableContainer, Paper, LinearProgress, CircularProgress } from '@mui/material';
3
+ import { TextField as TextField$1, Tooltip, InputAdornment, IconButton as IconButton$2, Menu, Divider as Divider$1, styled, MenuItem as MenuItem$2, TableCell as TableCell$4, TableSortLabel, Collapse, Checkbox, TableRow as TableRow$1, TableHead, alpha, TableBody as TableBody$1, TableFooter, Table, FormControlLabel, Switch, Typography, TablePagination, Toolbar as Toolbar$2, TableContainer, Paper, LinearProgress, CircularProgress } from '@mui/material';
4
4
  import CloseIcon from '@mui/icons-material/Close';
5
5
  import FilterIcon from '@mui/icons-material/FilterList';
6
6
  import MoreVertIcon from '@mui/icons-material/MoreVert';
@@ -17,6 +17,7 @@ import CancelIcon from '@mui/icons-material/Cancel';
17
17
  import SearchIcon from '@mui/icons-material/Search';
18
18
  import FilterListOffIcon from '@mui/icons-material/FilterListOff';
19
19
  import ViewColumnIcon from '@mui/icons-material/ViewColumn';
20
+ import SearchOffIcon from '@mui/icons-material/SearchOff';
20
21
 
21
22
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
22
23
  try {
@@ -122,7 +123,7 @@ var MaterialReactTableContext = /*#__PURE__*/function () {
122
123
  }();
123
124
 
124
125
  var MaterialReactTableProvider = function MaterialReactTableProvider(props) {
125
- var _props$defaultShowFil, _props$defaultDensePa;
126
+ var _props$defaultShowSea, _props$defaultShowFil, _props$defaultDensePa;
126
127
 
127
128
  var hooks = [useResizeColumns, useFilters, useGlobalFilter, useGroupBy, useSortBy, useExpanded, usePagination, useRowSelect];
128
129
  if (props.enableColumnResizing) hooks.unshift(useFlexLayout);
@@ -131,26 +132,32 @@ var MaterialReactTableProvider = function MaterialReactTableProvider(props) {
131
132
  tableInstance: tableInstance
132
133
  });
133
134
 
134
- var _useState = useState((_props$defaultShowFil = props.defaultShowFilters) != null ? _props$defaultShowFil : false),
135
- showFilters = _useState[0],
136
- setShowFilters = _useState[1];
135
+ var _useState = useState((_props$defaultShowSea = props.defaultShowSearchTextField) != null ? _props$defaultShowSea : false),
136
+ showSearch = _useState[0],
137
+ setShowSearch = _useState[1];
137
138
 
138
- var _useState2 = useState((_props$defaultDensePa = props.defaultDensePadding) != null ? _props$defaultDensePa : false),
139
- densePadding = _useState2[0],
140
- setDensePadding = _useState2[1];
139
+ var _useState2 = useState((_props$defaultShowFil = props.defaultShowFilters) != null ? _props$defaultShowFil : false),
140
+ showFilters = _useState2[0],
141
+ setShowFilters = _useState2[1];
141
142
 
142
- var _useState3 = useState(null),
143
- currentEditingRow = _useState3[0],
144
- setCurrentEditingRow = _useState3[1];
143
+ var _useState3 = useState((_props$defaultDensePa = props.defaultDensePadding) != null ? _props$defaultDensePa : false),
144
+ densePadding = _useState3[0],
145
+ setDensePadding = _useState3[1];
146
+
147
+ var _useState4 = useState(null),
148
+ currentEditingRow = _useState4[0],
149
+ setCurrentEditingRow = _useState4[1];
145
150
 
146
151
  return React.createElement(MaterialReactTableContext.Provider, {
147
152
  value: _extends({}, mrtCalcs, props, {
153
+ currentEditingRow: currentEditingRow,
148
154
  densePadding: densePadding,
155
+ setCurrentEditingRow: setCurrentEditingRow,
149
156
  setDensePadding: setDensePadding,
150
157
  setShowFilters: setShowFilters,
151
- currentEditingRow: currentEditingRow,
152
- setCurrentEditingRow: setCurrentEditingRow,
158
+ setShowSearch: setShowSearch,
153
159
  showFilters: showFilters,
160
+ showSearch: showSearch,
154
161
  // @ts-ignore
155
162
  tableInstance: tableInstance
156
163
  })
@@ -162,7 +169,9 @@ var useMaterialReactTable = function useMaterialReactTable() {
162
169
  );
163
170
  };
164
171
 
165
- var MRT_FilterTextfield = function MRT_FilterTextfield(_ref) {
172
+ var MRT_FilterTextField = function MRT_FilterTextField(_ref) {
173
+ var _localization$filterT, _localization$filterT2, _localization$filterT3, _localization$filterT4;
174
+
166
175
  var column = _ref.column;
167
176
 
168
177
  var _useMaterialReactTabl = useMaterialReactTable(),
@@ -182,14 +191,21 @@ var MRT_FilterTextfield = function MRT_FilterTextfield(_ref) {
182
191
  };
183
192
 
184
193
  if (column.Filter) {
185
- return React.createElement(React.Fragment, null, column.Filter({
194
+ return React.createElement(React.Fragment, null, column.Filter == null ? void 0 : column.Filter({
186
195
  column: column
187
196
  }));
188
197
  }
189
198
 
190
199
  return React.createElement(TextField$1, {
200
+ fullWidth: true,
201
+ id: "filter-" + column.id + "-column",
202
+ inputProps: {
203
+ style: {
204
+ textOverflow: 'ellipsis'
205
+ }
206
+ },
191
207
  margin: "dense",
192
- placeholder: localization == null ? void 0 : localization.filterTextFieldPlaceholder,
208
+ placeholder: localization == null ? void 0 : (_localization$filterT = localization.filterTextFieldPlaceholder) == null ? void 0 : _localization$filterT.replace('{column}', String(column.Header)),
193
209
  onChange: function onChange(e) {
194
210
  setFilterValue(e.target.value);
195
211
  handleChange(e.target.value);
@@ -200,20 +216,25 @@ var MRT_FilterTextfield = function MRT_FilterTextfield(_ref) {
200
216
  value: filterValue != null ? filterValue : '',
201
217
  variant: "standard",
202
218
  InputProps: {
203
- startAdornment: React.createElement(InputAdornment, {
219
+ startAdornment: React.createElement(Tooltip, {
220
+ arrow: true,
221
+ title: (_localization$filterT2 = localization == null ? void 0 : (_localization$filterT3 = localization.filterTextFieldPlaceholder) == null ? void 0 : _localization$filterT3.replace('{column}', String(column.Header))) != null ? _localization$filterT2 : ''
222
+ }, React.createElement(InputAdornment, {
204
223
  position: "start"
205
- }, React.createElement(FilterIcon, null)),
224
+ }, React.createElement(FilterIcon, null))),
206
225
  endAdornment: React.createElement(InputAdornment, {
207
226
  position: "end"
208
- }, React.createElement(IconButton$2, {
227
+ }, React.createElement(Tooltip, {
228
+ arrow: true,
229
+ title: (_localization$filterT4 = localization == null ? void 0 : localization.filterTextFieldClearButtonTitle) != null ? _localization$filterT4 : ''
230
+ }, React.createElement("span", null, React.createElement(IconButton$2, {
209
231
  "aria-label": localization == null ? void 0 : localization.filterTextFieldClearButtonTitle,
210
232
  disabled: (filterValue == null ? void 0 : filterValue.length) === 0,
211
233
  onClick: handleClear,
212
- size: "small",
213
- title: localization == null ? void 0 : localization.filterTextFieldClearButtonTitle
234
+ size: "small"
214
235
  }, React.createElement(CloseIcon, {
215
236
  fontSize: "small"
216
- })))
237
+ })))))
217
238
  }
218
239
  });
219
240
  };
@@ -223,6 +244,8 @@ var MenuItem = /*#__PURE__*/styled(MenuItem$2)({
223
244
  gap: '0.75rem'
224
245
  });
225
246
  var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
247
+ var _localization$columnA, _localization$columnA2, _localization$filterT, _localization, _localization$columnA3;
248
+
226
249
  var anchorEl = _ref.anchorEl,
227
250
  column = _ref.column,
228
251
  setAnchorEl = _ref.setAnchorEl;
@@ -231,7 +254,9 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
231
254
  disableColumnHiding = _useMaterialReactTabl.disableColumnHiding,
232
255
  enableColumnGrouping = _useMaterialReactTabl.enableColumnGrouping,
233
256
  disableSortBy = _useMaterialReactTabl.disableSortBy,
234
- localization = _useMaterialReactTabl.localization;
257
+ localization = _useMaterialReactTabl.localization,
258
+ disableFilters = _useMaterialReactTabl.disableFilters,
259
+ setShowFilters = _useMaterialReactTabl.setShowFilters;
235
260
 
236
261
  var handleClearSort = function handleClearSort() {
237
262
  column.clearSortBy();
@@ -258,6 +283,17 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
258
283
  setAnchorEl(null);
259
284
  };
260
285
 
286
+ var handleFilterByColumn = function handleFilterByColumn() {
287
+ setShowFilters(true);
288
+ setTimeout(function () {
289
+ var _document$getElementB, _column$muiTableHeadC, _column$muiTableHeadC2;
290
+
291
+ return (_document$getElementB = document.getElementById( // @ts-ignore
292
+ (_column$muiTableHeadC = (_column$muiTableHeadC2 = column.muiTableHeadCellFilterTextFieldProps) == null ? void 0 : _column$muiTableHeadC2.id) != null ? _column$muiTableHeadC : "filter-" + column.id + "-column")) == null ? void 0 : _document$getElementB.focus();
293
+ }, 200);
294
+ setAnchorEl(null);
295
+ };
296
+
261
297
  return React.createElement(Menu, {
262
298
  anchorEl: anchorEl,
263
299
  open: !!anchorEl,
@@ -272,7 +308,7 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
272
308
  key: 2,
273
309
  disabled: column.isSorted && !column.isSortedDesc,
274
310
  onClick: handleSortAsc
275
- }, React.createElement(SortIcon, null), " ", localization == null ? void 0 : localization.columnActionMenuItemSortAsc), React.createElement(MenuItem, {
311
+ }, React.createElement(SortIcon, null), ' ', localization == null ? void 0 : (_localization$columnA = localization.columnActionMenuItemSortAsc) == null ? void 0 : _localization$columnA.replace('{column}', String(column.Header))), React.createElement(MenuItem, {
276
312
  key: 3,
277
313
  disabled: column.isSorted && column.isSortedDesc,
278
314
  onClick: handleSortDesc
@@ -280,25 +316,30 @@ var MRT_ColumnActionMenu = function MRT_ColumnActionMenu(_ref) {
280
316
  style: {
281
317
  transform: 'rotate(180deg) scaleX(-1)'
282
318
  }
283
- }), ' ', localization == null ? void 0 : localization.columnActionMenuItemSortDesc), React.createElement(Divider$1, {
284
- key: 4
285
- })], !disableColumnHiding && React.createElement(MenuItem, {
286
- onClick: handleHideColumn
287
- }, React.createElement(VisibilityOffIcon, null), " ", localization == null ? void 0 : localization.columnActionMenuItemHideColumn), enableColumnGrouping && column.canGroupBy && React.createElement(MenuItem, {
288
- disabled: column.isGrouped,
289
- onClick: handleGroupByColumn
290
- }, React.createElement(DynamicFeedIcon, null), " ", localization == null ? void 0 : localization.columnActionMenuItemGroupBy), enableColumnGrouping && column.canGroupBy && React.createElement(MenuItem, {
291
- disabled: !column.isGrouped,
319
+ }), ' ', localization == null ? void 0 : (_localization$columnA2 = localization.columnActionMenuItemSortDesc) == null ? void 0 : _localization$columnA2.replace('{column}', String(column.Header)))], !disableFilters && column.canFilter && [React.createElement(Divider$1, {
320
+ key: 0
321
+ }), React.createElement(MenuItem, {
322
+ key: 1,
323
+ onClick: handleFilterByColumn
324
+ }, React.createElement(FilterIcon, null), ' ', localization == null ? void 0 : (_localization$filterT = localization.filterTextFieldPlaceholder) == null ? void 0 : _localization$filterT.replace('{column}', String(column.Header)))], enableColumnGrouping && column.canGroupBy && [React.createElement(Divider$1, {
325
+ key: 1
326
+ }), React.createElement(MenuItem, {
327
+ key: 2,
292
328
  onClick: handleGroupByColumn
293
- }, React.createElement(DynamicFeedIcon, null), " ", localization == null ? void 0 : localization.columnActionMenuItemUnGroupBy));
329
+ }, React.createElement(DynamicFeedIcon, null), ' ', localization == null ? void 0 : (_localization = localization[column.isGrouped ? 'columnActionMenuItemUnGroupBy' : 'columnActionMenuItemGroupBy']) == null ? void 0 : _localization.replace('{column}', String(column.Header)))], !disableColumnHiding && [React.createElement(Divider$1, {
330
+ key: 0
331
+ }), React.createElement(MenuItem, {
332
+ key: 1,
333
+ onClick: handleHideColumn
334
+ }, React.createElement(VisibilityOffIcon, null), ' ', localization == null ? void 0 : (_localization$columnA3 = localization.columnActionMenuItemHideColumn) == null ? void 0 : _localization$columnA3.replace('{column}', String(column.Header)))]);
294
335
  };
295
336
 
296
337
  var IconButton = /*#__PURE__*/styled(IconButton$2)({
297
338
  opacity: 0.5,
298
339
  transition: 'opacity 0.2s',
299
340
  marginRight: '2px',
300
- height: '2rem',
301
- width: '2rem',
341
+ height: '1.6rem',
342
+ width: '1.6rem',
302
343
  '&:hover': {
303
344
  opacity: 1
304
345
  }
@@ -321,9 +362,9 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
321
362
 
322
363
  return React.createElement(React.Fragment, null, React.createElement(IconButton, {
323
364
  "aria-label": localization == null ? void 0 : localization.columnActionMenuButtonTitle,
324
- title: localization == null ? void 0 : localization.columnActionMenuButtonTitle,
325
365
  onClick: handleClick,
326
- size: "small"
366
+ size: "small",
367
+ title: localization == null ? void 0 : localization.columnActionMenuButtonTitle
327
368
  }, React.createElement(MoreVertIcon, null)), React.createElement(MRT_ColumnActionMenu, {
328
369
  anchorEl: anchorEl,
329
370
  column: column,
@@ -331,7 +372,7 @@ var MRT_ToggleColumnActionMenuButton = function MRT_ToggleColumnActionMenuButton
331
372
  }));
332
373
  };
333
374
 
334
- var StyledTableHeadCell = /*#__PURE__*/styled(TableCell$6, {
375
+ var StyledTableHeadCell = /*#__PURE__*/styled(TableCell$4, {
335
376
  shouldForwardProp: function shouldForwardProp(prop) {
336
377
  return prop !== 'densePadding' && prop !== 'enableColumnResizing';
337
378
  }
@@ -340,23 +381,27 @@ var StyledTableHeadCell = /*#__PURE__*/styled(TableCell$6, {
340
381
  enableColumnResizing = _ref.enableColumnResizing;
341
382
  return {
342
383
  fontWeight: 'bold',
343
- verticalAlign: 'text-top',
384
+ height: '100%',
344
385
  padding: densePadding ? '0.5rem' : '1rem',
345
- transition: "all " + (enableColumnResizing ? '10ms' : '0.2s') + " ease-in-out"
386
+ transition: "all " + (enableColumnResizing ? '10ms' : '0.2s') + " ease-in-out",
387
+ verticalAlign: 'text-top'
346
388
  };
347
389
  });
348
- var TableCellContents = /*#__PURE__*/styled('div')({
349
- display: 'grid'
390
+ var TableCellWrapper = /*#__PURE__*/styled('div')({
391
+ alignContent: 'space-between',
392
+ display: 'grid',
393
+ height: '100%'
350
394
  });
351
- var TableCellText = /*#__PURE__*/styled('div')({
395
+ var TableCellTopContents = /*#__PURE__*/styled('div')({
352
396
  width: '100%',
353
397
  display: 'flex',
354
- justifyContent: 'space-between'
398
+ justifyContent: 'space-between',
399
+ alignItems: 'flex-start'
355
400
  });
356
401
  var CellFlexItem = /*#__PURE__*/styled('span')({
402
+ alignItems: 'center',
357
403
  display: 'flex',
358
- flexWrap: 'nowrap',
359
- alignItems: 'center'
404
+ flexWrap: 'nowrap'
360
405
  });
361
406
  var Divider = /*#__PURE__*/styled(Divider$1)({
362
407
  borderRightWidth: '2px',
@@ -390,17 +435,14 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref2) {
390
435
  align: isParentHeader ? 'center' : 'left',
391
436
  densePadding: densePadding,
392
437
  enableColumnResizing: enableColumnResizing
393
- }, tableCellProps), React.createElement(TableCellContents, null, React.createElement(TableCellText, {
438
+ }, tableCellProps), React.createElement(TableCellWrapper, null, React.createElement(TableCellTopContents, {
394
439
  style: {
395
440
  justifyContent: isParentHeader ? 'center' : undefined
396
441
  }
397
442
  }, React.createElement(CellFlexItem, Object.assign({}, column.getSortByToggleProps()), column.render('Header'), !isParentHeader && column.canSort && React.createElement(TableSortLabel, {
398
443
  "aria-label": column.isSorted ? column.sortDescFirst ? localization == null ? void 0 : localization.columnActionMenuItemClearSort : localization == null ? void 0 : localization.columnActionMenuItemSortDesc : localization == null ? void 0 : localization.columnActionMenuItemSortAsc,
399
444
  active: column.isSorted,
400
- direction: column.isSortedDesc ? 'desc' : 'asc',
401
- style: {
402
- margin: 0
403
- }
445
+ direction: column.isSortedDesc ? 'desc' : 'asc'
404
446
  })), React.createElement(CellFlexItem, null, !disableColumnActions && !isParentHeader && React.createElement(MRT_ToggleColumnActionMenuButton, {
405
447
  column: column
406
448
  }), enableColumnResizing && !isParentHeader && React.createElement(Divider, Object.assign({
@@ -411,34 +453,40 @@ var MRT_TableHeadCell = function MRT_TableHeadCell(_ref2) {
411
453
  }
412
454
  }, column.getResizerProps())))), !disableFilters && column.canFilter && React.createElement(Collapse, {
413
455
  "in": showFilters
414
- }, React.createElement(MRT_FilterTextfield, {
456
+ }, React.createElement(MRT_FilterTextField, {
415
457
  column: column
416
458
  }))));
417
459
  };
418
460
 
419
- var TableCell = /*#__PURE__*/styled(TableCell$6, {
461
+ var MRT_TableButtonCell = /*#__PURE__*/styled(TableCell$4, {
420
462
  shouldForwardProp: function shouldForwardProp(prop) {
421
463
  return prop !== 'densePadding';
422
464
  }
423
465
  })(function (_ref) {
424
466
  var densePadding = _ref.densePadding;
425
467
  return {
426
- padding: densePadding ? '0' : '0.6rem',
468
+ padding: densePadding ? '1px' : '0.6rem',
469
+ textAlign: 'center',
427
470
  transition: 'all 0.2s ease-in-out'
428
471
  };
429
472
  });
473
+
430
474
  var MRT_SelectAllCheckbox = function MRT_SelectAllCheckbox() {
475
+ var _localization$selectA;
476
+
431
477
  var _useMaterialReactTabl = useMaterialReactTable(),
432
478
  tableInstance = _useMaterialReactTabl.tableInstance,
433
479
  disableSelectAll = _useMaterialReactTabl.disableSelectAll,
434
480
  densePadding = _useMaterialReactTabl.densePadding,
435
481
  localization = _useMaterialReactTabl.localization;
436
482
 
437
- return React.createElement(TableCell, {
483
+ return React.createElement(MRT_TableButtonCell, {
438
484
  densePadding: densePadding,
439
485
  variant: "head"
440
486
  }, !disableSelectAll ? React.createElement(Checkbox, Object.assign({
441
- "aria-label": localization == null ? void 0 : localization.selectAllCheckboxTitle
487
+ inputProps: {
488
+ 'aria-label': (_localization$selectA = localization == null ? void 0 : localization.selectAllCheckboxTitle) != null ? _localization$selectA : ''
489
+ }
442
490
  }, tableInstance.getToggleAllPageRowsSelectedProps())) : null);
443
491
  };
444
492
 
@@ -458,18 +506,12 @@ var MRT_ExpandAllButton = function MRT_ExpandAllButton() {
458
506
  tableInstance = _useMaterialReactTabl.tableInstance,
459
507
  localization = _useMaterialReactTabl.localization,
460
508
  anyRowsExpanded = _useMaterialReactTabl.anyRowsExpanded,
461
- densePadding = _useMaterialReactTabl.densePadding,
462
- renderDetailPanel = _useMaterialReactTabl.renderDetailPanel;
509
+ densePadding = _useMaterialReactTabl.densePadding;
463
510
 
464
- return React.createElement(TableCell$6, Object.assign({
465
- size: "small"
466
- }, tableInstance.getToggleAllRowsExpandedProps(), {
467
- style: {
468
- padding: densePadding ? '0' : '0.5rem 0.5rem',
469
- transition: 'all 0.2s ease-in-out',
470
- width: (renderDetailPanel ? 2 : tableInstance.expandedDepth + 2) + "rem"
471
- }
472
- }), React.createElement(IconButton$2, {
511
+ return React.createElement(MRT_TableButtonCell, Object.assign({
512
+ size: "small",
513
+ densePadding: densePadding
514
+ }, tableInstance.getToggleAllRowsExpandedProps()), React.createElement(IconButton$2, {
473
515
  "aria-label": localization == null ? void 0 : localization.expandAllButtonTitle,
474
516
  title: localization == null ? void 0 : localization.expandAllButtonTitle
475
517
  }, React.createElement(ArrowRightIcon, {
@@ -494,7 +536,7 @@ var MRT_TableSpacerCell = function MRT_TableSpacerCell(_ref) {
494
536
  }, (_mTableBodyCellrops$s = mTableBodyCellrops == null ? void 0 : mTableBodyCellrops.style) != null ? _mTableBodyCellrops$s : {})
495
537
  });
496
538
 
497
- return React.createElement(TableCell$6, Object.assign({}, tableCellProps));
539
+ return React.createElement(TableCell$4, Object.assign({}, tableCellProps));
498
540
  };
499
541
 
500
542
  var MRT_TableHeadRow = function MRT_TableHeadRow(_ref) {
@@ -527,7 +569,11 @@ var MRT_TableHeadRow = function MRT_TableHeadRow(_ref) {
527
569
  style: _extends({}, headerGroup.getHeaderGroupProps().style, (_mTableHeadRowProps$s = mTableHeadRowProps == null ? void 0 : mTableHeadRowProps.style) != null ? _mTableHeadRowProps$s : {})
528
570
  });
529
571
 
530
- return React.createElement(TableRow$1, Object.assign({}, tableRowProps), enableRowActions && positionActionsColumn === 'first' && (isParentHeader ? React.createElement(MRT_TableSpacerCell, null) : React.createElement(StyledTableHeadCell, null, localization == null ? void 0 : localization.actionsHeadColumnTitle)), anyRowsCanExpand || renderDetailPanel ? !disableExpandAll && !isParentHeader ? React.createElement(MRT_ExpandAllButton, null) : React.createElement(MRT_TableSpacerCell, {
572
+ return React.createElement(TableRow$1, Object.assign({}, tableRowProps), enableRowActions && positionActionsColumn === 'first' && (isParentHeader ? React.createElement(MRT_TableSpacerCell, null) : React.createElement(StyledTableHeadCell, {
573
+ style: {
574
+ textAlign: 'center'
575
+ }
576
+ }, localization == null ? void 0 : localization.actionsHeadColumnTitle)), anyRowsCanExpand || renderDetailPanel ? !disableExpandAll && !isParentHeader ? React.createElement(MRT_ExpandAllButton, null) : React.createElement(MRT_TableSpacerCell, {
531
577
  width: (renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5) + "rem"
532
578
  }) : null, enableSelection ? !isParentHeader ? React.createElement(MRT_SelectAllCheckbox, null) : React.createElement(MRT_TableSpacerCell, {
533
579
  width: "1rem"
@@ -555,51 +601,52 @@ var MRT_TableHead = function MRT_TableHead() {
555
601
  }));
556
602
  };
557
603
 
558
- var MRT_EditCellTextfield = function MRT_EditCellTextfield(_ref) {
559
- var _cell$column$muiTable, _currentEditingRow$va;
604
+ var MRT_EditCellTextField = function MRT_EditCellTextField(_ref) {
605
+ var _cell$column$muiTable;
560
606
 
561
607
  var cell = _ref.cell;
562
608
 
563
609
  var _useMaterialReactTabl = useMaterialReactTable(),
564
- localization = _useMaterialReactTabl.localization,
565
610
  currentEditingRow = _useMaterialReactTabl.currentEditingRow,
566
- setCurrentEditingRow = _useMaterialReactTabl.setCurrentEditingRow,
567
- muiTableBodyCellEditTextFieldProps = _useMaterialReactTabl.muiTableBodyCellEditTextFieldProps;
611
+ localization = _useMaterialReactTabl.localization,
612
+ muiTableBodyCellEditTextFieldProps = _useMaterialReactTabl.muiTableBodyCellEditTextFieldProps,
613
+ setCurrentEditingRow = _useMaterialReactTabl.setCurrentEditingRow;
568
614
 
569
615
  var handleChange = function handleChange(event) {
570
616
  if (currentEditingRow) {
571
- var _extends2;
572
-
573
- setCurrentEditingRow(_extends({}, currentEditingRow, {
574
- values: _extends({}, cell.row.values, (_extends2 = {}, _extends2[cell.column.id] = event.target.value, _extends2))
575
- }));
617
+ cell.row.values[cell.column.id] = event.target.value;
618
+ setCurrentEditingRow(_extends({}, currentEditingRow));
576
619
  }
620
+
621
+ cell.column.onCellEditChange == null ? void 0 : cell.column.onCellEditChange(event, cell);
577
622
  };
578
623
 
579
- var textFieldProps = _extends({}, muiTableBodyCellEditTextFieldProps, cell.column.muiTableBodyCellEditTextFieldProps, {
624
+ var mTableBodyCellEditTextFieldProps = muiTableBodyCellEditTextFieldProps instanceof Function ? muiTableBodyCellEditTextFieldProps(cell) : muiTableBodyCellEditTextFieldProps;
625
+ var mcTableBodyCellEditTextFieldProps = cell.column.muiTableBodyCellEditTextFieldProps instanceof Function ? cell.column.muiTableBodyCellEditTextFieldProps(cell) : cell.column.muiTableBodyCellEditTextFieldProps;
626
+
627
+ var textFieldProps = _extends({}, mTableBodyCellEditTextFieldProps, mcTableBodyCellEditTextFieldProps, {
580
628
  style: _extends({}, muiTableBodyCellEditTextFieldProps == null ? void 0 : muiTableBodyCellEditTextFieldProps.style, (_cell$column$muiTable = cell.column.muiTableBodyCellEditTextFieldProps) == null ? void 0 : _cell$column$muiTable.style)
581
629
  });
582
630
 
583
631
  if (cell.column.editable && cell.column.Edit) {
584
632
  return React.createElement(React.Fragment, null, cell.column.Edit(_extends({}, textFieldProps, {
585
- cell: cell,
586
- onChange: handleChange
633
+ cell: cell
587
634
  })));
588
635
  }
589
636
 
590
637
  return React.createElement(TextField$1, Object.assign({
591
638
  margin: "dense",
592
- placeholder: localization == null ? void 0 : localization.filterTextFieldPlaceholder,
593
639
  onChange: handleChange,
594
640
  onClick: function onClick(e) {
595
641
  return e.stopPropagation();
596
642
  },
597
- value: currentEditingRow == null ? void 0 : (_currentEditingRow$va = currentEditingRow.values) == null ? void 0 : _currentEditingRow$va[cell.column.id],
643
+ placeholder: localization == null ? void 0 : localization.filterTextFieldPlaceholder,
644
+ value: cell.value,
598
645
  variant: "standard"
599
646
  }, textFieldProps));
600
647
  };
601
648
 
602
- var TableCell$1 = /*#__PURE__*/styled(TableCell$6, {
649
+ var TableCell = /*#__PURE__*/styled(TableCell$4, {
603
650
  shouldForwardProp: function shouldForwardProp(prop) {
604
651
  return prop !== 'densePadding';
605
652
  }
@@ -607,7 +654,8 @@ var TableCell$1 = /*#__PURE__*/styled(TableCell$6, {
607
654
  var densePadding = _ref.densePadding;
608
655
  return {
609
656
  padding: densePadding ? '0.5rem' : '1rem',
610
- transition: 'all 0.2s ease-in-out'
657
+ transition: 'all 0.2s ease-in-out',
658
+ whiteSpace: densePadding ? 'nowrap' : 'normal'
611
659
  };
612
660
  });
613
661
  var MRT_TableBodyCell = function MRT_TableBodyCell(_ref2) {
@@ -628,17 +676,17 @@ var MRT_TableBodyCell = function MRT_TableBodyCell(_ref2) {
628
676
  style: _extends({}, cell.getCellProps().style, (_mTableCellBodyProps$ = mTableCellBodyProps == null ? void 0 : mTableCellBodyProps.style) != null ? _mTableCellBodyProps$ : {}, (_mcTableCellBodyProps = mcTableCellBodyProps == null ? void 0 : mcTableCellBodyProps.style) != null ? _mcTableCellBodyProps : {})
629
677
  });
630
678
 
631
- return React.createElement(TableCell$1, Object.assign({
679
+ return React.createElement(TableCell, Object.assign({
632
680
  densePadding: densePadding,
633
681
  onClick: function onClick(event) {
634
682
  return onCellClick == null ? void 0 : onCellClick(event, cell);
635
683
  }
636
- }, tableCellProps), (currentEditingRow == null ? void 0 : currentEditingRow.id) === cell.row.id ? React.createElement(MRT_EditCellTextfield, {
684
+ }, tableCellProps), (currentEditingRow == null ? void 0 : currentEditingRow.id) === cell.row.id ? React.createElement(MRT_EditCellTextField, {
637
685
  cell: cell
638
686
  }) : cell.isPlaceholder ? null : cell.isAggregated ? cell.render('Aggregated') : cell.isGrouped ? React.createElement("span", null, cell.render('Cell'), " (", cell.row.subRows.length, ")") : cell.render('Cell'));
639
687
  };
640
688
 
641
- var TableCell$2 = /*#__PURE__*/styled(TableCell$6, {
689
+ var TableCell$1 = /*#__PURE__*/styled(TableCell$4, {
642
690
  shouldForwardProp: function shouldForwardProp(prop) {
643
691
  return prop !== 'isExpanded';
644
692
  }
@@ -677,7 +725,7 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref2) {
677
725
 
678
726
  return React.createElement(TableRow$1, Object.assign({
679
727
  hover: true
680
- }, tableRowProps), React.createElement(TableCell$2, Object.assign({
728
+ }, tableRowProps), React.createElement(TableCell$1, Object.assign({
681
729
  colSpan: tableInstance.visibleColumns.length + 10,
682
730
  isExpanded: row.isExpanded,
683
731
  onClick: function onClick(event) {
@@ -688,17 +736,15 @@ var MRT_TableDetailPanel = function MRT_TableDetailPanel(_ref2) {
688
736
  }, renderDetailPanel == null ? void 0 : renderDetailPanel(row))));
689
737
  };
690
738
 
691
- var TableCell$3 = /*#__PURE__*/styled(TableCell$6, {
739
+ var TableCell$2 = /*#__PURE__*/styled(MRT_TableButtonCell, {
692
740
  shouldForwardProp: function shouldForwardProp(prop) {
693
- return prop !== 'densePadding' && prop !== 'depth';
741
+ return prop !== 'depth';
694
742
  }
695
743
  })(function (_ref) {
696
- var densePadding = _ref.densePadding,
697
- depth = _ref.depth;
744
+ var depth = _ref.depth;
698
745
  return {
699
- padding: densePadding ? '0' : '0.6rem',
700
746
  paddingLeft: depth + 0.5 + "rem",
701
- transition: 'all 0.2s ease-in-out'
747
+ textAlign: 'left'
702
748
  };
703
749
  });
704
750
  var ExpandMoreIcon = /*#__PURE__*/styled(MuiExpandMoreIcon, {
@@ -720,7 +766,7 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref3) {
720
766
  densePadding = _useMaterialReactTabl.densePadding,
721
767
  renderDetailPanel = _useMaterialReactTabl.renderDetailPanel;
722
768
 
723
- return React.createElement(TableCell$3, {
769
+ return React.createElement(TableCell$2, {
724
770
  size: "small",
725
771
  densePadding: densePadding,
726
772
  depth: row.depth
@@ -734,24 +780,14 @@ var MRT_ExpandButton = function MRT_ExpandButton(_ref3) {
734
780
  })));
735
781
  };
736
782
 
737
- var TableCell$4 = /*#__PURE__*/styled(TableCell$6, {
738
- shouldForwardProp: function shouldForwardProp(prop) {
739
- return prop !== 'densePadding';
740
- }
741
- })(function (_ref) {
742
- var densePadding = _ref.densePadding;
743
- return {
744
- padding: densePadding ? '0' : '0.6rem',
745
- transition: 'all 0.2s ease-in-out'
746
- };
747
- });
748
- var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref2) {
749
- var row = _ref2.row;
783
+ var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref) {
784
+ var row = _ref.row;
750
785
 
751
786
  var _useMaterialReactTabl = useMaterialReactTable(),
752
787
  tableInstance = _useMaterialReactTabl.tableInstance,
753
788
  onRowSelectChange = _useMaterialReactTabl.onRowSelectChange,
754
- densePadding = _useMaterialReactTabl.densePadding;
789
+ densePadding = _useMaterialReactTabl.densePadding,
790
+ localization = _useMaterialReactTabl.localization;
755
791
 
756
792
  var onSelectChange = function onSelectChange(event) {
757
793
  var _row$getToggleRowSele;
@@ -760,11 +796,14 @@ var MRT_SelectCheckbox = function MRT_SelectCheckbox(_ref2) {
760
796
  onRowSelectChange == null ? void 0 : onRowSelectChange(event, row, tableInstance.selectedFlatRows);
761
797
  };
762
798
 
763
- return React.createElement(TableCell$4, {
799
+ return React.createElement(MRT_TableButtonCell, {
764
800
  densePadding: densePadding
765
- }, React.createElement(Checkbox, Object.assign({}, row.getToggleRowSelectedProps(), {
801
+ }, React.createElement(Checkbox, Object.assign({
802
+ inputProps: {
803
+ 'aria-label': localization == null ? void 0 : localization.selectCheckboxTitle
804
+ },
766
805
  onChange: onSelectChange
767
- })));
806
+ }, row.getToggleRowSelectedProps())));
768
807
  };
769
808
 
770
809
  var MenuItem$1 = /*#__PURE__*/styled(MenuItem$2)({
@@ -776,20 +815,15 @@ var MRT_RowActionMenu = function MRT_RowActionMenu(_ref) {
776
815
 
777
816
  var anchorEl = _ref.anchorEl,
778
817
  row = _ref.row,
818
+ handleEdit = _ref.handleEdit,
779
819
  setAnchorEl = _ref.setAnchorEl;
780
820
 
781
821
  var _useMaterialReactTabl = useMaterialReactTable(),
782
822
  enableRowEditing = _useMaterialReactTabl.enableRowEditing,
783
823
  localization = _useMaterialReactTabl.localization,
784
824
  renderRowActionMenuItems = _useMaterialReactTabl.renderRowActionMenuItems,
785
- setCurrentEditingRow = _useMaterialReactTabl.setCurrentEditingRow,
786
825
  tableInstance = _useMaterialReactTabl.tableInstance;
787
826
 
788
- var handleEdit = function handleEdit() {
789
- setCurrentEditingRow(_extends({}, row));
790
- setAnchorEl(null);
791
- };
792
-
793
827
  return React.createElement(Menu, {
794
828
  anchorEl: anchorEl,
795
829
  open: !!anchorEl,
@@ -1579,6 +1613,7 @@ var MRT_EditActionButtons = function MRT_EditActionButtons(_ref) {
1579
1613
  currentEditingRow = _useMaterialReactTabl.currentEditingRow;
1580
1614
 
1581
1615
  var handleCancel = function handleCancel() {
1616
+ row.values = row.original;
1582
1617
  setCurrentEditingRow(null);
1583
1618
  };
1584
1619
 
@@ -1634,11 +1669,17 @@ var IconButton$1 = /*#__PURE__*/styled(IconButton$2)({
1634
1669
  }
1635
1670
  });
1636
1671
  var MRT_ToggleRowActionMenuButton = function MRT_ToggleRowActionMenuButton(_ref) {
1672
+ var _localization$rowActi;
1673
+
1637
1674
  var row = _ref.row;
1638
1675
 
1639
1676
  var _useMaterialReactTabl = useMaterialReactTable(),
1640
- localization = _useMaterialReactTabl.localization,
1641
1677
  currentEditingRow = _useMaterialReactTabl.currentEditingRow,
1678
+ densePadding = _useMaterialReactTabl.densePadding,
1679
+ localization = _useMaterialReactTabl.localization,
1680
+ renderRowActionMenuItems = _useMaterialReactTabl.renderRowActionMenuItems,
1681
+ enableRowEditing = _useMaterialReactTabl.enableRowEditing,
1682
+ setCurrentEditingRow = _useMaterialReactTabl.setCurrentEditingRow,
1642
1683
  renderRowActions = _useMaterialReactTabl.renderRowActions,
1643
1684
  tableInstance = _useMaterialReactTabl.tableInstance;
1644
1685
 
@@ -1652,26 +1693,32 @@ var MRT_ToggleRowActionMenuButton = function MRT_ToggleRowActionMenuButton(_ref)
1652
1693
  setAnchorEl(event.currentTarget);
1653
1694
  };
1654
1695
 
1655
- if (renderRowActions) {
1656
- return React.createElement(React.Fragment, null, renderRowActions(row, tableInstance));
1657
- }
1658
-
1659
- if (row.id === (currentEditingRow == null ? void 0 : currentEditingRow.id)) {
1660
- return React.createElement(MRT_EditActionButtons, {
1661
- row: row
1662
- });
1663
- }
1696
+ var handleEdit = function handleEdit() {
1697
+ setCurrentEditingRow(_extends({}, row));
1698
+ setAnchorEl(null);
1699
+ };
1664
1700
 
1665
- return React.createElement(React.Fragment, null, React.createElement(IconButton$1, {
1701
+ return React.createElement(MRT_TableButtonCell, {
1702
+ densePadding: densePadding
1703
+ }, renderRowActions ? React.createElement(React.Fragment, null, renderRowActions(row, tableInstance)) : row.id === (currentEditingRow == null ? void 0 : currentEditingRow.id) ? React.createElement(MRT_EditActionButtons, {
1704
+ row: row
1705
+ }) : !renderRowActionMenuItems && enableRowEditing ? React.createElement(Tooltip, {
1706
+ placement: "right",
1707
+ arrow: true,
1708
+ title: (_localization$rowActi = localization == null ? void 0 : localization.rowActionMenuItemEdit) != null ? _localization$rowActi : ''
1709
+ }, React.createElement(IconButton$1, {
1710
+ onClick: handleEdit
1711
+ }, React.createElement(EditIcon, null))) : renderRowActionMenuItems ? React.createElement(React.Fragment, null, React.createElement(IconButton$1, {
1666
1712
  "aria-label": localization == null ? void 0 : localization.rowActionMenuButtonTitle,
1667
1713
  title: localization == null ? void 0 : localization.rowActionMenuButtonTitle,
1668
1714
  onClick: handleOpenRowActionMenu,
1669
1715
  size: "small"
1670
1716
  }, React.createElement(MoreHorizIcon, null)), React.createElement(MRT_RowActionMenu, {
1671
1717
  anchorEl: anchorEl,
1718
+ handleEdit: handleEdit,
1672
1719
  row: row,
1673
1720
  setAnchorEl: setAnchorEl
1674
- }));
1721
+ })) : null);
1675
1722
  };
1676
1723
 
1677
1724
  var TableRow = /*#__PURE__*/styled(TableRow$1, {
@@ -1711,9 +1758,9 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref2) {
1711
1758
  onClick: function onClick(event) {
1712
1759
  return onRowClick == null ? void 0 : onRowClick(event, row);
1713
1760
  }
1714
- }, tableRowProps), enableRowActions && positionActionsColumn === 'first' && React.createElement(TableCell$6, null, React.createElement(MRT_ToggleRowActionMenuButton, {
1761
+ }, tableRowProps), enableRowActions && positionActionsColumn === 'first' && React.createElement(MRT_ToggleRowActionMenuButton, {
1715
1762
  row: row
1716
- })), (anyRowsCanExpand || renderDetailPanel) && React.createElement(MRT_ExpandButton, {
1763
+ }), (anyRowsCanExpand || renderDetailPanel) && React.createElement(MRT_ExpandButton, {
1717
1764
  row: row
1718
1765
  }), enableSelection && React.createElement(MRT_SelectCheckbox, {
1719
1766
  row: row
@@ -1722,9 +1769,9 @@ var MRT_TableBodyRow = function MRT_TableBodyRow(_ref2) {
1722
1769
  key: cell.getCellProps().key,
1723
1770
  cell: cell
1724
1771
  });
1725
- }), enableRowActions && positionActionsColumn === 'last' && React.createElement(TableCell$6, null, React.createElement(MRT_ToggleRowActionMenuButton, {
1772
+ }), enableRowActions && positionActionsColumn === 'last' && React.createElement(MRT_ToggleRowActionMenuButton, {
1726
1773
  row: row
1727
- }))), renderDetailPanel && React.createElement(MRT_TableDetailPanel, {
1774
+ })), renderDetailPanel && React.createElement(MRT_TableDetailPanel, {
1728
1775
  row: row
1729
1776
  }));
1730
1777
  };
@@ -1755,7 +1802,7 @@ var MRT_TableBody = function MRT_TableBody() {
1755
1802
  }));
1756
1803
  };
1757
1804
 
1758
- var TableCell$5 = /*#__PURE__*/styled(TableCell$6, {
1805
+ var TableCell$3 = /*#__PURE__*/styled(TableCell$4, {
1759
1806
  shouldForwardProp: function shouldForwardProp(prop) {
1760
1807
  return prop !== 'densePadding' && prop !== 'enableColumnResizing';
1761
1808
  }
@@ -1787,7 +1834,7 @@ var MRT_TableFooterCell = function MRT_TableFooterCell(_ref2) {
1787
1834
  style: _extends({}, column.getFooterProps().style, (_mTableFooterCellProp = mTableFooterCellProps == null ? void 0 : mTableFooterCellProps.style) != null ? _mTableFooterCellProp : {}, (_mcTableFooterCellPro = mcTableFooterCellProps == null ? void 0 : mcTableFooterCellProps.style) != null ? _mcTableFooterCellPro : {})
1788
1835
  });
1789
1836
 
1790
- return React.createElement(TableCell$5, Object.assign({
1837
+ return React.createElement(TableCell$3, Object.assign({
1791
1838
  align: isParentHeader ? 'center' : 'left',
1792
1839
  densePadding: densePadding,
1793
1840
  enableColumnResizing: enableColumnResizing,
@@ -1866,10 +1913,11 @@ var TextField = /*#__PURE__*/styled(TextField$1)({
1866
1913
  });
1867
1914
  var MRT_SearchTextField = function MRT_SearchTextField() {
1868
1915
  var _useMaterialReactTabl = useMaterialReactTable(),
1869
- tableInstance = _useMaterialReactTabl.tableInstance,
1870
- muiSearchTextFieldProps = _useMaterialReactTabl.muiSearchTextFieldProps,
1916
+ showSearch = _useMaterialReactTabl.showSearch,
1871
1917
  localization = _useMaterialReactTabl.localization,
1872
- onGlobalFilterChange = _useMaterialReactTabl.onGlobalFilterChange;
1918
+ muiSearchTextFieldProps = _useMaterialReactTabl.muiSearchTextFieldProps,
1919
+ onGlobalFilterChange = _useMaterialReactTabl.onGlobalFilterChange,
1920
+ tableInstance = _useMaterialReactTabl.tableInstance;
1873
1921
 
1874
1922
  var _useState = useState(''),
1875
1923
  searchValue = _useState[0],
@@ -1887,7 +1935,11 @@ var MRT_SearchTextField = function MRT_SearchTextField() {
1887
1935
  tableInstance.setGlobalFilter(undefined);
1888
1936
  };
1889
1937
 
1890
- return React.createElement(TextField, Object.assign({
1938
+ return React.createElement(Collapse, {
1939
+ "in": showSearch,
1940
+ orientation: "horizontal"
1941
+ }, React.createElement(TextField, Object.assign({
1942
+ id: "global-search-text-field",
1891
1943
  placeholder: localization == null ? void 0 : localization.searchTextFieldPlaceholder,
1892
1944
  onChange: function onChange(event) {
1893
1945
  setSearchValue(event.target.value);
@@ -1913,7 +1965,7 @@ var MRT_SearchTextField = function MRT_SearchTextField() {
1913
1965
  fontSize: "small"
1914
1966
  })))
1915
1967
  }
1916
- }, muiSearchTextFieldProps));
1968
+ }, muiSearchTextFieldProps)));
1917
1969
  };
1918
1970
 
1919
1971
  var MRT_ToggleFiltersButton = function MRT_ToggleFiltersButton() {
@@ -2001,7 +2053,7 @@ var MRT_ShowHideColumnsButton = function MRT_ShowHideColumnsButton() {
2001
2053
  };
2002
2054
 
2003
2055
  var MRT_DensePaddingSwitch = function MRT_DensePaddingSwitch() {
2004
- var _localization$toggleD;
2056
+ var _localization$toggleD, _localization$toggleD2;
2005
2057
 
2006
2058
  var _useMaterialReactTabl = useMaterialReactTable(),
2007
2059
  densePadding = _useMaterialReactTabl.densePadding,
@@ -2012,6 +2064,9 @@ var MRT_DensePaddingSwitch = function MRT_DensePaddingSwitch() {
2012
2064
  arrow: true,
2013
2065
  title: (_localization$toggleD = localization == null ? void 0 : localization.toggleDensePaddingSwitchTitle) != null ? _localization$toggleD : ''
2014
2066
  }, React.createElement(Switch, {
2067
+ inputProps: {
2068
+ 'aria-label': (_localization$toggleD2 = localization == null ? void 0 : localization.toggleDensePaddingSwitchTitle) != null ? _localization$toggleD2 : ''
2069
+ },
2015
2070
  color: "default",
2016
2071
  checked: densePadding,
2017
2072
  size: "small",
@@ -2021,6 +2076,33 @@ var MRT_DensePaddingSwitch = function MRT_DensePaddingSwitch() {
2021
2076
  }));
2022
2077
  };
2023
2078
 
2079
+ var MRT_ToggleSearchButton = function MRT_ToggleSearchButton() {
2080
+ var _localization$toggleS;
2081
+
2082
+ var _useMaterialReactTabl = useMaterialReactTable(),
2083
+ localization = _useMaterialReactTabl.localization,
2084
+ setShowSearch = _useMaterialReactTabl.setShowSearch,
2085
+ showSearch = _useMaterialReactTabl.showSearch,
2086
+ muiSearchTextFieldProps = _useMaterialReactTabl.muiSearchTextFieldProps;
2087
+
2088
+ var handleToggleSearch = function handleToggleSearch() {
2089
+ setShowSearch(!showSearch);
2090
+ setTimeout(function () {
2091
+ var _document$getElementB, _muiSearchTextFieldPr;
2092
+
2093
+ return (_document$getElementB = document.getElementById((_muiSearchTextFieldPr = muiSearchTextFieldProps == null ? void 0 : muiSearchTextFieldProps.id) != null ? _muiSearchTextFieldPr : "global-search-text-field")) == null ? void 0 : _document$getElementB.focus();
2094
+ }, 200);
2095
+ };
2096
+
2097
+ return React.createElement(Tooltip, {
2098
+ arrow: true,
2099
+ title: (_localization$toggleS = localization == null ? void 0 : localization.toggleSearchButtonTitle) != null ? _localization$toggleS : ''
2100
+ }, React.createElement(IconButton$2, {
2101
+ size: "small",
2102
+ onClick: handleToggleSearch
2103
+ }, showSearch ? React.createElement(SearchOffIcon, null) : React.createElement(SearchIcon, null)));
2104
+ };
2105
+
2024
2106
  var ToolbarButtonsContainer = /*#__PURE__*/styled('div')({
2025
2107
  display: 'flex',
2026
2108
  gap: '0.5rem',
@@ -2030,9 +2112,10 @@ var MRT_ToolbarButtons = function MRT_ToolbarButtons() {
2030
2112
  var _useMaterialReactTabl = useMaterialReactTable(),
2031
2113
  disableFilters = _useMaterialReactTabl.disableFilters,
2032
2114
  disableColumnHiding = _useMaterialReactTabl.disableColumnHiding,
2033
- disableDensePaddingToggle = _useMaterialReactTabl.disableDensePaddingToggle;
2115
+ disableDensePaddingToggle = _useMaterialReactTabl.disableDensePaddingToggle,
2116
+ disableGlobalFilter = _useMaterialReactTabl.disableGlobalFilter;
2034
2117
 
2035
- return React.createElement(ToolbarButtonsContainer, null, !disableFilters && React.createElement(MRT_ToggleFiltersButton, null), !disableColumnHiding && React.createElement(MRT_ShowHideColumnsButton, null), !disableDensePaddingToggle && React.createElement(MRT_DensePaddingSwitch, null));
2118
+ return React.createElement(ToolbarButtonsContainer, null, !disableGlobalFilter && React.createElement(MRT_ToggleSearchButton, null), !disableFilters && React.createElement(MRT_ToggleFiltersButton, null), !disableColumnHiding && React.createElement(MRT_ShowHideColumnsButton, null), !disableDensePaddingToggle && React.createElement(MRT_DensePaddingSwitch, null));
2036
2119
  };
2037
2120
 
2038
2121
  var MRT_TablePagination = function MRT_TablePagination() {
@@ -2057,12 +2140,16 @@ var MRT_TablePagination = function MRT_TablePagination() {
2057
2140
  page: tableInstance.state.pageIndex,
2058
2141
  rowsPerPage: tableInstance.state.pageSize,
2059
2142
  showFirstButton: tableInstance.rows.length / tableInstance.state.pageSize > 2,
2060
- showLastButton: tableInstance.rows.length / tableInstance.state.pageSize > 2
2143
+ showLastButton: tableInstance.rows.length / tableInstance.state.pageSize > 2,
2144
+ style: {
2145
+ padding: 0
2146
+ }
2061
2147
  }, tablePaginationProps));
2062
2148
  };
2063
2149
 
2064
2150
  var Toolbar = /*#__PURE__*/styled(Toolbar$2)({
2065
- display: 'grid'
2151
+ display: 'grid',
2152
+ padding: '0.5rem !important'
2066
2153
  });
2067
2154
  var ToolbarTopRow = /*#__PURE__*/styled('div')({
2068
2155
  padding: '0.5rem',
@@ -2074,27 +2161,25 @@ var ToolbarActionsContainer = /*#__PURE__*/styled('div')({
2074
2161
  gap: '0.5rem'
2075
2162
  });
2076
2163
  var MRT_ToolbarTop = function MRT_ToolbarTop() {
2164
+ var _renderToolbarActions;
2165
+
2077
2166
  var _useMaterialReactTabl = useMaterialReactTable(),
2078
2167
  disableGlobalFilter = _useMaterialReactTabl.disableGlobalFilter,
2079
2168
  hideToolbarActions = _useMaterialReactTabl.hideToolbarActions,
2080
2169
  manualPagination = _useMaterialReactTabl.manualPagination,
2081
- muiTableTitleProps = _useMaterialReactTabl.muiTableTitleProps,
2082
2170
  muiTableToolbarTopProps = _useMaterialReactTabl.muiTableToolbarTopProps,
2083
2171
  positionPagination = _useMaterialReactTabl.positionPagination,
2084
2172
  positionToolbarActions = _useMaterialReactTabl.positionToolbarActions,
2085
- tableInstance = _useMaterialReactTabl.tableInstance,
2086
- title = _useMaterialReactTabl.title;
2173
+ renderToolbarActions = _useMaterialReactTabl.renderToolbarActions,
2174
+ tableInstance = _useMaterialReactTabl.tableInstance;
2087
2175
 
2088
2176
  var toolbarProps = muiTableToolbarTopProps instanceof Function ? muiTableToolbarTopProps(tableInstance) : muiTableToolbarTopProps;
2089
2177
  return React.createElement(Toolbar, Object.assign({
2090
2178
  variant: "dense"
2091
- }, toolbarProps), React.createElement(ToolbarTopRow, null, title ? React.createElement(Typography, Object.assign({
2092
- variant: "h5"
2093
- }, muiTableTitleProps), title) : React.createElement("span", null), React.createElement(ToolbarActionsContainer, null, !disableGlobalFilter && React.createElement(MRT_SearchTextField, null), !hideToolbarActions && positionToolbarActions === 'top' && React.createElement(MRT_ToolbarButtons, null))), React.createElement("div", null, !manualPagination && ['top', 'both'].includes(positionPagination != null ? positionPagination : '') && React.createElement(MRT_TablePagination, null)));
2179
+ }, toolbarProps), React.createElement(ToolbarTopRow, null, (_renderToolbarActions = renderToolbarActions == null ? void 0 : renderToolbarActions(tableInstance)) != null ? _renderToolbarActions : React.createElement("span", null), React.createElement(ToolbarActionsContainer, null, !disableGlobalFilter && React.createElement(MRT_SearchTextField, null), !hideToolbarActions && positionToolbarActions === 'top' && React.createElement(MRT_ToolbarButtons, null))), React.createElement("div", null, !manualPagination && ['top', 'both'].includes(positionPagination != null ? positionPagination : '') && React.createElement(MRT_TablePagination, null)));
2094
2180
  };
2095
2181
 
2096
2182
  var Toolbar$1 = /*#__PURE__*/styled(Toolbar$2)({
2097
- padding: 0,
2098
2183
  display: 'flex',
2099
2184
  justifyContent: 'space-between'
2100
2185
  });
@@ -2109,6 +2194,9 @@ var MRT_ToolbarBottom = function MRT_ToolbarBottom() {
2109
2194
 
2110
2195
  var toolbarProps = muiTableToolbarBottomProps instanceof Function ? muiTableToolbarBottomProps(tableInstance) : muiTableToolbarBottomProps;
2111
2196
  return React.createElement(Toolbar$1, Object.assign({
2197
+ style: {
2198
+ padding: 0
2199
+ },
2112
2200
  variant: "dense"
2113
2201
  }, toolbarProps), !hideToolbarActions && positionToolbarActions === 'bottom' ? React.createElement(MRT_ToolbarButtons, null) : React.createElement("span", null), !manualPagination && ['bottom', 'both'].includes(positionPagination != null ? positionPagination : '') && React.createElement(MRT_TablePagination, null));
2114
2202
  };
@@ -2146,26 +2234,28 @@ var defaultLocalization = {
2146
2234
  actionsHeadColumnTitle: 'Actions',
2147
2235
  columnActionMenuButtonTitle: 'Column Actions',
2148
2236
  columnActionMenuItemClearSort: 'Clear sorting',
2149
- columnActionMenuItemGroupBy: 'Group by column',
2150
- columnActionMenuItemHideColumn: 'Hide column',
2151
- columnActionMenuItemSortAsc: 'Sort ascending',
2152
- columnActionMenuItemSortDesc: 'Sort descending',
2153
- columnActionMenuItemUnGroupBy: 'Ungroup column',
2237
+ columnActionMenuItemGroupBy: 'Group by {column}',
2238
+ columnActionMenuItemHideColumn: 'Hide {column} column',
2239
+ columnActionMenuItemSortAsc: 'Sort by {column} ascending',
2240
+ columnActionMenuItemSortDesc: 'Sort by {column} descending',
2241
+ columnActionMenuItemUnGroupBy: 'Ungroup by {column}',
2154
2242
  expandAllButtonTitle: 'Expand all',
2155
2243
  expandButtonTitle: 'Expand',
2156
2244
  filterTextFieldClearButtonTitle: 'Clear filter',
2157
- filterTextFieldPlaceholder: 'Filter',
2245
+ filterTextFieldPlaceholder: 'Filter by {column}',
2158
2246
  rowActionButtonCancel: 'Cancel',
2159
2247
  rowActionButtonSave: 'Save',
2160
2248
  rowActionMenuButtonTitle: 'Row Actions',
2161
2249
  rowActionMenuItemEdit: 'Edit',
2250
+ selectCheckboxTitle: 'Select row',
2162
2251
  rowActionsColumnTitle: 'Actions',
2163
2252
  searchTextFieldClearButtonTitle: 'Clear search',
2164
2253
  searchTextFieldPlaceholder: 'Search',
2165
2254
  selectAllCheckboxTitle: 'Select all',
2166
2255
  showHideColumnsButtonTitle: 'Show/Hide columns',
2167
2256
  toggleDensePaddingSwitchTitle: 'Toggle dense padding',
2168
- toggleFilterButtonTitle: 'Toggle filters'
2257
+ toggleFilterButtonTitle: 'Toggle filters',
2258
+ toggleSearchButtonTitle: 'Toggle search'
2169
2259
  };
2170
2260
 
2171
2261
  var _excluded = ["defaultColumn", "localization", "positionActionsColumn", "positionPagination", "positionToolbarActions"];