gitea/web_src/js/utils
Alexander McRae aba96f65cd
Use `git diff-tree` for `DiffFileTree` on diff pages (#33514)
Modify Diff View FileTree to show all files

## Changes

* removes Show Status button on diff
* uses `git diff-tree` to generate the file tree for the diff
* doesn't reload the diff tree each time we load more files in the
preview
* selecting and unloaded file will keep loading until that file is
loaded
* removes `DiffFileList.vue` and "Show Stats" in diff options

## Open Questions

* selecting and unloaded file will keep loading until that file is
loaded. Is this behaviour okay? It matches what github does.

### Demo

In this demo I set `git.MAX_GIT_DIFF_FILES=1` in my `app.ini` to
demonstrate a worst case example. In most cases the behaviour isn't
nearly as jarring as we load a bunch of files at a time.


https://github.com/user-attachments/assets/72f29663-d6fc-472d-94fa-7fb5950c2836

---------

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-02-28 00:58:25 +00:00
..
color.test.ts Convert frontend code to typescript (#31559) 2024-07-07 15:32:30 +00:00
color.ts Fix a number of Typescript issues (#31877) 2024-08-28 18:32:38 +02:00
dom.test.ts Bypass vitest bug (#32647) 2024-11-26 23:10:45 +08:00
dom.ts Enable Typescript `noImplicitAny` (#33322) 2025-01-22 15:11:51 +08:00
filetree.test.ts Use `git diff-tree` for `DiffFileTree` on diff pages (#33514) 2025-02-28 00:58:25 +00:00
filetree.ts Use `git diff-tree` for `DiffFileTree` on diff pages (#33514) 2025-02-28 00:58:25 +00:00
image.test.ts Enable Typescript `noImplicitAny` (#33322) 2025-01-22 15:11:51 +08:00
image.ts Fix a number of Typescript issues (#31877) 2024-08-28 18:32:38 +02:00
match.test.ts Convert frontend code to typescript (#31559) 2024-07-07 15:32:30 +00:00
match.ts Change typescript `module` to `nodenext` (#32757) 2024-12-10 08:44:39 +00:00
testhelper.ts Make frontend unit test code could know it is in testing (#32656) 2024-11-28 01:40:32 +08:00
time.test.ts Convert frontend code to typescript (#31559) 2024-07-07 15:32:30 +00:00
time.ts Enable Typescript `noImplicitAny` (#33322) 2025-01-22 15:11:51 +08:00
url.test.ts Rearrange Clone Panel (#31142) 2024-12-11 21:54:30 +08:00
url.ts Rearrange Clone Panel (#31142) 2024-12-11 21:54:30 +08:00