diff --git a/public/app/plugins/panel/table2/sortable.tsx b/public/app/plugins/panel/table2/sortable.tsx index f83df1ce830..24253b54708 100644 --- a/public/app/plugins/panel/table2/sortable.tsx +++ b/public/app/plugins/panel/table2/sortable.tsx @@ -7,18 +7,14 @@ export function sortTableData(data: TableData, sortIndex?: number, reverse = fal if (isNumber(sortIndex)) { const copy = { ...data, - rows: data.rows.map((row, index) => { - return row; + rows: [...data.rows].sort((a, b) => { + a = a[sortIndex]; + b = b[sortIndex]; + // Sort null or undefined separately from comparable values + return +(a == null) - +(b == null) || +(a > b) || -(a < b); }), }; - copy.rows.sort((a, b) => { - a = a[sortIndex]; - b = b[sortIndex]; - // Sort null or undefined separately from comparable values - return +(a == null) - +(b == null) || +(a > b) || -(a < b); - }); - if (reverse) { copy.rows.reverse(); }