import { IS_BROWSER, NEXT_PUBLIC_SITE_NAME } from '../configs' import { UserProps } from '../state/user/types' const prefix = `${NEXT_PUBLIC_SITE_NAME}_STORAGE` const loginKey = `${prefix}_USER_DATA` const infoRegisterAccountKey = `${prefix}_INFO_REGISTER_ACCOUNT` const LocalStorage = IS_BROWSER ? localStorage : null export const get = (key) => { return LocalStorage?.getItem(key) } export const set = (key, value) => { return LocalStorage?.setItem(key, value) } export const remove = (key) => { return LocalStorage?.removeItem(key) } export const clearStorage = () => { return LocalStorage?.clear() } export const getUserData = (): UserProps | { publicAddress?: string; accessToken?: string } => { const userData = get(loginKey) if (userData) return JSON.parse(userData) return {} } export const setUserData = (value) => { return set(loginKey, value) } export const removeUserData = () => { return remove(loginKey) } export const getInfoRegisterAccount = () => { const userData = get(infoRegisterAccountKey) if (userData) return JSON.parse(userData) return {} } export const setInfoRegisterAccount = (value) => { return set(infoRegisterAccountKey, JSON.stringify(value)) } export const removeInfoRegisterAccount = () => { return remove(infoRegisterAccountKey) }