@applicaster/zapp-react-native-utils
Version:
Applicaster Zapp React Native utilities package
25 lines (20 loc) • 761 B
text/typescript
import { DEFAULT_STORAGE_NAMESPACE } from "./storageWebUtils.web";
import { getSync as getLocalStorage } from "./localStorageServiceSync.web";
import { getSync as getSessionStorage } from "./sessionStorageServiceSync.web";
export const getFromSessionOrLocalStorage = (
key: string,
namespace: string = DEFAULT_STORAGE_NAMESPACE
) => getSessionStorage(key, namespace) || getLocalStorage(key, namespace);
export const resolveStorageContextKey = (storageKey: string) => {
if (!storageKey) {
return;
}
const splitKey = storageKey.split(".");
const namespaceOrKey = splitKey[0];
const key = splitKey[1];
if (!key) {
return getFromSessionOrLocalStorage(key);
} else {
return getFromSessionOrLocalStorage(key, namespaceOrKey);
}
};