-
-
Notifications
You must be signed in to change notification settings - Fork 61
Expand file tree
/
Copy pathLanguageSelect.js
More file actions
46 lines (44 loc) · 1.57 KB
/
LanguageSelect.js
File metadata and controls
46 lines (44 loc) · 1.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import React from "react";
import Autocomplete from "@mui/material/Autocomplete";
import TextField from "@mui/material/TextField";
import { LANGUAGES } from "../../constants/constants";
function LanguageSelect({ handleLanguageChange, defaultLanguage, darkMode }) {
return (
<Autocomplete
size="small"
disableClearable
isOptionEqualToValue={(option, value) => option.DEFAULT_LANGUAGE === value.DEFAULT_LANGUAGE}
options={LANGUAGES}
getOptionLabel={(option) => option.NAME}
value={defaultLanguage}
onChange={(event, value) => handleLanguageChange(event, value)}
renderInput={(params) => (
<TextField
{...params}
label="Select Language"
variant="outlined"
sx={{
width: 150,
backgroundColor: darkMode ? "#333" : "#fff", // Background changes with dark mode
color: darkMode ? "#fff" : "#000", // Text color changes
"& .MuiOutlinedInput-root": {
"& fieldset": {
borderColor: darkMode ? "#555" : "#ccc", // Border color for dark mode
},
"&:hover fieldset": {
borderColor: darkMode ? "#aaa" : "#1976d2", // Hover state
},
"&.Mui-focused fieldset": {
borderColor: darkMode ? "#bbb" : "#1976d2", // Focus state
},
},
"& .MuiInputLabel-root": {
color: darkMode ? "#bbb" : "#000", // Label color in dark mode
},
}}
/>
)}
/>
);
}
export default LanguageSelect;