From 4b3ecfb12218c336a528d701bcb35150dd640b10 Mon Sep 17 00:00:00 2001 From: JK-le-dev Date: Sun, 19 Oct 2025 11:31:58 -0500 Subject: [PATCH] bu --- .../src/components/layouts/chat-layout.jsx | 56 +++++-------------- .../components/ui/button/backend-toggle.jsx | 26 --------- .../src/components/ui/chat/message-input.jsx | 2 - web-app/src/context/chat-backend-context.jsx | 25 --------- web-app/src/main.jsx | 1 - 5 files changed, 15 insertions(+), 95 deletions(-) delete mode 100644 web-app/src/components/ui/button/backend-toggle.jsx delete mode 100644 web-app/src/context/chat-backend-context.jsx diff --git a/web-app/src/components/layouts/chat-layout.jsx b/web-app/src/components/layouts/chat-layout.jsx index 8b27769..6d7c86c 100644 --- a/web-app/src/components/layouts/chat-layout.jsx +++ b/web-app/src/components/layouts/chat-layout.jsx @@ -17,8 +17,6 @@ async function AIResponse(userInputArray) { return response.text; } -let userInput = []; - export default function ChatLayout() { const [messages, setMessages] = useState([ { @@ -27,6 +25,21 @@ export default function ChatLayout() { }, ]); + async function handleSend(text) { + const userMsg = { role: "user", content: text }; + userInput.push(text); + const res = await AIResponse(userInput); + setMessages((s) => [...s, userMsg]); + setTimeout(() => { + setMessages((s) => [...s, { role: "assistant", content: res }]); + }, 600); + } + + function handleDeleteAll() { + if (!window.confirm("Delete all messages?")) return; + setMessages([]); + } + return (
@@ -35,42 +48,3 @@ export default function ChatLayout() {
); } - -function addMessage(role, content) { - const msg = { role, content }; - setMessages((s) => [...s, msg]); -} - -async function handleSend(text) { - const { setMessages } = useChatBackend(); - const userMsg = { role: "user", content: text }; - - switch (setMessages) { - case "gemini": - userInput.push(text); - const res = await AIResponse(userInput); - setMessages((s) => [...s, userMsg]); - setTimeout(() => { - setMessages((s) => [...s, { role: "assistant", content: res }]); - }, 600); - break; - case "rust": - setMessages((s) => [...s, userMsg]); - - // fake assistant reply after short delay - setTimeout(() => { - setMessages((s) => [ - ...s, - { role: "assistant", content: `You said: ${text}` }, - ]); - }, 600); - break; - default: - break; - } -} - -function handleDeleteAll() { - if (!window.confirm("Delete all messages?")) return; - setMessages([]); -} diff --git a/web-app/src/components/ui/button/backend-toggle.jsx b/web-app/src/components/ui/button/backend-toggle.jsx deleted file mode 100644 index f8f9a80..0000000 --- a/web-app/src/components/ui/button/backend-toggle.jsx +++ /dev/null @@ -1,26 +0,0 @@ -import React from "react"; -import { motion } from "motion/react"; -import { Cpu } from "lucide-react"; -import { useChatBackend } from "src/context/chat-backend-context"; - -export default function BackendToggle({ className }) { - const { backend, toggleBackend } = useChatBackend(); - - return ( - { - e.preventDefault(); - toggleBackend(); - }} - className={`bg-gray-700 p-2 rounded-2xl file-input border-2 border-gray-600 text-md flex items-center gap-2 ${className || ""}`} - whileHover={{ scale: 1.05 }} - whileTap={{ scale: 0.95 }} - title={`${backend}`} - > - - - {backend === "rust" ? "rust" : "gemini"} - - - ); -} diff --git a/web-app/src/components/ui/chat/message-input.jsx b/web-app/src/components/ui/chat/message-input.jsx index 953ad70..37e8440 100644 --- a/web-app/src/components/ui/chat/message-input.jsx +++ b/web-app/src/components/ui/chat/message-input.jsx @@ -1,7 +1,5 @@ import React, { useState, useRef, useEffect } from "react"; import DownButton from "src/components/ui/button/down-button"; -import BackendToggle from "src/components/ui/button/backend-toggle"; -import ChatBackendContext from "src/context/chat-backend-context"; import { motion } from "motion/react"; import { BotMessageSquare } from "lucide-react"; diff --git a/web-app/src/context/chat-backend-context.jsx b/web-app/src/context/chat-backend-context.jsx deleted file mode 100644 index 1cec2cb..0000000 --- a/web-app/src/context/chat-backend-context.jsx +++ /dev/null @@ -1,25 +0,0 @@ -import React, { createContext, useContext, useState } from "react"; - -const ChatBackendContext = createContext(null); - -export function ChatBackendProvider({ children }) { - const [backend, setBackend] = useState("gemini"); // default - - function toggleBackend() { - setBackend((b) => (b === "gemini" ? "rust" : "gemini")); - } - - return ( - - {children} - - ); -} - -export function useChatBackend() { - const ctx = useContext(ChatBackendContext); - if (!ctx) throw new Error("useChatBackend must be used within ChatBackendProvider"); - return ctx; -} - -export default ChatBackendContext; diff --git a/web-app/src/main.jsx b/web-app/src/main.jsx index 4926f6a..4eed68d 100644 --- a/web-app/src/main.jsx +++ b/web-app/src/main.jsx @@ -1,6 +1,5 @@ import { createRoot } from "react-dom/client"; import "./index.css"; import App from "./app/index.jsx"; -import { ChatBackendProvider } from "./context/chat-backend-context"; createRoot(document.getElementById("root")).render();