diff --git a/.env b/.env index ac6da65..8e2b6f1 100644 --- a/.env +++ b/.env @@ -2,9 +2,9 @@ COMPOSE_PROJECT_NAME= NETWORK_NAME= # WEB -BASE_PATH=/login -TITLE= -DESCRIPTION= +APP_BASE_PATH=/login +APP_TITLE= +APP_DESCRIPTION= # API LDAP_BIND_DN= @@ -14,9 +14,9 @@ LDAP_URL= LDAP_BASE= LDAP_ATTRIBUTE= -SECRET= -TOKEN_TTL= -CACHE_TTL= +API_SECRET= +API_TOKEN_TTL= +API_CACHE_TTL= REDIS_HOST=redis REDIS_PORT= \ No newline at end of file diff --git a/apps/api/src/app.module.ts b/apps/api/src/app.module.ts index 68d44e7..9b3fd35 100644 --- a/apps/api/src/app.module.ts +++ b/apps/api/src/app.module.ts @@ -17,9 +17,9 @@ import { JwtModule } from '@nestjs/jwt'; isGlobal: true, }), JwtModule.register({ - secret: env.SECRET, + secret: env.API_SECRET, signOptions: { - expiresIn: env.TOKEN_TTL, + expiresIn: env.API_TOKEN_TTL, }, }), AuthModule, diff --git a/apps/api/src/auth/auth.controller.ts b/apps/api/src/auth/auth.controller.ts index ee0177a..9b6c624 100644 --- a/apps/api/src/auth/auth.controller.ts +++ b/apps/api/src/auth/auth.controller.ts @@ -13,7 +13,7 @@ export class AuthController { cookieOptions: { maxAge: number; path: string }; constructor(private readonly authService: AuthService) { this.cookieOptions = { - maxAge: env.TOKEN_TTL, + maxAge: env.API_TOKEN_TTL, path: '/', }; } diff --git a/apps/api/src/config/schema/env.ts b/apps/api/src/config/schema/env.ts index 4ca7a71..73585e5 100644 --- a/apps/api/src/config/schema/env.ts +++ b/apps/api/src/config/schema/env.ts @@ -2,7 +2,7 @@ import { z } from 'zod'; const envSchema = z.object({ API_PORT: z.number().optional().default(3001), - CACHE_TTL: z.string().transform((val) => Number.parseInt(val, 10)), + API_CACHE_TTL: z.string().transform((val) => Number.parseInt(val, 10)), LDAP_ATTRIBUTE: z.string(), LDAP_BASE: z.string(), LDAP_BIND_CREDENTIALS: z.string(), @@ -14,8 +14,8 @@ const envSchema = z.object({ .string() .transform((val) => Number.parseInt(val, 10)) .default('6379'), - SECRET: z.string(), - TOKEN_TTL: z.string().transform((val) => Number.parseInt(val, 10)), + API_SECRET: z.string(), + API_TOKEN_TTL: z.string().transform((val) => Number.parseInt(val, 10)), }); export default envSchema; diff --git a/apps/api/src/main.ts b/apps/api/src/main.ts index e072ba3..b70de73 100644 --- a/apps/api/src/main.ts +++ b/apps/api/src/main.ts @@ -15,7 +15,7 @@ async function bootstrap() { ); await app.register(fastifyCookie, { - secret: env.SECRET, + secret: env.API_SECRET, }); await app.listen(env.API_PORT, '0.0.0.0'); diff --git a/apps/api/src/users/users.module.ts b/apps/api/src/users/users.module.ts index e733d17..3d09092 100644 --- a/apps/api/src/users/users.module.ts +++ b/apps/api/src/users/users.module.ts @@ -16,7 +16,7 @@ import { env } from 'src/config/env'; host: env.REDIS_HOST, port: env.REDIS_PORT, store: redisStore, - ttl: env.CACHE_TTL, + ttl: env.API_CACHE_TTL, }), LdapModule, ], diff --git a/apps/web/components/Form.jsx b/apps/web/components/Form.jsx index 4a85d60..5573d38 100644 --- a/apps/web/components/Form.jsx +++ b/apps/web/components/Form.jsx @@ -7,7 +7,7 @@ import Input from '@/elements/Input'; import axios from 'axios'; import { useState } from 'react'; -const { BASE_PATH, APP_TITLE } = publicRuntimeConfig; +const { APP_BASE_PATH, APP_TITLE } = publicRuntimeConfig; export default function Form() { const [hasError, setHasError] = useState(false); @@ -27,7 +27,7 @@ export default function Form() { .post('/signin', data) .then(() => { const url = - (window.location.pathname.replace(BASE_PATH, '') || '/') + + (window.location.pathname.replace(APP_BASE_PATH, '') || '/') + (window.location.search || ''); window.location.replace(url); diff --git a/apps/web/config/schema/env.js b/apps/web/config/schema/env.js index 254362a..b4e4c80 100644 --- a/apps/web/config/schema/env.js +++ b/apps/web/config/schema/env.js @@ -3,7 +3,7 @@ import { z } from 'zod'; const envSchema = z.object({ APP_DESCRIPTION: z.string(), APP_TITLE: z.string(), - BASE_PATH: z.string().optional().default(''), + APP_BASE_PATH: z.string().optional().default(''), }); export default envSchema; diff --git a/apps/web/next.config.mjs b/apps/web/next.config.mjs index 299a633..277cf4c 100644 --- a/apps/web/next.config.mjs +++ b/apps/web/next.config.mjs @@ -9,7 +9,7 @@ const runtimeConfig = envSchema.parse(process.env); /** @type {import('next').NextConfig} */ const nextConfig = { - basePath: process.env.BASE_PATH, + basePath: process.env.APP_BASE_PATH, eslint: { ignoreDuringBuilds: true, }, diff --git a/apps/web/pages/_document.tsx b/apps/web/pages/_document.tsx index f6d17d3..72e461f 100644 --- a/apps/web/pages/_document.tsx +++ b/apps/web/pages/_document.tsx @@ -2,7 +2,7 @@ import { serverRuntimeConfig } from '@/config/runtime'; import Document, { Head, Html, Main, NextScript } from 'next/document'; -const { BASE_PATH, APP_DESCRIPTION } = serverRuntimeConfig; +const { APP_BASE_PATH, APP_DESCRIPTION } = serverRuntimeConfig; export default class MyDocument extends Document { render() { @@ -11,11 +11,25 @@ export default class MyDocument extends Document { - - - - - + + + + +