material-react-table 0.4.2 → 0.4.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.
Files changed (37) hide show
  1. package/dist/MaterialReactTable.d.ts +11 -3
  2. package/dist/buttons/MRT_FullScreenToggleButton.d.ts +3 -1
  3. package/dist/buttons/MRT_ShowHideColumnsButton.d.ts +2 -1
  4. package/dist/buttons/MRT_ToggleDensePaddingButton.d.ts +6 -0
  5. package/dist/buttons/MRT_ToggleFiltersButton.d.ts +3 -1
  6. package/dist/buttons/MRT_ToggleSearchButton.d.ts +3 -1
  7. package/dist/inputs/MRT_SelectCheckbox.d.ts +2 -1
  8. package/dist/material-react-table.cjs.development.js +174 -103
  9. package/dist/material-react-table.cjs.development.js.map +1 -1
  10. package/dist/material-react-table.cjs.production.min.js +1 -1
  11. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  12. package/dist/material-react-table.esm.js +174 -103
  13. package/dist/material-react-table.esm.js.map +1 -1
  14. package/package.json +7 -8
  15. package/src/MaterialReactTable.tsx +20 -2
  16. package/src/body/MRT_TableBodyRow.tsx +3 -2
  17. package/src/buttons/MRT_FullScreenToggleButton.tsx +4 -3
  18. package/src/buttons/MRT_ShowHideColumnsButton.tsx +4 -2
  19. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +14 -8
  20. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +24 -0
  21. package/src/buttons/MRT_ToggleFiltersButton.tsx +4 -3
  22. package/src/buttons/MRT_ToggleSearchButton.tsx +4 -4
  23. package/src/footer/MRT_TableFooterRow.tsx +9 -10
  24. package/src/head/MRT_TableHeadCell.tsx +21 -12
  25. package/src/head/MRT_TableHeadRow.tsx +6 -5
  26. package/src/inputs/MRT_EditCellTextField.tsx +1 -2
  27. package/src/inputs/MRT_SelectCheckbox.tsx +44 -15
  28. package/src/table/MRT_TableContainer.tsx +2 -2
  29. package/src/toolbar/MRT_TablePagination.tsx +1 -0
  30. package/src/toolbar/MRT_ToolbarBottom.tsx +19 -7
  31. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +18 -2
  32. package/src/toolbar/MRT_ToolbarTop.tsx +19 -7
  33. package/src/utils/localization.ts +3 -3
  34. package/dist/inputs/MRT_DensePaddingSwitch.d.ts +0 -5
  35. package/dist/inputs/MRT_SelectAllCheckbox.d.ts +0 -2
  36. package/src/inputs/MRT_DensePaddingSwitch.tsx +0 -23
  37. package/src/inputs/MRT_SelectAllCheckbox.tsx +0 -22
@@ -1,18 +1,29 @@
1
1
  import React, { FC } from 'react';
