add push settings

This commit is contained in:
lendry
2026-07-07 13:58:01 +03:00
parent 1bd95fa99e
commit 57925fb2c4
25 changed files with 3036 additions and 1756 deletions

View File

@@ -0,0 +1,32 @@
export interface FirebasePublicConfig {
enabled: boolean;
projectId: string;
apiKey: string;
appId: string;
messagingSenderId: string;
vapidKey: string;
}
export function parseFirebasePublicConfig(settings: Record<string, string>): FirebasePublicConfig | null {
const enabled = ['true', '1', 'yes'].includes((settings.FIREBASE_PUSH_ENABLED ?? '').trim().toLowerCase());
if (!enabled) return null;
const projectId = settings.FIREBASE_PROJECT_ID?.trim() ?? '';
const apiKey = settings.FIREBASE_WEB_API_KEY?.trim() ?? '';
const appId = settings.FIREBASE_WEB_APP_ID?.trim() ?? '';
const messagingSenderId = settings.FIREBASE_WEB_MESSAGING_SENDER_ID?.trim() ?? '';
const vapidKey = settings.FIREBASE_WEB_VAPID_KEY?.trim() ?? '';
if (!projectId || !apiKey || !appId || !messagingSenderId || !vapidKey) {
return null;
}
return {
enabled: true,
projectId,
apiKey,
appId,
messagingSenderId,
vapidKey
};
}