Roo-Code/webview-ui/src
roomote[bot] f546e6ed1d
feat: Add support for message queueing (#6167)
* feat: Add support for message queueing

* fix: address PR review feedback for message queueing feature

- Restore original ChatView tests from main branch
- Fix broken test by updating ChatTextArea mock
- Add comprehensive tests for message queueing (simplified due to mocking constraints)
- Fix race condition using useRef and setTimeout in queue processing
- Extract QueuedMessage interface to shared types.ts file
- Replace inline styles with Tailwind classes in QueuedMessages
- Add i18n support for 'Queued Messages:' text
- Add keyboard navigation for removing queued messages
- Add JSDoc for fromQueue parameter in handleSendMessage

* refactor: move QueuedMessage interface to packages/types

- Move QueuedMessage interface from local types.ts to packages/types/src/message.ts
- Update imports in ChatView.tsx and QueuedMessages.tsx to use @roo-code/types
- Remove local types.ts file to follow codebase conventions

* fix: add id field when creating queued messages

- Generate unique id using timestamp when adding messages to queue
- Fixes TypeScript error after moving QueuedMessage interface

* Stop disabling sending

* Translations

* Fix tests

* Improved styling

* Remove unused string

* Test cleanup

* fix: address message queueing issues

- Fix race condition in queue processing by re-checking queue state inside setTimeout
- Add error handling for queue operations with retry mechanism
- Replace array index with stable message.id for React keys in QueuedMessages
- Generate more unique IDs using timestamp + random component

* feat: add inline editing for queued messages

- Add ability to edit queued messages by clicking on them
- Support Enter to save and Escape to cancel edits
- Add textarea that auto-resizes based on content
- Add hover effect to indicate messages are editable
- Add translation for click to edit tooltip

* feat: add scrollbar and fix height for queued messages

- Add max-height of 300px with scrollbar to queue container
- Add flex-shrink-0 to prevent message items from being squished
- Ensure consistent height for message items when multiple messages are queued

* feat: add translations for queued message edit tooltip

- Add 'queuedMessages.clickToEdit' translation key to all 18 language files
- Provides localized tooltip text for the click-to-edit functionality

* fix: improve message queue processing reliability

- Fix race condition by removing nested setState and setTimeout
- Add retry limit (3 attempts) to prevent infinite loops
- Add proper cleanup on component unmount
- Clear queue when starting new task
- Prevent queue processing during API errors
- Fix ESLint warnings for React hooks dependencies

---------

Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-07-27 14:32:53 -04:00
..
__tests__ Support for custom slash commands (#6263) 2025-07-26 23:16:46 -04:00
components feat: Add support for message queueing (#6167) 2025-07-27 14:32:53 -04:00
context Support for custom slash commands (#6263) 2025-07-26 23:16:46 -04:00
hooks fix: Resolve confusing auto-approve checkbox states (#5602) 2025-07-16 17:52:29 -04:00
i18n feat: Add support for message queueing (#6167) 2025-07-27 14:32:53 -04:00
lib Add shadcn/ui + Storybook 2025-01-30 12:50:09 -08:00
oauth Add a new @roo-code/types package and use it everywhere (#3912) 2025-05-26 12:06:45 -07:00
utils Support for custom slash commands (#6263) 2025-07-26 23:16:46 -04:00
vite-plugins debug: Add ErrorBoundary component for better error handling (#5085) 2025-07-23 08:45:35 -04:00
App.tsx debug: Add ErrorBoundary component for better error handling (#5085) 2025-07-23 08:45:35 -04:00
index.css feature: add toggle for disable mcp server tool from prompt (#3551) 2025-06-20 19:14:59 -04:00
index.tsx PNPM + Turbo monorepo + Nightly releases (#3407) 2025-05-21 21:01:20 -07:00
preflight.css Bring most of Tailwind's preflight.css back 2025-02-03 12:18:28 -08:00
types.d.ts Welcome page OAuth (#1913) 2025-03-23 10:08:16 -04:00
vite-env.d.ts Remove lucide 2025-01-30 14:47:59 -08:00