import { AppBar, CircularProgress, Dialog, IconButton, Toolbar } from '@mui/material' import { Fragment, useState } from 'react' import { IRegion } from '../interfaces/fuel' import { useHardwares, useServers } from '../hooks/swrHooks' import ServerService from '../services/ServersService' import { GridColDef } from '@mui/x-data-grid' import { Close } from '@mui/icons-material' import ServerData from './ServerData' import { Autocomplete, CloseButton, Table } from '@mantine/core' import { IServer } from '../interfaces/servers' export default function ServerHardware() { const [open, setOpen] = useState(false) const [selectedOption, setSelectedOption] = useState(null) const { servers, isLoading } = useServers() const [serverDataOpen, setServerDataOpen] = useState(false) const [currentServerData, setCurrentServerData] = useState(null) const handleInputChange = (value: string) => { return value } const handleOptionChange = (value: IRegion | null) => { setSelectedOption(value) } const { hardwares, isLoading: serversLoading } = useHardwares(selectedOption?.id, 0, 10) const hardwareColumns: GridColDef[] = [ { field: 'id', headerName: 'ID', type: 'number' }, { field: 'name', headerName: 'Название', type: 'string' }, { field: 'server_id', headerName: 'Server ID', type: 'number' }, { field: 'servername', headerName: 'Название сервера', type: 'string' }, { field: 'os_info', headerName: 'ОС', type: 'string' }, { field: 'ram', headerName: 'ОЗУ', type: 'string' }, { field: 'processor', headerName: 'Проц.', type: 'string' }, { field: 'storages_count', headerName: 'Кол-во хранилищ', type: 'number' }, ] return ( <> { setServerDataOpen(false) }} aria-labelledby="modal-modal-title" aria-describedby="modal-modal-description"> { setServerDataOpen(false) }} aria-label="close" > {currentServerData && }
({ label: item.name, value: item.id.toString() })) : []} onSelect={(e) => console.log(e.currentTarget.value)} //onChange={(value) => setSearch(value)} onOptionSubmit={(value) => setSelectedOption(Number(value))} rightSection={ //search !== '' && ( event.preventDefault()} onClick={() => { //setSearch('') setSelectedOption(null) }} aria-label="Clear value" /> ) } //value={search} /> {serversLoading ? : // { // setOpen(true) // }} // onClose={() => { // setOpen(false) // }} // onInputChange={(_, value) => handleInputChange(value)} // onChange={(_, value) => handleOptionChange(value)} // filterOptions={(x) => x} // isOptionEqualToValue={(option: IRegion, value: IRegion) => option.name === value.name} // getOptionLabel={(option: IRegion) => option.name ? option.name : ""} // options={servers || []} // loading={isLoading} // value={selectedOption} // renderInput={(params) => ( // // {isLoading ? : null} // {params.InputProps.endAdornment} // // ) // }} /> // )} />} // onSave={() => { // }} // onDelete={ServerService.removeServer} // initialRows={hardwares || []} // columns={hardwareColumns} // actions // onRowClick={(params) => { // setCurrentServerData(params.row) // setServerDataOpen(true) // }} // loading={false} // /> {hardwareColumns.map(column => ( {column.headerName} ))} {hardwareColumns.map(column => ( {hardwares ? hardwares[column.field] : ''} ))}
} ) }