From dfaceb30bf1a7b0d605be85d86d4932d76d16b4a Mon Sep 17 00:00:00 2001 From: ol49 Date: Tue, 2 Sep 2025 16:42:02 +0530 Subject: [PATCH] again: typo errors --- Dockerfile | 8 -------- docker-compose.example.yml | 4 ++-- src/index.ts | 11 ++++++----- src/routes/auth.ts | 13 ++++++------- src/utils/logger.ts | 5 ++--- web/src/lib/api.ts | 2 +- web/src/pages/LoginPage.tsx | 4 ++-- web/src/stores/authStore.ts | 2 +- web/src/vite-env.d.ts | 2 -- 9 files changed, 20 insertions(+), 31 deletions(-) diff --git a/Dockerfile b/Dockerfile index ed4448e..301b193 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,16 +3,12 @@ FROM oven/bun:latest AS builder ARG SOURCE_COMMIT ARG VITE_BOT_API_URL ARG VITE_STATUS_API_KEY -ARG VITE_FRONTEND_URL -ARG VITE_DISCORD_CLIENT_ID ARG STATUS_API_KEY ENV SOURCE_COMMIT=${SOURCE_COMMIT} ENV NODE_ENV=production ENV VITE_BOT_API_URL=${VITE_BOT_API_URL} ENV VITE_STATUS_API_KEY=${VITE_STATUS_API_KEY} -ENV VITE_FRONTEND_URL=${VITE_FRONTEND_URL} -ENV VITE_DISCORD_CLIENT_ID=${VITE_DISCORD_CLIENT_ID} ENV STATUS_API_KEY=${STATUS_API_KEY} WORKDIR /app @@ -52,16 +48,12 @@ FROM oven/bun:1 AS production ARG SOURCE_COMMIT ARG VITE_BOT_API_URL ARG VITE_STATUS_API_KEY -ARG VITE_FRONTEND_URL -ARG VITE_DISCORD_CLIENT_ID ENV SOURCE_COMMIT=${SOURCE_COMMIT} ENV NODE_ENV=production ENV VITE_BOT_API_URL=${VITE_BOT_API_URL} ENV STATUS_API_KEY=${STATUS_API_KEY} ENV VITE_STATUS_API_KEY=${VITE_STATUS_API_KEY} -ENV VITE_FRONTEND_URL=${VITE_FRONTEND_URL} -ENV VITE_DISCORD_CLIENT_ID=${VITE_DISCORD_CLIENT_ID} RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/* && \ groupadd -g 1001 nodejs && \ diff --git a/docker-compose.example.yml b/docker-compose.example.yml index 608844d..a884a27 100644 --- a/docker-compose.example.yml +++ b/docker-compose.example.yml @@ -6,8 +6,6 @@ services: args: - VITE_BOT_API_URL=${VITE_BOT_API_URL:-https://aethel.xyz} - VITE_STATUS_API_KEY=${VITE_STATUS_API_KEY} - - VITE_FRONTEND_URL=${VITE_FRONTEND_URL:-https://aethel.xyz} - - VITE_DISCORD_CLIENT_ID=${VITE_DISCORD_CLIENT_ID} - STATUS_API_KEY=${STATUS_API_KEY} - SOURCE_COMMIT=${SOURCE_COMMIT:-development} container_name: aethel-bot @@ -18,6 +16,8 @@ services: NODE_ENV: production TOKEN: ${TOKEN} CLIENT_ID: ${CLIENT_ID} + CLIENT_SECRET: ${CLIENT_SECRET} + REDIRECT_URI: ${REDIRECT_URI} DATABASE_URL: ${DATABASE_URL} API_KEY_ENCRYPTION_SECRET: ${API_KEY_ENCRYPTION_SECRET} STATUS_API_KEY: ${STATUS_API_KEY} diff --git a/src/index.ts b/src/index.ts index 04d485a..1ada00d 100644 --- a/src/index.ts +++ b/src/index.ts @@ -76,6 +76,11 @@ app.use((req, res, next) => { const bot = new BotClient(); bot.init(); +app.use(async (req, res, next) => { + logger.info(`API [${req.method}] ${req.path}`); // log the api request + next(); +}) + app.use('/api/auth', authRoutes); app.use('/api/todos', todosRoutes); app.use('/api/user/api-keys', apiKeysRoutes); @@ -87,13 +92,9 @@ app.get('/health', (req, res) => { res.status(200).json({ status: 'ok', timestamp: new Date().toISOString() }); }); -app.use(e.static('web/dist')); app.get('*', (req, res) => { - if (req.path.startsWith('/api/')) { - return res.status(404).json({ error: 'Not found' }); - } - res.sendFile('index.html', { root: 'web/dist' }); + return res.status(404).json({ status: 404, message: "Not Found" }); }); setInterval( diff --git a/src/routes/auth.ts b/src/routes/auth.ts index e30bbff..9208559 100644 --- a/src/routes/auth.ts +++ b/src/routes/auth.ts @@ -6,12 +6,11 @@ import { authenticateToken } from '../middlewares/auth'; const router = Router(); -const DISCORD_CLIENT_ID = process.env.DISCORD_CLIENT_ID; -const DISCORD_CLIENT_SECRET = process.env.DISCORD_CLIENT_SECRET; -const DISCORD_REDIRECT_URI = - process.env.DISCORD_REDIRECT_URI || 'http://localhost:8080/api/auth/discord/callback'; +const DISCORD_CLIENT_ID = process.env.CLIENT_ID; +const DISCORD_CLIENT_SECRET = process.env.CLIENT_SECRET; +const DISCORD_REDIRECT_URI = process.env.REDIRECT_URI; const JWT_SECRET = process.env.JWT_SECRET || 'your-jwt-secret'; -const FRONTEND_URL = process.env.FRONTEND_URL || 'http://localhost:2020'; +const FRONTEND_URL = process.env.FRONTEND_URL || 'http://localhost:3000'; interface DiscordUser { id: string; @@ -22,7 +21,7 @@ interface DiscordUser { } router.get('/discord', (req, res) => { - const discordAuthUrl = `https://discord.com/api/oauth2/authorize?client_id=${DISCORD_CLIENT_ID}&redirect_uri=${encodeURIComponent(DISCORD_REDIRECT_URI)}&response_type=code&scope=identify`; + const discordAuthUrl = `https://discord.com/api/oauth2/authorize?client_id=${DISCORD_CLIENT_ID}&redirect_uri=${encodeURIComponent(DISCORD_REDIRECT_URI!)}&response_type=code&scope=identify`; res.redirect(discordAuthUrl); }); @@ -50,7 +49,7 @@ router.get('/discord/callback', async (req, res) => { client_secret: DISCORD_CLIENT_SECRET!, grant_type: 'authorization_code', code: code as string, - redirect_uri: DISCORD_REDIRECT_URI, + redirect_uri: DISCORD_REDIRECT_URI!, }), }); diff --git a/src/utils/logger.ts b/src/utils/logger.ts index 6addf78..72f26b2 100644 --- a/src/utils/logger.ts +++ b/src/utils/logger.ts @@ -58,9 +58,8 @@ const logger = winston.createLogger({ new winston.transports.Console({ format: winston.format.combine( winston.format.colorize(), - winston.format.printf(({ timestamp, level, message, service, ...meta }) => { - const metaStr = Object.keys(meta).length ? JSON.stringify(meta, null, 2) : ''; - return `${timestamp} [${service}] ${level}: ${message} ${metaStr}`; + winston.format.printf(({ timestamp, level, message, service, environment, version }) => { + return `${timestamp} [${service}] [${environment}] [${version}] ${level}: ${message}`; }), ), }), diff --git a/web/src/lib/api.ts b/web/src/lib/api.ts index f6c0380..49af2a2 100644 --- a/web/src/lib/api.ts +++ b/web/src/lib/api.ts @@ -2,7 +2,7 @@ import axios from 'axios'; import { toast } from 'sonner'; const api = axios.create({ - baseURL: `${import.meta.env.VITE_FRONTEND_URL}/api`, + baseURL: `/api`, timeout: 10000, }); diff --git a/web/src/pages/LoginPage.tsx b/web/src/pages/LoginPage.tsx index 1db571c..c800894 100644 --- a/web/src/pages/LoginPage.tsx +++ b/web/src/pages/LoginPage.tsx @@ -28,7 +28,7 @@ const LoginPage = () => { const handleDiscordLogin = async () => { try { - window.location.href = `${import.meta.env.VITE_FRONTEND_URL}/api/auth/discord`; + window.location.href = `/api/auth/discord`; } catch (_error) { toast.error('Failed to initiate Discord login'); } @@ -66,7 +66,7 @@ const LoginPage = () => {