-
Notifications
You must be signed in to change notification settings - Fork 2.6k
feat: Add indexing status badge to chat view (#4429) #4532
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Looking at the changes in
This would make the component more reusable if other features need to navigate to different settings sections. |
- Fixed useEffect dependency array by removing tooltipTimeout - Internationalized all user-facing strings with translation keys - Moved IndexingStatus types to shared/ExtensionMessage.ts - Created reusable useTooltip hook for tooltip management - Memoized progress calculation with useMemo - Added comprehensive test suite with 10 tests All review comments from PR #4532 have been addressed.
|
All review feedback addressed. Tests passing. |
|
Fixed failing CI checks:
|
|
@daniel-lxs I think we've got it!? |
- Fixed useEffect dependency array by removing tooltipTimeout - Internationalized all user-facing strings with translation keys - Moved IndexingStatus types to shared/ExtensionMessage.ts - Created reusable useTooltip hook for tooltip management - Memoized progress calculation with useMemo - Added comprehensive test suite with 10 tests All review comments from PR #4532 have been addressed.
Added placeholder translations for all locales to fix CI checks. These will need to be properly translated by native speakers.
- Clear postMessage mock calls in ChatTextArea test before checking for no calls - This prevents IndexingStatusBadge's requestIndexingStatus call from affecting the test - All tests now passing locally
…ender IndexingStatusDot
8559b13 to
526ed71
Compare
|
Hmm, it's very visually prominent in indexing mode and doesn't look that much like the rest of the UI. Think we can at least get rid of the yellow ring? |
|
@mrubens Now the color of the status only appears on hover: Let me know what you think |
|
@daniel-lxs is not indexed does it show the color (without having to hover) while its indexing and the progress ring? How about when there is an error, does it show the color red without having to hover? |
|
@hannesrudolph But we could also pick less saturated colors. What do you think? |
|
Sure less saturated would work. I think its important that the user knows if indexing is working, not working, or in progress is all.. |
|
@hannesrudolph |
|
I like that! and is there still a progress ring for when its yellow (indexing)? |
|
No ring at all, just a slightly pulsating yellow dot when it's indexing |
… post settingsButtonClicked message
mrubens
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
Co-authored-by: Daniel <[email protected]> Co-authored-by: Daniel Riccio <[email protected]>




Fixes #4429
Description
This PR adds an indexing status badge to the chat view, providing users with real-time feedback on the status of codebase indexing. The badge indicates whether indexing is in progress, completed, or has failed, and includes a tooltip with more detailed information.
Changes Made
webview-ui/src/components/chat/IndexingStatusBadge.tsx: Created a new component to display the indexing status. It includes a status dot, a progress ring for in-progress states, and a tooltip for detailed status messages.webview-ui/src/components/chat/ChatView.tsx: Integrated theIndexingStatusBadgeinto the chat text area.webview-ui/src/components/chat/ChatTextArea.tsx: Added theIndexingStatusDotcomponent next to the other action buttons in the text area.webview-ui/src/App.tsx: Implemented theonNavigateToSettingshandler to allow users to click the badge and be taken to the relevant experimental settings section.Testing
not_startedin_progressdonefailedChecklist
indexing.notification.mp4
Important
Add indexing status badge to chat view with localization and testing support.
IndexingStatusBadge.tsxto display indexing status with a dot, progress ring, and tooltip.IndexingStatusBadgeintoChatView.tsxandChatTextArea.tsx.onNavigateToSettingsinApp.tsxto navigate to settings on badge click.IndexingStatusandIndexingStatusUpdateMessageinterfaces inExtensionMessage.ts.IndexingStatusBadgeinIndexingStatusBadge.test.tsx.ChatTextArea.test.tsxto clear mock calls related toIndexingStatusBadge.chat.jsonin 20 language files to include indexing status translations.useTooltiphook inuseTooltip.tsfor tooltip management.This description was created by
for fa460da. You can customize this summary. It will automatically update as commits are pushed.