ntfy/web/src/app/Session.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

42 lines
735 B
JavaScript
Raw Normal View History

import sessionReplica from "./SessionReplica";
2022-12-03 09:37:48 +13:00
class Session {
constructor(replica) {
this.replica = replica;
}
2022-12-03 09:37:48 +13:00
store(username, token) {
localStorage.setItem("user", username);
localStorage.setItem("token", token);
this.replica.store(username, token);
2022-12-03 09:37:48 +13:00
}
reset() {
localStorage.removeItem("user");
localStorage.removeItem("token");
this.replica.reset();
2022-12-03 09:37:48 +13:00
}
2022-12-26 16:29:55 +13:00
resetAndRedirect(url) {
this.reset();
window.location.href = url;
}
2022-12-08 14:44:20 +13:00
exists() {
return this.username() && this.token();
}
2022-12-03 09:37:48 +13:00
username() {
return localStorage.getItem("user");
}
token() {
return localStorage.getItem("token");
}
}
const session = new Session(sessionReplica);
2022-12-03 09:37:48 +13:00
export default session;