[+] SDK
This commit is contained in:
@@ -0,0 +1,35 @@
|
|||||||
|
|
||||||
|
// db.users: Signup table map<username, password>
|
||||||
|
// db.user: Current logged-in user
|
||||||
|
const db = localStorage
|
||||||
|
|
||||||
|
export function signup(username: string, password: string)
|
||||||
|
{
|
||||||
|
if (!db.users)
|
||||||
|
db.users = JSON.stringify({})
|
||||||
|
|
||||||
|
const users = JSON.parse(db.users)
|
||||||
|
if (users[username])
|
||||||
|
throw new Error('User already exists')
|
||||||
|
|
||||||
|
users[username] = password
|
||||||
|
}
|
||||||
|
|
||||||
|
export function login(username: string, password: string)
|
||||||
|
{
|
||||||
|
const users = JSON.parse(db.users)
|
||||||
|
if (users[username] !== password)
|
||||||
|
throw new Error('Invalid credentials')
|
||||||
|
|
||||||
|
db.user = username
|
||||||
|
}
|
||||||
|
|
||||||
|
export function logout()
|
||||||
|
{
|
||||||
|
delete db.user
|
||||||
|
}
|
||||||
|
|
||||||
|
export function isLoggedIn()
|
||||||
|
{
|
||||||
|
return !!db.user
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user