@@ -8,7 +8,7 @@ import {cn} from '../../../utils/cn';
88import type { PreparedVDisk } from '../../../utils/disks/types' ;
99import { PDisk } from '../PDisk' ;
1010import type { StorageViewContext } from '../types' ;
11- import { isVdiskActive } from '../utils' ;
11+ import { isVdiskActive , useVDisksWithDCMargins } from '../utils' ;
1212
1313import './Disks.scss' ;
1414
@@ -24,6 +24,8 @@ interface DisksProps {
2424export function Disks ( { vDisks = [ ] , viewContext} : DisksProps ) {
2525 const [ highlightedVDisk , setHighlightedVDisk ] = React . useState < string | undefined > ( ) ;
2626
27+ const vDisksWithDCMargins = useVDisksWithDCMargins ( vDisks ) ;
28+
2729 const {
2830 theme : { spaceBaseSize} ,
2931 } = useLayoutContext ( ) ;
@@ -51,12 +53,13 @@ export function Disks({vDisks = [], viewContext}: DisksProps) {
5153 </ Flex >
5254
5355 < div className = { b ( 'pdisks-wrapper' ) } >
54- { vDisks ?. map ( ( vDisk ) => (
56+ { vDisks ?. map ( ( vDisk , index ) => (
5557 < PDiskItem
5658 key = { vDisk ?. PDisk ?. StringifiedId }
5759 vDisk = { vDisk }
5860 highlightedVDisk = { highlightedVDisk }
5961 setHighlightedVDisk = { setHighlightedVDisk }
62+ withDCMargin = { vDisksWithDCMargins . includes ( index ) }
6063 />
6164 ) ) }
6265 </ div >
@@ -70,6 +73,7 @@ interface DisksItemProps {
7073 highlightedVDisk : string | undefined ;
7174 setHighlightedVDisk : ( id : string | undefined ) => void ;
7275 unavailableVDiskWidth ?: number ;
76+ withDCMargin ?: boolean ;
7377}
7478
7579function VDiskItem ( {
@@ -103,7 +107,7 @@ function VDiskItem({
103107 ) ;
104108}
105109
106- function PDiskItem ( { vDisk, highlightedVDisk, setHighlightedVDisk} : DisksItemProps ) {
110+ function PDiskItem ( { vDisk, highlightedVDisk, setHighlightedVDisk, withDCMargin } : DisksItemProps ) {
107111 const vDiskId = vDisk . StringifiedId ;
108112
109113 if ( ! vDisk . PDisk ) {
@@ -112,7 +116,7 @@ function PDiskItem({vDisk, highlightedVDisk, setHighlightedVDisk}: DisksItemProp
112116
113117 return (
114118 < PDisk
115- className = { b ( 'pdisk-item' ) }
119+ className = { b ( 'pdisk-item' , { [ 'with-dc-margin' ] : withDCMargin } ) }
116120 progressBarClassName = { b ( 'pdisk-progress-bar' ) }
117121 data = { vDisk . PDisk }
118122 showPopup = { highlightedVDisk === vDiskId }
0 commit comments