@@ -41,6 +41,16 @@ const resolveStorage = (): Storage => {
4141 }
4242} ;
4343
44+ const clearLegacySessionToken = ( ) => {
45+ if ( typeof window === 'undefined' ) return ;
46+
47+ try {
48+ window . sessionStorage ?. removeItem ( ACCESS_TOKEN_KEY ) ;
49+ } catch {
50+ // Ignore restricted sessionStorage access (privacy mode, sandboxed contexts).
51+ }
52+ } ;
53+
4454export function useAccessToken ( ) {
4555 const [ state , setState ] = useState < AccessTokenState > ( {
4656 token : null ,
@@ -60,7 +70,7 @@ export function useAccessToken() {
6070
6171 if ( ! token && legacyToken ) {
6272 storage . setItem ( ACCESS_TOKEN_KEY , legacyToken ) ;
63- window . sessionStorage ?. removeItem ( ACCESS_TOKEN_KEY ) ;
73+ clearLegacySessionToken ( ) ;
6474 }
6575
6676 setState ( {
@@ -83,7 +93,7 @@ export function useAccessToken() {
8393
8494 const storage = resolveStorage ( ) ;
8595 storage . setItem ( ACCESS_TOKEN_KEY , normalized ) ;
86- if ( typeof window !== 'undefined' ) window . sessionStorage ?. removeItem ( ACCESS_TOKEN_KEY ) ;
96+ clearLegacySessionToken ( ) ;
8797
8898 setState ( {
8999 token : normalized ,
@@ -95,7 +105,7 @@ export function useAccessToken() {
95105 const clearToken = ( ) => {
96106 const storage = resolveStorage ( ) ;
97107 storage . removeItem ( ACCESS_TOKEN_KEY ) ;
98- if ( typeof window !== 'undefined' ) window . sessionStorage ?. removeItem ( ACCESS_TOKEN_KEY ) ;
108+ clearLegacySessionToken ( ) ;
99109
100110 setState ( {
101111 token : null ,
0 commit comments