107 lines
4.5 KiB
JavaScript
Vendored
107 lines
4.5 KiB
JavaScript
Vendored
const STORAGE_KEYS = {
|
|
ACCESS_TOKEN: 'accessToken',
|
|
REFRESH_TOKEN: 'refreshToken',
|
|
IS_AUTHENTICATED: 'isAuthenticated',
|
|
FIRST_NAME: 'firstName',
|
|
LAST_NAME: 'lastName',
|
|
EMAIL: 'email',
|
|
USER_ID: 'userId',
|
|
USER_ROLES: 'userRoles',
|
|
MENU_NAVIGATION: 'menuNavigation',
|
|
AVATAR: 'avatar',
|
|
COMPANY: 'company'
|
|
};
|
|
|
|
const StorageManager = {
|
|
save: (key, value) => {
|
|
try {
|
|
localStorage.setItem(key, JSON.stringify(value));
|
|
} catch (error) {
|
|
console.error('Failed to save data to localStorage', error);
|
|
}
|
|
},
|
|
|
|
get: (key) => {
|
|
try {
|
|
const value = localStorage.getItem(key);
|
|
return value ? JSON.parse(value) : null;
|
|
} catch (error) {
|
|
console.error('Failed to retrieve data from localStorage', error);
|
|
return null;
|
|
}
|
|
},
|
|
|
|
remove: (key) => {
|
|
try {
|
|
localStorage.removeItem(key);
|
|
} catch (error) {
|
|
console.error('Failed to remove data from localStorage', error);
|
|
}
|
|
},
|
|
|
|
clearStorage: () => {
|
|
try {
|
|
localStorage.clear();
|
|
} catch (error) {
|
|
console.error('Failed to clear localStorage', error);
|
|
}
|
|
},
|
|
|
|
saveAccessToken: (token) => StorageManager.save(STORAGE_KEYS.ACCESS_TOKEN, token),
|
|
getAccessToken: () => StorageManager.get(STORAGE_KEYS.ACCESS_TOKEN),
|
|
removeAccessToken: () => StorageManager.remove(STORAGE_KEYS.ACCESS_TOKEN),
|
|
|
|
saveRefreshToken: (token) => StorageManager.save(STORAGE_KEYS.REFRESH_TOKEN, token),
|
|
getRefreshToken: () => StorageManager.get(STORAGE_KEYS.REFRESH_TOKEN),
|
|
removeRefreshToken: () => StorageManager.remove(STORAGE_KEYS.REFRESH_TOKEN),
|
|
|
|
saveIsAuthenticated: (status) => StorageManager.save(STORAGE_KEYS.IS_AUTHENTICATED, status),
|
|
getIsAuthenticated: () => StorageManager.get(STORAGE_KEYS.IS_AUTHENTICATED),
|
|
removeIsAuthenticated: () => StorageManager.remove(STORAGE_KEYS.IS_AUTHENTICATED),
|
|
|
|
saveFirstName: (firstName) => StorageManager.save(STORAGE_KEYS.FIRST_NAME, firstName),
|
|
getFirstName: () => StorageManager.get(STORAGE_KEYS.FIRST_NAME),
|
|
removeFirstName: () => StorageManager.remove(STORAGE_KEYS.FIRST_NAME),
|
|
|
|
saveLastName: (lastName) => StorageManager.save(STORAGE_KEYS.LAST_NAME, lastName),
|
|
getLastName: () => StorageManager.get(STORAGE_KEYS.LAST_NAME),
|
|
removeLastName: () => StorageManager.remove(STORAGE_KEYS.LAST_NAME),
|
|
|
|
saveEmail: (email) => StorageManager.save(STORAGE_KEYS.EMAIL, email),
|
|
getEmail: () => StorageManager.get(STORAGE_KEYS.EMAIL),
|
|
removeEmail: () => StorageManager.remove(STORAGE_KEYS.EMAIL),
|
|
|
|
saveUserId: (userId) => StorageManager.save(STORAGE_KEYS.USER_ID, userId),
|
|
getUserId: () => StorageManager.get(STORAGE_KEYS.USER_ID),
|
|
removeUserId: () => StorageManager.remove(STORAGE_KEYS.USER_ID),
|
|
|
|
saveUserRoles: (roles) => StorageManager.save(STORAGE_KEYS.USER_ROLES, roles),
|
|
getUserRoles: () => StorageManager.get(STORAGE_KEYS.USER_ROLES),
|
|
removeUserRoles: () => StorageManager.remove(STORAGE_KEYS.USER_ROLES),
|
|
|
|
saveMenuNavigation: (navigations) => StorageManager.save(STORAGE_KEYS.MENU_NAVIGATION, navigations),
|
|
getMenuNavigation: () => StorageManager.get(STORAGE_KEYS.MENU_NAVIGATION),
|
|
removeMenuNavigation: () => StorageManager.remove(STORAGE_KEYS.MENU_NAVIGATION),
|
|
|
|
saveAvatar: (avatar) => StorageManager.save(STORAGE_KEYS.AVATAR, avatar),
|
|
getAvatar: () => StorageManager.get(STORAGE_KEYS.AVATAR),
|
|
removeAvatar: () => StorageManager.remove(STORAGE_KEYS.AVATAR),
|
|
|
|
saveCompany: (company) => StorageManager.save(STORAGE_KEYS.COMPANY, company),
|
|
getCompany: () => StorageManager.get(STORAGE_KEYS.COMPANY),
|
|
removeCompany: () => StorageManager.remove(STORAGE_KEYS.COMPANY),
|
|
|
|
saveLoginResult: (data) => {
|
|
StorageManager.saveAccessToken(data?.content?.data?.accessToken);
|
|
StorageManager.saveRefreshToken(data?.content?.data?.refreshToken);
|
|
StorageManager.saveFirstName(data?.content?.data?.firstName);
|
|
StorageManager.saveLastName(data?.content?.data?.lastName);
|
|
StorageManager.saveEmail(data?.content?.data?.email);
|
|
StorageManager.saveUserId(data?.content?.data?.userId);
|
|
StorageManager.saveUserRoles(data?.content?.data?.roles);
|
|
StorageManager.saveMenuNavigation(data?.content?.data?.menuNavigation);
|
|
StorageManager.saveIsAuthenticated(StorageManager.getUserId() != null);
|
|
StorageManager.saveAvatar(data?.content?.data?.avatar);
|
|
}
|
|
};
|