diff --git a/bun.lock b/bun.lock index 8ea8590..9721161 100644 --- a/bun.lock +++ b/bun.lock @@ -5,6 +5,7 @@ "": { "name": "mvp.nounoz.com_v2", "dependencies": { + "@elysiajs/openapi": "^1.4.14", "@prisma/adapter-pg": "^7.2.0", "@prisma/client": "^7.2.0", "@sentry/node": "^10.10.0", @@ -72,6 +73,8 @@ "@electric-sql/pglite-tools": ["@electric-sql/pglite-tools@0.2.7", "", { "peerDependencies": { "@electric-sql/pglite": "0.3.2" } }, "sha512-9dAccClqxx4cZB+Ar9B+FZ5WgxDc/Xvl9DPrTWv+dYTf0YNubLzi4wHHRGRGhrJv15XwnyKcGOZAP1VXSneSUg=="], + "@elysiajs/openapi": ["@elysiajs/openapi@1.4.14", "", { "peerDependencies": { "elysia": ">= 1.4.0" } }, "sha512-kWmJWdvP8/LwHwAJXSpz6xFfYUoyUyEPRimEYABuDU1rOnS27Da1u9T2jyU7frOopxKWV/wDfDxMP8z2xdCPJw=="], + "@eslint-community/eslint-utils": ["@eslint-community/eslint-utils@4.7.0", "", { "dependencies": { "eslint-visitor-keys": "^3.4.3" }, "peerDependencies": { "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw=="], "@eslint-community/regexpp": ["@eslint-community/regexpp@4.12.1", "", {}, "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ=="], diff --git a/package.json b/package.json index e22a2f0..8c05c5d 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "env:publish": "bun run ./scripts/create-example-env.ts" }, "dependencies": { + "@elysiajs/openapi": "^1.4.14", "@prisma/adapter-pg": "^7.2.0", "@prisma/client": "^7.2.0", "@sentry/node": "^10.10.0", diff --git a/src/index.ts b/src/index.ts index 6e74d95..9857a28 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,6 @@ /* eslint-disable @typescript-eslint/no-require-imports */ +import openapi from "@elysiajs/openapi"; import { middleware } from "./middleware"; import { validateEnv } from "./utils/startups/validateEnv"; @@ -17,6 +18,7 @@ async function bootstrap() { new Elysia() .use(middleware) .use(routes) + .use(openapi()) .listen(process.env.APP_PORT || 3000); console.log( diff --git a/src/middleware/global/appAccessToken.middleware.ts b/src/middleware/global/appAccessToken.middleware.ts index 35474f6..6acae8b 100644 --- a/src/middleware/global/appAccessToken.middleware.ts +++ b/src/middleware/global/appAccessToken.middleware.ts @@ -3,14 +3,16 @@ import { returnErrorResponse } from "../../helpers/callback/httpResponse"; export const appAccessTokenMiddleware = () => new Elysia().onRequest(({ request, set }) => { - const headerToken = request.headers.get("authorization"); - if (!headerToken) return returnErrorResponse(set, 401, "Unauthorized"); + if (process.env.APP_ENV !== "development") { + const headerToken = request.headers.get("authorization"); + if (!headerToken) return returnErrorResponse(set, 401, "Unauthorized"); - const storedToken = process.env.API_KEY; - const [scheme, token] = headerToken.split(" "); + const storedToken = process.env.API_KEY; + const [scheme, token] = headerToken.split(" "); - if (scheme !== "Bearer" || !token) - return returnErrorResponse(set, 401, "Invalid auth format"); - if (token !== storedToken) - return returnErrorResponse(set, 403, "Forbidden"); + if (scheme !== "Bearer" || !token) + return returnErrorResponse(set, 401, "Invalid auth format"); + if (token !== storedToken) + return returnErrorResponse(set, 403, "Forbidden"); + } }); diff --git a/src/modules/heroBanner/services/.fuse_hidden000178f900000004 b/src/modules/heroBanner/services/.fuse_hidden000178f900000004 deleted file mode 100644 index 475c210..0000000 --- a/src/modules/heroBanner/services/.fuse_hidden000178f900000004 +++ /dev/null @@ -1,19 +0,0 @@ -import { AppError } from "../../../helpers/error/instances/app"; -import { ErrorForwarder } from "../../../helpers/error/instances/forwarder"; -import { findSystemPreferenceService } from "../../systemPreference/services/internal/findSystemPreference.service"; -import { findAllActiveHeroBannerRepository } from "../repositories/GET/findAllActiveHeroBanner.repository"; - -export const getActiveHeroBannerService = async () => { - try { - const isHeroBannerEnabled = await findSystemPreferenceService( - "HERO_BANNER_ENABLED", - "boolean", - ); - if (!isHeroBannerEnabled) - throw new AppError(403, "Hero Banner is disabled"); - - return await findAllActiveHeroBannerRepository(); - } catch (error) { - ErrorForwarder(error); - } -};