Merge branch 'diagram'

This commit is contained in:
JK-le-dev 2025-10-19 08:12:29 -05:00
commit 337703c4a0
4 changed files with 24 additions and 12 deletions

View file

@ -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": {

View file

@ -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",

View file

@ -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 (
<motion.button
onClick={onClick}
onClick={handleClick}
className="bg-gray-700 p-2 rounded-2xl file-input border-2 border-gray-600 size-10"
whileHover={{ scale: 1.1 }}
whileTap={{ scale: 0.9 }}

View file

@ -41,6 +41,13 @@ export default function MessageInput({ onSend }) {
ta.style.height = `${ta.scrollHeight}px`;
}
}}
onKeyDown={(e) => {
// 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"