gitforge/web_src/js/features
Gusted c8ec9bc2cc feat(ui): lazy-load all Vue components (#9444)
Some Vue components were already lazy-loaded, but not all.

There are three main changes:
1. Move init scripts outside Vue code.
2. Make the init scripts lazy-load the Vue components.
3. Deal with vue linters, because apparently if you do `export default` then some Vue linters will notice that's vue sfc.

The rationale for this pull requests is that this reduces the size of the `index.js` file.
- Uncompressed: 1.24 MB -> 954.40 kB
- Compressed (gzip, via `reverse_proxy` of Caddy): 400.45 kB -> 298.95 kB
- Compressed (zstd, via `bindata` tag): 363.75 kB -> 274.22 kB

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/9444
Reviewed-by: Otto <otto@codeberg.org>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-committed-by: Gusted <postmaster@gusted.xyz>
2025-09-28 05:40:40 +02:00
..
admin fix(ui): only run auth_name code on new and edit page (#7470) 2025-04-06 12:25:29 +00:00
comp feat: support Markdown editor bold & italic keyboard shortcuts (#9110) 2025-09-08 11:44:21 +02:00
autofocus-end.js
captcha.js
citation.js
clipboard.js
code-frequency.js
codeeditor.js
colorpicker.js
common-global.js merge commit: refactor init & clearing of panel forms without jQuery (#9062) 2025-09-17 14:56:30 +02:00
common-issue-list.js
common-issue-list.test.js
common-organization.js
contextpopup.js feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
contributors.js Add "n commits" link to contributors in contributors graph page (#32799) 2024-12-15 13:21:02 +01:00
copycontent.js
dashboard-repo-list.ts feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
dropzone.js
emoji.js feat: make text expander aware of custom emojis 2025-08-10 23:11:41 +02:00
eventsource.sharedworker.js chore: add new lint rules 2024-10-23 08:10:18 +02:00
file-fold.js
heatmap.js feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
imagediff.js
install.js
notification.js
org-team.js chore: enable no-jquery/no-each-util 2025-04-01 03:59:12 +02:00
pull-view-file.js
recent-commits.js
repo-action-view.ts feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
repo-activity-top-authors.ts feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
repo-branch-tag-selector.js feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
repo-branch.js
repo-code.test.ts chore(ui): replace repo-code jQuery use, convert file to typescript (#9337) 2025-09-21 08:08:47 +02:00
repo-code.ts chore(ui): replace repo-code jQuery use, convert file to typescript (#9337) 2025-09-21 08:08:47 +02:00
repo-commit.js feat: show CI status on force-pushes (#8655) 2025-08-13 03:29:36 +02:00
repo-common.js fix(ui): make tag dropdown clickable again (#7558) 2025-04-16 12:28:39 +00:00
repo-diff-commit.js
repo-diff-commitselect.js feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
repo-diff-filetree.js feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
repo-diff.js Remove DiffFileList component 2025-01-19 18:56:18 +01:00
repo-editor.js feat: first native dialog for modal (#8859) 2025-09-20 20:09:17 +02:00
repo-findfile.js
repo-findfile.test.js
repo-graph.js
repo-home.js Add null check for responseData.invalidTopics (#32212) 2024-10-13 08:06:49 +03:00
repo-issue-content.js
repo-issue-list.js
repo-issue-pr-form.js feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
repo-issue-pr-status.js
repo-issue.js fix: allow for tracked time to be removed again (#8575) 2025-07-19 16:34:21 +02:00
repo-issue.test.js
repo-legacy.js feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
repo-migrate.js
repo-migration.js Add support for migrating from Pagure (#8513) 2025-08-11 16:56:26 +02:00
repo-milestone.js feat: use combo markdown editor for milestone description 2024-10-22 19:58:44 +02:00
repo-projects.js
repo-release.js fix(ui): release: set default release title to tag name (#6883) 2025-02-23 08:30:39 +00:00
repo-search.js
repo-settings.js chore: enable no-jquery/no-each-util 2025-04-01 03:59:12 +02:00
repo-template.js chore: enable no-jquery/no-each-util 2025-04-01 03:59:12 +02:00
repo-unicode-escape.js fix(ui): make unicode escape work in wiki (#8923) 2025-09-10 08:10:23 +02:00
repo-wiki.js
scoped-access-token-selector.ts feat(ui): lazy-load all Vue components (#9444) 2025-09-28 05:40:40 +02:00
sshkey-helper.js feat(ui): clear panel form inputs when closed 2025-09-16 15:49:02 -07:00
stopwatch.js
tablesort.js
tribute.js
user-auth-webauthn.js
user-auth.js feat: improve incorrect ROOT_URL warning (#7103) 2025-03-03 18:05:01 +00:00