mirror of
https://github.com/ente-io/ente.git
synced 2025-05-24 20:19:17 +00:00
69 lines
1.9 KiB
TypeScript
69 lines
1.9 KiB
TypeScript
import log from "@/next/log";
|
|
|
|
export enum LS_KEYS {
|
|
USER = "user",
|
|
SESSION = "session",
|
|
KEY_ATTRIBUTES = "keyAttributes",
|
|
ORIGINAL_KEY_ATTRIBUTES = "originalKeyAttributes",
|
|
SUBSCRIPTION = "subscription",
|
|
FAMILY_DATA = "familyData",
|
|
IS_FIRST_LOGIN = "isFirstLogin",
|
|
JUST_SIGNED_UP = "justSignedUp",
|
|
SHOW_BACK_BUTTON = "showBackButton",
|
|
EXPORT = "export",
|
|
THUMBNAIL_FIX_STATE = "thumbnailFixState",
|
|
LIVE_PHOTO_INFO_SHOWN_COUNT = "livePhotoInfoShownCount",
|
|
// LOGS = "logs",
|
|
USER_DETAILS = "userDetails",
|
|
COLLECTION_SORT_BY = "collectionSortBy",
|
|
THEME = "theme",
|
|
WAIT_TIME = "waitTime",
|
|
API_ENDPOINT = "apiEndpoint",
|
|
// Moved to the new wrapper @/next/local-storage
|
|
// LOCALE = 'locale',
|
|
MAP_ENABLED = "mapEnabled",
|
|
SRP_SETUP_ATTRIBUTES = "srpSetupAttributes",
|
|
SRP_ATTRIBUTES = "srpAttributes",
|
|
CF_PROXY_DISABLED = "cfProxyDisabled",
|
|
REFERRAL_SOURCE = "referralSource",
|
|
CLIENT_PACKAGE = "clientPackage",
|
|
}
|
|
|
|
export const setData = (key: LS_KEYS, value: object) => {
|
|
if (typeof localStorage === "undefined") {
|
|
return null;
|
|
}
|
|
localStorage.setItem(key, JSON.stringify(value));
|
|
};
|
|
|
|
export const removeData = (key: LS_KEYS) => {
|
|
if (typeof localStorage === "undefined") {
|
|
return null;
|
|
}
|
|
localStorage.removeItem(key);
|
|
};
|
|
|
|
export const getData = (key: LS_KEYS) => {
|
|
try {
|
|
if (
|
|
typeof localStorage === "undefined" ||
|
|
typeof key === "undefined" ||
|
|
typeof localStorage.getItem(key) === "undefined" ||
|
|
localStorage.getItem(key) === "undefined"
|
|
) {
|
|
return null;
|
|
}
|
|
const data = localStorage.getItem(key);
|
|
return data && JSON.parse(data);
|
|
} catch (e) {
|
|
log.error(`Failed to Parse JSON for key ${key}`, e);
|
|
}
|
|
};
|
|
|
|
export const clearData = () => {
|
|
if (typeof localStorage === "undefined") {
|
|
return null;
|
|
}
|
|
localStorage.clear();
|
|
};
|