|
@@ -14,16 +14,17 @@ module.exports = class Provider extends RequestClient {
|
|
|
this.authProvider = opts.authProvider || this.provider
|
|
|
this.name = this.opts.name || _getName(this.id)
|
|
|
this.tokenKey = `companion-${this.id}-auth-token`
|
|
|
+ this.storage = opts.storage || localStorage
|
|
|
}
|
|
|
|
|
|
get defaultHeaders () {
|
|
|
- return Object.assign({}, super.defaultHeaders, {'uppy-auth-token': localStorage.getItem(this.tokenKey)})
|
|
|
+ return Object.assign({}, super.defaultHeaders, {'uppy-auth-token': this.storage.getItem(this.tokenKey)})
|
|
|
}
|
|
|
|
|
|
// @todo(i.olarewaju) consider whether or not this method should be exposed
|
|
|
setAuthToken (token) {
|
|
|
// @todo(i.olarewaju) add fallback for OOM storage
|
|
|
- localStorage.setItem(this.tokenKey, token)
|
|
|
+ this.storage.setItem(this.tokenKey, token)
|
|
|
}
|
|
|
|
|
|
checkAuth () {
|
|
@@ -48,7 +49,7 @@ module.exports = class Provider extends RequestClient {
|
|
|
logout (redirect = location.href) {
|
|
|
return this.get(`${this.id}/logout?redirect=${redirect}`)
|
|
|
.then((res) => {
|
|
|
- localStorage.removeItem(this.tokenKey)
|
|
|
+ this.storage.removeItem(this.tokenKey)
|
|
|
return res
|
|
|
})
|
|
|
}
|