1
0
Fork 0
mirror of https://github.com/miniflux/v2.git synced 2025-08-16 18:01:37 +00:00

perf(js): don't load webauthn,js when disabled

This saves around 1kB of data, yay.
This commit is contained in:
Julien Voisin 2025-08-16 02:11:12 +02:00 committed by GitHub
parent 6f2ec8b3e9
commit 3955df43f5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 8 additions and 3 deletions

View file

@ -164,7 +164,7 @@ func Parse() {
printErrorAndExit(fmt.Errorf("unable to generate stylesheets bundle: %v", err))
}
if err := static.GenerateJavascriptBundles(); err != nil {
if err := static.GenerateJavascriptBundles(config.Opts.WebAuthn()); err != nil {
printErrorAndExit(fmt.Errorf("unable to generate javascript bundle: %v", err))
}

View file

@ -1114,6 +1114,7 @@ function initializeServiceWorker() {
* Initialize WebAuthn handlers if supported.
*/
function initializeWebAuthn() {
if (typeof WebAuthnHandler !== 'function') return;
if (!WebAuthnHandler.isWebAuthnSupported()) return;
const webauthnHandler = new WebAuthnHandler();

View file

@ -7,6 +7,7 @@ import (
"bytes"
"embed"
"log/slog"
"slices"
"strings"
"miniflux.app/v2/internal/crypto"
@ -117,14 +118,13 @@ func GenerateStylesheetsBundles() error {
}
// GenerateJavascriptBundles creates JS bundles.
func GenerateJavascriptBundles() error {
func GenerateJavascriptBundles(webauthnEnabled bool) error {
var bundles = map[string][]string{
"app": {
"js/tt.js", // has to be first
"js/touch_handler.js",
"js/keyboard_handler.js",
"js/modal_handler.js",
"js/webauthn_handler.js",
"js/app.js",
},
"service-worker": {
@ -132,6 +132,10 @@ func GenerateJavascriptBundles() error {
},
}
if webauthnEnabled {
bundles["app"] = slices.Insert(bundles["app"], 1, "js/webauthn_handler.js")
}
JavascriptBundles = make(map[string]asset, len(bundles))
jsMinifier := js.Minifier{Version: 2020}