2
- import { styled, Toolbar as MuiToolbar } from '@mui/material';
2
+ import { alpha, styled, Toolbar as MuiToolbar } from '@mui/material';
3
3
  import { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';
4
4
  import { useMRT } from '../useMRT';
5
5
  import { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';
6
6
  import { MRT_TablePagination } from './MRT_TablePagination';
7
7
  import { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';
8
8
 
9
- const Toolbar = styled(MuiToolbar)({
9
+ const Toolbar = styled(MuiToolbar, {
10
+ shouldForwardProp: (prop) => prop !== 'fullScreen',
11
+ })<{ fullScreen?: boolean }>(({ fullScreen, theme }) => ({
12
+ backgroundColor: theme.palette.background.default,
13
+ backgroundImage: `linear-gradient(${alpha(
14
+ theme.palette.common.white,
15
+ 0.05,
16
+ )},${alpha(theme.palette.common.white, 0.05)})`,
10
17
  display: 'grid',
11
18
  padding: '0 0.5rem !important',
12
- });
19
+ position: fullScreen ? 'sticky' : undefined,
20
+ top: fullScreen ? '0' : undefined,
21
+ width: 'calc(100% - 1rem)',
22
+ zIndex: 1,
23
+ }));
13
24
 
14
25
  const ToolbarTopRow = styled('div')({
15
- padding: '1rem 0.5rem',
26
+ padding: '0.5rem',
16
27
  display: 'flex',
17
28
  justifyContent: 'space-between',
18
29
  });
@@ -29,11 +40,12 @@ interface Props {}
29
40
  export const MRT_ToolbarTop: FC<Props> = () => {
30
41
  const {
31
42
  disableGlobalFilter,
32
- hideToolbarActions,
43
+ hideToolbarInternalActions,
33
44
  manualPagination,
34
45
  muiTableToolbarTopProps,
35
46
  positionPagination,
36
47
  positionToolbarActions,
48
+ fullScreen,
37
49
  positionToolbarAlertBanner,
38
50
  renderToolbarCustomActions,
39
51
  tableInstance,
@@ -45,13 +57,13 @@ export const MRT_ToolbarTop: FC<Props> = () => {
45
57
  : muiTableToolbarTopProps;
46
58
 
47
59
  return (
48
- <Toolbar variant="dense" {...toolbarProps}>
60
+ <Toolbar fullScreen={fullScreen} variant="dense" {...toolbarProps}>
49
61
  {positionToolbarAlertBanner === 'top' && <MRT_ToolbarAlertBanner />}
50
62
  <ToolbarTopRow>
51
63
  {renderToolbarCustomActions?.(tableInstance) ?? <span />}
52
64
  <ToolbarActionsContainer>
53
65
  {!disableGlobalFilter && <MRT_SearchTextField />}
54
- {!hideToolbarActions && positionToolbarActions === 'top' && (
66
+ {!hideToolbarInternalActions && positionToolbarActions === 'top' && (
55
67
  <MRT_ToolbarInternalButtons />
56
68
  )}
57
69
  </ToolbarActionsContainer>
@@ -35,7 +35,7 @@ export interface MRT_Localization {
35
35
  export const defaultLocalization: MRT_Localization = {
36
36
  actionsHeadColumnTitle: 'Actions',
37
37
  columnActionMenuButtonTitle: 'Column Actions',
38
- columnActionMenuItemClearSort: 'Clear sorting',
38
+ columnActionMenuItemClearSort: 'Clear sort',
39
39
  columnActionMenuItemGroupBy: 'Group by {column}',
40
40
  columnActionMenuItemHideColumn: 'Hide {column} column',
41
41
  columnActionMenuItemSortAsc: 'Sort by {column} ascending',
@@ -54,8 +54,8 @@ export const defaultLocalization: MRT_Localization = {
54
54
  rowActionsColumnTitle: 'Actions',
55
55
  searchTextFieldClearButtonTitle: 'Clear search',
56
56
  searchTextFieldPlaceholder: 'Search',
57
- selectAllCheckboxTitle: 'Select all',
58
- selectCheckboxTitle: 'Select row',
57
+ selectAllCheckboxTitle: 'Toggle select all',
58
+ selectCheckboxTitle: 'Toggle select row',
59
59
  showHideColumnsButtonTitle: 'Show/Hide columns',
60
60
  toggleDensePaddingSwitchTitle: 'Toggle dense padding',
61
61
  toggleFilterButtonTitle: 'Toggle filters',
@@ -1,5 +0,0 @@
1
- import { FC } from 'react';
2
- interface Props {
3
- }
4
- export declare const MRT_DensePaddingSwitch: FC<Props>;
5
- export {};
@@ -1,2 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const MRT_SelectAllCheckbox: () => JSX.Element;
@@ -1,23 +0,0 @@
1
- import React, { FC } from 'react';
2
- import { Switch, Tooltip } from '@mui/material';
3
- import { useMRT } from '../useMRT';
4
-
5
- interface Props {}
6
-
7
- export const MRT_DensePaddingSwitch: FC<Props> = () => {
8
- const { densePadding, setDensePadding, localization } = useMRT();
9
-
10
- return (
11
- <Tooltip arrow title={localization?.toggleDensePaddingSwitchTitle ?? ''}>
12
- <Switch
13
- inputProps={{
14
- 'aria-label': localization?.toggleDensePaddingSwitchTitle ?? '',
15
- }}
16
- color="default"
17
- checked={densePadding}
18
- size="small"
19
- onChange={() => setDensePadding(!densePadding)}
20
- />
21
- </Tooltip>
22
- );
23
- };
@@ -1,22 +0,0 @@
1
- import React from 'react';
2
- import { Checkbox } from '@mui/material';
3
- import { useMRT } from '../useMRT';
4
- import { MRT_TableButtonCell } from '../table/MRT_TableButtonCell';
5
-
6
- export const MRT_SelectAllCheckbox = () => {
7
- const { tableInstance, disableSelectAll, densePadding, localization } =
8
- useMRT();
9
-
10
- return (
11
- <MRT_TableButtonCell densePadding={densePadding} variant="head">
12
- {!disableSelectAll ? (
13
- <Checkbox
14
- inputProps={{
15
- 'aria-label': localization?.selectAllCheckboxTitle ?? '',
16
- }}
17
- {...tableInstance.getToggleAllPageRowsSelectedProps()}
18
- />
19
- ) : null}
20
- </MRT_TableButtonCell>
21
- );
22
- };