@@ -51,6 +51,22 @@ const healthStatusBadge = (status: string | undefined) => {
5151 return < Badge bg = "danger" > { status } </ Badge > ;
5252} ;
5353
54+ const insertedBadge = ( inserted : boolean | undefined ) => {
55+ return inserted ? (
56+ < Badge bg = "success" > Inserted</ Badge >
57+ ) : (
58+ < Badge bg = "secondary" > Not inserted</ Badge >
59+ ) ;
60+ } ;
61+
62+ const writeProtectedBadge = ( writeProtected : boolean | undefined ) => {
63+ return writeProtected ? (
64+ < Badge bg = "warning" > Write protected</ Badge >
65+ ) : (
66+ < Badge bg = "secondary" > Writable</ Badge >
67+ ) ;
68+ } ;
69+
5470const forceField : OSActionField [ ] = [
5571 { name : "force" , label : "Force" , type : "checkbox" } ,
5672] ;
@@ -61,6 +77,7 @@ const ServerBMC = () => {
6177 const queryClient = useQueryClient ( ) ;
6278 const [ logSource , setLogSource ] = useState ( "" ) ;
6379 const [ isDataVisible , setIsDataVisible ] = useState ( false ) ;
80+ const [ isBiosAttributesVisible , setIsBiosAttributesVisible ] = useState ( false ) ;
6481 const [ refreshing , setRefreshing ] = useState ( false ) ;
6582
6683 const {
@@ -238,6 +255,90 @@ const ServerBMC = () => {
238255 { bmcData ?. server_bios_version }
239256 </ div >
240257 </ div >
258+ < div className = "row" >
259+ < div className = "col-2 detail-table-header" >
260+ BIOS attributes{ " " }
261+ < span
262+ onClick = { ( ) => setIsBiosAttributesVisible ( ! isBiosAttributesVisible ) }
263+ className = "hide-field-switch"
264+ >
265+ { isBiosAttributesVisible ? (
266+ < >
267+ < IoChevronDownOutline /> Hide
268+ </ >
269+ ) : (
270+ < >
271+ < IoChevronUpOutline /> Show
272+ </ >
273+ ) }
274+ </ span >
275+ </ div >
276+ < div className = "col-10 detail-table-cell" >
277+ { isBiosAttributesVisible && (
278+ < pre >
279+ { JSON . stringify ( bmcData ?. server_bios_attributes , null , 2 ) }
280+ </ pre >
281+ ) }
282+ </ div >
283+ </ div >
284+ < div className = "row" >
285+ < div className = "col-2 detail-table-header" > Virtual media</ div >
286+ < div className = "col-10 detail-table-cell" >
287+ { insertedBadge ( bmcData ?. virtual_media_inserted ) }
288+ </ div >
289+ </ div >
290+ < div className = "row" >
291+ < div className = "col-2 detail-table-header" > Virtual media image</ div >
292+ < div className = "col-10 detail-table-cell" >
293+ { bmcData ?. virtual_media_image_name || bmcData ?. virtual_media_image }
294+ </ div >
295+ </ div >
296+ < div className = "row" >
297+ < div className = "col-2 detail-table-header" >
298+ Virtual media connected via
299+ </ div >
300+ < div className = "col-10 detail-table-cell" >
301+ { bmcData ?. virtual_media_connected_via }
302+ </ div >
303+ </ div >
304+ < div className = "row" >
305+ < div className = "col-2 detail-table-header" > Virtual media status</ div >
306+ < div className = "col-10 detail-table-cell" >
307+ { healthStatusBadge ( bmcData ?. virtual_media_status ) }
308+ </ div >
309+ </ div >
310+ < div className = "row" >
311+ < div className = "col-2 detail-table-header" >
312+ Virtual media media types
313+ </ div >
314+ < div className = "col-10 detail-table-cell" >
315+ { bmcData ?. virtual_media_media_types ?. join ( ", " ) }
316+ </ div >
317+ </ div >
318+ < div className = "row" >
319+ < div className = "col-2 detail-table-header" >
320+ Virtual media transfer method
321+ </ div >
322+ < div className = "col-10 detail-table-cell" >
323+ { bmcData ?. virtual_media_transfer_method }
324+ </ div >
325+ </ div >
326+ < div className = "row" >
327+ < div className = "col-2 detail-table-header" >
328+ Virtual media transfer protocol type
329+ </ div >
330+ < div className = "col-10 detail-table-cell" >
331+ { bmcData ?. virtual_media_transfer_protocol_type }
332+ </ div >
333+ </ div >
334+ < div className = "row" >
335+ < div className = "col-2 detail-table-header" >
336+ Virtual media write protected
337+ </ div >
338+ < div className = "col-10 detail-table-cell" >
339+ { writeProtectedBadge ( bmcData ?. virtual_media_write_protected ) }
340+ </ div >
341+ </ div >
241342 < div className = "row" >
242343 < div className = "col-2 detail-table-header" > Last updated</ div >
243344 < div className = "col-10 detail-table-cell" >
0 commit comments