diff --git a/backend/.eslintrc.cjs b/backend/.eslintrc.cjs index 5cdee6690..cff4c1de1 100644 --- a/backend/.eslintrc.cjs +++ b/backend/.eslintrc.cjs @@ -78,30 +78,30 @@ module.exports = { 'import/no-named-default': 'error', 'import/no-namespace': 'error', 'import/no-unassigned-import': 'error', - // 'import/order': [ - // 'error', - // { - // groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object', 'type'], - // 'newlines-between': 'always', - // pathGroups: [ - // { - // pattern: '@?*/**', - // group: 'external', - // position: 'after', - // }, - // { - // pattern: '@/**', - // group: 'external', - // position: 'after', - // }, - // ], - // alphabetize: { - // order: 'asc' /* sort in ascending order. Options: ['ignore', 'asc', 'desc'] */, - // caseInsensitive: true /* ignore case. Options: [true, false] */, - // }, - // distinctGroup: true, - // }, - // ], + 'import/order': [ + 'error', + { + groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object', 'type'], + 'newlines-between': 'always', + pathGroups: [ + { + pattern: '@?*/**', + group: 'external', + position: 'after', + }, + { + pattern: '@/**', + group: 'external', + position: 'after', + }, + ], + alphabetize: { + order: 'asc' /* sort in ascending order. Options: ['ignore', 'asc', 'desc'] */, + caseInsensitive: true /* ignore case. Options: [true, false] */, + }, + distinctGroup: true, + }, + ], 'import/prefer-default-export': 'off', // n diff --git a/backend/src/config/index.ts b/backend/src/config/index.ts index e6a02a87d..5eb58fa89 100644 --- a/backend/src/config/index.ts +++ b/backend/src/config/index.ts @@ -2,6 +2,7 @@ /* eslint-disable n/no-unpublished-require */ /* eslint-disable n/no-missing-require */ import { config } from 'dotenv' + import emails from './emails' import metadata from './metadata' diff --git a/backend/src/db/clean.ts b/backend/src/db/clean.ts index 64ef91c31..0f316faf8 100644 --- a/backend/src/db/clean.ts +++ b/backend/src/db/clean.ts @@ -1,5 +1,6 @@ /* eslint-disable n/no-process-exit */ import CONFIG from '@config/index' + import { cleanDatabase } from './factories' if (CONFIG.PRODUCTION && !CONFIG.PRODUCTION_DB_CLEAN_ALLOW) { diff --git a/backend/src/db/factories.ts b/backend/src/db/factories.ts index 5cb573f12..459a8d186 100644 --- a/backend/src/db/factories.ts +++ b/backend/src/db/factories.ts @@ -1,12 +1,14 @@ -import { v4 as uuid } from 'uuid' -import slugify from 'slug' +import { faker } from '@faker-js/faker' import { hashSync } from 'bcryptjs' import { Factory } from 'rosie' -import { faker } from '@faker-js/faker' -import { getDriver, getNeode } from './neo4j' +import slugify from 'slug' +import { v4 as uuid } from 'uuid' + import CONFIG from '@config/index' import generateInviteCode from '@schema/resolvers/helpers/generateInviteCode' +import { getDriver, getNeode } from './neo4j' + const neode = getNeode() const uniqueImageUrl = (imageUrl) => { diff --git a/backend/src/db/migrate/store.ts b/backend/src/db/migrate/store.ts index 742c9f11e..1e32b49f5 100644 --- a/backend/src/db/migrate/store.ts +++ b/backend/src/db/migrate/store.ts @@ -1,8 +1,9 @@ -import { getDriver, getNeode } from '@db/neo4j' import { hashSync } from 'bcryptjs' import { v4 as uuid } from 'uuid' -import { categories } from '@constants/categories' + import CONFIG from '@config/index' +import { categories } from '@constants/categories' +import { getDriver, getNeode } from '@db/neo4j' const defaultAdmin = { email: 'admin@example.org', diff --git a/backend/src/db/migrations-examples/20200123150105-merge_duplicate_user_accounts.ts b/backend/src/db/migrations-examples/20200123150105-merge_duplicate_user_accounts.ts index d1be6542b..df4cec41e 100644 --- a/backend/src/db/migrations-examples/20200123150105-merge_duplicate_user_accounts.ts +++ b/backend/src/db/migrations-examples/20200123150105-merge_duplicate_user_accounts.ts @@ -2,6 +2,7 @@ /* eslint-disable promise/prefer-await-to-callbacks */ import { throwError, concat } from 'rxjs' import { flatMap, mergeMap, map, catchError, filter } from 'rxjs/operators' + import { getDriver } from '@db/neo4j' import normalizeEmail from '@schema/resolvers/helpers/normalizeEmail' diff --git a/backend/src/db/migrations-examples/20200123150110-merge_duplicate_location_nodes.ts b/backend/src/db/migrations-examples/20200123150110-merge_duplicate_location_nodes.ts index 083bfa420..89cef62fc 100644 --- a/backend/src/db/migrations-examples/20200123150110-merge_duplicate_location_nodes.ts +++ b/backend/src/db/migrations-examples/20200123150110-merge_duplicate_location_nodes.ts @@ -2,6 +2,7 @@ /* eslint-disable promise/prefer-await-to-callbacks */ import { throwError, concat } from 'rxjs' import { flatMap, mergeMap, map, catchError } from 'rxjs/operators' + import { getDriver } from '@db/neo4j' export const description = ` diff --git a/backend/src/db/migrations-examples/20200312140328-bulk_upload_to_s3.ts b/backend/src/db/migrations-examples/20200312140328-bulk_upload_to_s3.ts index bf154e3d1..f0531b6c8 100644 --- a/backend/src/db/migrations-examples/20200312140328-bulk_upload_to_s3.ts +++ b/backend/src/db/migrations-examples/20200312140328-bulk_upload_to_s3.ts @@ -1,11 +1,13 @@ /* eslint-disable security/detect-non-literal-fs-filename */ -import { getDriver } from '@db/neo4j' +import https from 'https' import { existsSync, createReadStream } from 'node:fs' import path from 'node:path' + import { S3 } from 'aws-sdk' import mime from 'mime-types' + import s3Configs from '@config/index' -import https from 'https' +import { getDriver } from '@db/neo4j' export const description = ` Upload all image files to a S3 compatible object storage in order to reduce diff --git a/backend/src/db/migrations-examples/20200326160326-remove_dangling_image_urls.ts b/backend/src/db/migrations-examples/20200326160326-remove_dangling_image_urls.ts index b79d74b9a..0190ead48 100644 --- a/backend/src/db/migrations-examples/20200326160326-remove_dangling_image_urls.ts +++ b/backend/src/db/migrations-examples/20200326160326-remove_dangling_image_urls.ts @@ -1,7 +1,8 @@ /* eslint-disable security/detect-non-literal-fs-filename */ -import { getDriver } from '@db/neo4j' import { existsSync } from 'node:fs' +import { getDriver } from '@db/neo4j' + export const description = ` In this review: https://github.com/Human-Connection/Human-Connection/pull/3262#discussion_r398634249 diff --git a/backend/src/db/migrations/20210506150512-add-donations-node.ts b/backend/src/db/migrations/20210506150512-add-donations-node.ts index 95b7e9664..3d01f28bb 100644 --- a/backend/src/db/migrations/20210506150512-add-donations-node.ts +++ b/backend/src/db/migrations/20210506150512-add-donations-node.ts @@ -1,6 +1,7 @@ -import { getDriver } from '@db/neo4j' import { v4 as uuid } from 'uuid' +import { getDriver } from '@db/neo4j' + export const description = 'This migration adds a Donations node with default settings to the database.' diff --git a/backend/src/db/neo4j.ts b/backend/src/db/neo4j.ts index a83c9972d..c94c552f0 100644 --- a/backend/src/db/neo4j.ts +++ b/backend/src/db/neo4j.ts @@ -1,7 +1,8 @@ /* eslint-disable import/no-named-as-default-member */ import neo4j from 'neo4j-driver' -import CONFIG from '@config/index' import Neode from 'neode' + +import CONFIG from '@config/index' import models from '@models/index' let driver diff --git a/backend/src/db/seed.ts b/backend/src/db/seed.ts index ae4e0ff01..34a6ebb03 100644 --- a/backend/src/db/seed.ts +++ b/backend/src/db/seed.ts @@ -1,21 +1,23 @@ /* eslint-disable n/no-process-exit */ -import sample from 'lodash/sample' -import { createTestClient } from 'apollo-server-testing' -import CONFIG from '@config/index' -import createServer from '@src/server' import { faker } from '@faker-js/faker' -import Factory from './factories' -import { getNeode, getDriver } from './neo4j' +import { createTestClient } from 'apollo-server-testing' +import sample from 'lodash/sample' + +import CONFIG from '@config/index' +import { categories } from '@constants/categories' +import { createCommentMutation } from '@graphql/comments' import { createGroupMutation, joinGroupMutation, changeGroupMemberRoleMutation, } from '@graphql/groups' +import { createMessageMutation } from '@graphql/messages' import { createPostMutation } from '@graphql/posts' import { createRoomMutation } from '@graphql/rooms' -import { createMessageMutation } from '@graphql/messages' -import { createCommentMutation } from '@graphql/comments' -import { categories } from '@constants/categories' +import createServer from '@src/server' + +import Factory from './factories' +import { getNeode, getDriver } from './neo4j' if (CONFIG.PRODUCTION && !CONFIG.PRODUCTION_DB_CLEAN_ALLOW) { throw new Error(`You cannot seed the database in a non-staging and real production environment!`) diff --git a/backend/src/index.ts b/backend/src/index.ts index 59718dad1..35c215803 100644 --- a/backend/src/index.ts +++ b/backend/src/index.ts @@ -1,5 +1,5 @@ -import createServer from './server' import CONFIG from './config' +import createServer from './server' const { server, httpServer } = createServer() const url = new URL(CONFIG.GRAPHQL_URI) diff --git a/backend/src/jwt/decode.spec.ts b/backend/src/jwt/decode.spec.ts index 5dd1f3a20..29783bc6b 100644 --- a/backend/src/jwt/decode.spec.ts +++ b/backend/src/jwt/decode.spec.ts @@ -1,5 +1,6 @@ import Factory, { cleanDatabase } from '@db/factories' import { getDriver, getNeode } from '@db/neo4j' + import decode from './decode' import encode from './encode' diff --git a/backend/src/jwt/decode.ts b/backend/src/jwt/decode.ts index 7f614274e..b4424e660 100644 --- a/backend/src/jwt/decode.ts +++ b/backend/src/jwt/decode.ts @@ -1,4 +1,5 @@ import jwt from 'jsonwebtoken' + import CONFIG from '@config/index' export default async (driver, authorizationHeader) => { diff --git a/backend/src/jwt/encode.spec.ts b/backend/src/jwt/encode.spec.ts index b5a6884c9..55c74bf8d 100644 --- a/backend/src/jwt/encode.spec.ts +++ b/backend/src/jwt/encode.spec.ts @@ -1,7 +1,9 @@ -import encode from './encode' import jwt from 'jsonwebtoken' + import CONFIG from '@config/index' +import encode from './encode' + describe('encode', () => { let payload beforeEach(() => { diff --git a/backend/src/jwt/encode.ts b/backend/src/jwt/encode.ts index e4600e695..110111faf 100644 --- a/backend/src/jwt/encode.ts +++ b/backend/src/jwt/encode.ts @@ -1,4 +1,5 @@ import jwt from 'jsonwebtoken' + import CONFIG from '@config/index' // Generate an Access Token for the given User ID diff --git a/backend/src/middleware/excerptMiddleware.ts b/backend/src/middleware/excerptMiddleware.ts index f1ea1425b..f903dd01c 100644 --- a/backend/src/middleware/excerptMiddleware.ts +++ b/backend/src/middleware/excerptMiddleware.ts @@ -1,4 +1,5 @@ import trunc from 'trunc-html' + import { DESCRIPTION_EXCERPT_HTML_LENGTH } from '@constants/groups' export default { diff --git a/backend/src/middleware/hashtags/hashtagsMiddleware.spec.ts b/backend/src/middleware/hashtags/hashtagsMiddleware.spec.ts index 1ec96826b..2bb617a3d 100644 --- a/backend/src/middleware/hashtags/hashtagsMiddleware.spec.ts +++ b/backend/src/middleware/hashtags/hashtagsMiddleware.spec.ts @@ -1,6 +1,7 @@ -import gql from 'graphql-tag' -import { cleanDatabase } from '@db/factories' import { createTestClient } from 'apollo-server-testing' +import gql from 'graphql-tag' + +import { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' diff --git a/backend/src/middleware/helpers/cleanHtml.ts b/backend/src/middleware/helpers/cleanHtml.ts index 04d6deae4..e72746fcf 100644 --- a/backend/src/middleware/helpers/cleanHtml.ts +++ b/backend/src/middleware/helpers/cleanHtml.ts @@ -1,6 +1,6 @@ /* eslint-disable security/detect-unsafe-regex */ -import sanitizeHtml from 'sanitize-html' import linkifyHtml from 'linkify-html' +import sanitizeHtml from 'sanitize-html' export const removeHtmlTags = (input) => { return sanitizeHtml(input, { diff --git a/backend/src/middleware/helpers/email/sendMail.ts b/backend/src/middleware/helpers/email/sendMail.ts index 82f042ece..02456f391 100644 --- a/backend/src/middleware/helpers/email/sendMail.ts +++ b/backend/src/middleware/helpers/email/sendMail.ts @@ -1,8 +1,9 @@ -import CONFIG from '@config/index' -import { cleanHtml } from '@middleware/helpers/cleanHtml' import nodemailer from 'nodemailer' import { htmlToText } from 'nodemailer-html-to-text' +import CONFIG from '@config/index' +import { cleanHtml } from '@middleware/helpers/cleanHtml' + const hasEmailConfig = CONFIG.SMTP_HOST && CONFIG.SMTP_PORT const hasAuthData = CONFIG.SMTP_USERNAME && CONFIG.SMTP_PASSWORD const hasDKIMData = diff --git a/backend/src/middleware/helpers/email/templateBuilder.spec.ts b/backend/src/middleware/helpers/email/templateBuilder.spec.ts index 7907fe56b..48e8b4c99 100644 --- a/backend/src/middleware/helpers/email/templateBuilder.spec.ts +++ b/backend/src/middleware/helpers/email/templateBuilder.spec.ts @@ -1,5 +1,6 @@ import CONFIG from '@config/index' import logosWebapp from '@config/logos' + import { signupTemplate, emailVerificationTemplate, diff --git a/backend/src/middleware/helpers/email/templateBuilder.ts b/backend/src/middleware/helpers/email/templateBuilder.ts index 4a3d26e89..c091bf1f8 100644 --- a/backend/src/middleware/helpers/email/templateBuilder.ts +++ b/backend/src/middleware/helpers/email/templateBuilder.ts @@ -1,12 +1,13 @@ /* eslint-disable import/no-namespace */ import mustache from 'mustache' -import CONFIG from '@config/index' -import metadata from '@config//metadata' + import logosWebapp from '@config//logos' +import metadata from '@config//metadata' +import CONFIG from '@config/index' import * as templates from './templates' -import * as templatesEN from './templates/en' import * as templatesDE from './templates/de' +import * as templatesEN from './templates/en' const from = CONFIG.EMAIL_DEFAULT_SENDER const welcomeImageUrl = new URL(logosWebapp.LOGO_WELCOME_PATH, CONFIG.CLIENT_URI) diff --git a/backend/src/middleware/index.ts b/backend/src/middleware/index.ts index 3f593920f..225e02209 100644 --- a/backend/src/middleware/index.ts +++ b/backend/src/middleware/index.ts @@ -1,22 +1,24 @@ /* eslint-disable security/detect-object-injection */ import { applyMiddleware } from 'graphql-middleware' + import CONFIG from '@config/index' -import softDelete from './softDelete/softDeleteMiddleware' -import sluggify from './sluggifyMiddleware' + +import chatMiddleware from './chatMiddleware' import excerpt from './excerptMiddleware' -import xss from './xssMiddleware' -import permissions from './permissionsMiddleware' +import hashtags from './hashtags/hashtagsMiddleware' import includedFields from './includedFieldsMiddleware' -import orderBy from './orderByMiddleware' -import validation from './validation/validationMiddleware' +import languages from './languages/languages' +import login from './login/loginMiddleware' // eslint-disable-next-line import/no-cycle import notifications from './notifications/notificationsMiddleware' -import hashtags from './hashtags/hashtagsMiddleware' -import login from './login/loginMiddleware' +import orderBy from './orderByMiddleware' +import permissions from './permissionsMiddleware' import sentry from './sentryMiddleware' -import languages from './languages/languages' +import sluggify from './sluggifyMiddleware' +import softDelete from './softDelete/softDeleteMiddleware' import userInteractions from './userInteractions' -import chatMiddleware from './chatMiddleware' +import validation from './validation/validationMiddleware' +import xss from './xssMiddleware' export default (schema) => { const middlewares = { diff --git a/backend/src/middleware/languages/languages.spec.ts b/backend/src/middleware/languages/languages.spec.ts index ee41b6740..ca77acac8 100644 --- a/backend/src/middleware/languages/languages.spec.ts +++ b/backend/src/middleware/languages/languages.spec.ts @@ -1,8 +1,9 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' let mutate let authenticatedUser diff --git a/backend/src/middleware/languages/languages.ts b/backend/src/middleware/languages/languages.ts index 7a86fb2ef..6149b90d5 100644 --- a/backend/src/middleware/languages/languages.ts +++ b/backend/src/middleware/languages/languages.ts @@ -1,4 +1,5 @@ import LanguageDetect from 'languagedetect' + import { removeHtmlTags } from '@middleware/helpers/cleanHtml' const setPostLanguage = (text, defaultLanguage) => { diff --git a/backend/src/middleware/notifications/notificationsMiddleware.spec.ts b/backend/src/middleware/notifications/notificationsMiddleware.spec.ts index ad4d80e04..75b84f720 100644 --- a/backend/src/middleware/notifications/notificationsMiddleware.spec.ts +++ b/backend/src/middleware/notifications/notificationsMiddleware.spec.ts @@ -1,8 +1,8 @@ -import gql from 'graphql-tag' -import Factory, { cleanDatabase } from '@db/factories' import { createTestClient } from 'apollo-server-testing' +import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' -import createServer, { pubsub } from '@src/server' import { createGroupMutation, joinGroupMutation, @@ -12,6 +12,7 @@ import { } from '@graphql/groups' import { createMessageMutation } from '@graphql/messages' import { createRoomMutation } from '@graphql/rooms' +import createServer, { pubsub } from '@src/server' const sendMailMock = jest.fn() jest.mock('../helpers/email/sendMail', () => ({ diff --git a/backend/src/middleware/notifications/notificationsMiddleware.ts b/backend/src/middleware/notifications/notificationsMiddleware.ts index e08753ec2..237e294b4 100644 --- a/backend/src/middleware/notifications/notificationsMiddleware.ts +++ b/backend/src/middleware/notifications/notificationsMiddleware.ts @@ -1,14 +1,15 @@ /* eslint-disable security/detect-object-injection */ -// eslint-disable-next-line import/no-cycle -import { pubsub, NOTIFICATION_ADDED } from '@src/server' -import extractMentionedUsers from './mentions/extractMentionedUsers' -import { validateNotifyUsers } from '@middleware/validation/validationMiddleware' import { sendMail } from '@middleware/helpers/email/sendMail' import { chatMessageTemplate, notificationTemplate, } from '@middleware/helpers/email/templateBuilder' import { isUserOnline } from '@middleware/helpers/isUserOnline' +import { validateNotifyUsers } from '@middleware/validation/validationMiddleware' +// eslint-disable-next-line import/no-cycle +import { pubsub, NOTIFICATION_ADDED } from '@src/server' + +import extractMentionedUsers from './mentions/extractMentionedUsers' const queryNotificationEmails = async (context, notificationUserIds) => { if (!(notificationUserIds && notificationUserIds.length)) return [] diff --git a/backend/src/middleware/notifications/observing-posts.spec.ts b/backend/src/middleware/notifications/observing-posts.spec.ts index 9e85f3733..e10d61d9f 100644 --- a/backend/src/middleware/notifications/observing-posts.spec.ts +++ b/backend/src/middleware/notifications/observing-posts.spec.ts @@ -1,10 +1,10 @@ +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import CONFIG from '@config/index' import { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' - -import CONFIG from '@config/index' CONFIG.CATEGORIES_ACTIVE = false diff --git a/backend/src/middleware/orderByMiddleware.spec.ts b/backend/src/middleware/orderByMiddleware.spec.ts index 639e87c00..9534af76d 100644 --- a/backend/src/middleware/orderByMiddleware.spec.ts +++ b/backend/src/middleware/orderByMiddleware.spec.ts @@ -1,7 +1,8 @@ +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + import { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' -import { createTestClient } from 'apollo-server-testing' import createServer from '@src/server' const neode = getNeode() diff --git a/backend/src/middleware/permissionsMiddleware.spec.ts b/backend/src/middleware/permissionsMiddleware.spec.ts index 54681b519..81d73bae8 100644 --- a/backend/src/middleware/permissionsMiddleware.spec.ts +++ b/backend/src/middleware/permissionsMiddleware.spec.ts @@ -1,9 +1,10 @@ import { createTestClient } from 'apollo-server-testing' -import createServer from '@src/server' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' -import { getDriver, getNeode } from '@db/neo4j' + import CONFIG from '@config/index' +import Factory, { cleanDatabase } from '@db/factories' +import { getDriver, getNeode } from '@db/neo4j' +import createServer from '@src/server' const instance = getNeode() const driver = getDriver() diff --git a/backend/src/middleware/permissionsMiddleware.ts b/backend/src/middleware/permissionsMiddleware.ts index 2be73edd4..c1eaf4b75 100644 --- a/backend/src/middleware/permissionsMiddleware.ts +++ b/backend/src/middleware/permissionsMiddleware.ts @@ -1,6 +1,7 @@ import { rule, shield, deny, allow, or, and } from 'graphql-shield' -import { getNeode } from '@db/neo4j' + import CONFIG from '@config/index' +import { getNeode } from '@db/neo4j' import { validateInviteCode } from '@schema/resolvers/transactions/inviteCodes' const debug = !!CONFIG.DEBUG diff --git a/backend/src/middleware/sentryMiddleware.ts b/backend/src/middleware/sentryMiddleware.ts index ac2d575ef..b77f680d6 100644 --- a/backend/src/middleware/sentryMiddleware.ts +++ b/backend/src/middleware/sentryMiddleware.ts @@ -1,4 +1,5 @@ import { sentry } from 'graphql-middleware-sentry' + import CONFIG from '@config/index' // eslint-disable-next-line import/no-mutable-exports diff --git a/backend/src/middleware/slugifyMiddleware.spec.ts b/backend/src/middleware/slugifyMiddleware.spec.ts index b09b33a13..9e55d54b1 100644 --- a/backend/src/middleware/slugifyMiddleware.spec.ts +++ b/backend/src/middleware/slugifyMiddleware.spec.ts @@ -1,10 +1,11 @@ -import { getNeode, getDriver } from '@db/neo4j' -import createServer from '@src/server' import { createTestClient } from 'apollo-server-testing' + import Factory, { cleanDatabase } from '@db/factories' +import { getNeode, getDriver } from '@db/neo4j' +import { signupVerificationMutation } from '@graphql/authentications' import { createGroupMutation, updateGroupMutation } from '@graphql/groups' import { createPostMutation } from '@graphql/posts' -import { signupVerificationMutation } from '@graphql/authentications' +import createServer from '@src/server' let authenticatedUser let variables diff --git a/backend/src/middleware/softDelete/softDeleteMiddleware.spec.ts b/backend/src/middleware/softDelete/softDeleteMiddleware.spec.ts index c4e6b4d6e..fa62ed101 100644 --- a/backend/src/middleware/softDelete/softDeleteMiddleware.spec.ts +++ b/backend/src/middleware/softDelete/softDeleteMiddleware.spec.ts @@ -1,8 +1,9 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' const neode = getNeode() const driver = getDriver() diff --git a/backend/src/middleware/userInteractions.spec.ts b/backend/src/middleware/userInteractions.spec.ts index b2ea1c389..37b5401e3 100644 --- a/backend/src/middleware/userInteractions.spec.ts +++ b/backend/src/middleware/userInteractions.spec.ts @@ -1,8 +1,9 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' let query, aUser, bUser, post, authenticatedUser, variables diff --git a/backend/src/middleware/validation/validationMiddleware.spec.ts b/backend/src/middleware/validation/validationMiddleware.spec.ts index af8dfab97..8e4b4329f 100644 --- a/backend/src/middleware/validation/validationMiddleware.spec.ts +++ b/backend/src/middleware/validation/validationMiddleware.spec.ts @@ -1,7 +1,8 @@ +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' -import { createTestClient } from 'apollo-server-testing' import createServer from '@src/server' const neode = getNeode() diff --git a/backend/src/middleware/xssMiddleware.ts b/backend/src/middleware/xssMiddleware.ts index 5b9114837..3ed310b40 100644 --- a/backend/src/middleware/xssMiddleware.ts +++ b/backend/src/middleware/xssMiddleware.ts @@ -1,4 +1,5 @@ import walkRecursive from '@helpers/walkRecursive' + import { cleanHtml } from './helpers/cleanHtml' // exclamation mark separetes field names, that should not be sanitized diff --git a/backend/src/schema/index.ts b/backend/src/schema/index.ts index 07721bceb..9f83bc43b 100644 --- a/backend/src/schema/index.ts +++ b/backend/src/schema/index.ts @@ -1,6 +1,7 @@ import { makeAugmentedSchema } from 'neo4j-graphql-js' -import typeDefs from './types' + import resolvers from './resolvers' +import typeDefs from './types' export default makeAugmentedSchema({ typeDefs, diff --git a/backend/src/schema/resolvers/comments.spec.ts b/backend/src/schema/resolvers/comments.spec.ts index 91bf7494d..e92daf86e 100644 --- a/backend/src/schema/resolvers/comments.spec.ts +++ b/backend/src/schema/resolvers/comments.spec.ts @@ -1,8 +1,9 @@ -import Factory, { cleanDatabase } from '@db/factories' -import gql from 'graphql-tag' import { createTestClient } from 'apollo-server-testing' -import createServer from '@src/server' +import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' +import createServer from '@src/server' const driver = getDriver() const neode = getNeode() diff --git a/backend/src/schema/resolvers/comments.ts b/backend/src/schema/resolvers/comments.ts index b9c0271c1..897c71d6f 100644 --- a/backend/src/schema/resolvers/comments.ts +++ b/backend/src/schema/resolvers/comments.ts @@ -1,4 +1,5 @@ import { v4 as uuid } from 'uuid' + import Resolver from './helpers/Resolver' export default { diff --git a/backend/src/schema/resolvers/donations.spec.ts b/backend/src/schema/resolvers/donations.spec.ts index fdc4aa976..ef2070d4e 100644 --- a/backend/src/schema/resolvers/donations.spec.ts +++ b/backend/src/schema/resolvers/donations.spec.ts @@ -1,6 +1,7 @@ import { createTestClient } from 'apollo-server-testing' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' diff --git a/backend/src/schema/resolvers/emails.spec.ts b/backend/src/schema/resolvers/emails.spec.ts index db17ee93e..c594f99f7 100644 --- a/backend/src/schema/resolvers/emails.spec.ts +++ b/backend/src/schema/resolvers/emails.spec.ts @@ -1,8 +1,9 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getDriver, getNeode } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' const neode = getNeode() diff --git a/backend/src/schema/resolvers/emails.ts b/backend/src/schema/resolvers/emails.ts index ff37948f2..d4de9c87b 100644 --- a/backend/src/schema/resolvers/emails.ts +++ b/backend/src/schema/resolvers/emails.ts @@ -1,10 +1,11 @@ -import generateNonce from './helpers/generateNonce' -import Resolver from './helpers/Resolver' -import existingEmailAddress from './helpers/existingEmailAddress' import { UserInputError } from 'apollo-server' // eslint-disable-next-line import/extensions import Validator from 'neode/build/Services/Validator.js' + +import existingEmailAddress from './helpers/existingEmailAddress' +import generateNonce from './helpers/generateNonce' import normalizeEmail from './helpers/normalizeEmail' +import Resolver from './helpers/Resolver' export default { Query: { diff --git a/backend/src/schema/resolvers/embeds.spec.ts b/backend/src/schema/resolvers/embeds.spec.ts index 095497142..92dd224e3 100644 --- a/backend/src/schema/resolvers/embeds.spec.ts +++ b/backend/src/schema/resolvers/embeds.spec.ts @@ -1,9 +1,11 @@ -import fetch from 'node-fetch' import fs from 'node:fs' import path from 'node:path' + import { createTestClient } from 'apollo-server-testing' -import createServer from '@src/server' import gql from 'graphql-tag' +import fetch from 'node-fetch' + +import createServer from '@src/server' jest.mock('node-fetch') const mockedFetch = jest.mocked(fetch) diff --git a/backend/src/schema/resolvers/embeds/findProvider.ts b/backend/src/schema/resolvers/embeds/findProvider.ts index 7bedf2a77..a9a30f2bf 100644 --- a/backend/src/schema/resolvers/embeds/findProvider.ts +++ b/backend/src/schema/resolvers/embeds/findProvider.ts @@ -1,5 +1,6 @@ import fs from 'node:fs' import path from 'node:path' + import { minimatch } from 'minimatch' let oEmbedProvidersFile = fs.readFileSync( diff --git a/backend/src/schema/resolvers/embeds/scraper.ts b/backend/src/schema/resolvers/embeds/scraper.ts index 4771ba160..e4e19e6b9 100644 --- a/backend/src/schema/resolvers/embeds/scraper.ts +++ b/backend/src/schema/resolvers/embeds/scraper.ts @@ -2,13 +2,14 @@ /* eslint-disable n/global-require */ /* eslint-disable import/no-commonjs */ /* eslint-disable import/no-named-as-default */ + +import { ApolloError } from 'apollo-server' +import isArray from 'lodash/isArray' +import isEmpty from 'lodash/isEmpty' +import mergeWith from 'lodash/mergeWith' import Metascraper from 'metascraper' import fetch from 'node-fetch' -import { ApolloError } from 'apollo-server' -import isEmpty from 'lodash/isEmpty' -import isArray from 'lodash/isArray' -import mergeWith from 'lodash/mergeWith' import findProvider from './findProvider' // eslint-disable-next-line import/no-extraneous-dependencies diff --git a/backend/src/schema/resolvers/filter-posts.spec.ts b/backend/src/schema/resolvers/filter-posts.spec.ts index 20b664dc8..d5d4485a3 100644 --- a/backend/src/schema/resolvers/filter-posts.spec.ts +++ b/backend/src/schema/resolvers/filter-posts.spec.ts @@ -1,9 +1,10 @@ import { createTestClient } from 'apollo-server-testing' + +import CONFIG from '@config/index' import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' -import createServer from '@src/server' -import CONFIG from '@config/index' import { filterPosts, createPostMutation } from '@graphql/posts' +import createServer from '@src/server' CONFIG.CATEGORIES_ACTIVE = false diff --git a/backend/src/schema/resolvers/follow.spec.ts b/backend/src/schema/resolvers/follow.spec.ts index 25dd8ac1a..1e05b2fea 100644 --- a/backend/src/schema/resolvers/follow.spec.ts +++ b/backend/src/schema/resolvers/follow.spec.ts @@ -1,8 +1,9 @@ import { createTestClient } from 'apollo-server-testing' +import gql from 'graphql-tag' + import Factory, { cleanDatabase } from '@db/factories' import { getDriver, getNeode } from '@db/neo4j' import createServer from '@src/server' -import gql from 'graphql-tag' const driver = getDriver() const neode = getNeode() diff --git a/backend/src/schema/resolvers/groups.spec.ts b/backend/src/schema/resolvers/groups.spec.ts index 9cea62491..624b09e39 100644 --- a/backend/src/schema/resolvers/groups.spec.ts +++ b/backend/src/schema/resolvers/groups.spec.ts @@ -1,5 +1,8 @@ import { createTestClient } from 'apollo-server-testing' + +import CONFIG from '@config/index' import Factory, { cleanDatabase } from '@db/factories' +import { getNeode, getDriver } from '@db/neo4j' import { createGroupMutation, updateGroupMutation, @@ -10,9 +13,7 @@ import { groupMembersQuery, groupQuery, } from '@graphql/groups' -import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import CONFIG from '@config/index' const driver = getDriver() const neode = getNeode() diff --git a/backend/src/schema/resolvers/groups.ts b/backend/src/schema/resolvers/groups.ts index 90fbe1ba0..8b383e702 100644 --- a/backend/src/schema/resolvers/groups.ts +++ b/backend/src/schema/resolvers/groups.ts @@ -1,9 +1,11 @@ -import { v4 as uuid } from 'uuid' import { UserInputError } from 'apollo-server' +import { v4 as uuid } from 'uuid' + import CONFIG from '@config/index' import { CATEGORIES_MIN, CATEGORIES_MAX } from '@constants/categories' import { DESCRIPTION_WITHOUT_HTML_LENGTH_MIN } from '@constants/groups' import { removeHtmlTags } from '@middleware/helpers/cleanHtml' + import Resolver, { removeUndefinedNullValuesFromObject, convertObjectToCypherMapLiteral, diff --git a/backend/src/schema/resolvers/helpers/filterForMutedUsers.ts b/backend/src/schema/resolvers/helpers/filterForMutedUsers.ts index 0495a5dfd..5a53bf9cb 100644 --- a/backend/src/schema/resolvers/helpers/filterForMutedUsers.ts +++ b/backend/src/schema/resolvers/helpers/filterForMutedUsers.ts @@ -1,6 +1,7 @@ -import { getMutedUsers } from '@schema/resolvers/users' import { mergeWith, isArray } from 'lodash' +import { getMutedUsers } from '@schema/resolvers/users' + export const filterForMutedUsers = async (params, context) => { if (!context.user) return params const [mutedUsers] = await Promise.all([getMutedUsers(context)]) diff --git a/backend/src/schema/resolvers/images/images.spec.ts b/backend/src/schema/resolvers/images/images.spec.ts index 02d46c61d..a4eb5b1a5 100644 --- a/backend/src/schema/resolvers/images/images.spec.ts +++ b/backend/src/schema/resolvers/images/images.spec.ts @@ -1,9 +1,11 @@ /* eslint-disable promise/prefer-await-to-callbacks */ -import { deleteImage, mergeImage } from './images' -import { getNeode, getDriver } from '@db/neo4j' -import Factory, { cleanDatabase } from '@db/factories' import { UserInputError } from 'apollo-server' +import Factory, { cleanDatabase } from '@db/factories' +import { getNeode, getDriver } from '@db/neo4j' + +import { deleteImage, mergeImage } from './images' + const driver = getDriver() const neode = getNeode() const uuid = '[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}' diff --git a/backend/src/schema/resolvers/images/images.ts b/backend/src/schema/resolvers/images/images.ts index f34c6c226..46eb453c5 100644 --- a/backend/src/schema/resolvers/images/images.ts +++ b/backend/src/schema/resolvers/images/images.ts @@ -1,13 +1,15 @@ /* eslint-disable promise/avoid-new */ /* eslint-disable security/detect-non-literal-fs-filename */ +import { existsSync, unlinkSync, createWriteStream } from 'node:fs' import path from 'node:path' -import { v4 as uuid } from 'uuid' + +import { UserInputError } from 'apollo-server' import { S3 } from 'aws-sdk' import slug from 'slug' -import { existsSync, unlinkSync, createWriteStream } from 'node:fs' -import { UserInputError } from 'apollo-server' -import { getDriver } from '@db/neo4j' +import { v4 as uuid } from 'uuid' + import CONFIG from '@config/index' +import { getDriver } from '@db/neo4j' // const widths = [34, 160, 320, 640, 1024] const { AWS_ENDPOINT: endpoint, AWS_REGION: region, AWS_BUCKET: Bucket, S3_CONFIGURED } = CONFIG diff --git a/backend/src/schema/resolvers/index.ts b/backend/src/schema/resolvers/index.ts index bc028f0db..9a21f9a9d 100644 --- a/backend/src/schema/resolvers/index.ts +++ b/backend/src/schema/resolvers/index.ts @@ -1,4 +1,5 @@ import path from 'node:path' + import { fileLoader, mergeResolvers } from 'merge-graphql-schemas' // the files must be correctly evaluated in built and dev state - therefore accept both js & ts files diff --git a/backend/src/schema/resolvers/inviteCodes.spec.ts b/backend/src/schema/resolvers/inviteCodes.spec.ts index 93124dbe2..e1a0dac17 100644 --- a/backend/src/schema/resolvers/inviteCodes.spec.ts +++ b/backend/src/schema/resolvers/inviteCodes.spec.ts @@ -1,10 +1,11 @@ /* eslint-disable security/detect-non-literal-regexp */ +import { createTestClient } from 'apollo-server-testing' +import gql from 'graphql-tag' + +import CONSTANTS_REGISTRATION from '@constants/registration' import Factory, { cleanDatabase } from '@db/factories' import { getDriver } from '@db/neo4j' -import gql from 'graphql-tag' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' -import CONSTANTS_REGISTRATION from '@constants/registration' let user let query diff --git a/backend/src/schema/resolvers/locations.spec.ts b/backend/src/schema/resolvers/locations.spec.ts index 8880ed830..824372d28 100644 --- a/backend/src/schema/resolvers/locations.spec.ts +++ b/backend/src/schema/resolvers/locations.spec.ts @@ -1,8 +1,9 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' let mutate, authenticatedUser diff --git a/backend/src/schema/resolvers/locations.ts b/backend/src/schema/resolvers/locations.ts index fa0feafa1..fcc2fa0aa 100644 --- a/backend/src/schema/resolvers/locations.ts +++ b/backend/src/schema/resolvers/locations.ts @@ -1,4 +1,5 @@ import { UserInputError } from 'apollo-server' + import Resolver from './helpers/Resolver' import { queryLocations } from './users/location' diff --git a/backend/src/schema/resolvers/messages.spec.ts b/backend/src/schema/resolvers/messages.spec.ts index d6bd752c0..4384ddd0f 100644 --- a/backend/src/schema/resolvers/messages.spec.ts +++ b/backend/src/schema/resolvers/messages.spec.ts @@ -1,8 +1,9 @@ import { createTestClient } from 'apollo-server-testing' + import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' -import { createRoomMutation, roomQuery } from '@graphql/rooms' import { createMessageMutation, messageQuery, markMessagesAsSeen } from '@graphql/messages' +import { createRoomMutation, roomQuery } from '@graphql/rooms' import createServer, { pubsub } from '@src/server' const driver = getDriver() diff --git a/backend/src/schema/resolvers/messages.ts b/backend/src/schema/resolvers/messages.ts index 729059307..6879c4be9 100644 --- a/backend/src/schema/resolvers/messages.ts +++ b/backend/src/schema/resolvers/messages.ts @@ -1,9 +1,10 @@ -import { neo4jgraphql } from 'neo4j-graphql-js' -import Resolver from './helpers/Resolver' - -import { getUnreadRoomsCount } from './rooms' -import { pubsub, ROOM_COUNT_UPDATED, CHAT_MESSAGE_ADDED } from '@src/server' import { withFilter } from 'graphql-subscriptions' +import { neo4jgraphql } from 'neo4j-graphql-js' + +import { pubsub, ROOM_COUNT_UPDATED, CHAT_MESSAGE_ADDED } from '@src/server' + +import Resolver from './helpers/Resolver' +import { getUnreadRoomsCount } from './rooms' const setMessagesAsDistributed = async (undistributedMessagesIds, session) => { return session.writeTransaction(async (transaction) => { diff --git a/backend/src/schema/resolvers/moderation.spec.ts b/backend/src/schema/resolvers/moderation.spec.ts index a8155d1a8..46befdf10 100644 --- a/backend/src/schema/resolvers/moderation.spec.ts +++ b/backend/src/schema/resolvers/moderation.spec.ts @@ -1,6 +1,7 @@ import { createTestClient } from 'apollo-server-testing' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' diff --git a/backend/src/schema/resolvers/notifications.spec.ts b/backend/src/schema/resolvers/notifications.spec.ts index 6b3d08b8b..a10f97590 100644 --- a/backend/src/schema/resolvers/notifications.spec.ts +++ b/backend/src/schema/resolvers/notifications.spec.ts @@ -1,13 +1,14 @@ -import Factory, { cleanDatabase } from '@db/factories' -import gql from 'graphql-tag' -import { getDriver } from '@db/neo4j' import { createTestClient } from 'apollo-server-testing' -import createServer from '@src/server' +import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' +import { getDriver } from '@db/neo4j' import { markAsReadMutation, markAllAsReadMutation, notificationQuery, } from '@graphql/notifications' +import createServer from '@src/server' const driver = getDriver() let authenticatedUser diff --git a/backend/src/schema/resolvers/notifications.ts b/backend/src/schema/resolvers/notifications.ts index 63307d54c..5dbbe3d40 100644 --- a/backend/src/schema/resolvers/notifications.ts +++ b/backend/src/schema/resolvers/notifications.ts @@ -1,7 +1,9 @@ -import log from './helpers/databaseLogger' import { withFilter } from 'graphql-subscriptions' + import { pubsub, NOTIFICATION_ADDED } from '@src/server' +import log from './helpers/databaseLogger' + export default { Subscription: { notificationAdded: { diff --git a/backend/src/schema/resolvers/observePosts.spec.ts b/backend/src/schema/resolvers/observePosts.spec.ts index ab94a1934..13fd5ccfc 100644 --- a/backend/src/schema/resolvers/observePosts.spec.ts +++ b/backend/src/schema/resolvers/observePosts.spec.ts @@ -1,11 +1,11 @@ import { createTestClient } from 'apollo-server-testing' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' -import { getNeode, getDriver } from '@db/neo4j' -import createServer from '@src/server' -import { createPostMutation } from '@graphql/posts' import CONFIG from '@config/index' +import Factory, { cleanDatabase } from '@db/factories' +import { getNeode, getDriver } from '@db/neo4j' +import { createPostMutation } from '@graphql/posts' +import createServer from '@src/server' CONFIG.CATEGORIES_ACTIVE = false diff --git a/backend/src/schema/resolvers/passwordReset.spec.ts b/backend/src/schema/resolvers/passwordReset.spec.ts index f939b3b1c..b5c7e10dd 100644 --- a/backend/src/schema/resolvers/passwordReset.spec.ts +++ b/backend/src/schema/resolvers/passwordReset.spec.ts @@ -1,10 +1,12 @@ -import Factory, { cleanDatabase } from '@db/factories' -import gql from 'graphql-tag' -import { getNeode, getDriver } from '@db/neo4j' -import CONSTANTS_REGISTRATION from '@constants/registration' -import createPasswordReset from './helpers/createPasswordReset' -import createServer from '@src/server' import { createTestClient } from 'apollo-server-testing' +import gql from 'graphql-tag' + +import CONSTANTS_REGISTRATION from '@constants/registration' +import Factory, { cleanDatabase } from '@db/factories' +import { getNeode, getDriver } from '@db/neo4j' +import createServer from '@src/server' + +import createPasswordReset from './helpers/createPasswordReset' const neode = getNeode() const driver = getDriver() diff --git a/backend/src/schema/resolvers/passwordReset.ts b/backend/src/schema/resolvers/passwordReset.ts index 8ec26538c..b9d4d7f51 100644 --- a/backend/src/schema/resolvers/passwordReset.ts +++ b/backend/src/schema/resolvers/passwordReset.ts @@ -1,6 +1,8 @@ -import { v4 as uuid } from 'uuid' import bcrypt from 'bcryptjs' +import { v4 as uuid } from 'uuid' + import CONSTANTS_REGISTRATION from '@constants/registration' + import createPasswordReset from './helpers/createPasswordReset' export default { diff --git a/backend/src/schema/resolvers/posts.spec.ts b/backend/src/schema/resolvers/posts.spec.ts index 3c52e78f8..103ba98c0 100644 --- a/backend/src/schema/resolvers/posts.spec.ts +++ b/backend/src/schema/resolvers/posts.spec.ts @@ -1,10 +1,11 @@ import { createTestClient } from 'apollo-server-testing' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' -import { getNeode, getDriver } from '@db/neo4j' -import createServer from '@src/server' -import { createPostMutation } from '@graphql/posts' + import CONFIG from '@config/index' +import Factory, { cleanDatabase } from '@db/factories' +import { getNeode, getDriver } from '@db/neo4j' +import { createPostMutation } from '@graphql/posts' +import createServer from '@src/server' CONFIG.CATEGORIES_ACTIVE = true diff --git a/backend/src/schema/resolvers/posts.ts b/backend/src/schema/resolvers/posts.ts index 534782369..cb48d78ea 100644 --- a/backend/src/schema/resolvers/posts.ts +++ b/backend/src/schema/resolvers/posts.ts @@ -1,15 +1,17 @@ -import { v4 as uuid } from 'uuid' -import { neo4jgraphql } from 'neo4j-graphql-js' -import { isEmpty } from 'lodash' import { UserInputError } from 'apollo-server' -import { mergeImage, deleteImage } from './images/images' -import Resolver from './helpers/Resolver' +import { isEmpty } from 'lodash' +import { neo4jgraphql } from 'neo4j-graphql-js' +import { v4 as uuid } from 'uuid' + +import CONFIG from '@config/index' + +import { validateEventParams } from './helpers/events' import { filterForMutedUsers } from './helpers/filterForMutedUsers' import { filterInvisiblePosts } from './helpers/filterInvisiblePosts' import { filterPostsOfMyGroups } from './helpers/filterPostsOfMyGroups' -import { validateEventParams } from './helpers/events' +import Resolver from './helpers/Resolver' +import { mergeImage, deleteImage } from './images/images' import { createOrUpdateLocations } from './users/location' -import CONFIG from '@config/index' const maintainPinnedPosts = (params) => { const pinnedPostFilter = { pinned: true } diff --git a/backend/src/schema/resolvers/postsInGroups.spec.ts b/backend/src/schema/resolvers/postsInGroups.spec.ts index d6b19e6d2..17d4f274e 100644 --- a/backend/src/schema/resolvers/postsInGroups.spec.ts +++ b/backend/src/schema/resolvers/postsInGroups.spec.ts @@ -1,7 +1,10 @@ import { createTestClient } from 'apollo-server-testing' + +import CONFIG from '@config/index' import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' -import createServer from '@src/server' +import { signupVerificationMutation } from '@graphql/authentications' +import { createCommentMutation } from '@graphql/comments' import { createGroupMutation, changeGroupMemberRoleMutation, @@ -14,11 +17,7 @@ import { profilePagePosts, searchPosts, } from '@graphql/posts' -import { createCommentMutation } from '@graphql/comments' -// eslint-disable-next-line no-unused-vars -import { DESCRIPTION_WITHOUT_HTML_LENGTH_MIN } from '@constants/groups' -import CONFIG from '@config/index' -import { signupVerificationMutation } from '@graphql/authentications' +import createServer from '@src/server' CONFIG.CATEGORIES_ACTIVE = false diff --git a/backend/src/schema/resolvers/registration.spec.ts b/backend/src/schema/resolvers/registration.spec.ts index cb63fbe5c..e61460786 100644 --- a/backend/src/schema/resolvers/registration.spec.ts +++ b/backend/src/schema/resolvers/registration.spec.ts @@ -1,9 +1,10 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import CONFIG from '@config/index' +import Factory, { cleanDatabase } from '@db/factories' import { getDriver, getNeode } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' -import CONFIG from '@config/index' const neode = getNeode() diff --git a/backend/src/schema/resolvers/registration.ts b/backend/src/schema/resolvers/registration.ts index 12f13fff3..3d5dfd6b3 100644 --- a/backend/src/schema/resolvers/registration.ts +++ b/backend/src/schema/resolvers/registration.ts @@ -1,8 +1,10 @@ import { UserInputError } from 'apollo-server' + import { getNeode } from '@db/neo4j' import encryptPassword from '@helpers/encryptPassword' -import generateNonce from './helpers/generateNonce' + import existingEmailAddress from './helpers/existingEmailAddress' +import generateNonce from './helpers/generateNonce' import normalizeEmail from './helpers/normalizeEmail' const neode = getNeode() diff --git a/backend/src/schema/resolvers/reports.spec.ts b/backend/src/schema/resolvers/reports.spec.ts index f1e405c37..a57efc011 100644 --- a/backend/src/schema/resolvers/reports.spec.ts +++ b/backend/src/schema/resolvers/reports.spec.ts @@ -1,8 +1,9 @@ import { createTestClient } from 'apollo-server-testing' -import createServer from '@src/server' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getDriver, getNeode } from '@db/neo4j' +import createServer from '@src/server' const instance = getNeode() const driver = getDriver() diff --git a/backend/src/schema/resolvers/rewards.spec.ts b/backend/src/schema/resolvers/rewards.spec.ts index cbd8c58c7..2cfe122a0 100644 --- a/backend/src/schema/resolvers/rewards.spec.ts +++ b/backend/src/schema/resolvers/rewards.spec.ts @@ -1,6 +1,7 @@ import { createTestClient } from 'apollo-server-testing' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' diff --git a/backend/src/schema/resolvers/rewards.ts b/backend/src/schema/resolvers/rewards.ts index 4022f9180..bbb889c41 100644 --- a/backend/src/schema/resolvers/rewards.ts +++ b/backend/src/schema/resolvers/rewards.ts @@ -1,6 +1,7 @@ -import { getNeode } from '@db/neo4j' import { UserInputError } from 'apollo-server' +import { getNeode } from '@db/neo4j' + const neode = getNeode() const getUserAndBadge = async ({ badgeKey, userId }) => { diff --git a/backend/src/schema/resolvers/rooms.spec.ts b/backend/src/schema/resolvers/rooms.spec.ts index 154f9eb43..87ebb4557 100644 --- a/backend/src/schema/resolvers/rooms.spec.ts +++ b/backend/src/schema/resolvers/rooms.spec.ts @@ -1,8 +1,9 @@ import { createTestClient } from 'apollo-server-testing' + import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' -import { createRoomMutation, roomQuery, unreadRoomsQuery } from '@graphql/rooms' import { createMessageMutation } from '@graphql/messages' +import { createRoomMutation, roomQuery, unreadRoomsQuery } from '@graphql/rooms' import createServer from '@src/server' const driver = getDriver() diff --git a/backend/src/schema/resolvers/rooms.ts b/backend/src/schema/resolvers/rooms.ts index 479e361ea..0ff37b594 100644 --- a/backend/src/schema/resolvers/rooms.ts +++ b/backend/src/schema/resolvers/rooms.ts @@ -1,7 +1,9 @@ -import { neo4jgraphql } from 'neo4j-graphql-js' -import Resolver from './helpers/Resolver' -import { pubsub, ROOM_COUNT_UPDATED } from '@src/server' import { withFilter } from 'graphql-subscriptions' +import { neo4jgraphql } from 'neo4j-graphql-js' + +import { pubsub, ROOM_COUNT_UPDATED } from '@src/server' + +import Resolver from './helpers/Resolver' export const getUnreadRoomsCount = async (userId, session) => { return session.readTransaction(async (transaction) => { diff --git a/backend/src/schema/resolvers/searches.spec.ts b/backend/src/schema/resolvers/searches.spec.ts index 385dc5a36..5902f2746 100644 --- a/backend/src/schema/resolvers/searches.spec.ts +++ b/backend/src/schema/resolvers/searches.spec.ts @@ -1,8 +1,9 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' let query, authenticatedUser, user diff --git a/backend/src/schema/resolvers/shout.spec.ts b/backend/src/schema/resolvers/shout.spec.ts index 02d52f46f..7fe7176ab 100644 --- a/backend/src/schema/resolvers/shout.spec.ts +++ b/backend/src/schema/resolvers/shout.spec.ts @@ -1,6 +1,7 @@ import { createTestClient } from 'apollo-server-testing' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' diff --git a/backend/src/schema/resolvers/socialMedia.spec.ts b/backend/src/schema/resolvers/socialMedia.spec.ts index 51e888118..3a36e791e 100644 --- a/backend/src/schema/resolvers/socialMedia.spec.ts +++ b/backend/src/schema/resolvers/socialMedia.spec.ts @@ -1,8 +1,9 @@ import { createTestClient } from 'apollo-server-testing' -import createServer from '@src/server' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getDriver } from '@db/neo4j' +import createServer from '@src/server' const driver = getDriver() diff --git a/backend/src/schema/resolvers/socialMedia.ts b/backend/src/schema/resolvers/socialMedia.ts index 6503a5110..ac27eb1f9 100644 --- a/backend/src/schema/resolvers/socialMedia.ts +++ b/backend/src/schema/resolvers/socialMedia.ts @@ -1,4 +1,5 @@ import { getNeode } from '@db/neo4j' + import Resolver from './helpers/Resolver' const neode = getNeode() diff --git a/backend/src/schema/resolvers/statistics.spec.ts b/backend/src/schema/resolvers/statistics.spec.ts index f81c1ba0b..4c8c8aa01 100644 --- a/backend/src/schema/resolvers/statistics.spec.ts +++ b/backend/src/schema/resolvers/statistics.spec.ts @@ -1,6 +1,7 @@ import { createTestClient } from 'apollo-server-testing' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' diff --git a/backend/src/schema/resolvers/userData.spec.ts b/backend/src/schema/resolvers/userData.spec.ts index 6e9c27c86..1165ec33c 100644 --- a/backend/src/schema/resolvers/userData.spec.ts +++ b/backend/src/schema/resolvers/userData.spec.ts @@ -1,8 +1,9 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' let query, authenticatedUser diff --git a/backend/src/schema/resolvers/user_management.spec.ts b/backend/src/schema/resolvers/user_management.spec.ts index 8b8dcc717..d9905fd71 100644 --- a/backend/src/schema/resolvers/user_management.spec.ts +++ b/backend/src/schema/resolvers/user_management.spec.ts @@ -1,14 +1,15 @@ /* eslint-disable promise/prefer-await-to-callbacks */ -import jwt from 'jsonwebtoken' -import CONFIG from '@config/index' -import Factory, { cleanDatabase } from '@db/factories' -import gql from 'graphql-tag' -import { loginMutation } from '@graphql/userManagement' import { createTestClient } from 'apollo-server-testing' -import createServer, { context } from '@src/server' -import encode from '@jwt/encode' -import { getNeode, getDriver } from '@db/neo4j' +import gql from 'graphql-tag' +import jwt from 'jsonwebtoken' + +import CONFIG from '@config/index' import { categories } from '@constants/categories' +import Factory, { cleanDatabase } from '@db/factories' +import { getNeode, getDriver } from '@db/neo4j' +import { loginMutation } from '@graphql/userManagement' +import encode from '@jwt/encode' +import createServer, { context } from '@src/server' const neode = getNeode() const driver = getDriver() diff --git a/backend/src/schema/resolvers/user_management.ts b/backend/src/schema/resolvers/user_management.ts index dceceab24..dfc33b6ae 100644 --- a/backend/src/schema/resolvers/user_management.ts +++ b/backend/src/schema/resolvers/user_management.ts @@ -1,9 +1,11 @@ -import encode from '@jwt/encode' -import bcrypt from 'bcryptjs' import { AuthenticationError } from 'apollo-server' +import bcrypt from 'bcryptjs' + import { getNeode } from '@db/neo4j' -import normalizeEmail from './helpers/normalizeEmail' +import encode from '@jwt/encode' + import log from './helpers/databaseLogger' +import normalizeEmail from './helpers/normalizeEmail' const neode = getNeode() diff --git a/backend/src/schema/resolvers/users.spec.ts b/backend/src/schema/resolvers/users.spec.ts index d2a86623a..88dfa653d 100644 --- a/backend/src/schema/resolvers/users.spec.ts +++ b/backend/src/schema/resolvers/users.spec.ts @@ -1,9 +1,10 @@ -import Factory, { cleanDatabase } from '@db/factories' +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + +import { categories } from '@constants/categories' +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' -import { createTestClient } from 'apollo-server-testing' -import { categories } from '@constants/categories' const categoryIds = ['cat9'] let user diff --git a/backend/src/schema/resolvers/users.ts b/backend/src/schema/resolvers/users.ts index 81306e13d..fe5e3d2de 100644 --- a/backend/src/schema/resolvers/users.ts +++ b/backend/src/schema/resolvers/users.ts @@ -1,9 +1,11 @@ -import { neo4jgraphql } from 'neo4j-graphql-js' -import { getNeode } from '@db/neo4j' import { UserInputError, ForbiddenError } from 'apollo-server' -import { mergeImage, deleteImage } from './images/images' -import Resolver from './helpers/Resolver' +import { neo4jgraphql } from 'neo4j-graphql-js' + +import { getNeode } from '@db/neo4j' + import log from './helpers/databaseLogger' +import Resolver from './helpers/Resolver' +import { mergeImage, deleteImage } from './images/images' import { createOrUpdateLocations } from './users/location' const neode = getNeode() diff --git a/backend/src/schema/resolvers/users/location.spec.ts b/backend/src/schema/resolvers/users/location.spec.ts index 0b4db63f3..4f54dcc06 100644 --- a/backend/src/schema/resolvers/users/location.spec.ts +++ b/backend/src/schema/resolvers/users/location.spec.ts @@ -1,7 +1,8 @@ +import { createTestClient } from 'apollo-server-testing' import gql from 'graphql-tag' + import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' -import { createTestClient } from 'apollo-server-testing' import createServer from '@src/server' const neode = getNeode() diff --git a/backend/src/schema/resolvers/users/location.ts b/backend/src/schema/resolvers/users/location.ts index a05a4402b..b663eebdf 100644 --- a/backend/src/schema/resolvers/users/location.ts +++ b/backend/src/schema/resolvers/users/location.ts @@ -1,12 +1,13 @@ /* eslint-disable promise/avoid-new */ /* eslint-disable promise/prefer-await-to-callbacks */ /* eslint-disable import/no-named-as-default */ -import request from 'request' import { UserInputError } from 'apollo-server' // eslint-disable-next-line import/no-extraneous-dependencies import Debug from 'debug' -import asyncForEach from '@helpers/asyncForEach' +import request from 'request' + import CONFIG from '@config/index' +import asyncForEach from '@helpers/asyncForEach' const debug = Debug('human-connection:location') diff --git a/backend/src/schema/resolvers/users/mutedUsers.spec.ts b/backend/src/schema/resolvers/users/mutedUsers.spec.ts index 4bfce2421..1fda2b392 100644 --- a/backend/src/schema/resolvers/users/mutedUsers.spec.ts +++ b/backend/src/schema/resolvers/users/mutedUsers.spec.ts @@ -1,8 +1,9 @@ import { createTestClient } from 'apollo-server-testing' -import createServer from '@src/server' -import { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' +import createServer from '@src/server' const driver = getDriver() const neode = getNeode() diff --git a/backend/src/schema/resolvers/viewedTeaserCount.spec.ts b/backend/src/schema/resolvers/viewedTeaserCount.spec.ts index e73502324..ebcb19c4e 100644 --- a/backend/src/schema/resolvers/viewedTeaserCount.spec.ts +++ b/backend/src/schema/resolvers/viewedTeaserCount.spec.ts @@ -1,6 +1,7 @@ import { createTestClient } from 'apollo-server-testing' -import Factory, { cleanDatabase } from '@db/factories' import gql from 'graphql-tag' + +import Factory, { cleanDatabase } from '@db/factories' import { getNeode, getDriver } from '@db/neo4j' import createServer from '@src/server' diff --git a/backend/src/schema/types/index.ts b/backend/src/schema/types/index.ts index fe8a6315e..42d813ae4 100644 --- a/backend/src/schema/types/index.ts +++ b/backend/src/schema/types/index.ts @@ -1,4 +1,5 @@ import path from 'node:path' + import { mergeTypes, fileLoader } from 'merge-graphql-schemas' const typeDefs = fileLoader(path.join(__dirname, './**/*.gql')) diff --git a/backend/src/server.spec.ts b/backend/src/server.spec.ts index 6d4ef546d..1d5c5aca8 100644 --- a/backend/src/server.spec.ts +++ b/backend/src/server.spec.ts @@ -1,4 +1,5 @@ import { createTestClient } from 'apollo-server-testing' + import createServer from './server' /** diff --git a/backend/src/server.ts b/backend/src/server.ts index 86c0c3658..117e0c3b6 100644 --- a/backend/src/server.ts +++ b/backend/src/server.ts @@ -1,19 +1,21 @@ /* eslint-disable import/no-named-as-default-member */ -import express from 'express' import http from 'node:http' -import helmet from 'helmet' + import { ApolloServer } from 'apollo-server-express' -import CONFIG from './config' -// eslint-disable-next-line import/no-cycle -import middleware from './middleware' -import { getNeode, getDriver } from './db/neo4j' -import decode from './jwt/decode' -import schema from './schema' +import bodyParser from 'body-parser' +import express from 'express' import { RedisPubSub } from 'graphql-redis-subscriptions' import { PubSub } from 'graphql-subscriptions' -import Redis from 'ioredis' -import bodyParser from 'body-parser' import { graphqlUploadExpress } from 'graphql-upload' +import helmet from 'helmet' +import Redis from 'ioredis' + +import CONFIG from './config' +import { getNeode, getDriver } from './db/neo4j' +import decode from './jwt/decode' +// eslint-disable-next-line import/no-cycle +import middleware from './middleware' +import schema from './schema' export const NOTIFICATION_ADDED = 'NOTIFICATION_ADDED' export const CHAT_MESSAGE_ADDED = 'CHAT_MESSAGE_ADDED'