@revoloo/cypress6
Version:
Cypress.io end to end testing tool
49 lines (37 loc) • 1.01 kB
JavaScript
import { action, computed, observable } from 'mobx'
import User from '../lib/user-model'
class AuthStore {
isLoading = true
isShowingLogin = false
loginUTM = null
user = null
message = null
get isAuthenticated () {
return !!this.user && !!this.user.authToken
}
setLoading (isLoading) {
this.isLoading = isLoading
}
setMessage (message) {
this.message = message
}
openLogin (onCloseCb, loginUTM = null) {
this.onCloseCb = onCloseCb
this.setMessage(null)
this.isShowingLogin = true
this.loginUTM = loginUTM
}
closeLogin () {
if (this.onCloseCb) {
this.onCloseCb(this.isAuthenticated)
}
this.setMessage(null)
this.isShowingLogin = false
this.loginUTM = false
}
setUser (user) {
const isValid = user && user.authToken
this.user = isValid ? new User(user) : null
}
}
export default new AuthStore()