material-react-table 1.1.0-beta.0 → 1.1.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/dist/cjs/MaterialReactTable.d.ts +3 -3
- package/dist/cjs/_locales/ja.d.ts +2 -0
- package/dist/cjs/body/MRT_TableBodyCell.d.ts +1 -0
- package/dist/cjs/body/MRT_TableBodyRow.d.ts +1 -0
- package/dist/cjs/index.js +422 -427
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/table/MRT_TableRoot.d.ts +3 -3
- package/dist/esm/MaterialReactTable.d.ts +3 -3
- package/dist/esm/_locales/ja.d.ts +2 -0
- package/dist/esm/body/MRT_TableBodyCell.d.ts +1 -0
- package/dist/esm/body/MRT_TableBodyRow.d.ts +1 -0
- package/dist/esm/material-react-table.esm.js +422 -427
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/esm/table/MRT_TableRoot.d.ts +3 -3
- package/dist/index.d.ts +35 -35
- package/locales/ja.d.ts +2 -0
- package/locales/ja.esm.d.ts +2 -0
- package/locales/ja.esm.js +92 -0
- package/locales/ja.esm.js.map +1 -0
- package/locales/ja.js +96 -0
- package/locales/ja.js.map +1 -0
- package/package.json +13 -13
- package/src/MaterialReactTable.tsx +6 -6
- package/src/_locales/ja.ts +92 -1
- package/src/body/MRT_TableBody.tsx +6 -2
- package/src/body/MRT_TableBodyCell.tsx +37 -36
- package/src/body/MRT_TableBodyRow.tsx +15 -9
- package/src/head/MRT_TableHeadCell.tsx +19 -16
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import React, { DragEvent, FC, memo, useRef } from 'react';
|
|
1
|
+
import React, { DragEvent, FC, memo, useMemo, useRef } from 'react';
|
|
2
2
|
import { darken, lighten, TableRow, useTheme } from '@mui/material';
|
|
3
3
|
import { Memo_MRT_TableBodyCell, MRT_TableBodyCell } from './MRT_TableBodyCell';
|
|
4
4
|
import { MRT_TableDetailPanel } from './MRT_TableDetailPanel';
|
|
5
5
|
import type { MRT_Row, MRT_TableInstance } from '..';
|
|
6
6
|
|
|
7
7
|
interface Props {
|
|
8
|
+
numRows: number;
|
|
8
9
|
row: MRT_Row;
|
|
9
10
|
rowIndex: number;
|
|
10
11
|
table: MRT_TableInstance;
|
|
@@ -12,6 +13,7 @@ interface Props {
|
|
|
12
13
|
}
|
|
13
14
|
|
|
14
15
|
export const MRT_TableBodyRow: FC<Props> = ({
|
|
16
|
+
numRows,
|
|
15
17
|
row,
|
|
16
18
|
rowIndex,
|
|
17
19
|
table,
|
|
@@ -45,12 +47,15 @@ export const MRT_TableBodyRow: FC<Props> = ({
|
|
|
45
47
|
|
|
46
48
|
const rowRef = useRef<HTMLTableRowElement | null>(null);
|
|
47
49
|
|
|
48
|
-
const draggingBorder =
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
50
|
+
const draggingBorder = useMemo(
|
|
51
|
+
() =>
|
|
52
|
+
draggingRow?.id === row.id
|
|
53
|
+
? `1px dashed ${theme.palette.text.secondary}`
|
|
54
|
+
: hoveredRow?.id === row.id
|
|
55
|
+
? `2px dashed ${theme.palette.primary.main}`
|
|
56
|
+
: undefined,
|
|
57
|
+
[draggingRow, hoveredRow],
|
|
58
|
+
);
|
|
54
59
|
|
|
55
60
|
const draggingBorders = draggingBorder
|
|
56
61
|
? {
|
|
@@ -90,16 +95,17 @@ export const MRT_TableBodyRow: FC<Props> = ({
|
|
|
90
95
|
...draggingBorders,
|
|
91
96
|
})}
|
|
92
97
|
>
|
|
93
|
-
{row
|
|
98
|
+
{row.getVisibleCells().map((cell) => {
|
|
94
99
|
const props = {
|
|
95
100
|
cell,
|
|
96
101
|
enableHover: tableRowProps?.hover !== false,
|
|
97
102
|
key: cell.id,
|
|
103
|
+
numRows,
|
|
98
104
|
rowIndex,
|
|
99
105
|
rowRef,
|
|
100
106
|
table,
|
|
101
107
|
};
|
|
102
|
-
return memoMode === '
|
|
108
|
+
return memoMode === 'cells' &&
|
|
103
109
|
cell.column.columnDef.columnDefType === 'data' &&
|
|
104
110
|
!draggingColumn &&
|
|
105
111
|
!draggingRow &&
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { DragEvent, FC, ReactNode } from 'react';
|
|
1
|
+
import React, { DragEvent, FC, ReactNode, useMemo } from 'react';
|
|
2
2
|
import { Box, TableCell, Theme, useTheme } from '@mui/material';
|
|
3
3
|
import { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';
|
|
4
4
|
import { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';
|
|
@@ -54,6 +54,24 @@ export const MRT_TableHeadCell: FC<Props> = ({ header, table }) => {
|
|
|
54
54
|
...mcTableHeadCellProps,
|
|
55
55
|
};
|
|
56
56
|
|
|
57
|
+
const draggingBorder = useMemo(
|
|
58
|
+
() =>
|
|
59
|
+
draggingColumn?.id === column.id
|
|
60
|
+
? `1px dashed ${theme.palette.text.secondary}`
|
|
61
|
+
: hoveredColumn?.id === column.id
|
|
62
|
+
? `2px dashed ${theme.palette.primary.main}`
|
|
63
|
+
: undefined,
|
|
64
|
+
[draggingColumn, hoveredColumn],
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
const draggingBorders = draggingBorder
|
|
68
|
+
? {
|
|
69
|
+
borderLeft: draggingBorder,
|
|
70
|
+
borderRight: draggingBorder,
|
|
71
|
+
borderTop: draggingBorder,
|
|
72
|
+
}
|
|
73
|
+
: undefined;
|
|
74
|
+
|
|
57
75
|
const handleDragEnter = (_e: DragEvent) => {
|
|
58
76
|
if (enableGrouping && hoveredColumn?.id === 'drop-zone') {
|
|
59
77
|
setHoveredColumn(null);
|
|
@@ -65,21 +83,6 @@ export const MRT_TableHeadCell: FC<Props> = ({ header, table }) => {
|
|
|
65
83
|
}
|
|
66
84
|
};
|
|
67
85
|
|
|
68
|
-
const draggingBorder =
|
|
69
|
-
draggingColumn?.id === column.id
|
|
70
|
-
? `1px dashed ${theme.palette.text.secondary}`
|
|
71
|
-
: hoveredColumn?.id === column.id
|
|
72
|
-
? `2px dashed ${theme.palette.primary.main}`
|
|
73
|
-
: undefined;
|
|
74
|
-
|
|
75
|
-
const draggingBorders = draggingBorder
|
|
76
|
-
? {
|
|
77
|
-
borderLeft: draggingBorder,
|
|
78
|
-
borderRight: draggingBorder,
|
|
79
|
-
borderTop: draggingBorder,
|
|
80
|
-
}
|
|
81
|
-
: undefined;
|
|
82
|
-
|
|
83
86
|
const headerElement = ((columnDef?.Header instanceof Function
|
|
84
87
|
? columnDef?.Header?.({
|
|
85
88
|
column,
|