1
1
import DataTable from '@gravity-ui/react-data-table' ;
2
2
import type { Column as DataTableColumn } from '@gravity-ui/react-data-table' ;
3
3
4
- import { CellWithPopover } from '../../components/CellWithPopover/CellWithPopover' ;
5
- import { NodeHostWrapper } from '../../components/NodeHostWrapper/NodeHostWrapper' ;
6
- import type { Column as PaginatedTableColumn } from '../../components/PaginatedTable' ;
7
- import { PoolsGraph } from '../../components/PoolsGraph/PoolsGraph' ;
8
- import { ProgressViewer } from '../../components/ProgressViewer/ProgressViewer' ;
9
- import { TabletsStatistic } from '../../components/TabletsStatistic' ;
10
- import { UsageLabel } from '../../components/UsageLabel/UsageLabel' ;
11
- import type { NodesPreparedEntity } from '../../store/reducers/nodes/types' ;
12
- import { getLoadSeverityForNode } from '../../store/reducers/nodes/utils' ;
13
- import type { GetNodeRefFunc } from '../../types/additionalProps' ;
14
- import { EMPTY_DATA_PLACEHOLDER } from '../../utils/constants' ;
15
- import { formatStorageValuesToGb } from '../../utils/dataFormatters/dataFormatters' ;
4
+ import { CellWithPopover } from '../../../components/CellWithPopover/CellWithPopover' ;
5
+ import { NodeHostWrapper } from '../../../components/NodeHostWrapper/NodeHostWrapper' ;
6
+ import { PoolsGraph } from '../../../components/PoolsGraph/PoolsGraph' ;
7
+ import { ProgressViewer } from '../../../components/ProgressViewer/ProgressViewer' ;
8
+ import { TabletsStatistic } from '../../../components/TabletsStatistic' ;
9
+ import { UsageLabel } from '../../../components/UsageLabel/UsageLabel' ;
10
+ import type { NodesPreparedEntity } from '../../../store/reducers/nodes/types' ;
11
+ import { getLoadSeverityForNode } from '../../../store/reducers/nodes/utils' ;
12
+ import type { GetNodeRefFunc } from '../../../types/additionalProps' ;
13
+ import { EMPTY_DATA_PLACEHOLDER } from '../../../utils/constants' ;
14
+ import { formatStorageValuesToGb } from '../../../utils/dataFormatters/dataFormatters' ;
16
15
17
- export const NODES_COLUMNS_WIDTH_LS_KEY = 'nodesTableColumnsWidth' ;
18
-
19
- const NODES_COLUMNS_IDS = {
20
- NodeId : 'NodeId' ,
21
- Host : 'Host' ,
22
- DC : 'DC' ,
23
- Rack : 'Rack' ,
24
- Version : 'Version' ,
25
- Uptime : 'Uptime' ,
26
- Memory : 'Memory' ,
27
- CPU : 'CPU' ,
28
- LoadAverage : 'LoadAverage' ,
29
- Tablets : 'Tablets' ,
30
- TopNodesLoadAverage : 'TopNodesLoadAverage' ,
31
- TopNodesMemory : 'TopNodesMemory' ,
32
- SharedCacheUsage : 'SharedCacheUsage' ,
33
- MemoryUsedInAlloc : 'MemoryUsedInAlloc' ,
34
- TotalSessions : 'TotalSessions' ,
35
- } ;
36
-
37
- interface GetNodesColumnsProps {
38
- database ?: string ;
39
- getNodeRef ?: GetNodeRefFunc ;
40
- }
41
-
42
- type NodesColumn = PaginatedTableColumn < NodesPreparedEntity > & DataTableColumn < NodesPreparedEntity > ;
16
+ import { NODES_COLUMNS_IDS , NODES_COLUMNS_TITLES } from './constants' ;
17
+ import type { GetNodesColumnsProps , NodesColumn } from './types' ;
43
18
44
19
const nodeIdColumn : NodesColumn = {
45
20
name : NODES_COLUMNS_IDS . NodeId ,
@@ -52,6 +27,7 @@ const nodeIdColumn: NodesColumn = {
52
27
53
28
const getHostColumn = ( getNodeRef ?: GetNodeRefFunc , database ?: string ) : NodesColumn => ( {
54
29
name : NODES_COLUMNS_IDS . Host ,
30
+ header : NODES_COLUMNS_TITLES . Host ,
55
31
render : ( { row} ) => {
56
32
return < NodeHostWrapper node = { row } getNodeRef = { getNodeRef } database = { database } /> ;
57
33
} ,
@@ -68,22 +44,23 @@ const getHostColumnWithUndefinedWidth = (
68
44
69
45
const dataCenterColumn : NodesColumn = {
70
46
name : NODES_COLUMNS_IDS . DC ,
71
- header : 'DC' ,
47
+ header : NODES_COLUMNS_TITLES . DC ,
72
48
align : DataTable . LEFT ,
73
49
render : ( { row} ) => row . DC || EMPTY_DATA_PLACEHOLDER ,
74
50
width : 60 ,
75
51
} ;
76
52
77
53
const rackColumn : NodesColumn = {
78
54
name : NODES_COLUMNS_IDS . Rack ,
79
- header : ' Rack' ,
55
+ header : NODES_COLUMNS_TITLES . Rack ,
80
56
align : DataTable . LEFT ,
81
57
render : ( { row} ) => ( row . Rack ? row . Rack : '—' ) ,
82
58
width : 80 ,
83
59
} ;
84
60
85
61
const versionColumn : NodesColumn = {
86
62
name : NODES_COLUMNS_IDS . Version ,
63
+ header : NODES_COLUMNS_TITLES . Version ,
87
64
width : 200 ,
88
65
align : DataTable . LEFT ,
89
66
render : ( { row} ) => {
@@ -94,7 +71,7 @@ const versionColumn: NodesColumn = {
94
71
95
72
const uptimeColumn : NodesColumn = {
96
73
name : NODES_COLUMNS_IDS . Uptime ,
97
- header : ' Uptime' ,
74
+ header : NODES_COLUMNS_TITLES . Uptime ,
98
75
sortAccessor : ( { StartTime} ) => StartTime && - StartTime ,
99
76
render : ( { row} ) => row . Uptime ,
100
77
align : DataTable . RIGHT ,
@@ -104,7 +81,7 @@ const uptimeColumn: NodesColumn = {
104
81
105
82
const memoryColumn : NodesColumn = {
106
83
name : NODES_COLUMNS_IDS . Memory ,
107
- header : ' Memory' ,
84
+ header : NODES_COLUMNS_TITLES . Memory ,
108
85
sortAccessor : ( { MemoryUsed = 0 } ) => Number ( MemoryUsed ) ,
109
86
defaultOrder : DataTable . DESCENDING ,
110
87
render : ( { row} ) => (
@@ -121,7 +98,7 @@ const memoryColumn: NodesColumn = {
121
98
122
99
const cpuColumn : NodesColumn = {
123
100
name : NODES_COLUMNS_IDS . CPU ,
124
- header : ' CPU' ,
101
+ header : NODES_COLUMNS_TITLES . CPU ,
125
102
sortAccessor : ( { PoolStats = [ ] } ) => Math . max ( ...PoolStats . map ( ( { Usage} ) => Number ( Usage ) ) ) ,
126
103
defaultOrder : DataTable . DESCENDING ,
127
104
render : ( { row} ) => ( row . PoolStats ? < PoolsGraph pools = { row . PoolStats } /> : '—' ) ,
@@ -133,7 +110,7 @@ const cpuColumn: NodesColumn = {
133
110
134
111
const loadAverageColumn : NodesColumn = {
135
112
name : NODES_COLUMNS_IDS . LoadAverage ,
136
- header : 'Load average' ,
113
+ header : NODES_COLUMNS_TITLES . LoadAverage ,
137
114
sortAccessor : ( { LoadAveragePercents = [ ] } ) => LoadAveragePercents [ 0 ] ,
138
115
defaultOrder : DataTable . DESCENDING ,
139
116
render : ( { row} ) => (
@@ -156,6 +133,7 @@ const loadAverageColumn: NodesColumn = {
156
133
157
134
const getTabletsColumn = ( tabletsPath ?: string ) : NodesColumn => ( {
158
135
name : NODES_COLUMNS_IDS . Tablets ,
136
+ header : NODES_COLUMNS_TITLES . Tablets ,
159
137
width : 500 ,
160
138
resizeMinWidth : 500 ,
161
139
render : ( { row} ) => {
@@ -175,7 +153,7 @@ const getTabletsColumn = (tabletsPath?: string): NodesColumn => ({
175
153
176
154
const topNodesLoadAverageColumn : NodesColumn = {
177
155
name : NODES_COLUMNS_IDS . TopNodesLoadAverage ,
178
- header : 'Load' ,
156
+ header : NODES_COLUMNS_TITLES . TopNodesLoadAverage ,
179
157
render : ( { row} ) =>
180
158
row . LoadAveragePercents && row . LoadAveragePercents . length > 0 ? (
181
159
< UsageLabel
@@ -193,7 +171,7 @@ const topNodesLoadAverageColumn: NodesColumn = {
193
171
194
172
const topNodesMemoryColumn : NodesColumn = {
195
173
name : NODES_COLUMNS_IDS . TopNodesMemory ,
196
- header : 'Process' ,
174
+ header : NODES_COLUMNS_TITLES . TopNodesMemory ,
197
175
render : ( { row} ) => (
198
176
< ProgressViewer
199
177
value = { row . MemoryUsed }
@@ -210,7 +188,7 @@ const topNodesMemoryColumn: NodesColumn = {
210
188
211
189
const sharedCacheUsageColumn : NodesColumn = {
212
190
name : NODES_COLUMNS_IDS . SharedCacheUsage ,
213
- header : 'Caches' ,
191
+ header : NODES_COLUMNS_TITLES . SharedCacheUsage ,
214
192
render : ( { row} ) => (
215
193
< ProgressViewer
216
194
value = { row . SharedCacheUsed }
@@ -227,7 +205,7 @@ const sharedCacheUsageColumn: NodesColumn = {
227
205
228
206
const sessionsColumn : NodesColumn = {
229
207
name : NODES_COLUMNS_IDS . TotalSessions ,
230
- header : 'Sessions' ,
208
+ header : NODES_COLUMNS_TITLES . TotalSessions ,
231
209
render : ( { row} ) => row . TotalSessions ?? '—' ,
232
210
align : DataTable . RIGHT ,
233
211
width : 100 ,
0 commit comments