diff --git a/web-app/package-lock.json b/web-app/package-lock.json index cc98beb..31afbbf 100644 --- a/web-app/package-lock.json +++ b/web-app/package-lock.json @@ -33,7 +33,6 @@ }, "devDependencies": { "@eslint/js": "^9.38.0", - "daisyui": "^5.3.7", "eslint": "^9.38.0", "eslint-plugin-import": "^2.32.0", "eslint-plugin-react": "^7.37.5", @@ -2907,14 +2906,13 @@ "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", "license": "MIT" }, - "node_modules/daisyui": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/daisyui/-/daisyui-5.3.7.tgz", - "integrity": "sha512-0+8PaSGift0HlIQABCeZzWOBV5Nx/vsI2TihB9hbaEyZENPlZZz+se2JnAH5rz9gBYTyDLB7NJup8hkREr6WBw==", - "dev": true, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", "license": "MIT", - "funding": { - "url": "https://github.com/saadeghi/daisyui?sponsor=1" + "engines": { + "node": ">= 12" } }, "node_modules/data-uri-to-buffer": { diff --git a/web-app/package.json b/web-app/package.json index 5b7412b..5f5becb 100644 --- a/web-app/package.json +++ b/web-app/package.json @@ -15,8 +15,8 @@ "dependencies": { "@google/genai": "^1.25.0", "@tailwindcss/postcss": "^4.1.14", - "@tailwindcss/vite": "^4.1.14", - "@vitejs/plugin-react-swc": "^3.7.0", + "@tailwindcss/vite": "^4.1.14", + "@vitejs/plugin-react-swc": "^3.7.0", "bootstrap": "^5.3.8", "bootstrap-icons": "^1.13.1", "class-variance-authority": "^0.7.1", @@ -40,7 +40,6 @@ "packageManager": ">=npm@10.9.0", "devDependencies": { "@eslint/js": "^9.38.0", - "daisyui": "^5.3.7", "eslint": "^9.38.0", "eslint-plugin-import": "^2.32.0", "eslint-plugin-react": "^7.37.5", diff --git a/web-app/src/components/ui/button/down-button.jsx b/web-app/src/components/ui/button/down-button.jsx index 2995d20..bae6021 100644 --- a/web-app/src/components/ui/button/down-button.jsx +++ b/web-app/src/components/ui/button/down-button.jsx @@ -3,9 +3,17 @@ import { ArrowDown } from "lucide-react"; import { motion } from "motion/react"; export default function DownButton({ onClick }) { + function handleClick(e) { + if (onClick) return onClick(e); + // default behavior: scroll to bottom of page smoothly + const doc = document.documentElement; + const top = Math.max(doc.scrollHeight, document.body.scrollHeight); + window.scrollTo({ top, behavior: "smooth" }); + } + return ( { + // Enter to submit, Shift+Enter for newline + if (e.key === "Enter" && !e.shiftKey) { + e.preventDefault(); + handleSubmit(e); + } + }} placeholder="Type a message..." rows={1} className="flex-1 mx-2 rounded-md shadow-2sx border-none focus:border-none focus:outline-none resize-none overflow-auto max-h-40"