- removes duplicative user lookup in login operation

- enables depth and access control in login operation
This commit is contained in:
Jacob Fletcher
2020-11-17 16:41:15 -05:00
parent 87525001f7
commit a3ecd7324a

View File

@@ -2,6 +2,7 @@ const jwt = require('jsonwebtoken');
const { AuthenticationError, LockedAuth } = require('../../errors');
const getCookieExpiration = require('../../utilities/getCookieExpiration');
const isLocked = require('../isLocked');
const removeInternalFields = require('../../utilities/removeInternalFields');
async function login(incomingArgs) {
const { config, operations } = this;
@@ -72,21 +73,9 @@ async function login(incomingArgs) {
});
}
const userQuery = await operations.collections.find({
where: {
email: {
equals: email,
},
},
collection: {
Model,
config: collectionConfig,
},
req,
overrideAccess: true,
});
let user = userQuery.docs[0];
let user = userDoc.toJSON({ virtuals: true });
user = removeInternalFields(user);
user = JSON.parse(JSON.stringify(user));
const fieldsToSign = collectionConfig.fields.reduce((signedFields, field) => {
const result = {
@@ -134,6 +123,8 @@ async function login(incomingArgs) {
args.res.cookie(`${config.cookiePrefix}-token`, token, cookieOptions);
}
req.user = user;
// /////////////////////////////////////
// afterLogin - Collection
// /////////////////////////////////////