Skip to content

Commit 0e1b27e

Browse files
committed
update rowClick
1 parent 4219bb0 commit 0e1b27e

File tree

5 files changed

+31
-7
lines changed

5 files changed

+31
-7
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# CHANGELOG
22

3+
## 0.5.5
4+
5+
_2024-06-13_
6+
7+
### Features
8+
9+
- Update `onRowClick` signature to include the event in one argument
10+
311
## 0.5.4
412

513
_2024-06-13_

example/src/Props.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -747,7 +747,11 @@ interface TableProps<T> {
747747
/**
748748
* The callback that gets called every time a row is clicked.
749749
*/
750-
onRowClick?: (event: React.MouseEvent<Element, MouseEvent>, data: { index: number }) => void;
750+
onRowClick?: (data: {
751+
row: T;
752+
index: number;
753+
event: React.MouseEvent<Element, MouseEvent>;
754+
}) => void;
751755
/**
752756
* Custom component to wrap a table row. This provides another way of providing
753757
* more row customization options.

index.d.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,11 @@ export type TableProps<T> = {
331331
/**
332332
* The callback that gets called every time a row is clicked.
333333
*/
334-
onRowClick?: (event: React.MouseEvent<Element, MouseEvent>, data: { index: number }) => void;
334+
onRowClick?: (data: {
335+
row: T;
336+
index: number;
337+
event: React.MouseEvent<Element, MouseEvent>;
338+
}) => void;
335339
/**
336340
* Custom component to wrap a table row. This provides another way of providing
337341
* more row customization options.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-fluid-table",
3-
"version": "0.5.4",
3+
"version": "0.5.5",
44
"description": "A React table inspired by react-window",
55
"author": "Mckervin Ceme <mckervinc@live.com>",
66
"license": "MIT",

src/Row.tsx

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,11 @@ type RowContainerProps<T> = {
2626
className?: string;
2727
children: React.ReactNode;
2828
containerStyle: React.CSSProperties;
29-
onRowClick: (event: React.MouseEvent<Element, MouseEvent>, data: { index: number }) => void;
29+
onRowClick: (data: {
30+
row: T;
31+
index: number;
32+
event: React.MouseEvent<Element, MouseEvent>;
33+
}) => void;
3034
rowRenderer: (props: RowRenderProps<T>) => JSX.Element;
3135
};
3236

@@ -46,7 +50,11 @@ interface RowProps<T> extends Omit<ListChildComponentProps<T>, "data"> {
4650
optionalDataIndex?: number | null
4751
) => number;
4852
generateKeyFromRow: (row: T, defaultValue: number) => string | number;
49-
onRowClick: (event: React.MouseEvent<Element, MouseEvent>, data: { index: number }) => void;
53+
onRowClick: (data: {
54+
row: T;
55+
index: number;
56+
event: React.MouseEvent<Element, MouseEvent>;
57+
}) => void;
5058
subComponent?: (props: SubComponentProps<T>) => React.ReactNode;
5159
onExpandRow?: (value: { row: T; index: number; isExpanded: boolean }) => void;
5260
rowRenderer: (props: RowRenderProps<T>) => JSX.Element;
@@ -156,10 +164,10 @@ function RowContainer<T>({
156164
const onContainerClick = useCallback(
157165
(event: React.MouseEvent<Element, MouseEvent>) => {
158166
if (onRowClick) {
159-
onRowClick(event, { index });
167+
onRowClick({ row, index, event });
160168
}
161169
},
162-
[index, onRowClick]
170+
[row, index, onRowClick]
163171
);
164172

165173
if (RowRenderer) {

0 commit comments

Comments
 (0)