import React from "react"; import { Flex, Box, Label, Input, Checkbox, IconButton, Select, } from "theme-ui"; import ExpandMoreIcon from "../../icons/ExpandMoreIcon"; import { isEmpty } from "../../helpers/shared"; import Divider from "../Divider"; const qualitySettings = [ { id: "low", name: "Low" }, { id: "medium", name: "Medium" }, { id: "high", name: "High" }, { id: "ultra", name: "Ultra High" }, { id: "original", name: "Original" }, ]; function MapSettings({ map, mapState, onSettingsChange, onStateSettingsChange, showMore, onShowMoreChange, }) { function handleFlagChange(event, flag) { if (event.target.checked) { onStateSettingsChange("editFlags", [...mapState.editFlags, flag]); } else { onStateSettingsChange( "editFlags", mapState.editFlags.filter((f) => f !== flag) ); } } const mapEmpty = !map || isEmpty(map); const mapStateEmpty = !mapState || isEmpty(mapState); return ( onSettingsChange("gridX", parseInt(e.target.value)) } disabled={mapEmpty || map.type === "default"} min={1} my={1} /> onSettingsChange("gridY", parseInt(e.target.value)) } disabled={mapEmpty || map.type === "default"} min={1} my={1} /> {showMore && ( <> onSettingsChange("name", e.target.value)} disabled={mapEmpty || map.type === "default"} my={1} /> {map.type !== "default" && ( )} )} { e.stopPropagation(); e.preventDefault(); onShowMoreChange(!showMore); }} sx={{ transform: `rotate(${showMore ? "180deg" : "0"})`, alignSelf: "center", }} aria-label={showMore ? "Show Less" : "Show More"} title={showMore ? "Show Less" : "Show More"} > ); } export default MapSettings;