Add FF + base components for file tree browser
What does this MR do and why?
Adds a feature flag and initial components (without list of files) for the repository tree browser component.
Implementation Breakdown:
-
Terminology:
- *Existing file tree (list of files) → File tree
- *New file tree browser component → File tree browser (FTB)
Task | Status | Notes |
---|---|---|
Add FF + base components for file tree browser (FTB) |
|
|
Render a basic FTB + files next to the file tree | follow-up MR/issue | |
Render a basic FTB + files next to the blob viewer | follow-up MR/issue | |
Navigate from file tree → blob via FTB without refresh | follow-up MR/issue | |
Navigate from file tree → tree via FTB without refresh | follow-up MR/issue | |
Navigate from blob → file tree vis FTB without refresh | follow-up MR/issue | Requires passing extra props for tree to render |
Navigate from overview → file tree/blob without refresh | follow-up MR/issue | FTB should not render on overview page |
Share state between FTB and file tree | follow-up MR/issue | |
Indicate the current file in the FTB | follow-up MR/issue | |
Implement file browser panel resizer | follow-up MR/issue | |
Implement expand/collapse toggle + auto-collapse on mobile | follow-up MR/issue | |
Implement filtering | follow-up MR/issue | |
Match the styling of MR file browser + responsiveness | follow-up MR/issue | |
Implement ARIA tree view pattern | follow-up MR/issue | See #525169 (comment 2447409353) |
Screenshots or screen recordings
Before | After |
---|---|
![]() |
![]() |
![]() |
![]() |
How to set up and validate locally
- Enable the
repository_file_tree_browser
flag - Navigate to either the repository blob viewer or tree list (not project overview)
- The file tree browser should render
Related to #536028 (closed)
Edited by Jacques Erasmus