2020-07-16 10:39:05 +07:00
|
|
|
interface TokenInstance {
|
|
|
|
getToken: () => string
|
|
|
|
setToken: (token: string) => void
|
2020-07-18 11:50:25 +07:00
|
|
|
getAdditionalDataForTokenValidation: (key: string) => any
|
2020-07-16 10:39:05 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
const tokenKey = 'token'
|
|
|
|
|
|
|
|
class LocalStorageToken implements TokenInstance {
|
|
|
|
getToken = () => {
|
|
|
|
return localStorage.getItem(tokenKey) || ''
|
|
|
|
}
|
|
|
|
|
|
|
|
setToken = (token: string) => {
|
|
|
|
localStorage.setItem(tokenKey, token)
|
|
|
|
}
|
2020-07-18 11:50:25 +07:00
|
|
|
|
|
|
|
getAdditionalDataForTokenValidation = (key: string) => {
|
|
|
|
return localStorage.getItem(key)
|
|
|
|
}
|
2020-07-16 10:39:05 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
export { LocalStorageToken, TokenInstance }
|