summary refs log tree commit diff
path: root/src/api/routes
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2025-06-01 08:04:30 +0200
committerRory& <root@rory.gay>2025-06-01 08:04:30 +0200
commit0ca7c01bc4a6c5ab50ac80f9a8e5d5c5db442f45 (patch)
tree8434910cae60074aa51113f9b99d3e9635ea39e0 /src/api/routes
parentAdd register with validation (diff)
downloadnodejs-final-assignment-0ca7c01bc4a6c5ab50ac80f9a8e5d5c5db442f45.tar.xz
Register works, part of login and auth middleware
Diffstat (limited to 'src/api/routes')
-rw-r--r--src/api/routes/auth/accountRoutes.js36
-rw-r--r--src/api/routes/auth/deviceRoutes.js36
-rw-r--r--src/api/routes/auth/index.js2
-rw-r--r--src/api/routes/auth/registerRoute.js20
4 files changed, 73 insertions, 21 deletions
diff --git a/src/api/routes/auth/accountRoutes.js b/src/api/routes/auth/accountRoutes.js
new file mode 100644

index 0000000..6655ecb --- /dev/null +++ b/src/api/routes/auth/accountRoutes.js
@@ -0,0 +1,36 @@ +import { deleteUser, loginUser, registerUser } from '#db/index.js'; +import { AuthDto, RegisterDto } from '#dto/index.js'; + +export const registerRoute = { + route: '/auth/register', + async onPost(req, res) { + const data = await RegisterDto.create(req.body); + const registerResult = await registerUser(data); + res.send(registerResult); + } +}; + +export const loginRoute = { + route: '/auth/login', + /** + * + * @param req {Request} + * @param res + * @returns {Promise<WhoAmIDto>} + */ + async onPost(req, res) { + const data = await AuthDto.create(req.body); + console.log(req.headers['user-agent']); + const loginResult = await loginUser(data, req.headers['user-agent']); + res.send(loginResult); + } +}; + +export const deleteRoute = { + route: '/auth/delete', + async onDelete(req, res) { + const data = await AuthDto.create(req.body); + await deleteUser(data); + res.status(204).send(); + } +}; diff --git a/src/api/routes/auth/deviceRoutes.js b/src/api/routes/auth/deviceRoutes.js new file mode 100644
index 0000000..6655ecb --- /dev/null +++ b/src/api/routes/auth/deviceRoutes.js
@@ -0,0 +1,36 @@ +import { deleteUser, loginUser, registerUser } from '#db/index.js'; +import { AuthDto, RegisterDto } from '#dto/index.js'; + +export const registerRoute = { + route: '/auth/register', + async onPost(req, res) { + const data = await RegisterDto.create(req.body); + const registerResult = await registerUser(data); + res.send(registerResult); + } +}; + +export const loginRoute = { + route: '/auth/login', + /** + * + * @param req {Request} + * @param res + * @returns {Promise<WhoAmIDto>} + */ + async onPost(req, res) { + const data = await AuthDto.create(req.body); + console.log(req.headers['user-agent']); + const loginResult = await loginUser(data, req.headers['user-agent']); + res.send(loginResult); + } +}; + +export const deleteRoute = { + route: '/auth/delete', + async onDelete(req, res) { + const data = await AuthDto.create(req.body); + await deleteUser(data); + res.status(204).send(); + } +}; diff --git a/src/api/routes/auth/index.js b/src/api/routes/auth/index.js
index 7113a17..29a07ad 100644 --- a/src/api/routes/auth/index.js +++ b/src/api/routes/auth/index.js
@@ -1 +1 @@ -export * from './registerRoute.js'; +export * from './accountRoutes.js'; diff --git a/src/api/routes/auth/registerRoute.js b/src/api/routes/auth/registerRoute.js deleted file mode 100644
index 87762d3..0000000 --- a/src/api/routes/auth/registerRoute.js +++ /dev/null
@@ -1,20 +0,0 @@ -import { registerUser } from '#db/index.js'; -import { LoginDto, RegisterDto } from '#dto/index.js'; - -export const registerRoute = { - route: '/auth/register', - async onPost(req, res) { - const data = await RegisterDto.create(req.body); - await registerUser(data); - res.send(data); - } -}; - -export const loginRoute = { - route: '/auth/login', - async onPost(req, res) { - const data = await LoginDto.create(req.body); - await registerUser(data); - res.send(data); - } -};