forked from jsnbuchanan/crowd-funder-for-time-pwa
feat: integrate PWA functionality with platform service architecture
- Add PWA methods to PlatformService interface (registerServiceWorker, isPWAEnabled) - Implement PWA logic in WebPlatformService with service worker registration - Add no-op PWA implementations for Capacitor and Electron platforms - Create PWAInstallPrompt component with custom install UI and event handling - Integrate PWA components into App.vue with platform-aware conditional rendering - Ensure PWA features only load on web platform via platform service pattern - Centralize PWA logic in platform service for consistent cross-platform behavior - Add comprehensive PWA documentation and installation flow support Platform service now handles all PWA operations including service worker registration, install prompts, and platform-specific feature detection.
This commit is contained in:
@@ -645,6 +645,17 @@ export class WebPlatformService implements PlatformService {
|
||||
throw new Error("Camera rotation not implemented in web platform");
|
||||
}
|
||||
|
||||
// --- PWA/Web-only methods ---
|
||||
public registerServiceWorker(): void {
|
||||
if (this.isPWAEnabled) {
|
||||
import("@/registerServiceWorker");
|
||||
}
|
||||
}
|
||||
|
||||
public get isPWAEnabled(): boolean {
|
||||
return process.env.VITE_PWA_ENABLED === "true";
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if running in a worker context
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user