📝 docs: add OpenAPI for API documentation

This commit is contained in:
2026-03-06 21:56:50 +07:00
parent 0383150109
commit 9a554bb2ec
5 changed files with 16 additions and 27 deletions

View File

@ -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(

View File

@ -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");
}
});

View File

@ -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);
}
};