import * as React from 'react' import { Input, MenuItem, Select, SelectChangeEvent, Typography } from '@mui/material' import Markdown from '../markdown' import { Switch, Button, ButtonGroup } from '@mui/material'; import Box from '@mui/material/Box'; import Slider from '@mui/material/Slider'; import supportedLanguages from './language_config.json' import FormControlLabel from '@mui/material/FormControlLabel'; import { IPreferencesContext } from "../infoview/context" import ReactCountryFlag from 'react-country-flag'; interface PreferencesPopupProps extends Omit { handleClose: () => void } export function PreferencesPopup({ layout, setLayout, isSavePreferences, language, setIsSavePreferences, handleClose, setLanguage }: PreferencesPopupProps) { const marks = [ { value: 0, label: 'Mobile', key: "mobile" }, { value: 1, label: 'Auto', key: "auto" }, { value: 2, label: 'Desktop', key: "desktop" }, ]; const handlerChangeLayout = (_: Event, value: number) => { setLayout(marks[value].key as IPreferencesContext["layout"]) } const handlerChangeLanguage = (ev: SelectChangeEvent) => { setLanguage(ev.target.value as IPreferencesContext["language"]) } return

Language

} label="" />

Layout

item.key === layout).value} step={1} marks={marks} max={2} sx={{ '& .MuiSlider-track': { display: 'none', }, }} onChange={handlerChangeLayout} /> } label="" />
setIsSavePreferences(!isSavePreferences)} name="checked" color="primary" /> } label="Save my settings (in the browser store)" labelPlacement="end" />
}