AI-Native

PromptInput

멀티라인 입력 + ⌘+Enter 전송 + 파일첨부 + leftSlot.

채팅 입력 박스. textarea가 자동으로 사이즈 조절(maxRows까지), ⌘/Ctrl + Enter로 전송, isStreaming 시 stop 버튼으로 토글.

import { PromptInput } from "@nxtgen-org/react";

Basic

onSubmit

tsx
<PromptInput onSubmit={(text) => sendMessage(text)} />

With model selector & attach

leftSlot + enableAttach

tsx
<PromptInput
enableAttach
onAttach={(files) => upload(files)}
leftSlot={<ModelSelector models={MODELS} value={model} onChange={setModel} />}
/>

API

NameTypeDefaultDescription
value / defaultValuestring—controlled / uncontrolled.
onChange(value: string) => void——
onSubmit(value: string) => void—⌘+Enter 또는 send.
isStreamingboolean—true면 stop 버튼.
onStop() => void——
enableAttachboolean—파일 첨부 버튼.
onAttach(files: FileList) => void——
maxRowsnumber8—
leftSlotReactNode—예: ModelSelector.