* fix: add download attribute to fix JAR files saving as ZIP in Chromium
- JAR files were downloading with a `.zip` extension in Chromium-based browsers (Chrome, Edge, Arc, Brave, Opera, Vivaldi)
- Root cause: JAR files are ZIP archives internally, so Chromium sniffs the `Content-Type` as `application/zip` and overrides the filename extension when no `download` attribute is present
- Fix: add `download="<filename>"` to all file download `<a>` tags so the browser uses the original filename from the API
* fix: add download attribute to remaining download links
Missed in initial pass: changelog page button, versions overflow
menu, settings/versions overflow menu. Also adds `download` prop
to Button and OverflowMenu to support dropdown link items.
Adds missing `getPrimaryFile` definition in changelog.vue.
---------
Co-authored-by: Mr_chank <180248271+chank-op@users.noreply.github.com>
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
* feat: ssr fixes
* feat: lazy load non-core data
* feat: ssr timing debugging
* feat: go back to all parallel
* feat: migrate to DI + set up mutators
* feat: remove double get versions request, only call v3
* refactor: [version].vue page to use composition API and typescript
* feat: gallery.vue start
* fix: remove left behind console log
* fix: type issues + gallery
* fix: versionsummary modal + version page direct join
* fix: projectRaw guard
* fix: currentMember val fix
* fix: actualProjectType
* fix: vers summary link same page
* fix: lint
---------
Co-authored-by: tdgao <mr.trumgao@gmail.com>