Files
leonpan-assets/src/component/Common/Form/OutlineIconTextField.tsx

23 lines
654 B
TypeScript
Raw Normal View History

2025-10-19 13:31:11 +00:00
import { InputAdornment, TextField, TextFieldProps, useMediaQuery, useTheme } from "@mui/material";
export interface OutlineIconTextFieldProps extends TextFieldProps<"outlined"> {
icon: React.ReactNode;
}
export const OutlineIconTextField = ({ icon, ...rest }: OutlineIconTextFieldProps) => {
const theme = useTheme();
const isMobile = useMediaQuery(theme.breakpoints.down("sm"));
return (
<TextField
{...rest}
2025-10-20 20:30:35 +08:00
variant="standard"
2025-10-19 13:31:11 +00:00
slotProps={{
input: {
startAdornment: !isMobile && <InputAdornment position="start">{icon}</InputAdornment>,
...rest.InputProps,
},
}}
/>
);
};