// DashboardTemperaturePanel.js
import React, { useContext, useEffect, useState } from "react";
import {
Layout,
Progress,
Typography,
Spin,
Flex,
Space,
Collapse,
InputNumber,
Button,
} from "antd";
import { LoadingOutlined } from "@ant-design/icons";
import { SocketContext } from "../context/SocketContext";
import styled from "styled-components";
const { Text, Link } = Typography;
const { Panel } = Collapse;
const { Header } = Layout;
const CustomCollapse = styled(Collapse)`
.ant-collapse-header {
padding: 0 !important;
}
.ant-collapse-content-box {
padding-left: 0 !important;
padding-right: 0 !important;
padding-bottom: 0 !important;
}
`;
const DashboardTemperaturePanel = ({
remoteAddress,
showControls = true,
showMoreInfo = true,
}) => {
const [loading, setLoading] = React.useState(false);
const [hotEndTemperature, setHotEndTemperature] = useState(0);
const [heatedBedTemperature, setHeatedBedTemperature] = useState(0);
const [temperatureData, setTemperatureData] = useState(null);
const { socket } = useContext(SocketContext);
useEffect(() => {
if (socket) {
socket.on("temperature", (data) => {
setTemperatureData(data.temperatures);
});
return () => {
socket.off("temperature");
};
}
}, [socket]);
const sendCommand = (type, data) => {
const commandData = {
remoteAddress,
type,
data,
};
console.log(commandData);
socket.emit("command", commandData);
};
const handleSetTemperatureClick = (target, value) => {
sendCommand("setTemperature", { target, value });
};
const moreInfoItems = [
{
key: "1",
label: "More Temperature Data",
children: