import { ColorContext, ColorSelectionType, SessionContext, } from "@/app/context/Context"; import { Button, Dialog, DialogActions, DialogContent, DialogTitle, Tooltip, Typography, TextField, Box, FormControlLabel, Checkbox, } from "@mui/material"; import { ColorChangeHandler, ColorResult, CompactPicker } from "react-color"; import React, { useState, useContext } from "react"; export const SettingsButton = () => { const { colors, setColors } = useContext(ColorContext); const { balanceThreshold, setBalanceThreshold, minExtractionRate, setMinExtractionRate, showProductIcons, setShowProductIcons } = useContext(SessionContext); const [open, setOpen] = useState(false); const handleClickOpen = () => { setOpen(true); }; const handleClose = () => { setOpen(false); }; const handleColorSelection = (key: string, currentColors: ColorSelectionType) => (selection: ColorResult) => { console.log(key, selection.hex) setColors({ ...currentColors, [key]: selection.hex }) }; const handleBalanceThresholdChange = (event: React.ChangeEvent) => { const value = parseInt(event.target.value); if (!isNaN(value) && value >= 0 && value <= 100000) { setBalanceThreshold(value); } }; const handleShowProductIconsChange = (event: React.ChangeEvent) => { setShowProductIcons(event.target.checked); }; const handleMinExtractionRateChange = (event: React.ChangeEvent) => { const value = parseInt(event.target.value); if (!isNaN(value) && value >= 0 && value <= 100000) { setMinExtractionRate(value); } }; return ( <> {"Settings"} Display Settings } label="Show product icons instead of names" /> Balance Threshold 100000} /> Minimum Extraction Rate 100000} /> {Object.keys(colors).map((key) => { return (
{key}
); })}
); };