This commit is contained in:
Marco Pedone 2025-09-04 11:32:17 +02:00
parent 2492b98c20
commit 26e0754b1c
4 changed files with 38 additions and 13 deletions

View file

@ -133,7 +133,7 @@ const refreshAuthToken = async (
const newAccessToken = await signToken(
refreshTokenPayload,
"1h",
"5m",
"accessToken",
);
response.cookies.set(ACCESS_TOKEN_COOKIE_NAME, newAccessToken, {

View file

@ -32,14 +32,17 @@ const cookieOptions: OptionsType = {
secure: env.NODE_ENV === "production",
};
const accessTokenExpiry = "1m";
export const refreshTokenExpiry = "5m";
const accessTokenCookieOptions: OptionsType = {
...cookieOptions,
expires: add(new Date(), { hours: 1 }),
expires: add(new Date(), { minutes: 1 }),
};
const refreshTokenCookieOptions: OptionsType = {
...cookieOptions,
expires: add(new Date(), { days: 1 }),
expires: add(new Date(), { minutes: 5 }),
};
export const createUserAdmin = async ({
@ -147,9 +150,19 @@ export const logIn = async ({
nome: user.nome,
username: user.username,
};
console.log("User authenticated, generating tokens for:", user.email);
const accessToken = await signToken(payload, "1h", "accessToken");
const refreshToken = await signToken(payload, "1d", "refreshToken");
const accessToken = await signToken(
payload,
accessTokenExpiry,
"accessToken",
);
const refreshToken = await signToken(
payload,
refreshTokenExpiry,
"refreshToken",
);
console.log("Generated tokens for user:", user.email);
try {
await setCookie(ACCESS_TOKEN_COOKIE_NAME, accessToken, {
@ -162,7 +175,7 @@ export const logIn = async ({
req,
res,
});
console.log("Login successful, cookies set.");
return { status: "success" as const };
} catch (cookieError) {
console.error("Error setting cookies:", cookieError);
@ -197,8 +210,12 @@ export const swapAuth = async ({
});
}
const accessToken = await signToken(user, "1h", "accessToken");
const refreshToken = await signToken(user, "1d", "refreshToken");
const accessToken = await signToken(user, accessTokenExpiry, "accessToken");
const refreshToken = await signToken(
user,
refreshTokenExpiry,
"refreshToken",
);
// Send Access Token in Cookie
await setCookie(ACCESS_TOKEN_COOKIE_NAME, accessToken, {

View file

@ -54,14 +54,20 @@ export const db = new Kysely<Database>({
});
const DbLogger = (event: LogEvent) => {
if (event.level === "query") {
if (
event.level === "query" &&
event.query.sql !== "begin" &&
event.query.sql !== "commit"
) {
console.log();
console.log("\x1b[33mquery:\x1b[0m", event.query.sql);
console.log("\x1b[36mparams:\x1b[0m", event.query.parameters);
console.log("\x1b[32mtaken:\x1b[0m", event.queryDurationMillis, "ms");
//console.log("\x1b[32mtaken:\x1b[0m", event.queryDurationMillis, "ms");
}
if (event.level === "error") {
console.error();
console.error("\x1b[33mquery:\x1b[0m", event.query.sql);
console.error("\x1b[36mparams:\x1b[0m", event.query.parameters);
console.error("\x1b[31merror:\x1b[0m", event.error);
//console.error("\x1b[31merror:\x1b[0m", event.error);
}
};

View file

@ -50,8 +50,10 @@ export const api = createTRPCNext<AppRouter>({
errorLink,
loggerLink({
enabled: (opts) =>
(process.env.NODE_ENV === "development" &&
typeof window !== "undefined") ||
//(
//process.env.NODE_ENV === "development" &&
typeof window !== "undefined" ||
// )
(opts.direction === "down" && opts.result instanceof Error),
}),