feat(v0.3): QR connect (M5) + PWA installable (M4)

- M5: 📱 toolbar button → modal with a client-side QR of location.origin
  (shareable when opened via the LAN IP) + localhost tip
- M4: manifest.webmanifest + icon.svg + sw.js (network-first, never intercepts
  /term or /hook) + registration in main.ts; apple-touch + theme-color meta
- Browser-verified: QR canvas renders, SW 'controlled', manifest linked,
  no console errors. 199 tests green, build ok.
This commit is contained in:
Yaojia Wang
2026-06-17 18:32:57 +02:00
parent eaeacf3a78
commit fbc218c57f
7 changed files with 180 additions and 1 deletions

7
public/icon.svg Normal file
View File

@@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
<rect width="512" height="512" rx="96" fill="#1a1a1a"/>
<g fill="none" stroke="#3fb950" stroke-width="34" stroke-linecap="round" stroke-linejoin="round">
<polyline points="150,196 226,256 150,316"/>
<line x1="268" y1="320" x2="372" y2="320"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 357 B