Skip to content

Commit f8dc5d8

Browse files
committed
release v2.13.0
1 parent c47471b commit f8dc5d8

File tree

8 files changed

+237
-226
lines changed

8 files changed

+237
-226
lines changed

apps/material-react-table-docs/components/prop-tables/columnOptions.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -608,7 +608,7 @@ export const columnOptions: ColumnOption[] = [
608608
linkText: '',
609609
source: 'TanStack Table',
610610
required: false,
611-
type: 'false | 1 | -1',
611+
type: "'first' | 'last' | false | 1 | -1",
612612
},
613613
{
614614
columnOption: 'renderCellActionMenuItems',

apps/material-react-table-docs/components/prop-tables/tableOptions.ts

+10
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,16 @@ export type TableOption = {
1212
};
1313

1414
export const tableOptions: TableOption[] = [
15+
{
16+
tableOption: '_features',
17+
defaultValue: '',
18+
description: `An array of extra features that you can add to the table instance.`,
19+
link: 'https://tanstack.com/table/latest/docs/guide/custom-features',
20+
linkText: 'TanStack Table Custom Features Docs',
21+
required: false,
22+
source: 'TanStack Table',
23+
type: 'Array<TableFeature>',
24+
},
1525
{
1626
tableOption: 'aggregationFns',
1727
defaultValue: '',

apps/material-react-table-docs/pages/changelog.mdx

+10
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,16 @@ import Head from 'next/head';
99

1010
> Note: As of v2.12.0, the React and ReactDom peer dependencies have been moved back down to React v17 in order to help more people upgrade to MRT v2 without having to upgrade to React v18.
1111
12+
### Version 2.13.0 - 2024-04-18
13+
14+
- Upgraded to TanStack Table v8.16.0
15+
- New `sortUndefined` `"first"` and `"last"` options to allow forcing undefined values to be pushed to the beginning or end of sorted rows.
16+
- New `_features` table option to allow adding new custom internal features to the TanStack Table instance.
17+
- fixed `column.getCanGroup` always resolving to `true`
18+
- Started using the default modal `z-index` value from the MUI theme for the full-screen table dialog to avoid issues with other modals and app bar components.
19+
- Disabled Edit Save Button when `isSaving` state is `true`
20+
- Fixed DatePicker Types generic
21+
1222
### Version 2.12.1 - 2024-02-28
1323

1424
- Fixed `rangeFilterIndex` being undefined in filterProps callback

apps/material-react-table-docs/public/sitemap-0.xml

+101-101
Large diffs are not rendered by default.

packages/material-react-table/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"version": "2.12.1",
2+
"version": "2.13.0",
33
"license": "MIT",
44
"name": "material-react-table",
55
"description": "A fully featured Material UI V5 implementation of TanStack React Table V8, written from the ground up in TypeScript.",

packages/material-react-table/src/components/inputs/MRT_FilterTextField.tsx

+10-19
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,9 @@ import MenuItem from '@mui/material/MenuItem';
1616
import TextField, { type TextFieldProps } from '@mui/material/TextField';
1717
import Tooltip from '@mui/material/Tooltip';
1818
import { debounce } from '@mui/material/utils';
19-
import {
20-
DatePicker,
21-
type DatePickerProps,
22-
} from '@mui/x-date-pickers/DatePicker';
23-
import {
24-
DateTimePicker,
25-
type DateTimePickerProps,
26-
} from '@mui/x-date-pickers/DateTimePicker';
27-
import {
28-
TimePicker,
29-
type TimePickerProps,
30-
} from '@mui/x-date-pickers/TimePicker';
19+
import { DatePicker } from '@mui/x-date-pickers/DatePicker';
20+
import { DateTimePicker } from '@mui/x-date-pickers/DateTimePicker';
21+
import { TimePicker } from '@mui/x-date-pickers/TimePicker';
3122
import {
3223
type DropdownOption,
3324
type MRT_Header,
@@ -75,7 +66,7 @@ export const MRT_FilterTextField = <TData extends MRT_RowData>({
7566

7667
const args = { column, rangeFilterIndex, table };
7768

78-
const textFieldProps: TextFieldProps = {
69+
const textFieldProps = {
7970
...parseFromValuesOrFunc(muiFilterTextFieldProps, args),
8071
...parseFromValuesOrFunc(columnDef.muiFilterTextFieldProps, args),
8172
...rest,
@@ -86,20 +77,20 @@ export const MRT_FilterTextField = <TData extends MRT_RowData>({
8677
...parseFromValuesOrFunc(columnDef.muiFilterAutocompleteProps, args),
8778
};
8879

89-
const datePickerProps: DatePickerProps<any> = {
80+
const datePickerProps = {
9081
...parseFromValuesOrFunc(muiFilterDatePickerProps, args),
9182
...parseFromValuesOrFunc(columnDef.muiFilterDatePickerProps, args),
92-
};
83+
} as any;
9384

94-
const dateTimePickerProps: DateTimePickerProps<any> = {
85+
const dateTimePickerProps = {
9586
...parseFromValuesOrFunc(muiFilterDateTimePickerProps, args),
9687
...parseFromValuesOrFunc(columnDef.muiFilterDateTimePickerProps, args),
97-
};
88+
} as any;
9889

99-
const timePickerProps: TimePickerProps<any> = {
90+
const timePickerProps = {
10091
...parseFromValuesOrFunc(muiFilterTimePickerProps, args),
10192
...parseFromValuesOrFunc(columnDef.muiFilterTimePickerProps, args),
102-
};
93+
} as any;
10394

10495
const {
10596
allowedColumnFilterOptions,
Original file line numberDiff line numberDiff line change
@@ -1,96 +1,96 @@
11
import { type MRT_Localization } from '..';
22

3-
export const MRT_Localization_EL: MRT_Localization = {
4-
actions: "Ενέργειες",
5-
and: "και",
6-
cancel: "Ακύρωση",
7-
changeFilterMode: "Αλλαγή λειτουργίας φίλτρου",
8-
changeSearchMode: "Αλλαγή λειτουργίας αναζήτησης",
9-
clearFilter: "Καθαρισμός φίλτρου",
10-
clearSearch: "Καθαρισμός αναζήτησης",
11-
clearSelection: "Καθαρισμός επιλογής",
12-
clearSort: "Καθαρισμός ταξινόμησης",
13-
clickToCopy: "Κλικ για αντιγραφή",
14-
copy: "Αντιγραφή",
15-
collapse: "Σύμπτυξη",
16-
collapseAll: "Σύμπτυξη όλων",
17-
columnActions: "Ενέργειες στη στήλη",
18-
copiedToClipboard: "Αντιγράφηκε στο πρόχειρο",
19-
dropToGroupBy: "Τοποθέτηση για ομαδοποίηση ανά {column}",
20-
edit: "Επεξεργασία",
21-
expand: "Επέκταση",
22-
expandAll: "Επέκταση όλων",
23-
filterArrIncludes: "Περιλαμβάνει",
24-
filterArrIncludesAll: "Περιλαμβάνει όλα",
25-
filterArrIncludesSome: "Περιλαμβάνει",
26-
filterBetween: "Μεταξύ",
27-
filterBetweenInclusive: "Μεταξύ συμπεριλαμβανομένων",
28-
filterByColumn: "Φιλτράρισμα ανά {column}",
29-
filterContains: "Περιέχει",
30-
filterEmpty: "Κενό",
31-
filterEndsWith: "Τελειώνει με",
32-
filterEquals: "Ίσο",
33-
filterEqualsString: "Ίσο (συμβολοσειρά)",
34-
filterFuzzy: "Ασαφές",
35-
filterGreaterThan: "Μεγαλύτερο από",
36-
filterGreaterThanOrEqualTo: "Μεγαλύτερο ή ίσο με",
37-
filterInNumberRange: "Μεταξύ αριθμών",
38-
filterIncludesString: "Περιλαμβάνει συμβολοσειρά",
39-
filterIncludesStringSensitive: "Περιλαμβάνει συμβολοσειρά (ευαίσθητο)",
40-
filterLessThan: "Μικρότερο από",
41-
filterLessThanOrEqualTo: "Μικρότερο ή ίσο με",
42-
filterMode: "Λειτουργία φίλτρου: {filterType}",
43-
filterNotEmpty: "Όχι κενό",
44-
filterNotEquals: "Όχι ίσο",
45-
filterStartsWith: "Ξεκινάει με",
46-
filterWeakEquals: "Ίσο (ανακριβές)",
47-
filteringByColumn: "Φιλτράρισμα ανά {column} - {filterType} {filterValue}",
48-
goToFirstPage: "Πήγαινε στην πρώτη σελίδα",
49-
goToLastPage: "Πήγαινε στην τελευταία σελίδα",
50-
goToNextPage: "Πήγαινε στην επόμενη σελίδα",
51-
goToPreviousPage: "Πήγαινε στην προηγούμενη σελίδα",
52-
grab: "Σύρσιμο",
53-
groupByColumn: "Ομαδοποίηση ανά {column}",
54-
groupedBy: "Ομαδοποιημένο ανά ",
55-
hideAll: "Απόκρυψη όλων",
56-
hideColumn: "Απόκρυψη στήλης {column}",
57-
max: "Μέγιστο",
58-
min: "Ελάχιστο",
59-
move: "Μετακίνηση",
60-
noRecordsToDisplay: "Δεν υπάρχουν εγγραφές για εμφάνιση",
61-
noResultsFound: "Δεν βρέθηκαν αποτελέσματα",
62-
of: "από",
63-
or: "ή",
64-
pin: "Καρφίτσωμα",
65-
pinToLeft: "Καρφίτσωμα αριστερά",
66-
pinToRight: "Καρφίτσωμα δεξιά",
67-
resetColumnSize: "Επαναφορά μεγέθους στήλης",
68-
resetOrder: "Επαναφορά ταξινόμησης",
69-
rowActions: "Ενέργειες γραμμής",
70-
rowNumber: "#",
71-
rowNumbers: "Αριθμοί γραμμών",
72-
rowsPerPage: "Γραμμές ανά σελίδα",
73-
save: "Αποθήκευση",
74-
search: "Αναζήτηση",
3+
export const MRT_Localization_EL: MRT_Localization = {
4+
actions: 'Ενέργειες',
5+
and: 'και',
6+
cancel: 'Ακύρωση',
7+
changeFilterMode: 'Αλλαγή λειτουργίας φίλτρου',
8+
changeSearchMode: 'Αλλαγή λειτουργίας αναζήτησης',
9+
clearFilter: 'Καθαρισμός φίλτρου',
10+
clearSearch: 'Καθαρισμός αναζήτησης',
11+
clearSelection: 'Καθαρισμός επιλογής',
12+
clearSort: 'Καθαρισμός ταξινόμησης',
13+
clickToCopy: 'Κλικ για αντιγραφή',
14+
copy: 'Αντιγραφή',
15+
collapse: 'Σύμπτυξη',
16+
collapseAll: 'Σύμπτυξη όλων',
17+
columnActions: 'Ενέργειες στη στήλη',
18+
copiedToClipboard: 'Αντιγράφηκε στο πρόχειρο',
19+
dropToGroupBy: 'Τοποθέτηση για ομαδοποίηση ανά {column}',
20+
edit: 'Επεξεργασία',
21+
expand: 'Επέκταση',
22+
expandAll: 'Επέκταση όλων',
23+
filterArrIncludes: 'Περιλαμβάνει',
24+
filterArrIncludesAll: 'Περιλαμβάνει όλα',
25+
filterArrIncludesSome: 'Περιλαμβάνει',
26+
filterBetween: 'Μεταξύ',
27+
filterBetweenInclusive: 'Μεταξύ συμπεριλαμβανομένων',
28+
filterByColumn: 'Φιλτράρισμα ανά {column}',
29+
filterContains: 'Περιέχει',
30+
filterEmpty: 'Κενό',
31+
filterEndsWith: 'Τελειώνει με',
32+
filterEquals: 'Ίσο',
33+
filterEqualsString: 'Ίσο (συμβολοσειρά)',
34+
filterFuzzy: 'Ασαφές',
35+
filterGreaterThan: 'Μεγαλύτερο από',
36+
filterGreaterThanOrEqualTo: 'Μεγαλύτερο ή ίσο με',
37+
filterInNumberRange: 'Μεταξύ αριθμών',
38+
filterIncludesString: 'Περιλαμβάνει συμβολοσειρά',
39+
filterIncludesStringSensitive: 'Περιλαμβάνει συμβολοσειρά (ευαίσθητο)',
40+
filterLessThan: 'Μικρότερο από',
41+
filterLessThanOrEqualTo: 'Μικρότερο ή ίσο με',
42+
filterMode: 'Λειτουργία φίλτρου: {filterType}',
43+
filterNotEmpty: 'Όχι κενό',
44+
filterNotEquals: 'Όχι ίσο',
45+
filterStartsWith: 'Ξεκινάει με',
46+
filterWeakEquals: 'Ίσο (ανακριβές)',
47+
filteringByColumn: 'Φιλτράρισμα ανά {column} - {filterType} {filterValue}',
48+
goToFirstPage: 'Πήγαινε στην πρώτη σελίδα',
49+
goToLastPage: 'Πήγαινε στην τελευταία σελίδα',
50+
goToNextPage: 'Πήγαινε στην επόμενη σελίδα',
51+
goToPreviousPage: 'Πήγαινε στην προηγούμενη σελίδα',
52+
grab: 'Σύρσιμο',
53+
groupByColumn: 'Ομαδοποίηση ανά {column}',
54+
groupedBy: 'Ομαδοποιημένο ανά ',
55+
hideAll: 'Απόκρυψη όλων',
56+
hideColumn: 'Απόκρυψη στήλης {column}',
57+
max: 'Μέγιστο',
58+
min: 'Ελάχιστο',
59+
move: 'Μετακίνηση',
60+
noRecordsToDisplay: 'Δεν υπάρχουν εγγραφές για εμφάνιση',
61+
noResultsFound: 'Δεν βρέθηκαν αποτελέσματα',
62+
of: 'από',
63+
or: 'ή',
64+
pin: 'Καρφίτσωμα',
65+
pinToLeft: 'Καρφίτσωμα αριστερά',
66+
pinToRight: 'Καρφίτσωμα δεξιά',
67+
resetColumnSize: 'Επαναφορά μεγέθους στήλης',
68+
resetOrder: 'Επαναφορά ταξινόμησης',
69+
rowActions: 'Ενέργειες γραμμής',
70+
rowNumber: '#',
71+
rowNumbers: 'Αριθμοί γραμμών',
72+
rowsPerPage: 'Γραμμές ανά σελίδα',
73+
save: 'Αποθήκευση',
74+
search: 'Αναζήτηση',
7575
selectedCountOfRowCountRowsSelected:
76-
"{selectedCount} από {rowCount} επιλεγμένη(ες) γραμμή(ες)",
77-
select: "Επιλογή",
78-
showAll: "Εμφάνιση όλων",
79-
showAllColumns: "Εμφάνιση όλων των στηλών",
80-
showHideColumns: "Εμφάνιση/απόκρυψη στηλών",
81-
showHideFilters: "Εμφάνιση/απόκρυψη φίλτρων",
82-
showHideSearch: "Εμφάνιση/απόκρυψη αναζήτησης",
83-
sortByColumnAsc: "Ταξινόμηση κατά {column} αύξουσα",
84-
sortByColumnDesc: "Ταξινόμηση κατά {column} φθίνουσα",
85-
sortedByColumnAsc: "Ταξινόμηση κατά {column} αύξουσα",
86-
sortedByColumnDesc: "Ταξινόμηση κατά {column} φθίνουσα",
87-
thenBy: ", στη συνέχεια από ",
88-
toggleDensity: "Εναλλαγή πυκνότητας",
89-
toggleFullScreen: "Εναλλαγή πλήρους οθόνης",
90-
toggleSelectAll: "Εναλλαγή επιλογής όλων",
91-
toggleSelectRow: "Εναλλαγή επιλογής γραμμής",
92-
toggleVisibility: "Εναλλαγή ορατότητας",
93-
ungroupByColumn: "Αναίρεση ομαδοποίησης κατά {column}",
94-
unpin: "Αποκαρφίτσωση",
95-
unpinAll: "Αποκαρφίτσωση όλων",
76+
'{selectedCount} από {rowCount} επιλεγμένη(ες) γραμμή(ες)',
77+
select: 'Επιλογή',
78+
showAll: 'Εμφάνιση όλων',
79+
showAllColumns: 'Εμφάνιση όλων των στηλών',
80+
showHideColumns: 'Εμφάνιση/απόκρυψη στηλών',
81+
showHideFilters: 'Εμφάνιση/απόκρυψη φίλτρων',
82+
showHideSearch: 'Εμφάνιση/απόκρυψη αναζήτησης',
83+
sortByColumnAsc: 'Ταξινόμηση κατά {column} αύξουσα',
84+
sortByColumnDesc: 'Ταξινόμηση κατά {column} φθίνουσα',
85+
sortedByColumnAsc: 'Ταξινόμηση κατά {column} αύξουσα',
86+
sortedByColumnDesc: 'Ταξινόμηση κατά {column} φθίνουσα',
87+
thenBy: ', στη συνέχεια από ',
88+
toggleDensity: 'Εναλλαγή πυκνότητας',
89+
toggleFullScreen: 'Εναλλαγή πλήρους οθόνης',
90+
toggleSelectAll: 'Εναλλαγή επιλογής όλων',
91+
toggleSelectRow: 'Εναλλαγή επιλογής γραμμής',
92+
toggleVisibility: 'Εναλλαγή ορατότητας',
93+
ungroupByColumn: 'Αναίρεση ομαδοποίησης κατά {column}',
94+
unpin: 'Αποκαρφίτσωση',
95+
unpinAll: 'Αποκαρφίτσωση όλων',
9696
};

packages/material-react-table/src/types.ts

+12-12
Original file line numberDiff line numberDiff line change
@@ -605,15 +605,15 @@ export type MRT_ColumnDef<TData extends MRT_RowData, TValue = unknown> = Omit<
605605
column: MRT_Column<TData>;
606606
rangeFilterIndex?: number;
607607
table: MRT_TableInstance<TData>;
608-
}) => DatePickerProps<any>)
609-
| DatePickerProps<any>;
608+
}) => DatePickerProps<never>)
609+
| DatePickerProps<never>;
610610
muiFilterDateTimePickerProps?:
611611
| ((props: {
612612
column: MRT_Column<TData>;
613613
rangeFilterIndex?: number;
614614
table: MRT_TableInstance<TData>;
615-
}) => DateTimePickerProps<any>)
616-
| DateTimePickerProps<any>;
615+
}) => DateTimePickerProps<never>)
616+
| DateTimePickerProps<never>;
617617
muiFilterSliderProps?:
618618
| ((props: {
619619
column: MRT_Column<TData>;
@@ -632,8 +632,8 @@ export type MRT_ColumnDef<TData extends MRT_RowData, TValue = unknown> = Omit<
632632
column: MRT_Column<TData>;
633633
rangeFilterIndex?: number;
634634
table: MRT_TableInstance<TData>;
635-
}) => TimePickerProps<any>)
636-
| TimePickerProps<any>;
635+
}) => TimePickerProps<never>)
636+
| TimePickerProps<never>;
637637
muiTableBodyCellProps?:
638638
| ((props: {
639639
cell: MRT_Cell<TData, TValue>;
@@ -998,15 +998,15 @@ export type MRT_TableOptions<TData extends MRT_RowData> = Omit<
998998
column: MRT_Column<TData>;
999999
rangeFilterIndex?: number;
10001000
table: MRT_TableInstance<TData>;
1001-
}) => DatePickerProps<any>)
1002-
| DatePickerProps<any>;
1001+
}) => DatePickerProps<never>)
1002+
| DatePickerProps<never>;
10031003
muiFilterDateTimePickerProps?:
10041004
| ((props: {
10051005
column: MRT_Column<TData>;
10061006
rangeFilterIndex?: number;
10071007
table: MRT_TableInstance<TData>;
1008-
}) => DateTimePickerProps<any>)
1009-
| DateTimePickerProps<any>;
1008+
}) => DateTimePickerProps<never>)
1009+
| DateTimePickerProps<never>;
10101010
muiFilterSliderProps?:
10111011
| ((props: {
10121012
column: MRT_Column<TData>;
@@ -1025,8 +1025,8 @@ export type MRT_TableOptions<TData extends MRT_RowData> = Omit<
10251025
column: MRT_Column<TData>;
10261026
rangeFilterIndex?: number;
10271027
table: MRT_TableInstance<TData>;
1028-
}) => TimePickerProps<any>)
1029-
| TimePickerProps<any>;
1028+
}) => TimePickerProps<never>)
1029+
| TimePickerProps<never>;
10301030
muiLinearProgressProps?:
10311031
| ((props: {
10321032
isTopToolbar: boolean;

0 commit comments

Comments
 (0)