1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-02-23 00:22:19 +01:00

fix: invalid spreading of keys into table rows everywhere (#8551)

This commit fixes invalid prop spreading warnings in all the table rows
I could find through a quick search in the code base.

The issue is that you can't spread the "key" prop into a component. It
*must* be an explicit prop.

The process is the same everywhere:
1. Instead of spreading `row.getRowProps()` into the component, we
extract and split it: `const {key, ...rowProps} = row.getRowProps()`.
2. Do the same thing for cellProps.
This commit is contained in:
Thomas Heartman 2024-10-28 13:47:22 +01:00 committed by GitHub
parent 0ff0b2dbd0
commit 622998c62e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
12 changed files with 176 additions and 86 deletions

View File

@ -104,13 +104,19 @@ export const BillingHistory: VFC<IBillingHistoryProps> = ({
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell key={key} {...cellProps}>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -323,16 +323,19 @@ export const ChangeRequestsTabs = ({
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell
{...cell.getCellProps()}
padding='none'
>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell key={key} {...cellProps}>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -97,13 +97,19 @@ export const EnvironmentTableSingle = ({
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell key={key} {...cellProps}>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -157,13 +157,19 @@ export const FeatureTypesList = () => {
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell key={key} {...cellProps}>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -95,16 +95,23 @@ export const VariantInformation: VFC<IVariantInformationProps> = ({
}
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell: any) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell: any) => (
<TableCell
{...cell.getCellProps()}
key={key}
{...cellProps}
style={styles}
>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -191,13 +191,19 @@ export const ChangeRequestTable = (props: TableProps) => {
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell key={key} {...cellProps}>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -213,13 +213,19 @@ export const ProjectDoraMetrics = () => {
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell key={key} {...cellProps}>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -251,13 +251,18 @@ export const ChangeRequestTable: VFC = () => {
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell key={key} {...cellProps}>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -76,13 +76,19 @@ export const ProjectEnvironmentTableSingle = ({
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell key={key} {...cellProps}>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -274,13 +274,22 @@ const ProjectEnvironmentList = () => {
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell
key={key}
{...cellProps}
>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -136,18 +136,30 @@ export const SegmentTable = () => {
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } =
row.getRowProps();
return (
<TableRow
hover
{...row.getRowProps()}
key={key}
{...rowProps}
>
{row.cells.map((cell) => (
{row.cells.map((cell) => {
const {
key,
...cellProps
} = cell.getCellProps();
return (
<TableCell
{...cell.getCellProps()}
key={key}
{...cellProps}
>
{cell.render('Cell')}
{cell.render(
'Cell',
)}
</TableCell>
))}
);
})}
</TableRow>
);
})}

View File

@ -409,13 +409,22 @@ export const StrategiesList = () => {
<TableBody {...getTableBodyProps()}>
{rows.map((row) => {
prepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell
key={key}
{...cellProps}
>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}
@ -460,13 +469,22 @@ export const StrategiesList = () => {
<TableBody {...customGetTableBodyProps()}>
{customRows.map((row) => {
customPrepareRow(row);
const { key, ...rowProps } = row.getRowProps();
return (
<TableRow hover {...row.getRowProps()}>
{row.cells.map((cell) => (
<TableCell {...cell.getCellProps()}>
<TableRow hover key={key} {...rowProps}>
{row.cells.map((cell) => {
const { key, ...cellProps } =
cell.getCellProps();
return (
<TableCell
key={key}
{...cellProps}
>
{cell.render('Cell')}
</TableCell>
))}
);
})}
</TableRow>
);
})}