@@ -26,23 +26,27 @@ import {preparePDiskData} from '../PDiskPopup/PDiskPopup';
2626import { getVDiskLink } from '../VDisk/utils' ;
2727import { vDiskInfoKeyset } from '../VDiskInfo/i18n' ;
2828
29+ import { vDiskPopupKeyset } from './i18n' ;
30+
2931import './VDiskPopup.scss' ;
3032
3133const b = cn ( 'vdisk-storage-popup' ) ;
3234
3335const prepareUnavailableVDiskData = ( data : UnavailableDonor , withDeveloperUILink ?: boolean ) => {
3436 const { NodeId, PDiskId, VSlotId, StoragePoolName} = data ;
3537
36- const vdiskData : InfoViewerItem [ ] = [ { label : 'State' , value : 'not available' } ] ;
38+ const vdiskData : InfoViewerItem [ ] = [
39+ { label : vDiskPopupKeyset ( 'label_state' ) , value : vDiskPopupKeyset ( 'context_not-available' ) } ,
40+ ] ;
3741
3842 if ( StoragePoolName ) {
39- vdiskData . push ( { label : 'StoragePool' , value : StoragePoolName } ) ;
43+ vdiskData . push ( { label : vDiskPopupKeyset ( 'label_storage-pool' ) , value : StoragePoolName } ) ;
4044 }
4145
4246 vdiskData . push (
43- { label : 'NodeId' , value : NodeId ?? EMPTY_DATA_PLACEHOLDER } ,
44- { label : 'PDiskId' , value : PDiskId ?? EMPTY_DATA_PLACEHOLDER } ,
45- { label : 'VSlotId' , value : VSlotId ?? EMPTY_DATA_PLACEHOLDER } ,
47+ { label : vDiskPopupKeyset ( 'label_node-id' ) , value : NodeId ?? EMPTY_DATA_PLACEHOLDER } ,
48+ { label : vDiskPopupKeyset ( 'label_pdisk-id' ) , value : PDiskId ?? EMPTY_DATA_PLACEHOLDER } ,
49+ { label : vDiskPopupKeyset ( 'label_vslot-id' ) , value : VSlotId ?? EMPTY_DATA_PLACEHOLDER } ,
4650 ) ;
4751
4852 if (
@@ -58,7 +62,7 @@ const prepareUnavailableVDiskData = (data: UnavailableDonor, withDeveloperUILink
5862 } ) ;
5963
6064 vdiskData . push ( {
61- label : 'Links' ,
65+ label : vDiskPopupKeyset ( 'label_links' ) ,
6266 value : < LinkWithIcon title = { 'Developer UI' } url = { vDiskInternalViewerPath } /> ,
6367 } ) ;
6468 }
@@ -88,58 +92,61 @@ const prepareVDiskData = (data: PreparedVDisk, withDeveloperUILink?: boolean) =>
8892 } = data ;
8993
9094 const vdiskData : InfoViewerItem [ ] = [
91- { label : 'VDisk' , value : StringifiedId } ,
92- { label : 'State' , value : VDiskState ?? 'not available' } ,
95+ { label : vDiskPopupKeyset ( 'label_vdisk' ) , value : StringifiedId } ,
96+ {
97+ label : vDiskPopupKeyset ( 'label_state' ) ,
98+ value : VDiskState ?? vDiskPopupKeyset ( 'context_not-available' ) ,
99+ } ,
93100 ] ;
94101
95102 if ( StoragePoolName ) {
96- vdiskData . push ( { label : 'StoragePool' , value : StoragePoolName } ) ;
103+ vdiskData . push ( { label : vDiskPopupKeyset ( 'label_storage-pool' ) , value : StoragePoolName } ) ;
97104 }
98105
99106 if ( SatisfactionRank && SatisfactionRank . FreshRank ?. Flag !== EFlag . Green ) {
100107 vdiskData . push ( {
101- label : 'Fresh' ,
108+ label : vDiskPopupKeyset ( 'label_fresh' ) ,
102109 value : SatisfactionRank . FreshRank ?. Flag ,
103110 } ) ;
104111 }
105112
106113 if ( SatisfactionRank && SatisfactionRank . LevelRank ?. Flag !== EFlag . Green ) {
107114 vdiskData . push ( {
108- label : 'Level' ,
115+ label : vDiskPopupKeyset ( 'label_level' ) ,
109116 value : SatisfactionRank . LevelRank ?. Flag ,
110117 } ) ;
111118 }
112119
113120 if ( SatisfactionRank && SatisfactionRank . FreshRank ?. RankPercent ) {
114121 vdiskData . push ( {
115- label : 'Fresh' ,
122+ label : vDiskPopupKeyset ( 'label_fresh' ) ,
116123 value : SatisfactionRank . FreshRank . RankPercent ,
117124 } ) ;
118125 }
119126
120127 if ( SatisfactionRank && SatisfactionRank . LevelRank ?. RankPercent ) {
121128 vdiskData . push ( {
122- label : 'Level' ,
129+ label : vDiskPopupKeyset ( 'label_level' ) ,
123130 value : SatisfactionRank . LevelRank . RankPercent ,
124131 } ) ;
125132 }
126133
127134 if ( DiskSpace && DiskSpace !== EFlag . Green ) {
128- vdiskData . push ( { label : 'Space' , value : DiskSpace } ) ;
135+ vdiskData . push ( { label : vDiskPopupKeyset ( 'label_space' ) , value : DiskSpace } ) ;
129136 }
130137
131138 if ( FrontQueues && FrontQueues !== EFlag . Green ) {
132- vdiskData . push ( { label : 'FrontQueues' , value : FrontQueues } ) ;
139+ vdiskData . push ( { label : vDiskPopupKeyset ( 'label_front-queues' ) , value : FrontQueues } ) ;
133140 }
134141
135142 if ( Replicated === false && VDiskState === EVDiskState . OK ) {
136- vdiskData . push ( { label : 'Replicated' , value : 'NO' } ) ;
143+ vdiskData . push ( { label : vDiskPopupKeyset ( 'label_replicated' ) , value : 'NO' } ) ;
137144
138145 // Only show replication progress and time remaining when disk is not replicated and state is OK
139146 if ( valueIsDefined ( ReplicationProgress ) ) {
140147 const progressPercent = Math . round ( ReplicationProgress * 100 ) ;
141148 vdiskData . push ( {
142- label : 'Progress' ,
149+ label : vDiskPopupKeyset ( 'label_progress' ) ,
143150 value : `${ progressPercent } %` ,
144151 } ) ;
145152 }
@@ -148,31 +155,34 @@ const prepareVDiskData = (data: PreparedVDisk, withDeveloperUILink?: boolean) =>
148155 const timeRemaining = formatUptimeInSeconds ( ReplicationSecondsRemaining ) ;
149156 if ( timeRemaining ) {
150157 vdiskData . push ( {
151- label : 'Remaining' ,
158+ label : vDiskPopupKeyset ( 'label_remaining' ) ,
152159 value : timeRemaining ,
153160 } ) ;
154161 }
155162 }
156163 }
157164
158165 if ( UnsyncedVDisks ) {
159- vdiskData . push ( { label : 'UnsyncVDisks' , value : UnsyncedVDisks } ) ;
166+ vdiskData . push ( { label : vDiskPopupKeyset ( 'label_unsync-vdisks' ) , value : UnsyncedVDisks } ) ;
160167 }
161168
162169 if ( Number ( AllocatedSize ) ) {
163170 vdiskData . push ( {
164- label : 'Allocated' ,
171+ label : vDiskPopupKeyset ( 'label_allocated' ) ,
165172 value : bytesToGB ( AllocatedSize ) ,
166173 } ) ;
167174 }
168175
169176 if ( Number ( ReadThroughput ) ) {
170- vdiskData . push ( { label : 'Read' , value : bytesToSpeed ( ReadThroughput ) } ) ;
177+ vdiskData . push ( {
178+ label : vDiskPopupKeyset ( 'label_read' ) ,
179+ value : bytesToSpeed ( ReadThroughput ) ,
180+ } ) ;
171181 }
172182
173183 if ( Number ( WriteThroughput ) ) {
174184 vdiskData . push ( {
175- label : 'Write' ,
185+ label : vDiskPopupKeyset ( 'label_write' ) ,
176186 value : bytesToSpeed ( WriteThroughput ) ,
177187 } ) ;
178188 }
@@ -194,7 +204,7 @@ const prepareVDiskData = (data: PreparedVDisk, withDeveloperUILink?: boolean) =>
194204 const vDiskPagePath = getVDiskLink ( { VDiskSlotId, PDiskId, NodeId, StringifiedId} ) ;
195205 if ( vDiskPagePath ) {
196206 vdiskData . push ( {
197- label : 'Links' ,
207+ label : vDiskPopupKeyset ( 'label_links' ) ,
198208 value : (
199209 < Flex wrap = "wrap" gap = { 2 } >
200210 < LinkWithIcon
@@ -251,7 +261,7 @@ export const VDiskPopup = ({data}: VDiskPopupProps) => {
251261 const donors = data . Donors ;
252262 for ( const donor of donors ) {
253263 donorsInfo . push ( {
254- label : 'VDisk' ,
264+ label : vDiskPopupKeyset ( 'label_vdisk' ) ,
255265 value : < InternalLink to = { getVDiskLink ( donor ) } > { donor . StringifiedId } </ InternalLink > ,
256266 } ) ;
257267 }
0 commit comments