2022-05-03 15:27:09 +05:30
|
|
|
import deleteLocalStorageKey from 'api/browser/localstorage/remove';
|
|
|
|
|
import { LOCALSTORAGE } from 'constants/localStorage';
|
|
|
|
|
import ROUTES from 'constants/routes';
|
|
|
|
|
import history from 'lib/history';
|
|
|
|
|
import store from 'store';
|
2022-05-05 21:21:39 +05:30
|
|
|
import {
|
|
|
|
|
LOGGED_IN,
|
2022-05-19 13:43:54 +05:30
|
|
|
UPDATE_ORG,
|
2022-05-05 21:21:39 +05:30
|
|
|
UPDATE_USER,
|
|
|
|
|
UPDATE_USER_ACCESS_REFRESH_ACCESS_TOKEN,
|
|
|
|
|
UPDATE_USER_ORG_ROLE,
|
|
|
|
|
} from 'types/actions/app';
|
2022-05-03 15:27:09 +05:30
|
|
|
|
|
|
|
|
export const Logout = (): void => {
|
|
|
|
|
deleteLocalStorageKey(LOCALSTORAGE.AUTH_TOKEN);
|
|
|
|
|
deleteLocalStorageKey(LOCALSTORAGE.IS_LOGGED_IN);
|
2023-09-24 15:05:11 +05:30
|
|
|
deleteLocalStorageKey(LOCALSTORAGE.IS_IDENTIFIED_USER);
|
2022-05-05 21:21:39 +05:30
|
|
|
deleteLocalStorageKey(LOCALSTORAGE.REFRESH_AUTH_TOKEN);
|
2023-09-24 15:05:11 +05:30
|
|
|
deleteLocalStorageKey(LOCALSTORAGE.LOGGED_IN_USER_EMAIL);
|
|
|
|
|
deleteLocalStorageKey(LOCALSTORAGE.LOGGED_IN_USER_NAME);
|
|
|
|
|
deleteLocalStorageKey(LOCALSTORAGE.CHAT_SUPPORT);
|
2022-05-03 15:27:09 +05:30
|
|
|
|
|
|
|
|
store.dispatch({
|
2022-05-05 21:21:39 +05:30
|
|
|
type: LOGGED_IN,
|
2022-05-03 15:27:09 +05:30
|
|
|
payload: {
|
2022-05-05 21:21:39 +05:30
|
|
|
isLoggedIn: false,
|
2022-05-03 15:27:09 +05:30
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
store.dispatch({
|
2022-05-05 21:21:39 +05:30
|
|
|
type: UPDATE_USER_ORG_ROLE,
|
2022-05-03 15:27:09 +05:30
|
|
|
payload: {
|
2022-05-05 21:21:39 +05:30
|
|
|
org: null,
|
|
|
|
|
role: null,
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
store.dispatch({
|
|
|
|
|
type: UPDATE_USER,
|
|
|
|
|
payload: {
|
|
|
|
|
ROLE: 'VIEWER',
|
|
|
|
|
email: '',
|
|
|
|
|
name: '',
|
|
|
|
|
orgId: '',
|
|
|
|
|
orgName: '',
|
|
|
|
|
profilePictureURL: '',
|
|
|
|
|
userId: '',
|
2022-12-09 20:16:09 +05:30
|
|
|
userFlags: {},
|
2022-05-05 21:21:39 +05:30
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
store.dispatch({
|
|
|
|
|
type: UPDATE_USER_ACCESS_REFRESH_ACCESS_TOKEN,
|
|
|
|
|
payload: {
|
|
|
|
|
accessJwt: '',
|
|
|
|
|
refreshJwt: '',
|
2022-05-03 15:27:09 +05:30
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
2022-05-19 13:43:54 +05:30
|
|
|
store.dispatch({
|
|
|
|
|
type: UPDATE_ORG,
|
|
|
|
|
payload: {
|
|
|
|
|
org: [],
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
2023-09-12 19:20:14 +05:30
|
|
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
|
|
|
// @ts-ignore
|
2024-01-09 12:55:24 +05:30
|
|
|
if (window && window.Intercom) {
|
|
|
|
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
|
|
|
// @ts-ignore
|
|
|
|
|
window.Intercom('shutdown');
|
|
|
|
|
}
|
2023-09-12 19:20:14 +05:30
|
|
|
|
2022-05-03 15:27:09 +05:30
|
|
|
history.push(ROUTES.LOGIN);
|
|
|
|
|
};
|