The PWA already existed but nothing told a mobile visitor it could be installed - Chrome own default mini-infobar is easy to miss, and Safari has no browser-driven prompt at all. New pwaInstall.ts (self- mounting like toast.ts) captures beforeinstallprompt as early as possible (a top-level side effect of importing the module from Shell.ts, live before boot() even starts its async login check, since that event never replays for a listener that attached too late) and shows a banner with a real Installer button on Chrome/Edge/Android, or manual Share-then-home-screen instructions on iOS Safari where no such event exists at all. Mobile-only, suppressed once already running standalone, and a close click remembers not to ask again. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| build.mjs | ||
| package-lock.json | ||
| package.json | ||
| tsconfig.json | ||