hieptl
949bce0b65
refactor: resolve code conflicts
2026-01-05 11:55:13 +07:00
hieptl
1f8c52a8be
Merge branch 'main' into fix/infinite-scroll-conversations
2026-01-05 11:50:57 +07:00
Bharath A V
f9b316453d
fix: prevent nested buttons in tooltip button ( #12177 )
...
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-31 16:08:37 +00:00
Ryanakml
96d073ee5b
fix(frontend): add missing onClose prop to conversation panel modals ( #12219 )
...
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-31 15:29:03 +00:00
Osama Mabkhot
f7d416ac8e
refactor(frontend): remove HeroUI BaseModal and migrate MetricsModal ( #12174 )
...
Co-authored-by: openhands <openhands@all-hands.dev >
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-31 15:18:58 +00:00
yunbae
b7d5f903cf
fix(frontend): Agent Tools & Metadata not available for V1 conversations ( #12180 )
...
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-31 19:08:09 +04:00
yunbae
2734a5a52d
fix(frontend): show stop action button for running or starting conversations ( #12215 )
2025-12-31 19:07:09 +04:00
Neha Prasad
6f9c0aa3b1
fix: display conversation title in delete confirmation modal ( #11818 )
...
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-30 20:59:30 -05:00
sp.wack
0e5f4325be
hotfix(frontend): set terminal background color for xterm.js 6.0.0 compatibility ( #12213 )
2025-12-30 14:58:58 +00:00
sp.wack
103e3ead0a
hotfix(frontend): validate git changes response is array before mapping ( #12208 )
2025-12-30 12:33:09 +00:00
Hiep Le
8ee1394e8c
feat: add button to authentication modal to resend verification email ( #12179 )
2025-12-30 02:12:14 +07:00
Tim O'Farrell
d628e1f20a
feat: Add frontend support for public conversation sharing ( #12047 )
...
Co-authored-by: openhands <openhands@all-hands.dev >
Co-authored-by: sp.wack <83104063+amanape@users.noreply.github.com >
2025-12-29 12:04:06 -07:00
sp.wack
1480d4acb0
fix(frontend): deduplicate events on WebSocket reconnect ( #12197 )
2025-12-29 19:03:48 +00:00
sp.wack
d68b2cdd1a
hotfix(frontend): fix provider type import ( #12187 )
2025-12-29 18:01:22 +04:00
dependabot[bot]
c70ecc8fe3
chore(deps): bump the version-all group across 1 directory with 6 updates ( #12161 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-29 13:54:58 +00:00
Hiep Le
3bef4e6c2d
refactor(frontend): update the error message for email addresses containing + during signup ( #12178 )
2025-12-29 19:36:28 +07:00
johba
f8e4b5562e
Forgejo integration ( #11111 )
...
Co-authored-by: johba <admin@noreply.localhost >
Co-authored-by: openhands <openhands@all-hands.dev >
Co-authored-by: johba <johba@harb.eth >
Co-authored-by: enyst <engel.nyst@gmail.com >
Co-authored-by: Graham Neubig <neubig@gmail.com >
Co-authored-by: MrGeorgen <65063405+MrGeorgen@users.noreply.github.com >
Co-authored-by: MrGeorgen <moinl6162@gmail.com >
2025-12-27 15:57:31 -05:00
lif
c80f70392f
fix(frontend): clean up console warnings in test suite ( #12004 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-25 22:26:12 +04:00
Tim O'Farrell
6d14ce420e
Implement Export feature for V1 conversations with comprehensive unit tests ( #12030 )
...
Co-authored-by: openhands <openhands@all-hands.dev >
Co-authored-by: hieptl <hieptl.developer@gmail.com >
2025-12-24 17:50:57 +00:00
Hiep Le
e2b2aa52cd
feat: require email verification for new signups ( #12123 )
2025-12-24 14:56:02 +07:00
Hiep Le
f6e7628bff
feat: prevent signups using email addresses with a plus sign and enforce the existing email pattern ( #12124 )
2025-12-24 01:48:05 +07:00
sp.wack
fae83230ee
docs(frontend): Add API services guide for frontend development ( #12132 )
2025-12-23 12:57:55 +00:00
openhands
71201ac4cd
refactor: Simplify useInfiniteScroll hook API
...
- Remove redundant containerRef (useRef), keep only useState for container
- Rename return value from 'ref' to 'setRef' for clearer API
- Replace waitForTimeout with proper expect().toHaveCount() in E2E tests
Addresses code review feedback on PR #12084
2025-12-22 19:25:43 +00:00
Hiep Le
10edb28729
fix(frontend): llm settings view resets to basic after saving ( #12097 )
2025-12-22 23:00:57 +07:00
Graham Neubig
fa2567b2a0
Fix xterm dimensions error with explicit checks instead of try-catch ( #12095 )
...
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-20 01:09:09 +00:00
aditya-gaharawar
f870246c3d
feat: improve accessibility of served tab buttons ( #12103 )
...
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
2025-12-19 16:48:34 +00:00
Hiep Le
58340b3ef9
refactor(frontend): consolidate state stores into stores directory ( #12100 )
2025-12-19 21:12:38 +07:00
Xingyao Wang
d063ee599b
chore: set default model to claude-opus-4-5-20251101 ( #12093 )
...
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-19 02:50:49 +00:00
openhands
da4b1e1a88
fix: Prevent duplicate API calls when reopening conversation panel
...
When the conversation panel was closed and reopened, TanStack Query's
useInfiniteQuery would refetch all cached pages, causing multiple API
calls. This fix adds staleTime of 5 minutes to prevent unnecessary
refetches when the data is still fresh.
This is consistent with other hooks in the codebase that use the same
staleTime value.
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-18 20:36:55 +00:00
openhands
7bd9a7f8b7
fix: Fix E2E tests for infinite scroll and avatar menu
...
- Fix avatar-menu test: Remove group-hover:pointer-events-auto from wrapper
div to prevent menu from intercepting clicks on the avatar button. Only
enable pointer events when menu is actually open via click.
- Fix infinite-scroll test: Add data-testid='conversation-card' to
RecentConversation component for test selector consistency.
- Update recent conversations test: Change test to match actual component
behavior (View More/Less button instead of infinite scroll). The
RecentConversations component uses a display limit with expand/collapse
functionality, not infinite scroll for display.
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-18 18:25:50 +00:00
openhands
02f69f02c0
Add unit tests for useInfiniteScroll hook and Playwright documentation
...
- Add 5 unit tests for useInfiniteScroll hook covering:
- Scroll near bottom triggers fetchNextPage
- Scroll not near bottom doesn't trigger fetch
- hasNextPage=false doesn't trigger fetch
- isFetchingNextPage=true doesn't trigger fetch
- Callback ref properly attaches to container
- Add Playwright E2E testing documentation to repo.md
- Initialize mock settings with defaults to avoid modal popup during testing
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-18 17:13:35 +00:00
openhands
a2a24a753a
feat(frontend): enhance mock conversation handlers for pagination testing
...
- Generate 50 mock conversations instead of 3 for better pagination testing
- Add pagination support to mock API endpoint
- Include variety of project names, repositories, and statuses
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-18 16:11:09 +00:00
openhands
d85952fe8e
fix: Fix infinite scroll for conversations list
...
The useInfiniteScroll hook had a bug where the scroll event listener
might not be attached if the ref was assigned after the initial render.
This happened because the useEffect depended on handleScroll, which
didn't change when the ref was assigned via a callback ref.
Changes:
- Modified useInfiniteScroll to use a callback ref and state to track
when the container is mounted
- The hook now returns { ref, containerRef } instead of just the ref
- Updated ConversationPanel and RecentConversations to use the new API
This ensures that the scroll event listener is properly attached when
the container element is mounted, enabling auto-pagination to work
correctly in the conversations list.
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-18 14:47:24 +00:00
Xingyao Wang
aff9d69d41
feat(frontend): add prefer-optional-chain ESLint rule and apply fixes ( #12073 )
...
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-18 22:42:52 +08:00
Hiep Le
afce58a27d
refactor(frontend): move frontend/src/ui/microagent-management-service to frontend/src/api ( #12017 )
2025-12-18 20:27:38 +07:00
Hiep Le
43f7a6fdbd
fix(frontend): resolve overlap between conversation panel and account context menu ( #12079 )
2025-12-18 20:17:32 +07:00
Hiep Le
9ef11bf930
feat: show available skills for v1 conversations ( #12039 )
2025-12-17 23:25:10 +07:00
Hiep Le
f98e7fbc49
fix(frontend): observation events and action events (v1 conversations) ( #12066 )
...
Co-authored-by: openhands <openhands@all-hands.dev >
2025-12-17 22:34:28 +07:00
Hiep Le
0607614372
feat(frontend): add refresh button to changes tab ( #12036 )
...
Co-authored-by: Tim O'Farrell <tofarr@gmail.com >
2025-12-17 22:29:18 +07:00
Tim O'Farrell
dc14624480
Fix for frontend stall ( #12069 )
2025-12-17 03:35:46 +00:00
Rohit Malhotra
7853b41add
Add OAuth 2.0 Device Flow backend for CLI authentication ( #11984 )
...
Co-authored-by: openhands <openhands@all-hands.dev >
Co-authored-by: Xingyao Wang <xingyao@all-hands.dev >
2025-12-16 11:54:01 -05:00
Mariam Saeed
3b7b2fd8cc
fix(frontend): Separate pause state from agent loading ( #12041 )
...
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-16 13:39:15 +00:00
Hiep Le
49740a463f
fix(frontend): clicking think block in conversation pane breaks ui (v1 conversations) ( #12057 )
2025-12-16 20:14:19 +07:00
Abhay Mishra
a12170e4c9
refactor(frontend): Extracted useQuery and useMutation from the main branch ( #12031 )
...
Co-authored-by: sp.wack <83104063+amanape@users.noreply.github.com >
2025-12-15 16:37:52 +00:00
Abhay Mishra
f52d9899e2
Consolidate scattered test files into a unified frontend/__tests__/ directory ( #12002 )
2025-12-15 19:58:09 +04:00
Hiep Le
67c9b6cf86
refactor(frontend): websocket error message (v1 conversations) ( #12045 )
2025-12-15 01:31:12 +07:00
Hiep Le
d772dd65a5
fix(frontend): fix fetching the number of events on the front end (v1 conversations) ( #11987 )
2025-12-12 22:10:22 +07:00
Abhay Mishra
5a21c59a3c
refactor(frontend): Consolidate duplicate Settings type definitions ( #12006 )
2025-12-12 14:16:31 +00:00
Bharath A V
976d9d1ab9
Refactor(mocks): modularize MSW handlers into domain-specific files ( #11974 )
...
Co-authored-by: sp.wack <83104063+amanape@users.noreply.github.com >
2025-12-12 13:21:08 +00:00
Bharath A V
6917d45d3a
refactor(frontend): consolidate settings navigation items logic into shared custom hook ( #11950 )
...
Co-authored-by: amanape <83104063+amanape@users.noreply.github.com >
2025-12-12 13:20:59 +00:00