(
data: RowData[],
payload: { sortBy: keyof RowData | null; reversed: boolean; search: string }
)
| 51 | } |
| 52 | |
| 53 | function sortData( |
| 54 | data: RowData[], |
| 55 | payload: { sortBy: keyof RowData | null; reversed: boolean; search: string } |
| 56 | ) { |
| 57 | const { sortBy } = payload; |
| 58 | |
| 59 | if (!sortBy) { |
| 60 | return filterData(data, payload.search); |
| 61 | } |
| 62 | |
| 63 | return filterData( |
| 64 | [...data].sort((a, b) => { |
| 65 | if (payload.reversed) { |
| 66 | return b[sortBy].localeCompare(a[sortBy]); |
| 67 | } |
| 68 | |
| 69 | return a[sortBy].localeCompare(b[sortBy]); |
| 70 | }), |
| 71 | payload.search |
| 72 | ); |
| 73 | } |
| 74 | |
| 75 | const data = [ |
| 76 | { |
no test coverage detected