Composer
Das Prompt-Feld: wächst mit dem Text, scrollt dann; Senden wird zu Stopp, solange eine Antwort einläuft.
function Basic() {
const [streaming, setStreaming] = useState(false);
return (
<Composer
className="w-full max-w-640"
streaming={streaming}
onSubmit={() => {
setStreaming(true);
setTimeout(() => setStreaming(false), 2400);
}}
onStop={() => setStreaming(false)}
/>
);
}import { Composer } from "@logicplanes/kaeso-ui/playground";Props
actionsReactNodeSteuerelemente am Anfang der Button-Zeile: Parameter, Leeren.
aria-labelstringDer zugängliche Name des Textfelds (standardmäßig „Prompt“).
autoFocusbooleanFokussiert den Composer, sobald er erscheint.
clearOnSubmitboolean = trueLeert einen unkontrollierten Composer nach dem Senden (standardmäßig an).
defaultValuestringDie Nachricht beim ersten Rendern.
disabledboolean = falseSchaltet es aus: Es lässt sich nicht verwenden und wirkt abgeblendet.
loadingboolean = falseDer Prompt wird gesendet: Senden zeigt einen Spinner.
maxRowsnumber = 10Zeilen, bevor das Textfeld scrollt (standardmäßig 10).
namestringDer Feldname, unter dem der Wert mit einem Formular gesendet wird.
onStop(() => void)Stopp: der Button während
streaming.onSubmit((value: string) => void)Senden: der Senden-Button, Enter im Textfeld (siehe
submitOn) oder ⌘ Enter (Strg Enter). Wird nicht aufgerufen bei leerem Prompt oder nur Leerzeichen, wenn deaktiviert, beim Senden oder Streamen oder während eine Eingabemethode Zeichen zusammensetzt.onValueChange((value: string) => void)Wird beim Tippen mit der Nachricht aufgerufen.
placeholderstringText, der angezeigt wird, solange es keinen Wert gibt.
size"md" | "sm" = mdDie Höhe des Composers.
stopLabelstringDer zugängliche Name des Stopp-Buttons, der erscheint, während eine Antwort gestreamt wird.
streamingboolean = falseEine Antwort läuft ein: Senden wird zu Stopp. Das Textfeld bleibt für den nächsten Prompt bearbeitbar.
submitLabelstringDer zugängliche Name des Senden-Buttons.
submitOn"enter" | "mod-enter" = enterDie Taste, die aus dem Textfeld sendet.
"enter"(Standard): Enter sendet, Umschalt Enter fügt eine Zeile ein; auf Touchscreens fügt Enter eine Zeile ein und der Senden-Button sendet."mod-enter": Enter fügt eine Zeile ein, nur ⌘ Enter (Strg Enter) sendet. ⌘ Enter und Strg Enter senden in beiden Fällen.valuestringDie Nachricht, die gerade geschrieben wird, bei gesteuertem Wert.