Skip to content

Commit ba93521

Browse files
committed
fix: more fixes
1 parent 3615357 commit ba93521

File tree

5 files changed

+11
-53
lines changed

5 files changed

+11
-53
lines changed

src/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import React from 'react';
22

33
import type {Column} from '@gravity-ui/react-data-table';
44
import {TableColumnSetup} from '@gravity-ui/uikit';
5-
import {isEqual} from 'lodash';
65

76
import {DrawerWrapper} from '../../../../components/Drawer';
87
import {DrawerControlType} from '../../../../components/Drawer/Drawer';
@@ -152,7 +151,7 @@ export const RunningQueriesData = ({
152151
loading={isFetching && currentData === undefined}
153152
settings={TOP_QUERIES_TABLE_SETTINGS}
154153
onRowClick={onRowClick}
155-
rowClassName={(row) => b('row', {active: isEqual(row, selectedRow)})}
154+
rowClassName={(row) => b('row', {active: row === selectedRow})}
156155
sortOrder={tableSort}
157156
onSort={handleTableSort}
158157
/>

src/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.tsx

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import React from 'react';
22

33
import type {Column} from '@gravity-ui/react-data-table';
44
import {Select, TableColumnSetup} from '@gravity-ui/uikit';
5-
import {isEqual} from 'lodash';
65

76
import type {DateRangeValues} from '../../../../components/DateRange';
87
import {DateRange} from '../../../../components/DateRange';
@@ -30,10 +29,10 @@ import {
3029
TOP_QUERIES_SELECTED_COLUMNS_LS_KEY,
3130
} from './columns/constants';
3231
import {DEFAULT_TIME_FILTER_VALUE, TIME_FRAME_OPTIONS} from './constants';
33-
import {useGetSelectedRowTableSort} from './hooks/useGetSelectedRowTableSort';
3432
import {useSetSelectedTopQueryRowFromParams} from './hooks/useSetSelectedTopQueryRowFromParams';
33+
import {useTopQueriesSort} from './hooks/useTopQueriesSort';
3534
import i18n from './i18n';
36-
import {TOP_QUERIES_TABLE_SETTINGS, useTopQueriesSort} from './utils';
35+
import {TOP_QUERIES_TABLE_SETTINGS} from './utils';
3736
import {generateShareableUrl} from './utils/generateShareableUrl';
3837

3938
const b = cn('kv-top-queries');
@@ -75,8 +74,7 @@ export const TopQueriesData = ({
7574
REQUIRED_TOP_QUERIES_COLUMNS,
7675
);
7776

78-
const initialTableSort = useGetSelectedRowTableSort();
79-
const {tableSort, handleTableSort, backendSort} = useTopQueriesSort(initialTableSort);
77+
const {tableSort, handleTableSort, backendSort} = useTopQueriesSort();
8078
const {currentData, isFetching, isLoading, error} = topQueriesApi.useGetTopQueriesQuery(
8179
{
8280
database: tenantName,
@@ -98,10 +96,10 @@ export const TopQueriesData = ({
9896

9997
const getTopQueryUrl = React.useCallback(() => {
10098
if (selectedRow) {
101-
return generateShareableUrl(selectedRow, tableSort);
99+
return generateShareableUrl(selectedRow);
102100
}
103101
return '';
104-
}, [selectedRow, tableSort]);
102+
}, [selectedRow]);
105103

106104
const renderDrawerContent = React.useCallback(() => {
107105
if (!isDrawerVisible) {
@@ -190,7 +188,7 @@ export const TopQueriesData = ({
190188
loading={isFetching && currentData === undefined}
191189
settings={TOP_QUERIES_TABLE_SETTINGS}
192190
onRowClick={onRowClick}
193-
rowClassName={(row) => b('row', {active: isEqual(row, selectedRow)})}
191+
rowClassName={(row) => b('row', {active: row === selectedRow})}
194192
sortOrder={tableSort}
195193
onSort={handleTableSort}
196194
/>

src/containers/Tenant/Diagnostics/TopQueries/hooks/useGetSelectedRowTableSort.ts

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/containers/Tenant/Diagnostics/TopQueries/utils.ts

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React from 'react';
22

3-
import type {Settings, SortOrder} from '@gravity-ui/react-data-table';
3+
import type {Settings} from '@gravity-ui/react-data-table';
44
import DataTable from '@gravity-ui/react-data-table';
55

66
import type {InfoViewerItem} from '../../../../components/InfoViewer';
@@ -11,11 +11,7 @@ import {prepareBackendSortFieldsFromTableSort, useTableSort} from '../../../../u
1111
import {formatToMs, parseUsToMs} from '../../../../utils/timeParsers';
1212
import {QUERY_TABLE_SETTINGS} from '../../utils/constants';
1313

14-
import {
15-
QUERIES_COLUMNS_IDS,
16-
getRunningQueriesColumnSortField,
17-
getTopQueriesColumnSortField,
18-
} from './columns/constants';
14+
import {QUERIES_COLUMNS_IDS, getRunningQueriesColumnSortField} from './columns/constants';
1915
import columnsI18n from './columns/i18n';
2016

2117
export const TOP_QUERIES_TABLE_SETTINGS: Settings = {
@@ -24,24 +20,6 @@ export const TOP_QUERIES_TABLE_SETTINGS: Settings = {
2420
externalSort: true,
2521
};
2622

27-
export function useTopQueriesSort(initialSort?: SortOrder[]) {
28-
const [tableSort, handleTableSort] = useTableSort({
29-
initialSortColumn: initialSort?.[0]?.columnId || QUERIES_COLUMNS_IDS.CPUTime,
30-
initialSortOrder: initialSort?.[0]?.order || DataTable.DESCENDING,
31-
multiple: true,
32-
fixedOrderType: DataTable.DESCENDING,
33-
});
34-
35-
return {
36-
tableSort,
37-
handleTableSort,
38-
backendSort: React.useMemo(
39-
() => prepareBackendSortFieldsFromTableSort(tableSort, getTopQueriesColumnSortField),
40-
[tableSort],
41-
),
42-
};
43-
}
44-
4523
export function createQueryInfoItems(data: KeyValueRow): InfoViewerItem[] {
4624
const items: InfoViewerItem[] = [];
4725

src/containers/Tenant/Diagnostics/TopQueries/utils/generateShareableUrl.ts

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,13 @@
1-
import type {SortOrder} from '@gravity-ui/react-data-table';
2-
31
import type {KeyValueRow} from '../../../../../types/api/query';
42

53
import {getTopQueryRowQueryParams} from './getTopQueryRowQueryParams';
64

75
/**
86
* Generates a shareable URL with query parameters for a top query row
97
* @param row The top query row data
10-
* @param tableSort Optional sort configuration to include in the URL
11-
* @returns A shareable URL string with the row's parameters and sort order encoded in the URL
8+
* @returns A shareable URL string with the row's parameters encoded in the URL
129
*/
13-
export function generateShareableUrl(row: KeyValueRow, tableSort?: SortOrder[]): string {
10+
export function generateShareableUrl(row: KeyValueRow): string {
1411
const params = getTopQueryRowQueryParams(row);
1512

1613
const url = new URL(window.location.href);
@@ -25,7 +22,6 @@ export function generateShareableUrl(row: KeyValueRow, tableSort?: SortOrder[]):
2522
intervalEnd: params.intervalEnd || undefined,
2623
endTime: params.endTime || undefined,
2724
queryHash: params.queryHash || undefined,
28-
tableSort: tableSort || undefined,
2925
}),
3026
),
3127
);

0 commit comments

Comments
 (0)