@mini_7/material-react-table-mcp 4.0.0
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.
- package/README.md +68 -0
- package/data/MIGRATION.md +136 -0
- package/data/api.json +5379 -0
- package/data/examples/advanced.tsx +309 -0
- package/data/examples/aggregation-and-grouping.tsx +153 -0
- package/data/examples/aggregation-multi.tsx +105 -0
- package/data/examples/alternate-column-filtering.tsx +49 -0
- package/data/examples/alternate-detail-panel.tsx +81 -0
- package/data/examples/alternate-pagination.tsx +23 -0
- package/data/examples/basic.tsx +109 -0
- package/data/examples/chart-detail-panel.tsx +89 -0
- package/data/examples/column-actions-space.tsx +44 -0
- package/data/examples/column-alignment.tsx +70 -0
- package/data/examples/custom-column-actions.tsx +109 -0
- package/data/examples/custom-column-filtering-ui.tsx +89 -0
- package/data/examples/custom-headless.tsx +125 -0
- package/data/examples/custom-top-toolbar.tsx +88 -0
- package/data/examples/customize-display-columns.tsx +85 -0
- package/data/examples/customize-filter-components.tsx +101 -0
- package/data/examples/customize-filter-modes.tsx +73 -0
- package/data/examples/customize-filter-variants.tsx +116 -0
- package/data/examples/customize-global-filter-component.tsx +52 -0
- package/data/examples/customize-remove-column-grouping.tsx +94 -0
- package/data/examples/customize-row-selection.tsx +54 -0
- package/data/examples/customize-table-styles.tsx +100 -0
- package/data/examples/disable-column-actions.tsx +37 -0
- package/data/examples/disable-column-hiding.tsx +90 -0
- package/data/examples/disable-density-toggle.tsx +49 -0
- package/data/examples/dynamic-columns.tsx +189 -0
- package/data/examples/editing-crud-cell.tsx +377 -0
- package/data/examples/editing-crud-modal.tsx +370 -0
- package/data/examples/editing-crud-row.tsx +333 -0
- package/data/examples/editing-crud-table.tsx +369 -0
- package/data/examples/editing-crud-tree.tsx +416 -0
- package/data/examples/enable-cell-actions.tsx +76 -0
- package/data/examples/enable-click-to-copy.tsx +39 -0
- package/data/examples/enable-column-grouping.tsx +120 -0
- package/data/examples/enable-column-ordering.tsx +48 -0
- package/data/examples/enable-column-pinning.tsx +69 -0
- package/data/examples/enable-column-resizing.tsx +56 -0
- package/data/examples/enable-column-virtualization.tsx +27 -0
- package/data/examples/enable-detail-panel-conditionally.tsx +78 -0
- package/data/examples/enable-detail-panel-virtualized.tsx +80 -0
- package/data/examples/enable-expanding-tree.tsx +110 -0
- package/data/examples/enable-filter-facet-values.tsx +65 -0
- package/data/examples/enable-row-dragging.tsx +137 -0
- package/data/examples/enable-row-numbers-original.tsx +48 -0
- package/data/examples/enable-row-numbers-static.tsx +48 -0
- package/data/examples/enable-row-ordering.tsx +57 -0
- package/data/examples/enable-row-pinning-select.tsx +76 -0
- package/data/examples/enable-row-pinning-static.tsx +50 -0
- package/data/examples/enable-row-pinning-sticky.tsx +69 -0
- package/data/examples/enable-row-selection.tsx +96 -0
- package/data/examples/enable-row-virtualization.tsx +101 -0
- package/data/examples/enable-sticky-header.tsx +59 -0
- package/data/examples/expanding-tree-expanded.tsx +121 -0
- package/data/examples/expanding-tree-flat-parse.tsx +125 -0
- package/data/examples/expanding-tree-root-expanded.tsx +151 -0
- package/data/examples/export-to-csv.tsx +114 -0
- package/data/examples/export-to-pdf.tsx +104 -0
- package/data/examples/external-toolbar.tsx +108 -0
- package/data/examples/font-awesome-icons.tsx +106 -0
- package/data/examples/infinite-scrolling.tsx +208 -0
- package/data/examples/lazy-detail-panel.tsx +262 -0
- package/data/examples/lazy-sub-rows.tsx +190 -0
- package/data/examples/linear-progress.tsx +66 -0
- package/data/examples/loading.tsx +50 -0
- package/data/examples/localization-i18n-ar.tsx +65 -0
- package/data/examples/localization-i18n-az.tsx +60 -0
- package/data/examples/localization-i18n-bg.tsx +60 -0
- package/data/examples/localization-i18n-cs.tsx +60 -0
- package/data/examples/localization-i18n-da.tsx +60 -0
- package/data/examples/localization-i18n-de.tsx +60 -0
- package/data/examples/localization-i18n-el.tsx +60 -0
- package/data/examples/localization-i18n-en.tsx +60 -0
- package/data/examples/localization-i18n-es.tsx +60 -0
- package/data/examples/localization-i18n-et.tsx +60 -0
- package/data/examples/localization-i18n-fa.tsx +66 -0
- package/data/examples/localization-i18n-fi.tsx +60 -0
- package/data/examples/localization-i18n-fr.tsx +60 -0
- package/data/examples/localization-i18n-he.tsx +66 -0
- package/data/examples/localization-i18n-hr.tsx +60 -0
- package/data/examples/localization-i18n-hu.tsx +60 -0
- package/data/examples/localization-i18n-hy.tsx +65 -0
- package/data/examples/localization-i18n-id.tsx +60 -0
- package/data/examples/localization-i18n-it.tsx +60 -0
- package/data/examples/localization-i18n-ja.tsx +60 -0
- package/data/examples/localization-i18n-ko.tsx +60 -0
- package/data/examples/localization-i18n-nl.tsx +60 -0
- package/data/examples/localization-i18n-no.tsx +60 -0
- package/data/examples/localization-i18n-np.tsx +60 -0
- package/data/examples/localization-i18n-pl.tsx +60 -0
- package/data/examples/localization-i18n-pt-BR.tsx +60 -0
- package/data/examples/localization-i18n-pt.tsx +60 -0
- package/data/examples/localization-i18n-ro.tsx +60 -0
- package/data/examples/localization-i18n-ru.tsx +60 -0
- package/data/examples/localization-i18n-sk.tsx +60 -0
- package/data/examples/localization-i18n-sr-Cyrl-RS.tsx +60 -0
- package/data/examples/localization-i18n-sr-Latn-RS.tsx +60 -0
- package/data/examples/localization-i18n-sv.tsx +60 -0
- package/data/examples/localization-i18n-tr.tsx +60 -0
- package/data/examples/localization-i18n-uk.tsx +60 -0
- package/data/examples/localization-i18n-vi.tsx +60 -0
- package/data/examples/localization-i18n-zh-hans.tsx +60 -0
- package/data/examples/localization-i18n-zh-hant.tsx +60 -0
- package/data/examples/manual-selection.tsx +105 -0
- package/data/examples/minimal.tsx +78 -0
- package/data/examples/mui-theme.tsx +136 -0
- package/data/examples/multi-sorting.tsx +58 -0
- package/data/examples/persistent-state.tsx +184 -0
- package/data/examples/react-query.tsx +182 -0
- package/data/examples/remote.tsx +150 -0
- package/data/examples/row-actions-buttons.tsx +89 -0
- package/data/examples/row-actions-menu-items.tsx +64 -0
- package/data/examples/single-row-selection.tsx +98 -0
- package/data/examples/virtualized.tsx +138 -0
- package/data/guides/accessibility.md +119 -0
- package/data/guides/aggregation.md +210 -0
- package/data/guides/async-loading.md +132 -0
- package/data/guides/best-practices.md +363 -0
- package/data/guides/cell-actions.md +139 -0
- package/data/guides/click-to-copy.md +67 -0
- package/data/guides/column-actions.md +69 -0
- package/data/guides/column-filtering.md +366 -0
- package/data/guides/column-grouping.md +192 -0
- package/data/guides/column-hiding.md +133 -0
- package/data/guides/column-ordering-dnd.md +99 -0
- package/data/guides/column-pinning.md +72 -0
- package/data/guides/column-resizing.md +157 -0
- package/data/guides/column-size.md +162 -0
- package/data/guides/customize-components.md +395 -0
- package/data/guides/customize-icons.md +35 -0
- package/data/guides/data-columns.md +292 -0
- package/data/guides/density-toggle.md +46 -0
- package/data/guides/detail-panel.md +195 -0
- package/data/guides/display-columns.md +135 -0
- package/data/guides/editing.md +367 -0
- package/data/guides/expanding-sub-rows.md +194 -0
- package/data/guides/full-screen-toggle.md +63 -0
- package/data/guides/global-filtering.md +237 -0
- package/data/guides/localization.md +57 -0
- package/data/guides/memoization.md +157 -0
- package/data/guides/pagination.md +171 -0
- package/data/guides/row-actions.md +116 -0
- package/data/guides/row-numbers.md +24 -0
- package/data/guides/row-ordering-dnd.md +51 -0
- package/data/guides/row-pinning.md +96 -0
- package/data/guides/row-selection.md +237 -0
- package/data/guides/sorting.md +190 -0
- package/data/guides/state-management.md +165 -0
- package/data/guides/sticky-header.md +41 -0
- package/data/guides/table-event-listeners.md +103 -0
- package/data/guides/toolbar-customization.md +251 -0
- package/data/guides/virtualization.md +183 -0
- package/data/index.json +1930 -0
- package/data/reference/mrt-components.md +183 -0
- package/data/reference/mrt-hooks.md +125 -0
- package/data/skills/composable-components/SKILL.md +189 -0
- package/data/skills/customization/SKILL.md +190 -0
- package/data/skills/drag-and-drop-ordering/SKILL.md +227 -0
- package/data/skills/editing/SKILL.md +243 -0
- package/data/skills/filtering/SKILL.md +213 -0
- package/data/skills/getting-started/SKILL.md +213 -0
- package/data/skills/localization/SKILL.md +182 -0
- package/data/skills/migrate-v3-to-v4/SKILL.md +161 -0
- package/data/skills/state-and-server-data/SKILL.md +200 -0
- package/data/skills/virtualization/SKILL.md +203 -0
- package/dist/data.js +137 -0
- package/dist/index.js +232 -0
- package/package.json +50 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { useEffect, useMemo, useState } from 'react';
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
import { data, type Person } from './makeData';
|
|
4
|
+
import { Button } from '@mui/material';
|
|
5
|
+
|
|
6
|
+
const Example = () => {
|
|
7
|
+
const columns = useMemo<MRT_ColumnDef<Person>[]>(
|
|
8
|
+
//column definitions...
|
|
9
|
+
() => [
|
|
10
|
+
{
|
|
11
|
+
accessorKey: 'firstName',
|
|
12
|
+
header: 'First Name',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
accessorKey: 'lastName',
|
|
16
|
+
header: 'Last Name',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
accessorKey: 'email',
|
|
20
|
+
header: 'Email',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
accessorKey: 'city',
|
|
24
|
+
header: 'City',
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
[],
|
|
28
|
+
//end
|
|
29
|
+
);
|
|
30
|
+
|
|
31
|
+
const [progress, setProgress] = useState(0);
|
|
32
|
+
|
|
33
|
+
//simulate random progress for demo purposes
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
const interval = setInterval(() => {
|
|
36
|
+
setProgress((oldProgress) => {
|
|
37
|
+
const newProgress = Math.random() * 20;
|
|
38
|
+
return Math.min(oldProgress + newProgress, 100);
|
|
39
|
+
});
|
|
40
|
+
}, 1000);
|
|
41
|
+
return () => clearInterval(interval);
|
|
42
|
+
}, []);
|
|
43
|
+
|
|
44
|
+
return (
|
|
45
|
+
<MaterialReactTable
|
|
46
|
+
columns={columns}
|
|
47
|
+
data={data}
|
|
48
|
+
muiLinearProgressProps={({ isTopToolbar }) => ({
|
|
49
|
+
color: 'secondary',
|
|
50
|
+
variant: 'determinate', //if you want to show exact progress value
|
|
51
|
+
value: progress, //value between 0 and 100
|
|
52
|
+
sx: {
|
|
53
|
+
display: isTopToolbar ? 'block' : 'none', //hide bottom progress bar
|
|
54
|
+
},
|
|
55
|
+
})}
|
|
56
|
+
renderTopToolbarCustomActions={() => (
|
|
57
|
+
<Button onClick={() => setProgress(0)} variant="contained">
|
|
58
|
+
Reset
|
|
59
|
+
</Button>
|
|
60
|
+
)}
|
|
61
|
+
state={{ showProgressBars: true }}
|
|
62
|
+
/>
|
|
63
|
+
);
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export default Example;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
import { type Person } from './makeData';
|
|
4
|
+
|
|
5
|
+
const data: Array<Person> = [];
|
|
6
|
+
|
|
7
|
+
const Example = () => {
|
|
8
|
+
const columns = useMemo<MRT_ColumnDef<Person>[]>(
|
|
9
|
+
//column definitions...
|
|
10
|
+
() => [
|
|
11
|
+
{
|
|
12
|
+
accessorKey: 'firstName',
|
|
13
|
+
header: 'First Name',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
accessorKey: 'lastName',
|
|
17
|
+
header: 'Last Name',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
accessorKey: 'email',
|
|
21
|
+
header: 'Email',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
accessorKey: 'city',
|
|
25
|
+
header: 'City',
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
[],
|
|
29
|
+
//end
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<MaterialReactTable
|
|
34
|
+
columns={columns}
|
|
35
|
+
data={data}
|
|
36
|
+
state={{ isLoading: true }}
|
|
37
|
+
muiCircularProgressProps={{
|
|
38
|
+
color: 'secondary',
|
|
39
|
+
thickness: 5,
|
|
40
|
+
size: 55,
|
|
41
|
+
}}
|
|
42
|
+
muiSkeletonProps={{
|
|
43
|
+
animation: 'pulse',
|
|
44
|
+
height: 28,
|
|
45
|
+
}}
|
|
46
|
+
/>
|
|
47
|
+
);
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
export default Example;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_AR } from 'material-react-table/locales/ar';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'الاسم الأول',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'اسم العائلة',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'العمر',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
defaultColumn={{ size: 250 }}
|
|
34
|
+
columnResizeDirection="rtl"
|
|
35
|
+
enableColumnFilterModes
|
|
36
|
+
enableColumnOrdering
|
|
37
|
+
enableColumnResizing
|
|
38
|
+
enableEditing
|
|
39
|
+
enableColumnPinning
|
|
40
|
+
enableRowActions
|
|
41
|
+
enableRowSelection
|
|
42
|
+
enableSelectAll={false}
|
|
43
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
44
|
+
localization={MRT_Localization_AR}
|
|
45
|
+
/>
|
|
46
|
+
);
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
//App.tsx or similar
|
|
50
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
51
|
+
import { arSA } from '@mui/material/locale';
|
|
52
|
+
|
|
53
|
+
const ExampleWithThemeProvider = () => {
|
|
54
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
55
|
+
return (
|
|
56
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
57
|
+
<ThemeProvider theme={createTheme({ ...theme, direction: 'rtl' }, arSA)}>
|
|
58
|
+
<div style={{ direction: 'rtl' }}>
|
|
59
|
+
<Example />
|
|
60
|
+
</div>
|
|
61
|
+
</ThemeProvider>
|
|
62
|
+
);
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
export default ExampleWithThemeProvider;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_AZ } from 'material-react-table/locales/az';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'Ad',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'Soyad',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'Yaş',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
enableColumnFilterModes
|
|
34
|
+
enableColumnOrdering
|
|
35
|
+
enableEditing
|
|
36
|
+
enableColumnPinning
|
|
37
|
+
enableRowActions
|
|
38
|
+
enableRowSelection
|
|
39
|
+
enableSelectAll={false}
|
|
40
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
41
|
+
localization={MRT_Localization_AZ}
|
|
42
|
+
/>
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
//App.tsx or similar
|
|
47
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
48
|
+
import { azAZ } from '@mui/material/locale';
|
|
49
|
+
|
|
50
|
+
const ExampleWithThemeProvider = () => {
|
|
51
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
52
|
+
return (
|
|
53
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
54
|
+
<ThemeProvider theme={createTheme(theme, azAZ)}>
|
|
55
|
+
<Example />
|
|
56
|
+
</ThemeProvider>
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export default ExampleWithThemeProvider;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_BG } from 'material-react-table/locales/bg';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'Първо име',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'Фамилия',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'Възраст',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
enableColumnFilterModes
|
|
34
|
+
enableColumnOrdering
|
|
35
|
+
enableEditing
|
|
36
|
+
enableColumnPinning
|
|
37
|
+
enableRowActions
|
|
38
|
+
enableRowSelection
|
|
39
|
+
enableSelectAll={false}
|
|
40
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
41
|
+
localization={MRT_Localization_BG}
|
|
42
|
+
/>
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
//App.tsx or similar
|
|
47
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
48
|
+
import { bgBG } from '@mui/material/locale';
|
|
49
|
+
|
|
50
|
+
const ExampleWithThemeProvider = () => {
|
|
51
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
52
|
+
return (
|
|
53
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
54
|
+
<ThemeProvider theme={createTheme(theme, bgBG)}>
|
|
55
|
+
<Example />
|
|
56
|
+
</ThemeProvider>
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export default ExampleWithThemeProvider;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_CS } from 'material-react-table/locales/cs';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'Jméno',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'Příjmení',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'Stáří',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
enableColumnFilterModes
|
|
34
|
+
enableColumnOrdering
|
|
35
|
+
enableEditing
|
|
36
|
+
enableColumnPinning
|
|
37
|
+
enableRowActions
|
|
38
|
+
enableRowSelection
|
|
39
|
+
enableSelectAll={false}
|
|
40
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
41
|
+
localization={MRT_Localization_CS}
|
|
42
|
+
/>
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
//App.tsx or similar
|
|
47
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
48
|
+
import { csCZ } from '@mui/material/locale';
|
|
49
|
+
|
|
50
|
+
const ExampleWithThemeProvider = () => {
|
|
51
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
52
|
+
return (
|
|
53
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
54
|
+
<ThemeProvider theme={createTheme(theme, csCZ)}>
|
|
55
|
+
<Example />
|
|
56
|
+
</ThemeProvider>
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export default ExampleWithThemeProvider;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_DA } from 'material-react-table/locales/da';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'Fornavn',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'Efternavn',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'Alder',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
enableColumnFilterModes
|
|
34
|
+
enableColumnOrdering
|
|
35
|
+
enableEditing
|
|
36
|
+
enableColumnPinning
|
|
37
|
+
enableRowActions
|
|
38
|
+
enableRowSelection
|
|
39
|
+
enableSelectAll={false}
|
|
40
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
41
|
+
localization={MRT_Localization_DA}
|
|
42
|
+
/>
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
//App.tsx or similar
|
|
47
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
48
|
+
import { daDK } from '@mui/material/locale';
|
|
49
|
+
|
|
50
|
+
const ExampleWithThemeProvider = () => {
|
|
51
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
52
|
+
return (
|
|
53
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
54
|
+
<ThemeProvider theme={createTheme(theme, daDK)}>
|
|
55
|
+
<Example />
|
|
56
|
+
</ThemeProvider>
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export default ExampleWithThemeProvider;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_DE } from 'material-react-table/locales/de';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'Vorname',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'Nachname',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'Das Alter',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
enableColumnFilterModes
|
|
34
|
+
enableColumnOrdering
|
|
35
|
+
enableEditing
|
|
36
|
+
enableColumnPinning
|
|
37
|
+
enableRowActions
|
|
38
|
+
enableRowSelection
|
|
39
|
+
enableSelectAll={false}
|
|
40
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
41
|
+
localization={MRT_Localization_DE}
|
|
42
|
+
/>
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
//App.tsx or similar
|
|
47
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
48
|
+
import { deDE } from '@mui/material/locale';
|
|
49
|
+
|
|
50
|
+
const ExampleWithThemeProvider = () => {
|
|
51
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
52
|
+
return (
|
|
53
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
54
|
+
<ThemeProvider theme={createTheme(theme, deDE)}>
|
|
55
|
+
<Example />
|
|
56
|
+
</ThemeProvider>
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export default ExampleWithThemeProvider;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_EL } from 'material-react-table/locales/el';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'First Name',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'Last Name',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'Age',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
enableColumnFilterModes
|
|
34
|
+
enableColumnOrdering
|
|
35
|
+
enableEditing
|
|
36
|
+
enableColumnPinning
|
|
37
|
+
enableRowActions
|
|
38
|
+
enableRowSelection
|
|
39
|
+
enableSelectAll={false}
|
|
40
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
41
|
+
localization={MRT_Localization_EL}
|
|
42
|
+
/>
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
//App.tsx or similar
|
|
47
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
48
|
+
import { elGR } from '@mui/material/locale';
|
|
49
|
+
|
|
50
|
+
const ExampleWithThemeProvider = () => {
|
|
51
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
52
|
+
return (
|
|
53
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
54
|
+
<ThemeProvider theme={createTheme(theme, elGR)}>
|
|
55
|
+
<Example />
|
|
56
|
+
</ThemeProvider>
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export default ExampleWithThemeProvider;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_EN } from 'material-react-table/locales/en';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'First Name',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'Last Name',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'Age',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
enableColumnFilterModes
|
|
34
|
+
enableColumnOrdering
|
|
35
|
+
enableEditing
|
|
36
|
+
enableColumnPinning
|
|
37
|
+
enableRowActions
|
|
38
|
+
enableRowSelection
|
|
39
|
+
enableSelectAll={false}
|
|
40
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
41
|
+
localization={MRT_Localization_EN}
|
|
42
|
+
/>
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
//App.tsx or similar
|
|
47
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
48
|
+
import { enUS } from '@mui/material/locale';
|
|
49
|
+
|
|
50
|
+
const ExampleWithThemeProvider = () => {
|
|
51
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
52
|
+
return (
|
|
53
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
54
|
+
<ThemeProvider theme={createTheme(theme, enUS)}>
|
|
55
|
+
<Example />
|
|
56
|
+
</ThemeProvider>
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export default ExampleWithThemeProvider;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//Import Material React Table and its Types
|
|
2
|
+
import { MaterialReactTable, type MRT_ColumnDef } from 'material-react-table';
|
|
3
|
+
|
|
4
|
+
//Import Material React Table Translations
|
|
5
|
+
import { MRT_Localization_ES } from 'material-react-table/locales/es';
|
|
6
|
+
|
|
7
|
+
//mock data
|
|
8
|
+
import { data, type Person } from './makeData';
|
|
9
|
+
|
|
10
|
+
const columns: MRT_ColumnDef<Person>[] = [
|
|
11
|
+
//column definitions...
|
|
12
|
+
{
|
|
13
|
+
accessorKey: 'firstName',
|
|
14
|
+
header: 'Primer nombre',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
accessorKey: 'lastName',
|
|
18
|
+
header: 'Apellido',
|
|
19
|
+
enableClickToCopy: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessorKey: 'age',
|
|
23
|
+
header: 'Años',
|
|
24
|
+
},
|
|
25
|
+
//end
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const Example = () => {
|
|
29
|
+
return (
|
|
30
|
+
<MaterialReactTable
|
|
31
|
+
columns={columns}
|
|
32
|
+
data={data}
|
|
33
|
+
enableColumnFilterModes
|
|
34
|
+
enableColumnOrdering
|
|
35
|
+
enableEditing
|
|
36
|
+
enableColumnPinning
|
|
37
|
+
enableRowActions
|
|
38
|
+
enableRowSelection
|
|
39
|
+
enableSelectAll={false}
|
|
40
|
+
initialState={{ showColumnFilters: true, showGlobalFilter: true }}
|
|
41
|
+
localization={MRT_Localization_ES}
|
|
42
|
+
/>
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
//App.tsx or similar
|
|
47
|
+
import { createTheme, ThemeProvider, useTheme } from '@mui/material';
|
|
48
|
+
import { esES } from '@mui/material/locale';
|
|
49
|
+
|
|
50
|
+
const ExampleWithThemeProvider = () => {
|
|
51
|
+
const theme = useTheme(); //replace with your theme/createTheme
|
|
52
|
+
return (
|
|
53
|
+
//Setting Material UI locale as best practice to result in better accessibility
|
|
54
|
+
<ThemeProvider theme={createTheme(theme, esES)}>
|
|
55
|
+
<Example />
|
|
56
|
+
</ThemeProvider>
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export default ExampleWithThemeProvider;
|