Skip to content

Commit 6ab4c1e

Browse files
feat: improve setUserToken to set refresh token (#721)
Improve `setUserToken` to set refresh token as second parameter and fix `setUserToken` of `local` scheme.
1 parent a6f773a commit 6ab4c1e

File tree

3 files changed

+16
-5
lines changed

3 files changed

+16
-5
lines changed

src/core/auth.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,13 +169,13 @@ export default class Auth {
169169
})
170170
}
171171

172-
setUserToken (token) {
172+
setUserToken (token, refreshToken?) {
173173
if (!this.strategy.setUserToken) {
174174
this.strategy.token.set(token)
175175
return Promise.resolve()
176176
}
177177

178-
return Promise.resolve(this.strategy.setUserToken(token)).catch((error) => {
178+
return Promise.resolve(this.strategy.setUserToken(token, refreshToken)).catch((error) => {
179179
this.callOnError(error, { method: 'setUserToken' })
180180
return Promise.reject(error)
181181
})

src/schemes/local.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getProp, getResponseProp } from '../utils'
1+
import { getResponseProp } from '../utils'
22
import Token from '../inc/token'
33
import RequestHandler from '../inc/request-handler'
44
import type { SchemeCheck, SchemeOptions, HTTPRequest } from '../'
@@ -163,8 +163,8 @@ export default class LocalScheme extends BaseScheme<typeof DEFAULTS> {
163163
return response
164164
}
165165

166-
async setUserToken (tokenValue) {
167-
this.token.set(getProp(tokenValue, this.options.token.property))
166+
async setUserToken (token) {
167+
this.token.set(token)
168168

169169
// Fetch user
170170
return this.fetchUser()

src/schemes/refresh.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,17 @@ export default class RefreshScheme extends LocalScheme {
166166
})
167167
}
168168

169+
async setUserToken (token, refreshToken?) {
170+
this.token.set(token)
171+
172+
if (refreshToken) {
173+
this.refreshToken.set(refreshToken)
174+
}
175+
176+
// Fetch user
177+
return this.fetchUser()
178+
}
179+
169180
reset ({ resetInterceptor = true } = {}) {
170181
this.$auth.setUser(false)
171182
this.token.reset()

0 commit comments

Comments
 (0)