From 93f82f43983165d8661024fb50ebe4d56ddd9343 Mon Sep 17 00:00:00 2001 From: Andrew Bolyachevets Date: Tue, 1 Aug 2023 10:24:20 -0700 Subject: [PATCH] remove currentAccount from session storage if token has expired (#637) * remove currentAccount from session storage if token has expired --- package-lock.json | 2 +- package.json | 2 +- src/main.ts | 11 ++++++++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 32e92bbbb..1821fb67d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "name-request", - "version": "4.1.9", + "version": "4.1.10", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 8717cb77e..4fd81aa8f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "name-request", - "version": "4.1.9", + "version": "4.1.10", "private": true, "appName": "Name Request UI", "sbcName": "SBC Common Components", diff --git a/src/main.ts b/src/main.ts index 7569b7e22..910c716b7 100644 --- a/src/main.ts +++ b/src/main.ts @@ -8,6 +8,8 @@ import KeycloakService from 'sbc-common-components/src/services/keycloak.service import * as Sentry from '@sentry/browser' import * as Integrations from '@sentry/integrations' import { AllDesignationsList, ConversionTypes, Designations, RequestActions, UsaStateCodes } from '@/list-data' +import { SessionStorageKeys } from 'sbc-common-components/src/util/constants' +import ConfigHelper from 'sbc-common-components/src/util/config-helper' // NB: order matters - do not change import 'quill/dist/quill.core.css' @@ -104,7 +106,14 @@ async function syncSession () { // Auto authenticate user only if they are not trying a login or logout if (!isSigningIn() && !isSigningOut()) { // Initialize token service which will do a check-sso to initiate session - await KeycloakService.initializeToken(null).then(() => {}).catch(err => { + await KeycloakService.initializeToken(null).then(() => { + const token = ConfigHelper.getFromSession(SessionStorageKeys.KeyCloakToken) + if (!token) { + // when there is no token in session storage, e.g. because token has expired due to user inactivity, + // make sure to clear out account info saved on previous login + ConfigHelper.removeFromSession(SessionStorageKeys.CurrentAccount) + } + }).catch(err => { if (err?.message !== 'NOT_AUTHENTICATED') { throw err }