@@ -94,22 +94,25 @@ export const PayloadSessionProvider = <TSlug extends CollectionSlug = "users">({
94
94
// Set loading to false
95
95
setIsLoading ( false ) ;
96
96
97
- // If the response is not ok or the user is not present, return null
98
- if ( ! response . ok || ! result . user ) {
97
+ // If the response is ok
98
+ if ( response . ok && result . user ) {
99
+ // Update the local session
100
+ const localSession = {
101
+ user : result . user ,
102
+ expires : new Date ( result . exp * 1000 ) . toISOString ( ) ,
103
+ collection : result . collection ,
104
+ strategy : result . user . _strategy ?? result . strategy , // Extract the strategy from user._strategy or for legacy support directly from the result
105
+ } ;
106
+ setLocalSession ( localSession ) ;
107
+
108
+ // Return the session
109
+ return localSession ;
110
+ } else {
111
+ // Reset the session
112
+ setLocalSession ( null ) ;
113
+
99
114
return null ;
100
115
}
101
-
102
- // Update the local session
103
- const localSession = {
104
- user : result . user ,
105
- expires : new Date ( result . exp * 1000 ) . toISOString ( ) ,
106
- collection : result . collection ,
107
- strategy : result . user . _strategy ?? result . strategy , // Extract the strategy from user._strategy or for legacy support directly from the result
108
- } ;
109
- setLocalSession ( localSession ) ;
110
-
111
- // Return the session
112
- return localSession ;
113
116
} ,
114
117
[ userCollectionSlug ] ,
115
118
) ;
@@ -157,22 +160,24 @@ export const PayloadSessionProvider = <TSlug extends CollectionSlug = "users">({
157
160
strategy ?: string ;
158
161
} = await response . json ( ) ;
159
162
160
- // If the response is not ok or the user is not present, return null
161
- if ( ! response . ok || ! result . user ) {
162
- return null ;
163
- }
163
+ if ( response . ok && result . user ) {
164
+ // Update the local session
165
+ const localSession = {
166
+ user : result . user ,
167
+ expires : new Date ( result . exp * 1000 ) . toISOString ( ) ,
168
+ collection : result . user . collection ?? userCollectionSlug ,
169
+ strategy : result . user . _strategy ?? result . strategy , // Extract the strategy from user._strategy or for legacy support directly from the result
170
+ } ;
171
+ setLocalSession ( localSession ) ;
164
172
165
- // Update the local session
166
- const localSession = {
167
- user : result . user ,
168
- expires : new Date ( result . exp * 1000 ) . toISOString ( ) ,
169
- collection : result . user . collection ?? userCollectionSlug ,
170
- strategy : result . user . _strategy ?? result . strategy , // Extract the strategy from user._strategy or for legacy support directly from the result
171
- } ;
172
- setLocalSession ( localSession ) ;
173
+ // Return the session
174
+ return localSession ;
175
+ } else {
176
+ // Reset the session
177
+ setLocalSession ( null ) ;
173
178
174
- // Return the session
175
- return localSession ;
179
+ return null ;
180
+ }
176
181
} ;
177
182
178
183
return (
0 commit comments