diff --git a/webui/src/states/Root/pages/Overview/components/Server/components/ServerMenu/dialogs/ChangeRAMDialog.jsx b/webui/src/states/Root/pages/Overview/components/Server/components/ServerMenu/dialogs/ChangeRAMDialog.jsx new file mode 100644 index 0000000..93cea7b --- /dev/null +++ b/webui/src/states/Root/pages/Overview/components/Server/components/ServerMenu/dialogs/ChangeRAMDialog.jsx @@ -0,0 +1,45 @@ +import { + Button, + Dialog, + DialogActions, + DialogContent, + DialogTitle, + InputAdornment, + Stack, + TextField +} from "@mui/material"; +import {t} from "i18next"; +import {patchRequest} from "@/common/utils/RequestUtil.js"; +import {useContext, useState} from "react"; +import {ServerContext} from "@/common/contexts/Server"; + +export default ({open, setOpen, uuid, setAlert, current}) => { + + const {updateServer} = useContext(ServerContext); + const [memory, setMemory] = useState(current || 4096); + + const updateMemory = async () => { + setOpen(false); + await patchRequest("server/", {uuid, memory}); + updateServer(); + setAlert({severity: "success", message: t("server.dialog.memory.success")}); + } + + return ( + setOpen(false)}> + {t("server.dialog.memory.title")} + + + setMemory(e.target.value)} + inputProps={{min: 512, step: 512}} + InputProps={{endAdornment: {t("server.dialog.memory.unit")}}}/> + + + + + + + + ); +} \ No newline at end of file