Compare commits

...

4 Commits

Author SHA1 Message Date
Kantine Wrapper
6b8ac5ca1d chore: update build artifacts for v1.6.8 2026-03-06 10:01:16 +01:00
Kantine Wrapper
2964eba88b chore: dist files update 2026-03-06 10:01:09 +01:00
Kantine Wrapper
089e5375b4 chore: update build artifacts for v1.6.8 2026-03-06 09:55:54 +01:00
Kantine Wrapper
e514f42dbe feat: minify bookmarklet javascript via terser 2026-03-06 09:55:54 +01:00
7 changed files with 36 additions and 26 deletions

View File

@@ -99,15 +99,20 @@ echo "✅ Standalone HTML: $DIST_DIR/kantine-standalone.html"
# Escape CSS for embedding in JS string # Escape CSS for embedding in JS string
CSS_ESCAPED=$(echo "$CSS_CONTENT" | sed "s/'/\\\\'/g" | tr '\n' ' ' | sed 's/ */ /g') CSS_ESCAPED=$(echo "$CSS_CONTENT" | sed "s/'/\\\\'/g" | tr '\n' ' ' | sed 's/ */ /g')
# Build bookmarklet payload # Create a minified version for the injected bookmarklet payloads
echo "Minifying JS with Terser..."
TEMP_JS=$(mktemp)
echo "$JS_CONTENT" > "$TEMP_JS"
JS_MINIFIED=$(npx -y terser "$TEMP_JS" --compress --mangle)
rm -f "$TEMP_JS"
cat > "$DIST_DIR/bookmarklet-payload.js" << PAYLOADEOF cat > "$DIST_DIR/bookmarklet-payload.js" << PAYLOADEOF
(function(){ javascript:(function(){
if(window.__KANTINE_LOADED){alert('Kantine Wrapper already loaded!');return;} if(window.__KANTINE_LOADED){alert('Kantine Wrapper already loaded!');return;}
var s=document.createElement('style'); var s=document.createElement('style');s.textContent='${CSS_ESCAPED}';document.head.appendChild(s);
s.textContent='${CSS_ESCAPED}'; // Inject JS logic
document.head.appendChild(s);
var sc=document.createElement('script'); var sc=document.createElement('script');
sc.textContent=$(echo "$JS_CONTENT" | python3 -c "import sys,json; print(json.dumps(sys.stdin.read()))" 2>/dev/null || echo "$JS_CONTENT" | sed 's/\\/\\\\/g' | sed "s/'/\\\\'/g" | sed 's/"/\\\\"/g' | tr '\n' ' ' | sed 's/^/"/' | sed 's/$/"/'); sc.textContent=$(echo "$JS_MINIFIED" | python3 -c "import sys,json; print(json.dumps(sys.stdin.read()))" 2>/dev/null || echo "$JS_MINIFIED" | sed 's/\\/\\\\/g' | sed "s/'/\\\\'/g" | sed 's/"/\\\\"/g' | tr '\n' ' ' | sed 's/^/"/' | sed 's/$/"/');
document.head.appendChild(sc); document.head.appendChild(sc);
})(); })();
PAYLOADEOF PAYLOADEOF
@@ -239,12 +244,11 @@ fi
# Embed the bookmarklet URL inline # Embed the bookmarklet URL inline
echo "document.getElementById('bookmarklet-link').href = " >> "$DIST_DIR/install.html" echo "document.getElementById('bookmarklet-link').href = " >> "$DIST_DIR/install.html"
echo "$JS_CONTENT" | python3 -c " echo "$JS_MINIFIED" | python3 -c "
import sys, json, urllib.parse import sys, json, urllib.parse
# 1. Read JS and Replace VERSION + Favicon # 1. Read JS and Replace VERSION + Favicon
js_template = sys.stdin.read() js = sys.stdin.read()
js = js_template.replace('{{VERSION}}', '$VERSION').replace('{{FAVICON_DATA_URI}}', '$FAVICON_URL')
# 2. Prepare CSS for injection via createElement('style') # 2. Prepare CSS for injection via createElement('style')
css = open('$CSS_FILE').read().replace('\n', ' ').replace(' ', ' ') css = open('$CSS_FILE').read().replace('\n', ' ').replace(' ', ' ')

View File

@@ -1,3 +1,6 @@
## v1.6.8 (2026-03-06)
-**Performance**: Das JavaScript für das Kantinen-Bookmarklet wird nun beim Build-Prozess (via Terser) minimiert, was die Länge der injizierten URL spürbar reduziert.
## v1.6.7 (2026-03-06) ## v1.6.7 (2026-03-06)
- 🎨 **Style**: Das neue Header-Logo (`favicon_base.png`) wird nun konsequent auf 40x40px generiert und gerendert. - 🎨 **Style**: Das neue Header-Logo (`favicon_base.png`) wird nun konsequent auf 40x40px generiert und gerendert.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

16
dist/install.html vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
v1.6.7 v1.6.8