UNPKG

@react-native-firebase/app

Version:

A well tested, feature rich Firebase implementation for React Native, supporting iOS & Android. Individual module support for Admob, Analytics, Auth, Crash Reporting, Cloud Firestore, Database, Dynamic Links, Functions, Messaging (FCM), Remote Config, Sto

48 lines (38 loc) 1.14 kB
export const memoryStorage = new Map(); export const prefix = '@react-native-firebase:'; const asyncStorageMemory = { setItem(key, value) { memoryStorage.set(key, value); return Promise.resolve(); }, getItem(key) { const hasValue = memoryStorage.has(key); if (hasValue) { return Promise.resolve(memoryStorage.get(key)); } return Promise.resolve(null); }, removeItem: function (key) { memoryStorage.delete(key); return Promise.resolve(); }, }; let asyncStorage = asyncStorageMemory; export async function getReactNativeAsyncStorageInternal() { return asyncStorage; } export function setReactNativeAsyncStorageInternal(asyncStorageInstance) { asyncStorage = asyncStorageInstance || asyncStorageMemory; } export function isMemoryStorage() { return asyncStorage === asyncStorageMemory; } export async function setItem(key, value) { return await asyncStorage.setItem(prefix + key, value); } export async function getItem(key) { return await asyncStorage.getItem(prefix + key); } export async function removeItem(key) { return await asyncStorage.removeItem(prefix + key); }