UNPKG

capacitor-firebase-kit

Version:

Provider-less Firebase Kit - Universal Firebase services integration for React, React Native, and Capacitor apps

220 lines 10.4 kB
import { firebaseKitSingleton } from './core/firebase-kit-singleton'; // Main FirebaseKit class class FirebaseKit { async initialize(config) { await firebaseKitSingleton.initialize(config); } get analytics() { if (!this.analyticsService) { this.analyticsService = { logEvent: async (eventName, eventParams) => { const service = await firebaseKitSingleton.getService('analytics'); return service.logEvent(eventName, eventParams); }, setUserId: async (userId) => { const service = await firebaseKitSingleton.getService('analytics'); return service.setUserId(userId); }, setUserProperties: async (properties) => { const service = await firebaseKitSingleton.getService('analytics'); return service.setUserProperties(properties); }, setCurrentScreen: async (screenName, screenClassOverride) => { const service = await firebaseKitSingleton.getService('analytics'); return service.setCurrentScreen(screenName, screenClassOverride); }, setEnabled: async (enabled) => { const service = await firebaseKitSingleton.getService('analytics'); return service.setEnabled(enabled); }, isSupported: async () => { const service = await firebaseKitSingleton.getService('analytics'); return service.isSupported(); }, }; } return this.analyticsService; } get appCheck() { if (!this.appCheckService) { this.appCheckService = { initialize: async (options) => { const service = await firebaseKitSingleton.getService('appCheck'); return service.initialize(options); }, getToken: async (forceRefresh) => { const service = await firebaseKitSingleton.getService('appCheck'); return service.getToken(forceRefresh); }, setTokenAutoRefreshEnabled: async (enabled) => { const service = await firebaseKitSingleton.getService('appCheck'); return service.setTokenAutoRefreshEnabled(enabled); }, }; } return this.appCheckService; } get adMob() { if (!this.adMobService) { this.adMobService = { initialize: async (options) => { const service = await firebaseKitSingleton.getService('adMob'); return service.initialize(options); }, showBanner: async (options) => { const service = await firebaseKitSingleton.getService('adMob'); return service.showBanner(options); }, hideBanner: async () => { const service = await firebaseKitSingleton.getService('adMob'); return service.hideBanner(); }, resumeBanner: async () => { const service = await firebaseKitSingleton.getService('adMob'); return service.resumeBanner(); }, removeBanner: async () => { const service = await firebaseKitSingleton.getService('adMob'); return service.removeBanner(); }, prepareInterstitial: async (options) => { const service = await firebaseKitSingleton.getService('adMob'); return service.prepareInterstitial(options); }, showInterstitial: async () => { const service = await firebaseKitSingleton.getService('adMob'); return service.showInterstitial(); }, prepareRewardVideoAd: async (options) => { const service = await firebaseKitSingleton.getService('adMob'); return service.prepareRewardVideoAd(options); }, showRewardVideoAd: async () => { const service = await firebaseKitSingleton.getService('adMob'); return service.showRewardVideoAd(); }, setApplicationMuted: async (muted) => { const service = await firebaseKitSingleton.getService('adMob'); return service.setApplicationMuted(muted); }, setApplicationVolume: async (volume) => { const service = await firebaseKitSingleton.getService('adMob'); return service.setApplicationVolume(volume); }, }; } return this.adMobService; } get crashlytics() { if (!this.crashlyticsService) { this.crashlyticsService = { crash: async () => { const service = await firebaseKitSingleton.getService('crashlytics'); return service.crash(); }, setUserId: async (userId) => { const service = await firebaseKitSingleton.getService('crashlytics'); return service.setUserId(userId); }, log: async (message) => { const service = await firebaseKitSingleton.getService('crashlytics'); return service.log(message); }, setEnabled: async (enabled) => { const service = await firebaseKitSingleton.getService('crashlytics'); return service.setEnabled(enabled); }, isEnabled: async () => { const service = await firebaseKitSingleton.getService('crashlytics'); return service.isEnabled(); }, recordException: async (error) => { const service = await firebaseKitSingleton.getService('crashlytics'); return service.recordException(error); }, setCustomKey: async (key, value) => { const service = await firebaseKitSingleton.getService('crashlytics'); return service.setCustomKey(key, value); }, setCustomKeys: async (customKeys) => { const service = await firebaseKitSingleton.getService('crashlytics'); return service.setCustomKeys(customKeys); }, }; } return this.crashlyticsService; } get performance() { if (!this.performanceService) { this.performanceService = { startTrace: async (traceName) => { const service = await firebaseKitSingleton.getService('performance'); return service.startTrace(traceName); }, stopTrace: async (traceName) => { const service = await firebaseKitSingleton.getService('performance'); return service.stopTrace(traceName); }, incrementMetric: async (traceName, metricName, value) => { const service = await firebaseKitSingleton.getService('performance'); return service.incrementMetric(traceName, metricName, value); }, setEnabled: async (enabled) => { const service = await firebaseKitSingleton.getService('performance'); return service.setEnabled(enabled); }, isEnabled: async () => { const service = await firebaseKitSingleton.getService('performance'); return service.isEnabled(); }, }; } return this.performanceService; } get remoteConfig() { if (!this.remoteConfigService) { this.remoteConfigService = { initialize: async (options) => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.initialize(options); }, fetchAndActivate: async () => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.fetchAndActivate(); }, fetchConfig: async () => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.fetchConfig(); }, activate: async () => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.activate(); }, getValue: async (key) => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.getValue(key); }, getString: async (key) => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.getString(key); }, getNumber: async (key) => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.getNumber(key); }, getBoolean: async (key) => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.getBoolean(key); }, setLogLevel: async (logLevel) => { const service = await firebaseKitSingleton.getService('remoteConfig'); return service.setLogLevel(logLevel); }, }; } return this.remoteConfigService; } } // Export singleton instance export const firebaseKit = new FirebaseKit(); //# sourceMappingURL=firebase-kit.js.map