mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-09-22 06:00:56 +02:00

* feat(api): refresh token logic * feat(client): refresh token logic * feat(data-provider): refresh token logic * fix: SSE uses esm * chore: add default refresh token expiry to AuthService, add message about env var not set when generating a token * chore: update scripts to more compatible bun methods, ran bun install again * chore: update env.example and playwright workflow with JWT_REFRESH_SECRET * chore: update breaking changes docs * chore: add timeout to url visit * chore: add default SESSION_EXPIRY in generateToken logic, add act script for testing github actions * fix(e2e): refresh automatically in development environment to pass e2e tests
27 lines
740 B
JavaScript
27 lines
740 B
JavaScript
const User = require('../../../models/User');
|
|
const { setAuthTokens } = require('../../services/AuthService');
|
|
|
|
const loginController = async (req, res) => {
|
|
try {
|
|
const user = await User.findById(req.user._id);
|
|
|
|
// If user doesn't exist, return error
|
|
if (!user) {
|
|
// typeof user !== User) { // this doesn't seem to resolve the User type ??
|
|
return res.status(400).json({ message: 'Invalid credentials' });
|
|
}
|
|
|
|
const token = await setAuthTokens(user._id, res);
|
|
|
|
return res.status(200).send({ token, user });
|
|
} catch (err) {
|
|
console.log(err);
|
|
}
|
|
|
|
// Generic error messages are safer
|
|
return res.status(500).json({ message: 'Something went wrong' });
|
|
};
|
|
|
|
module.exports = {
|
|
loginController,
|
|
};
|