//TODO: maybe in a seperate path (e.g. /i/[id]) so that static is still there
//TODO: ^ going with this
//TODO: basically a fg, bg, font picker (text-entry? link to typical builtin fonts?)
//TODO: also making/editing presets
//TODO: might be easiest to refresh on submit

import { useState } from "preact/hooks";
import { Preset, Message, Database, Conversation } from "types";
import InputMsg from "components/InputMsg.tsx";

//TODO: oh also creating convos
//TODO: oh also updating convos' metadata
//TODO: a sort of commit like thing? reactive config, then you have to actually submit
//TODO: much harder than just refreshing but much nicer
//TODO: probably in the main index (much minimalism waow)

export default function AddMsg({
    // preset_list,
    preset,
    onsubmit,
    conv,
    db,
}: {
    // preset_list: string[];
    // ehhh the order should stay consistent enough
    preset: string;
    onsubmit: (_: Message) => void;
    conv: Conversation;
    db: Database;
}) {
    const [content, setContent] = useState("");
    console.log(content);
    const msg = {
        content,
        preset,
    };

    return (
        <InputMsg
            msg={msg}
            db={db}
            onSubmit={() => {
                onsubmit(msg);
                setContent("");
            }}
            conversation={conv}
            onInput={e => setContent(e.target.value)}
        />
    );
}
// type Message = {
//     content: string;
//     preset?: string | undefined;
//     fg?: string | undefined;
//     bg?: string | undefined;
//     font?: string | undefined;
//     sender?: string | undefined;
// }
