PromptInput: successful async submit clears text typed while the submit was pending
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 62/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- react, typescript
- Ambito
- frontend
Direzione di ricerca
Il bug si trova nel percorso di invio del componente PromptInput e nello stato di PromptInputProvider, dove controller.textInput.clear() viene eseguito dopo che onSubmit asincrono si è risolto. Inizia leggendo come il provider memorizza l'input di testo e come PromptInput chiama clear in caso di successo. È completato quando una bozza digitata durante un invio in sospeso sopravvive a un invio riuscito, e un test copre un onSubmit ritardato con il testo modificato a metà.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
With PromptInputProvider, an async onSubmit keeps the text until the promise resolves, which is good for retrying a failed send. But after it resolves, PromptInput calls controller.textInput.clear(), which clears the current draft, not the text that was submitted.
The textarea stays editable while the promise is pending. Anything typed during that time is erased when the send succeeds.
Reproduction
- Wrap
PromptInputinPromptInputProvider. - Use an
onSubmitthat resolves after a delay, e.g.await new Promise(r => setTimeout(r, 3000)). - Type "first" and press Enter.
- While the promise is pending, type " second" (or replace the text).
- When the promise resolves, the textarea is emptied and the newer text is lost.
Expected
Only clear the draft if it still equals the submitted text, e.g. a functional update in the provider:
setTextInput((current) => (current === submitted ? "" : current));
(Alternatively, disable the textarea while a submission is pending.)
Environment
prompt-input from the current registry (npx ai-elements@latest add prompt-input), React 19.
- Lingua principale
- TypeScript
- Stelle
- 2.5k
- Fork
- 291
- Merge medio
- 20m
- PR unite (30g)
- 3
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di vercel/ai-elements
-
Attachments: remove button stays invisible on keyboard focus and on touch screensForse già presa @HardMax71 l’ha presa 28 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
vercel/ai-elements#507 ·
I maintainer di solito rispondono entro 1 giorno
-
ChainOfThought: the header's aria-controls points at an element that is never renderedForse già presa @HardMax71 l’ha presa 28 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
vercel/ai-elements#505 ·
I maintainer di solito rispondono entro 1 giorno
-
PromptInput rejects every file when accept lists file extensions (".xlsx")Forse già presa @HardMax71 l’ha presa 28 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
vercel/ai-elements#501 ·
I maintainer di solito rispondono entro 1 giorno
-
Context: ContextReasoningUsage and ContextCacheUsage don't compile with ai 7Forse già presa @burrows99 l’ha presa 19 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
vercel/ai-elements#500 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
vercel/ai-elements#498 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di vercel/ai-elements
Issue simili
-
BeOS .json missingAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
mihaip/infinite-mac#475 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
marmelab/atomic-crm#401 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
Deltares/webgl-streamline-visualizer#83 ·
I maintainer di solito rispondono entro 1 giorno
-
ubicloud: usage is an awk syntax error on macOS, which also disables the vCPU quota preflightAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno