From a0bbf1cfd885ee5fa25d57f6d3c8f67ba1959aae Mon Sep 17 00:00:00 2001 From: Tamlyn Rhodes <tamlyn@tamlyn.org> Date: Thu, 4 Jan 2018 12:22:58 +0000 Subject: [PATCH] Fix consistent-return lint errors --- .eslintrc | 2 -- .../components/packages/Epub/EpubBackend.js | 6 ++-- packages/db-manager/src/setup-db/index.js | 2 +- packages/server/config/test.js | 2 +- packages/server/src/authentication.js | 7 +++-- packages/server/src/models/Team.js | 30 +++++++++---------- packages/server/src/models/schema.js | 2 +- packages/server/src/routes/api_collections.js | 2 +- packages/server/src/routes/api_fragments.js | 18 +++++------ packages/server/src/routes/api_upload.js | 5 +++- packages/server/src/routes/api_users.js | 12 ++++---- packages/server/src/routes/util.js | 4 +-- packages/server/src/setup.js | 5 +++- packages/server/test/helpers/authsome_mode.js | 2 ++ packages/theme/src/index.js | 2 ++ 15 files changed, 52 insertions(+), 49 deletions(-) diff --git a/.eslintrc b/.eslintrc index b6636f29e..04d96f71c 100644 --- a/.eslintrc +++ b/.eslintrc @@ -6,7 +6,6 @@ }, "extends": ["pubsweet"], "rules": { - "consistent-return": 0, "prefer-destructuring": ["error", { "VariableDeclarator": { "array": false, @@ -24,7 +23,6 @@ "jsx-a11y/click-events-have-key-events": 0, "jsx-a11y/label-has-for": 0, "jsx-a11y/no-static-element-interactions": 0, - "import/extensions": 0, "import/no-dynamic-require": 0, "import/no-extraneous-dependencies": 0, "import/no-named-as-default": 0, diff --git a/packages/components/packages/Epub/EpubBackend.js b/packages/components/packages/Epub/EpubBackend.js index fa79af489..ea681a01a 100644 --- a/packages/components/packages/Epub/EpubBackend.js +++ b/packages/components/packages/Epub/EpubBackend.js @@ -61,11 +61,11 @@ const EpubBackend = app => { switch (req.query.destination) { case 'folder': - return output.folder(epub, res) - + output.folder(epub, res) + break case 'attachment': default: - return output.attachment(epub, res, id) + output.attachment(epub, res, id) } } catch (e) { next(e) diff --git a/packages/db-manager/src/setup-db/index.js b/packages/db-manager/src/setup-db/index.js index c6935c78d..b8b21c1b5 100644 --- a/packages/db-manager/src/setup-db/index.js +++ b/packages/db-manager/src/setup-db/index.js @@ -10,7 +10,7 @@ const { validateSetupDbConfig } = require('../validations') const checkNoDb = async mergedDbConfig => { const exists = await dbExists() - if (!exists) return null + if (!exists) return if (!mergedDbConfig.clobber) { logger.error( diff --git a/packages/server/config/test.js b/packages/server/config/test.js index dfcaa8700..93143c4ee 100644 --- a/packages/server/config/test.js +++ b/packages/server/config/test.js @@ -3,7 +3,7 @@ const winston = require('winston') module.exports = { 'pubsweet-server': { - logger: winston, + logger: new winston.Logger({ level: 'warn' }), secret: 'test', sse: false, }, diff --git a/packages/server/src/authentication.js b/packages/server/src/authentication.js index 36844a7c1..2ac322786 100644 --- a/packages/server/src/authentication.js +++ b/packages/server/src/authentication.js @@ -44,15 +44,16 @@ const verifyPassword = (username, password, done) => { }) .then(([user, isValid]) => { if (isValid) { - return done(null, user, { id: user.id }) + done(null, user, { id: user.id }) + return } logger.debug('Invalid password for user:', username) - return done(null, false, { message: errorMessage }) + done(null, false, { message: errorMessage }) }) .catch(err => { logger.debug('User not found', err) if (err) { - return done(null, false, { message: errorMessage }) + done(null, false, { message: errorMessage }) } }) } diff --git a/packages/server/src/models/Team.js b/packages/server/src/models/Team.js index bb24ad23c..9e5dbeb4d 100644 --- a/packages/server/src/models/Team.js +++ b/packages/server/src/models/Team.js @@ -48,14 +48,13 @@ class Team extends Model { async save() { await Promise.all( - this.members.map(member => - User.find(member).then(user => { - if (!user.teams.includes(this.id)) { - user.teams.push(this.id) - return user.save() - } - }), - ), + this.members.map(async member => { + const user = await User.find(member) + if (!user.teams.includes(this.id)) { + user.teams.push(this.id) + await user.save() + } + }), ) return super.save() @@ -63,14 +62,13 @@ class Team extends Model { async delete() { await Promise.all( - this.members.map(member => - User.find(member).then(user => { - if (user.teams.includes(this.id)) { - user.teams = _.without(user.teams, this.id) - return user.save() - } - }), - ), + this.members.map(async member => { + const user = await User.find(member) + if (user.teams.includes(this.id)) { + user.teams = _.without(user.teams, this.id) + await user.save() + } + }), ) return super.delete() diff --git a/packages/server/src/models/schema.js b/packages/server/src/models/schema.js index cbb216b91..cc6477877 100644 --- a/packages/server/src/models/schema.js +++ b/packages/server/src/models/schema.js @@ -2,7 +2,7 @@ global.db = require('../db')() module.exports = () => { if (!db.rel) { - return db.setSchema([ + db.setSchema([ { singular: 'collection', plural: 'collections', diff --git a/packages/server/src/routes/api_collections.js b/packages/server/src/routes/api_collections.js index ef50f7bb4..f60a43c3a 100644 --- a/packages/server/src/routes/api_collections.js +++ b/packages/server/src/routes/api_collections.js @@ -89,7 +89,7 @@ api.get( target: collection, }) - return res.status(STATUS.OK).json(properties) + res.status(STATUS.OK).json(properties) } catch (err) { next(err) } diff --git a/packages/server/src/routes/api_fragments.js b/packages/server/src/routes/api_fragments.js index a8d9a7e44..a1ef3aa85 100644 --- a/packages/server/src/routes/api_fragments.js +++ b/packages/server/src/routes/api_fragments.js @@ -106,7 +106,7 @@ api.get( fragments = fragments.map(fieldSelector(req)) - return res.status(STATUS.OK).json(fragments) + res.status(STATUS.OK).json(fragments) } catch (err) { next(err) } @@ -123,7 +123,7 @@ api.get( fragment.owners = await User.ownersWithUsername(fragment) const properties = await applyPermissionFilter({ req, target: fragment }) - return res.status(STATUS.OK).json(properties) + res.status(STATUS.OK).json(properties) } catch (err) { res.status(STATUS.NOT_FOUND).json(err.message) } @@ -276,21 +276,19 @@ api.get( authBearerAndPublic, async (req, res, next) => { try { - const fragment = await Fragment.find(req.params.fragmentId) + let fragment = await Fragment.find(req.params.fragmentId) const permission = await authsome.can(req.user, req.method, fragment) if (!permission) { throw authorizationError(req.user, req.method, fragment) } - return Fragment.find(req.params.fragmentId).then(fragment => { - if (permission.filter) { - fragment = permission.filter(fragment) - } - return res.status(STATUS.OK).json(fragment) - }) + if (permission.filter) { + fragment = permission.filter(fragment) + } + res.status(STATUS.OK).json(fragment) } catch (err) { - res.status(STATUS.NOT_FOUND).json(err.message) + next(err) } }, ) diff --git a/packages/server/src/routes/api_upload.js b/packages/server/src/routes/api_upload.js index 1f651aec9..ee36e0f20 100644 --- a/packages/server/src/routes/api_upload.js +++ b/packages/server/src/routes/api_upload.js @@ -12,7 +12,10 @@ const storage = multer.diskStorage({ destination: 'uploads/', filename(req, file, cb) { crypto.pseudoRandomBytes(16, (err, raw) => { - if (err) return cb(err) + if (err) { + cb(err) + return + } cb(null, raw.toString('hex') + path.extname(file.originalname)) }) diff --git a/packages/server/src/routes/api_users.js b/packages/server/src/routes/api_users.js index 461cc4792..d593fdae4 100644 --- a/packages/server/src/routes/api_users.js +++ b/packages/server/src/routes/api_users.js @@ -34,7 +34,7 @@ api.get('/users/authenticate', authBearer, async (req, res, next) => { const user = await User.find(req.user) user.token = req.authInfo.token user.teams = await Promise.all(user.teams.map(teamId => Team.find(teamId))) - return res.status(STATUS.OK).json(user) + res.status(STATUS.OK).json(user) } catch (err) { next(err) } @@ -47,7 +47,7 @@ api.post('/users', async (req, res, next) => { if (req.body.admin) throw new ValidationError('invalid property: admin') user = await user.save() - return res.status(STATUS.CREATED).json(user) + res.status(STATUS.CREATED).json(user) } catch (err) { next(err) } @@ -64,7 +64,7 @@ api.get('/users', authBearer, async (req, res, next) => { const users = (await User.all()).filter(createFilterFromQuery(req.query)) - return res.status(STATUS.OK).json({ users }) + res.status(STATUS.OK).json({ users }) } catch (err) { next(err) } @@ -80,7 +80,7 @@ api.get('/users/:id', authBearer, async (req, res, next) => { throw authorizationError(req.user, req.method, req.path) } - return res.status(STATUS.OK).json(user) + res.status(STATUS.OK).json(user) } catch (err) { next(err) } @@ -96,7 +96,7 @@ api.delete('/users/:id', authBearer, async (req, res, next) => { throw authorizationError(req.user, req.method, req.path) } user = await user.delete() - return res.status(STATUS.OK).json(user) + res.status(STATUS.OK).json(user) } catch (err) { next(err) } @@ -126,7 +126,7 @@ api.patch('/users/:id', authBearer, async (req, res, next) => { user = await user.save() user = await User.find(req.params.id) - return res.status(STATUS.OK).json(user) + res.status(STATUS.OK).json(user) } catch (err) { next(err) } diff --git a/packages/server/src/routes/util.js b/packages/server/src/routes/util.js index 5dcd34219..4d5997e95 100644 --- a/packages/server/src/routes/util.js +++ b/packages/server/src/routes/util.js @@ -57,9 +57,7 @@ Util.getTeams = async opts => { opts.req.method, team, ) - if (permission) { - return team - } + return permission ? team : undefined }), ) diff --git a/packages/server/src/setup.js b/packages/server/src/setup.js index bf20d85db..18ef99018 100755 --- a/packages/server/src/setup.js +++ b/packages/server/src/setup.js @@ -33,7 +33,10 @@ prompt.get( }, }, (err, result) => { - if (err) return logger.info(err) + if (err) { + logger.info(err) + return + } logger.info('Received the following answers:') logger.info(` username: ${result.username}`) diff --git a/packages/server/test/helpers/authsome_mode.js b/packages/server/test/helpers/authsome_mode.js index 33aa4ea9d..e6a504af2 100644 --- a/packages/server/test/helpers/authsome_mode.js +++ b/packages/server/test/helpers/authsome_mode.js @@ -30,6 +30,8 @@ async function teamPermissions(user, operation, object, context) { } } } + + return false } function unauthenticatedUser(operation, object) { diff --git a/packages/theme/src/index.js b/packages/theme/src/index.js index ed8411374..d7af8e3ca 100644 --- a/packages/theme/src/index.js +++ b/packages/theme/src/index.js @@ -1,3 +1,5 @@ +/* eslint-disable import/extensions */ + import 'typeface-fira-mono' import 'typeface-fira-sans' import 'typeface-fira-sans-condensed' -- GitLab