Skip to main content
Glama

GitMCP

textarea.tsx2.08 kB
import type { modelID } from "~/chat/ai/providers.shared"; import { Textarea as ShadcnTextarea } from "~/chat/components/ui/textarea"; import { ArrowUp, Loader2 } from "lucide-react"; import { ModelPicker } from "./model-picker"; interface InputProps { input: string; handleInputChange: (event: React.ChangeEvent<HTMLTextAreaElement>) => void; isLoading: boolean; status: string; stop: () => void; selectedModel: modelID; setSelectedModel: (model: modelID) => void; } export const Textarea = ({ input, handleInputChange, isLoading, status, stop, selectedModel, setSelectedModel, }: InputProps) => { const isStreaming = status === "streaming" || status === "submitted"; return ( <div className="relative w-full"> <ShadcnTextarea className="resize-none bg-background/50 dark:bg-muted/50 ocean:bg-muted/50 backdrop-blur-sm w-full rounded-2xl pr-12 pt-4 pb-16 border-input focus-visible:ring-ring placeholder:text-muted-foreground/80" value={input} autoFocus placeholder="Send a message..." onChange={handleInputChange} onKeyDown={(e) => { if (e.key === "Enter" && !e.shiftKey && !isLoading && input.trim()) { e.preventDefault(); e.currentTarget.form?.requestSubmit(); } }} /> <ModelPicker setSelectedModel={setSelectedModel} selectedModel={selectedModel} /> <button type={isStreaming ? "button" : "submit"} onClick={isStreaming ? stop : undefined} disabled={ (!isStreaming && !input.trim()) || (isStreaming && status === "submitted") } className="absolute right-2 bottom-2 rounded-full p-2 bg-primary hover:bg-primary/90 disabled:bg-muted disabled:cursor-not-allowed transition-all duration-200" > {isStreaming ? ( <Loader2 className="h-4 w-4 text-primary-foreground animate-spin" /> ) : ( <ArrowUp className="h-4 w-4 text-primary-foreground" /> )} </button> </div> ); };

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/idosal/git-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server