Skip to content
Snippets Groups Projects
Unverified Commit bd576ca8 authored by GyDi's avatar GyDi
Browse files

fix: adjust web ui item style

parent 2f8146b1
No related branches found
No related tags found
No related merge requests found
import { useState } from "react";
import { IconButton, Stack, TextField, Typography } from "@mui/material";
import {
Divider,
IconButton,
Stack,
TextField,
Typography,
} from "@mui/material";
import {
CheckRounded,
CloseRounded,
......@@ -32,83 +38,94 @@ const WebUIItem = (props: Props) => {
if (editing || onlyEdit) {
return (
<Stack spacing={1} direction="row" mt={1} mb={2} alignItems="center">
<TextField
fullWidth
size="small"
value={editValue}
onChange={(e) => setEditValue(e.target.value)}
placeholder={`Support %host %port %secret`}
autoComplete="off"
<>
<Stack spacing={0.75} direction="row" mt={1} mb={1} alignItems="center">
<TextField
fullWidth
size="small"
value={editValue}
onChange={(e) => setEditValue(e.target.value)}
placeholder={`Support %host %port %secret`}
autoComplete="off"
/>
<IconButton
size="small"
title="Save"
color="inherit"
onClick={() => {
onChange(editValue);
setEditing(false);
}}
>
<CheckRounded fontSize="inherit" />
</IconButton>
<IconButton
size="small"
title="Cancel"
color="inherit"
onClick={() => {
onCancel?.();
setEditing(false);
}}
>
<CloseRounded fontSize="inherit" />
</IconButton>
</Stack>
<Divider />
</>
);
}
const html = value
?.replace("%host", "<span>%host</span>")
.replace("%port", "<span>%port</span>")
.replace("%secret", "<span>%secret</span>");
return (
<>
<Stack spacing={0.75} direction="row" alignItems="center" mt={1} mb={1}>
<Typography
component="div"
width="100%"
title={value}
color={value ? "text.primary" : "text.secondary"}
sx={({ palette }) => ({
"> span": {
color: palette.primary.main,
},
})}
dangerouslySetInnerHTML={{ __html: html || "NULL" }}
/>
<IconButton
size="small"
title="Save"
title="Open URL"
color="inherit"
onClick={() => {
onChange(editValue);
setEditing(false);
}}
onClick={() => onOpenUrl?.(value)}
>
<CheckRounded fontSize="inherit" />
<OpenInNewRounded fontSize="inherit" />
</IconButton>
<IconButton
size="small"
title="Cancel"
title="Edit"
color="inherit"
onClick={() => {
onCancel?.();
setEditing(false);
setEditing(true);
setEditValue(value);
}}
>
<CloseRounded fontSize="inherit" />
<EditRounded fontSize="inherit" />
</IconButton>
<IconButton
size="small"
title="Delete"
color="inherit"
onClick={onDelete}
>
<DeleteRounded fontSize="inherit" />
</IconButton>
</Stack>
);
}
return (
<Stack spacing={1} direction="row" alignItems="center" mt={1} mb={2}>
<Typography
component="div"
width="100%"
title={value}
sx={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{value || "NULL"}
</Typography>
<IconButton
size="small"
title="Open URL"
color="inherit"
onClick={() => onOpenUrl?.(value)}
>
<OpenInNewRounded fontSize="inherit" />
</IconButton>
<IconButton
size="small"
title="Edit"
color="inherit"
onClick={() => {
setEditing(true);
setEditValue(value);
}}
>
<EditRounded fontSize="inherit" />
</IconButton>
<IconButton
size="small"
title="Delete"
color="inherit"
onClick={onDelete}
>
<DeleteRounded fontSize="inherit" />
</IconButton>
</Stack>
<Divider />
</>
);
};
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment