diff --git a/package.json b/package.json index c81d4df..0837bc7 100644 --- a/package.json +++ b/package.json @@ -5,6 +5,7 @@ "test": "echo \"Error: no test specified\" && exit 1", "build": "bun build ./src/index.ts --compile --target bun --minify-whitespace --minify-syntax --minify-identifiers --outfile dist/server", "dev": "bun run --watch src/index.ts", + "map": "madge --image structure.svg src/index.ts", "route:sync": "bun run ./scripts/sync-routes.ts", "env:publish": "bun run ./scripts/create-example-env.ts" }, diff --git a/src/modules/auth/services/loginFromSystem.service.ts b/src/modules/auth/services/loginFromSystem.service.ts index 9b5f803..8611558 100644 --- a/src/modules/auth/services/loginFromSystem.service.ts +++ b/src/modules/auth/services/loginFromSystem.service.ts @@ -1 +1,9 @@ -export const loginFromSystemService = (userId: string) => {}; +import { UserHeaderInformation } from "../../../helpers/http/userHeader/getUserHeaderInformation/types"; +import { createUserSessionService } from "../../userSession/services/createUserSession.service"; + +export const loginFromSystemService = ( + userId: string, + userHeaderInfo: UserHeaderInformation +) => { + // const userSession = await createUserSessionService() +}; diff --git a/structure.svg b/structure.svg new file mode 100644 index 0000000..7e37f6d --- /dev/null +++ b/structure.svg @@ -0,0 +1,1261 @@ + + + + + + +G + + + +constants/cookie.keys.ts + +constants/cookie.keys.ts + + + +helpers/callback/httpResponse.ts + +helpers/callback/httpResponse.ts + + + +helpers/error/handler/index.ts + +helpers/error/handler/index.ts + + + +helpers/error/handler/index.ts->helpers/callback/httpResponse.ts + + + + + +helpers/error/instances/app.ts + +helpers/error/instances/app.ts + + + +helpers/error/handler/index.ts->helpers/error/instances/app.ts + + + + + +utils/databases/prisma/error/codeList.ts + +utils/databases/prisma/error/codeList.ts + + + +helpers/error/handler/index.ts->utils/databases/prisma/error/codeList.ts + + + + + +helpers/error/instances/forwarder.ts + +helpers/error/instances/forwarder.ts + + + +helpers/error/instances/forwarder.ts->helpers/error/instances/app.ts + + + + + +helpers/http/jwt/decode/index.ts + +helpers/http/jwt/decode/index.ts + + + +helpers/http/jwt/decode/index.ts->helpers/error/instances/app.ts + + + + + +modules/auth/auth.types.ts + +modules/auth/auth.types.ts + + + +helpers/http/jwt/decode/index.ts->modules/auth/auth.types.ts + + + + + +helpers/http/jwt/decode/types.ts + +helpers/http/jwt/decode/types.ts + + + +helpers/http/jwt/encode/index.ts + +helpers/http/jwt/encode/index.ts + + + +helpers/http/userHeader/cookies/clearCookies.ts + +helpers/http/userHeader/cookies/clearCookies.ts + + + +helpers/http/userHeader/cookies/getCookies.ts + +helpers/http/userHeader/cookies/getCookies.ts + + + +helpers/http/userHeader/cookies/getCookies.ts->helpers/error/instances/app.ts + + + + + +helpers/http/userHeader/cookies/setCookies.ts + +helpers/http/userHeader/cookies/setCookies.ts + + + +helpers/http/userHeader/getUserHeaderInformation/index.ts + +helpers/http/userHeader/getUserHeaderInformation/index.ts + + + +helpers/http/userHeader/getUserHeaderInformation/types.ts + +helpers/http/userHeader/getUserHeaderInformation/types.ts + + + +helpers/http/userHeader/getUserHeaderInformation/index.ts->helpers/http/userHeader/getUserHeaderInformation/types.ts + + + + + +helpers/security/password/hash.ts + +helpers/security/password/hash.ts + + + +index.ts + +index.ts + + + +routes.ts + +routes.ts + + + +index.ts->routes.ts + + + + + +modules/auth/index.ts + +modules/auth/index.ts + + + +routes.ts->modules/auth/index.ts + + + + + +modules/debug/index.ts + +modules/debug/index.ts + + + +routes.ts->modules/debug/index.ts + + + + + +modules/user/index.ts + +modules/user/index.ts + + + +routes.ts->modules/user/index.ts + + + + + +modules/userRole/index.ts + +modules/userRole/index.ts + + + +routes.ts->modules/userRole/index.ts + + + + + +modules/userSession/index.ts + +modules/userSession/index.ts + + + +routes.ts->modules/userSession/index.ts + + + + + +middleware/auth.middleware.ts + +middleware/auth.middleware.ts + + + +middleware/auth.middleware.ts->helpers/callback/httpResponse.ts + + + + + +middleware/auth.middleware.ts->helpers/error/handler/index.ts + + + + + +middleware/auth.middleware.ts->helpers/http/userHeader/cookies/getCookies.ts + + + + + +middleware/auth/unauthenticated.middleware.ts + +middleware/auth/unauthenticated.middleware.ts + + + +middleware/auth/unauthenticated.middleware.ts->helpers/callback/httpResponse.ts + + + + + +middleware/auth/unauthenticated.middleware.ts->helpers/http/userHeader/cookies/getCookies.ts + + + + + +modules/auth/controller/authVerification.controller.ts + +modules/auth/controller/authVerification.controller.ts + + + +modules/auth/controller/authVerification.controller.ts->constants/cookie.keys.ts + + + + + +modules/auth/controller/authVerification.controller.ts->helpers/callback/httpResponse.ts + + + + + +modules/auth/controller/authVerification.controller.ts->helpers/error/handler/index.ts + + + + + +modules/auth/controller/authVerification.controller.ts->helpers/http/userHeader/cookies/clearCookies.ts + + + + + +modules/auth/controller/authVerification.controller.ts->helpers/http/userHeader/cookies/getCookies.ts + + + + + +modules/auth/services/authVerification.service.ts + +modules/auth/services/authVerification.service.ts + + + +modules/auth/controller/authVerification.controller.ts->modules/auth/services/authVerification.service.ts + + + + + +modules/auth/services/authVerification.service.ts->helpers/error/instances/app.ts + + + + + +modules/auth/services/authVerification.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/auth/services/authVerification.service.ts->helpers/http/jwt/decode/index.ts + + + + + +modules/auth/services/authVerification.service.ts->modules/auth/auth.types.ts + + + + + +modules/userSession/services/checkUserSessionInCache.service.ts + +modules/userSession/services/checkUserSessionInCache.service.ts + + + +modules/auth/services/authVerification.service.ts->modules/userSession/services/checkUserSessionInCache.service.ts + + + + + +modules/userSession/services/getUserSessionFromDB.service.ts + +modules/userSession/services/getUserSessionFromDB.service.ts + + + +modules/auth/services/authVerification.service.ts->modules/userSession/services/getUserSessionFromDB.service.ts + + + + + +modules/userSession/services/storeUserSessionToCache.service.ts + +modules/userSession/services/storeUserSessionToCache.service.ts + + + +modules/auth/services/authVerification.service.ts->modules/userSession/services/storeUserSessionToCache.service.ts + + + + + +modules/auth/controller/loginWithPassword.controller.ts + +modules/auth/controller/loginWithPassword.controller.ts + + + +modules/auth/controller/loginWithPassword.controller.ts->constants/cookie.keys.ts + + + + + +modules/auth/controller/loginWithPassword.controller.ts->helpers/callback/httpResponse.ts + + + + + +modules/auth/controller/loginWithPassword.controller.ts->helpers/error/handler/index.ts + + + + + +modules/auth/controller/loginWithPassword.controller.ts->modules/auth/auth.types.ts + + + + + +modules/auth/controller/loginWithPassword.controller.ts->helpers/http/userHeader/cookies/setCookies.ts + + + + + +modules/auth/controller/loginWithPassword.controller.ts->helpers/http/userHeader/getUserHeaderInformation/index.ts + + + + + +modules/auth/schemas/loginWithPassword.ts + +modules/auth/schemas/loginWithPassword.ts + + + +modules/auth/controller/loginWithPassword.controller.ts->modules/auth/schemas/loginWithPassword.ts + + + + + +modules/auth/services/loginWithPassword.service.ts + +modules/auth/services/loginWithPassword.service.ts + + + +modules/auth/controller/loginWithPassword.controller.ts->modules/auth/services/loginWithPassword.service.ts + + + + + +modules/auth/services/loginWithPassword.service.ts->helpers/error/instances/app.ts + + + + + +modules/auth/services/loginWithPassword.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/auth/services/loginWithPassword.service.ts->modules/auth/auth.types.ts + + + + + +modules/auth/services/loginWithPassword.service.ts->helpers/http/jwt/encode/index.ts + + + + + +modules/auth/services/loginWithPassword.service.ts->helpers/http/userHeader/getUserHeaderInformation/types.ts + + + + + +modules/user/services/findUserByEmailOrUsername.service.ts + +modules/user/services/findUserByEmailOrUsername.service.ts + + + +modules/auth/services/loginWithPassword.service.ts->modules/user/services/findUserByEmailOrUsername.service.ts + + + + + +modules/userSession/services/createUserSession.service.ts + +modules/userSession/services/createUserSession.service.ts + + + +modules/auth/services/loginWithPassword.service.ts->modules/userSession/services/createUserSession.service.ts + + + + + +modules/auth/controller/logout.controller.ts + +modules/auth/controller/logout.controller.ts + + + +modules/auth/controller/logout.controller.ts->constants/cookie.keys.ts + + + + + +modules/auth/controller/logout.controller.ts->helpers/callback/httpResponse.ts + + + + + +modules/auth/controller/logout.controller.ts->helpers/error/handler/index.ts + + + + + +modules/auth/controller/logout.controller.ts->helpers/http/userHeader/cookies/clearCookies.ts + + + + + +modules/auth/controller/logout.controller.ts->helpers/http/userHeader/cookies/getCookies.ts + + + + + +modules/auth/services/logout.service.ts + +modules/auth/services/logout.service.ts + + + +modules/auth/controller/logout.controller.ts->modules/auth/services/logout.service.ts + + + + + +modules/auth/services/logout.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/auth/services/logout.service.ts->helpers/http/jwt/decode/index.ts + + + + + +modules/userSession/services/deleteUserSessionInCacheAndDB.service.ts + +modules/userSession/services/deleteUserSessionInCacheAndDB.service.ts + + + +modules/auth/services/logout.service.ts->modules/userSession/services/deleteUserSessionInCacheAndDB.service.ts + + + + + +modules/auth/index.ts->middleware/auth.middleware.ts + + + + + +modules/auth/index.ts->modules/auth/controller/authVerification.controller.ts + + + + + +modules/auth/index.ts->modules/auth/controller/loginWithPassword.controller.ts + + + + + +modules/auth/index.ts->modules/auth/controller/logout.controller.ts + + + + + +modules/userSession/services/checkUserSessionInCache.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/userSession/repositories/checkUserSessionInCache.repository.ts + +modules/userSession/repositories/checkUserSessionInCache.repository.ts + + + +modules/userSession/services/checkUserSessionInCache.service.ts->modules/userSession/repositories/checkUserSessionInCache.repository.ts + + + + + +modules/userSession/services/getUserSessionFromDB.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/userSession/repositories/findUniqueUserSessionInDB.repository.ts + +modules/userSession/repositories/findUniqueUserSessionInDB.repository.ts + + + +modules/userSession/services/getUserSessionFromDB.service.ts->modules/userSession/repositories/findUniqueUserSessionInDB.repository.ts + + + + + +modules/userSession/services/storeUserSessionToCache.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/userSession/repositories/storeUserSessionToCache.repository.ts + +modules/userSession/repositories/storeUserSessionToCache.repository.ts + + + +modules/userSession/services/storeUserSessionToCache.service.ts->modules/userSession/repositories/storeUserSessionToCache.repository.ts + + + + + +modules/user/services/findUserByEmailOrUsername.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/user/repositories/findUserByEmailOrUsername.repository.ts + +modules/user/repositories/findUserByEmailOrUsername.repository.ts + + + +modules/user/services/findUserByEmailOrUsername.service.ts->modules/user/repositories/findUserByEmailOrUsername.repository.ts + + + + + +modules/userSession/services/createUserSession.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/userSession/repositories/insertUserSessionToDB.repository.ts + +modules/userSession/repositories/insertUserSessionToDB.repository.ts + + + +modules/userSession/services/createUserSession.service.ts->modules/userSession/repositories/insertUserSessionToDB.repository.ts + + + + + +modules/userSession/services/createUserSession.service.ts->modules/userSession/repositories/storeUserSessionToCache.repository.ts + + + + + +modules/userSession/userSession.types.ts + +modules/userSession/userSession.types.ts + + + +modules/userSession/services/createUserSession.service.ts->modules/userSession/userSession.types.ts + + + + + +modules/userSession/services/deleteUserSessionInCacheAndDB.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/userSession/services/deleteUserSessionInCacheAndDB.service.ts->helpers/http/jwt/decode/types.ts + + + + + +modules/userSession/repositories/deleteUserSessionFromCache.repository.ts + +modules/userSession/repositories/deleteUserSessionFromCache.repository.ts + + + +modules/userSession/services/deleteUserSessionInCacheAndDB.service.ts->modules/userSession/repositories/deleteUserSessionFromCache.repository.ts + + + + + +modules/userSession/repositories/deleteUserSessionFromDB.repository.ts + +modules/userSession/repositories/deleteUserSessionFromDB.repository.ts + + + +modules/userSession/services/deleteUserSessionInCacheAndDB.service.ts->modules/userSession/repositories/deleteUserSessionFromDB.repository.ts + + + + + +modules/debug/debug.controller.ts + +modules/debug/debug.controller.ts + + + +modules/debug/index.ts->modules/debug/debug.controller.ts + + + + + +modules/user/controller/createUser.controller.ts + +modules/user/controller/createUser.controller.ts + + + +modules/user/controller/createUser.controller.ts->helpers/callback/httpResponse.ts + + + + + +modules/user/controller/createUser.controller.ts->helpers/error/handler/index.ts + + + + + +modules/user/controller/createUser.controller.ts->helpers/http/userHeader/cookies/getCookies.ts + + + + + +modules/user/schemas/createUser.schema.ts + +modules/user/schemas/createUser.schema.ts + + + +modules/user/controller/createUser.controller.ts->modules/user/schemas/createUser.schema.ts + + + + + +modules/user/services/createUser.service.ts + +modules/user/services/createUser.service.ts + + + +modules/user/controller/createUser.controller.ts->modules/user/services/createUser.service.ts + + + + + +modules/user/services/createUser.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/user/services/createUser.service.ts->helpers/security/password/hash.ts + + + + + +modules/user/repositories/createUser.repository.ts + +modules/user/repositories/createUser.repository.ts + + + +modules/user/services/createUser.service.ts->modules/user/repositories/createUser.repository.ts + + + + + +modules/user/controller/editUser.controller.ts + +modules/user/controller/editUser.controller.ts + + + +modules/user/controller/editUser.controller.ts->helpers/callback/httpResponse.ts + + + + + +modules/user/controller/editUser.controller.ts->helpers/error/handler/index.ts + + + + + +modules/user/controller/editUser.controller.ts->helpers/http/userHeader/cookies/getCookies.ts + + + + + +modules/user/services/editUser.service.ts + +modules/user/services/editUser.service.ts + + + +modules/user/controller/editUser.controller.ts->modules/user/services/editUser.service.ts + + + + + +modules/user/services/editUser.service.ts->helpers/error/instances/app.ts + + + + + +modules/user/services/editUser.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/user/services/editUser.service.ts->helpers/http/jwt/decode/index.ts + + + + + +modules/user/repositories/updateUser.repository.ts + +modules/user/repositories/updateUser.repository.ts + + + +modules/user/services/editUser.service.ts->modules/user/repositories/updateUser.repository.ts + + + + + +modules/user/services/checkUserEmailAndUsernameAvailabillity.service.ts + +modules/user/services/checkUserEmailAndUsernameAvailabillity.service.ts + + + +modules/user/services/editUser.service.ts->modules/user/services/checkUserEmailAndUsernameAvailabillity.service.ts + + + + + +modules/user/controller/getAllUser.controller.ts + +modules/user/controller/getAllUser.controller.ts + + + +modules/user/controller/getAllUser.controller.ts->helpers/callback/httpResponse.ts + + + + + +modules/user/controller/getAllUser.controller.ts->helpers/error/handler/index.ts + + + + + +modules/user/services/getAllUser.service.ts + +modules/user/services/getAllUser.service.ts + + + +modules/user/controller/getAllUser.controller.ts->modules/user/services/getAllUser.service.ts + + + + + +modules/user/repositories/getAllUser.repository.ts + +modules/user/repositories/getAllUser.repository.ts + + + +modules/user/services/getAllUser.service.ts->modules/user/repositories/getAllUser.repository.ts + + + + + +modules/user/index.ts->modules/user/controller/createUser.controller.ts + + + + + +modules/user/index.ts->modules/user/controller/editUser.controller.ts + + + + + +modules/user/index.ts->modules/user/controller/getAllUser.controller.ts + + + + + +modules/user/repositories/checkUserEmailAndUsernameAvailabillity.repository.ts + +modules/user/repositories/checkUserEmailAndUsernameAvailabillity.repository.ts + + + +modules/user/user.model.ts + +modules/user/user.model.ts + + + +modules/user/repositories/checkUserEmailAndUsernameAvailabillity.repository.ts->modules/user/user.model.ts + + + + + +utils/databases/prisma/connection.ts + +utils/databases/prisma/connection.ts + + + +modules/user/user.model.ts->utils/databases/prisma/connection.ts + + + + + +modules/user/repositories/createUser.repository.ts->modules/user/user.model.ts + + + + + +modules/user/repositories/findUserByEmailOrUsername.repository.ts->helpers/error/instances/app.ts + + + + + +modules/user/repositories/findUserByEmailOrUsername.repository.ts->modules/user/user.model.ts + + + + + +modules/user/repositories/getAllUser.repository.ts->modules/user/user.model.ts + + + + + +modules/user/repositories/updateUser.repository.ts->modules/auth/auth.types.ts + + + + + +modules/user/repositories/updateUser.repository.ts->modules/user/user.model.ts + + + + + +modules/user/services/checkUserEmailAndUsernameAvailabillity.service.ts->helpers/error/instances/forwarder.ts + + + + + +modules/user/services/checkUserEmailAndUsernameAvailabillity.service.ts->modules/user/repositories/checkUserEmailAndUsernameAvailabillity.repository.ts + + + + + +modules/userRole/controller/createUserRole.controller.ts + +modules/userRole/controller/createUserRole.controller.ts + + + +modules/userRole/controller/createUserRole.controller.ts->helpers/callback/httpResponse.ts + + + + + +modules/userRole/controller/createUserRole.controller.ts->helpers/error/handler/index.ts + + + + + +modules/userRole/schemas/createUserRole.schema.ts + +modules/userRole/schemas/createUserRole.schema.ts + + + +modules/userRole/controller/createUserRole.controller.ts->modules/userRole/schemas/createUserRole.schema.ts + + + + + +modules/userRole/services/createUserRole.service.ts + +modules/userRole/services/createUserRole.service.ts + + + +modules/userRole/controller/createUserRole.controller.ts->modules/userRole/services/createUserRole.service.ts + + + + + +modules/userRole/repositories/createUserRole.repository.ts + +modules/userRole/repositories/createUserRole.repository.ts + + + +modules/userRole/services/createUserRole.service.ts->modules/userRole/repositories/createUserRole.repository.ts + + + + + +modules/userRole/index.ts->middleware/auth/unauthenticated.middleware.ts + + + + + +modules/userRole/index.ts->modules/userRole/controller/createUserRole.controller.ts + + + + + +modules/userRole/userRole.model.ts + +modules/userRole/userRole.model.ts + + + +modules/userRole/repositories/createUserRole.repository.ts->modules/userRole/userRole.model.ts + + + + + +modules/userRole/userRole.model.ts->utils/databases/prisma/connection.ts + + + + + +modules/userSession/controllers/createUserSession.controller.ts + +modules/userSession/controllers/createUserSession.controller.ts + + + +modules/userSession/controllers/createUserSession.controller.ts->helpers/callback/httpResponse.ts + + + + + +modules/userSession/controllers/createUserSession.controller.ts->helpers/error/handler/index.ts + + + + + +modules/userSession/controllers/createUserSession.controller.ts->helpers/http/userHeader/getUserHeaderInformation/index.ts + + + + + +modules/userSession/controllers/createUserSession.controller.ts->modules/userSession/services/createUserSession.service.ts + + + + + +modules/userSession/index.ts->modules/userSession/controllers/createUserSession.controller.ts + + + + + +modules/userSession/repositories/checkUserSessionInCache.repository.ts->helpers/error/instances/app.ts + + + + + +utils/databases/redis/connection.ts + +utils/databases/redis/connection.ts + + + +modules/userSession/repositories/checkUserSessionInCache.repository.ts->utils/databases/redis/connection.ts + + + + + +modules/userSession/repositories/deleteUserSessionFromCache.repository.ts->helpers/error/instances/app.ts + + + + + +modules/userSession/repositories/deleteUserSessionFromCache.repository.ts->utils/databases/redis/connection.ts + + + + + +modules/userSession/repositories/deleteUserSessionFromDB.repository.ts->helpers/error/instances/app.ts + + + + + +modules/userSession/repositories/deleteUserSessionFromDB.repository.ts->utils/databases/prisma/connection.ts + + + + + +modules/userSession/repositories/findUniqueUserSessionInDB.repository.ts->helpers/error/instances/app.ts + + + + + +modules/userSession/repositories/findUniqueUserSessionInDB.repository.ts->utils/databases/prisma/connection.ts + + + + + +modules/userSession/repositories/insertUserSessionToDB.repository.ts->helpers/error/instances/app.ts + + + + + +modules/userSession/userSession.model.ts + +modules/userSession/userSession.model.ts + + + +modules/userSession/repositories/insertUserSessionToDB.repository.ts->modules/userSession/userSession.model.ts + + + + + +modules/userSession/userSession.model.ts->utils/databases/prisma/connection.ts + + + + + +modules/userSession/repositories/storeUserSessionToCache.repository.ts->helpers/error/instances/app.ts + + + + + +modules/userSession/repositories/storeUserSessionToCache.repository.ts->utils/databases/redis/connection.ts + + + + + +modules/userSession/userSession.types.ts->helpers/http/userHeader/getUserHeaderInformation/types.ts + + + + +