refactor(backend): naming-convention
This commit is contained in:
parent
14e1508d00
commit
7a286f5650
23 changed files with 78 additions and 62 deletions
|
@ -5,7 +5,7 @@ import cors from './middleware/cors.js';
|
|||
import { getLogger, Logger } from './logging/initalize.js';
|
||||
import { responseTimeLogger } from './logging/responseTimeLogger.js';
|
||||
import responseTime from 'response-time';
|
||||
import { EnvVars, getNumericEnvVar } from './util/envvars.js';
|
||||
import { envVars, getNumericEnvVar } from './util/envVars.js';
|
||||
import apiRouter from './routes/router.js';
|
||||
import swaggerMiddleware from './swagger.js';
|
||||
import swaggerUi from 'swagger-ui-express';
|
||||
|
@ -13,7 +13,7 @@ import swaggerUi from 'swagger-ui-express';
|
|||
const logger: Logger = getLogger();
|
||||
|
||||
const app: Express = express();
|
||||
const port: string | number = getNumericEnvVar(EnvVars.Port);
|
||||
const port: string | number = getNumericEnvVar(envVars.Port);
|
||||
|
||||
app.use(express.json());
|
||||
app.use(cors);
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
import { EnvVars, getEnvVar } from './util/envvars.js';
|
||||
import { envVars, getEnvVar } from './util/envVars.js';
|
||||
|
||||
// API
|
||||
export const DWENGO_API_BASE = getEnvVar(EnvVars.LearningContentRepoApiBaseUrl);
|
||||
export const FALLBACK_LANG = getEnvVar(EnvVars.FallbackLanguage);
|
||||
export const DWENGO_API_BASE = getEnvVar(envVars.LearningContentRepoApiBaseUrl);
|
||||
export const FALLBACK_LANG = getEnvVar(envVars.FallbackLanguage);
|
||||
|
||||
// Logging
|
||||
export const LOG_LEVEL: string = 'development' === process.env.NODE_ENV ? 'debug' : 'info';
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { EnvVars, getEnvVar } from '../util/envvars.js';
|
||||
import { envVars, getEnvVar } from '../util/envVars.js';
|
||||
|
||||
type FrontendIdpConfig = {
|
||||
authority: string;
|
||||
|
@ -18,14 +18,14 @@ const RESPONSE_TYPE = 'code';
|
|||
export function getFrontendAuthConfig(): FrontendAuthConfig {
|
||||
return {
|
||||
student: {
|
||||
authority: getEnvVar(EnvVars.IdpStudentUrl),
|
||||
clientId: getEnvVar(EnvVars.IdpStudentClientId),
|
||||
authority: getEnvVar(envVars.IdpStudentUrl),
|
||||
clientId: getEnvVar(envVars.IdpStudentClientId),
|
||||
scope: SCOPE,
|
||||
responseType: RESPONSE_TYPE,
|
||||
},
|
||||
teacher: {
|
||||
authority: getEnvVar(EnvVars.IdpTeacherUrl),
|
||||
clientId: getEnvVar(EnvVars.IdpTeacherClientId),
|
||||
authority: getEnvVar(envVars.IdpTeacherUrl),
|
||||
clientId: getEnvVar(envVars.IdpTeacherClientId),
|
||||
scope: SCOPE,
|
||||
responseType: RESPONSE_TYPE,
|
||||
},
|
||||
|
|
|
@ -2,7 +2,7 @@ import { Request, Response } from 'express';
|
|||
import { FALLBACK_LANG } from '../config.js';
|
||||
import { FilteredLearningObject, LearningObjectIdentifier, LearningPathIdentifier } from '../interfaces/learning-content.js';
|
||||
import learningObjectService from '../services/learning-objects/learning-object-service.js';
|
||||
import { EnvVars, getEnvVar } from '../util/envvars.js';
|
||||
import { envVars, getEnvVar } from '../util/envVars.js';
|
||||
import { Language } from '../entities/content/language.js';
|
||||
import { BadRequestException } from '../exceptions.js';
|
||||
import attachmentService from '../services/learning-objects/attachment-service.js';
|
||||
|
@ -14,7 +14,7 @@ function getLearningObjectIdentifierFromRequest(req: Request): LearningObjectIde
|
|||
}
|
||||
return {
|
||||
hruid: req.params.hruid as string,
|
||||
language: (req.query.language || getEnvVar(EnvVars.FallbackLanguage)) as Language,
|
||||
language: (req.query.language || getEnvVar(envVars.FallbackLanguage)) as Language,
|
||||
version: parseInt(req.query.version as string),
|
||||
};
|
||||
}
|
||||
|
|
|
@ -47,7 +47,7 @@ export async function getUserHandler<T extends User>(req: Request, res: Response
|
|||
}
|
||||
}
|
||||
|
||||
export async function createUserHandler<T extends User>(req: Request, res: Response, service: UserService<T>, UserClass: new () => T) {
|
||||
export async function createUserHandler<T extends User>(req: Request, res: Response, service: UserService<T>, userClass: new () => T) {
|
||||
try {
|
||||
getLogger().debug({ req: req });
|
||||
const userData = req.body as UserDTO;
|
||||
|
@ -59,7 +59,7 @@ export async function createUserHandler<T extends User>(req: Request, res: Respo
|
|||
return;
|
||||
}
|
||||
|
||||
const newUser = await service.createUser(userData, UserClass);
|
||||
const newUser = await service.createUser(userData, userClass);
|
||||
res.status(201).json(newUser);
|
||||
} catch (error) {
|
||||
getLogger().error('❌ Error creating user:', error);
|
||||
|
|
|
@ -22,8 +22,8 @@ export function mapToTeacherDTO(teacher: Teacher): TeacherDTO {
|
|||
};
|
||||
}
|
||||
|
||||
export function mapToTeacher(TeacherData: TeacherDTO): Teacher {
|
||||
const teacher = new Teacher(TeacherData.username, TeacherData.firstName, TeacherData.lastName);
|
||||
export function mapToTeacher(teacherDTO: TeacherDTO): Teacher {
|
||||
const teacher = new Teacher(teacherDTO.username, teacherDTO.firstName, teacherDTO.lastName);
|
||||
|
||||
return teacher;
|
||||
}
|
||||
|
|
|
@ -9,7 +9,7 @@ export class Logger extends WinstonLogger {
|
|||
}
|
||||
}
|
||||
|
||||
const Labels: LokiLabels = {
|
||||
const lokiLabels: LokiLabels = {
|
||||
source: 'Dwengo-Backend',
|
||||
service: 'API',
|
||||
host: 'localhost',
|
||||
|
@ -24,7 +24,7 @@ function initializeLogger(): Logger {
|
|||
|
||||
const lokiTransport: LokiTransport = new LokiTransport({
|
||||
host: LOKI_HOST,
|
||||
labels: Labels,
|
||||
labels: lokiLabels,
|
||||
level: LOG_LEVEL,
|
||||
json: true,
|
||||
format: format.combine(format.timestamp(), format.json()),
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { EnvVars, getEnvVar } from '../../util/envvars.js';
|
||||
import { envVars, getEnvVar } from '../../util/envVars.js';
|
||||
import { expressjwt } from 'express-jwt';
|
||||
import { JwtPayload } from 'jsonwebtoken';
|
||||
import jwksClient from 'jwks-rsa';
|
||||
|
@ -32,12 +32,12 @@ function createJwksClient(uri: string): jwksClient.JwksClient {
|
|||
|
||||
const idpConfigs = {
|
||||
student: {
|
||||
issuer: getEnvVar(EnvVars.IdpStudentUrl),
|
||||
jwksClient: createJwksClient(getEnvVar(EnvVars.IdpStudentJwksEndpoint)),
|
||||
issuer: getEnvVar(envVars.IdpStudentUrl),
|
||||
jwksClient: createJwksClient(getEnvVar(envVars.IdpStudentJwksEndpoint)),
|
||||
},
|
||||
teacher: {
|
||||
issuer: getEnvVar(EnvVars.IdpTeacherUrl),
|
||||
jwksClient: createJwksClient(getEnvVar(EnvVars.IdpTeacherJwksEndpoint)),
|
||||
issuer: getEnvVar(envVars.IdpTeacherUrl),
|
||||
jwksClient: createJwksClient(getEnvVar(envVars.IdpTeacherJwksEndpoint)),
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -63,7 +63,7 @@ const verifyJwtToken = expressjwt({
|
|||
}
|
||||
return signingKey.getPublicKey();
|
||||
},
|
||||
audience: getEnvVar(EnvVars.IdpAudience),
|
||||
audience: getEnvVar(envVars.IdpAudience),
|
||||
algorithms: [JWT_ALGORITHM],
|
||||
credentialsRequired: false,
|
||||
requestProperty: REQUEST_PROPERTY_FOR_JWT_PAYLOAD,
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import cors from 'cors';
|
||||
import { EnvVars, getEnvVar } from '../util/envvars.js';
|
||||
import { envVars, getEnvVar } from '../util/envVars.js';
|
||||
|
||||
export default cors({
|
||||
origin: getEnvVar(EnvVars.CorsAllowedOrigins).split(','),
|
||||
allowedHeaders: getEnvVar(EnvVars.CorsAllowedHeaders).split(','),
|
||||
origin: getEnvVar(envVars.CorsAllowedOrigins).split(','),
|
||||
allowedHeaders: getEnvVar(envVars.CorsAllowedHeaders).split(','),
|
||||
});
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { LoggerOptions, Options } from '@mikro-orm/core';
|
||||
import { PostgreSqlDriver } from '@mikro-orm/postgresql';
|
||||
import { EnvVars, getEnvVar, getNumericEnvVar } from './util/envvars.js';
|
||||
import { envVars, getEnvVar, getNumericEnvVar } from './util/envVars.js';
|
||||
import { SqliteDriver } from '@mikro-orm/sqlite';
|
||||
import { MikroOrmLogger } from './logging/mikroOrmLogger.js';
|
||||
import { LOG_LEVEL } from './config.js';
|
||||
|
@ -47,7 +47,7 @@ function config(testingMode: boolean = false): Options {
|
|||
if (testingMode) {
|
||||
return {
|
||||
driver: SqliteDriver,
|
||||
dbName: getEnvVar(EnvVars.DbName),
|
||||
dbName: getEnvVar(envVars.DbName),
|
||||
subscribers: [new SqliteAutoincrementSubscriber()],
|
||||
entities: entities,
|
||||
// EntitiesTs: entitiesTs,
|
||||
|
@ -60,11 +60,11 @@ function config(testingMode: boolean = false): Options {
|
|||
|
||||
return {
|
||||
driver: PostgreSqlDriver,
|
||||
host: getEnvVar(EnvVars.DbHost),
|
||||
port: getNumericEnvVar(EnvVars.DbPort),
|
||||
dbName: getEnvVar(EnvVars.DbName),
|
||||
user: getEnvVar(EnvVars.DbUsername),
|
||||
password: getEnvVar(EnvVars.DbPassword),
|
||||
host: getEnvVar(envVars.DbHost),
|
||||
port: getNumericEnvVar(envVars.DbPort),
|
||||
dbName: getEnvVar(envVars.DbName),
|
||||
user: getEnvVar(envVars.DbUsername),
|
||||
password: getEnvVar(envVars.DbPassword),
|
||||
entities: entities,
|
||||
// EntitiesTs: entitiesTs,
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { EntityManager, MikroORM } from '@mikro-orm/core';
|
||||
import config from './mikro-orm.config.js';
|
||||
import { EnvVars, getEnvVar } from './util/envvars.js';
|
||||
import { envVars, getEnvVar } from './util/envVars.js';
|
||||
import { getLogger, Logger } from './logging/initalize.js';
|
||||
|
||||
let orm: MikroORM | undefined;
|
||||
|
@ -12,7 +12,7 @@ export async function initORM(testingMode: boolean = false) {
|
|||
|
||||
orm = await MikroORM.init(config(testingMode));
|
||||
// Update the database scheme if necessary and enabled.
|
||||
if (getEnvVar(EnvVars.DbUpdate)) {
|
||||
if (getEnvVar(envVars.DbUpdate)) {
|
||||
await orm.schema.updateSchema();
|
||||
} else {
|
||||
const diff = await orm.schema.getUpdateSchemaSQL();
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
import { FilteredLearningObject, LearningObjectIdentifier, LearningPathIdentifier } from '../../interfaces/learning-content.js';
|
||||
import dwengoApiLearningObjectProvider from './dwengo-api-learning-object-provider.js';
|
||||
import { LearningObjectProvider } from './learning-object-provider.js';
|
||||
import { EnvVars, getEnvVar } from '../../util/envvars.js';
|
||||
import { envVars, getEnvVar } from '../../util/envVars.js';
|
||||
import databaseLearningObjectProvider from './database-learning-object-provider.js';
|
||||
|
||||
function getProvider(id: LearningObjectIdentifier): LearningObjectProvider {
|
||||
if (id.hruid.startsWith(getEnvVar(EnvVars.UserContentPrefix))) {
|
||||
if (id.hruid.startsWith(getEnvVar(envVars.UserContentPrefix))) {
|
||||
return databaseLearningObjectProvider;
|
||||
}
|
||||
return dwengoApiLearningObjectProvider;
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
import { LearningPath, LearningPathResponse } from '../../interfaces/learning-content.js';
|
||||
import dwengoApiLearningPathProvider from './dwengo-api-learning-path-provider.js';
|
||||
import databaseLearningPathProvider from './database-learning-path-provider.js';
|
||||
import { EnvVars, getEnvVar } from '../../util/envvars.js';
|
||||
import { envVars, getEnvVar } from '../../util/envVars.js';
|
||||
import { Language } from '../../entities/content/language.js';
|
||||
import { PersonalizationTarget } from './learning-path-personalization-util.js';
|
||||
|
||||
const userContentPrefix = getEnvVar(EnvVars.UserContentPrefix);
|
||||
const userContentPrefix = getEnvVar(envVars.UserContentPrefix);
|
||||
const allProviders = [dwengoApiLearningPathProvider, databaseLearningPathProvider];
|
||||
|
||||
/**
|
||||
|
|
|
@ -24,8 +24,8 @@ export class UserService<T extends User> {
|
|||
return user ? mapToUserDTO(user) : null;
|
||||
}
|
||||
|
||||
async createUser(userData: UserDTO, UserClass: new () => T): Promise<T> {
|
||||
const newUser = mapToUser(userData, new UserClass());
|
||||
async createUser(userData: UserDTO, userClass: new () => T): Promise<T> {
|
||||
const newUser = mapToUser(userData, new userClass());
|
||||
await this.repository.save(newUser);
|
||||
return newUser;
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@ const CORS_PREFIX = PREFIX + 'CORS_';
|
|||
|
||||
type EnvVar = { key: string; required?: boolean; defaultValue?: any };
|
||||
|
||||
export const EnvVars: { [key: string]: EnvVar } = {
|
||||
export const envVars: { [key: string]: EnvVar } = {
|
||||
Port: { key: PREFIX + 'PORT', defaultValue: 3000 },
|
||||
DbHost: { key: DB_PREFIX + 'HOST', required: true },
|
||||
DbPort: { key: DB_PREFIX + 'PORT', defaultValue: 5432 },
|
|
@ -6,7 +6,7 @@ import learningObjectExample from '../../test-assets/learning-objects/pn-werking
|
|||
import learningObjectService from '../../../src/services/learning-objects/learning-object-service';
|
||||
import { LearningObjectIdentifier, LearningPathIdentifier } from '../../../src/interfaces/learning-content';
|
||||
import { Language } from '../../../src/entities/content/language';
|
||||
import { EnvVars, getEnvVar } from '../../../src/util/envvars';
|
||||
import { envVars, getEnvVar } from '../../../src/util/envVars';
|
||||
import { LearningPath } from '../../../src/entities/content/learning-path.entity';
|
||||
import learningPathExample from '../../test-assets/learning-paths/pn-werking-example';
|
||||
|
||||
|
@ -79,7 +79,7 @@ describe('LearningObjectService', () => {
|
|||
expect(result).not.toBeNull();
|
||||
|
||||
const responseFromDwengoApi = await fetch(
|
||||
getEnvVar(EnvVars.LearningContentRepoApiBaseUrl) +
|
||||
getEnvVar(envVars.LearningContentRepoApiBaseUrl) +
|
||||
`/learningObject/getRaw?hruid=${DWENGO_TEST_LEARNING_OBJECT_ID.hruid}&language=${DWENGO_TEST_LEARNING_OBJECT_ID.language}&version=${DWENGO_TEST_LEARNING_OBJECT_ID.version}`
|
||||
);
|
||||
const responseHtml = await responseFromDwengoApi.text();
|
||||
|
|
|
@ -3,7 +3,7 @@ import { LearningObject } from '../../../../src/entities/content/learning-object
|
|||
import { Language } from '../../../../src/entities/content/language';
|
||||
import { loadTestAsset } from '../../../test-utils/load-test-asset';
|
||||
import { DwengoContentType } from '../../../../src/services/learning-objects/processing/content-type';
|
||||
import { EnvVars, getEnvVar } from '../../../../src/util/envvars';
|
||||
import { envVars, getEnvVar } from '../../../../src/util/envVars';
|
||||
|
||||
/**
|
||||
* Create a dummy learning object to be used in tests where multiple learning objects are needed (for example for use
|
||||
|
@ -13,7 +13,7 @@ export function dummyLearningObject(hruid: string, language: Language, title: st
|
|||
return {
|
||||
createLearningObject: () => {
|
||||
const learningObject = new LearningObject();
|
||||
learningObject.hruid = getEnvVar(EnvVars.UserContentPrefix) + hruid;
|
||||
learningObject.hruid = getEnvVar(envVars.UserContentPrefix) + hruid;
|
||||
learningObject.language = language;
|
||||
learningObject.version = 1;
|
||||
learningObject.title = title;
|
||||
|
|
|
@ -4,14 +4,14 @@ import { DwengoContentType } from '../../../../src/services/learning-objects/pro
|
|||
import { loadTestAsset } from '../../../test-utils/load-test-asset';
|
||||
import { EducationalGoal, LearningObject, ReturnValue } from '../../../../src/entities/content/learning-object.entity';
|
||||
import { Attachment } from '../../../../src/entities/content/attachment.entity';
|
||||
import { EnvVars, getEnvVar } from '../../../../src/util/envvars';
|
||||
import { envVars, getEnvVar } from '../../../../src/util/envVars';
|
||||
|
||||
const ASSETS_PREFIX = 'learning-objects/pn-werkingnotebooks/';
|
||||
|
||||
const example: LearningObjectExample = {
|
||||
createLearningObject: () => {
|
||||
const learningObject = new LearningObject();
|
||||
learningObject.hruid = `${getEnvVar(EnvVars.UserContentPrefix)}pn_werkingnotebooks`;
|
||||
learningObject.hruid = `${getEnvVar(envVars.UserContentPrefix)}pn_werkingnotebooks`;
|
||||
learningObject.version = 3;
|
||||
learningObject.language = Language.Dutch;
|
||||
learningObject.title = 'Werken met notebooks';
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
import { LearningObjectExample } from '../learning-object-example';
|
||||
import { LearningObject } from '../../../../src/entities/content/learning-object.entity';
|
||||
import { loadTestAsset } from '../../../test-utils/load-test-asset';
|
||||
import { EnvVars, getEnvVar } from '../../../../src/util/envvars';
|
||||
import { envVars, getEnvVar } from '../../../../src/util/envVars';
|
||||
import { Language } from '../../../../src/entities/content/language';
|
||||
import { DwengoContentType } from '../../../../src/services/learning-objects/processing/content-type';
|
||||
|
||||
const example: LearningObjectExample = {
|
||||
createLearningObject: () => {
|
||||
const learningObject = new LearningObject();
|
||||
learningObject.hruid = `${getEnvVar(EnvVars.UserContentPrefix)}test_essay`;
|
||||
learningObject.hruid = `${getEnvVar(envVars.UserContentPrefix)}test_essay`;
|
||||
learningObject.language = Language.English;
|
||||
learningObject.version = 1;
|
||||
learningObject.title = 'Essay question for testing';
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
import { LearningObjectExample } from '../learning-object-example';
|
||||
import { LearningObject } from '../../../../src/entities/content/learning-object.entity';
|
||||
import { loadTestAsset } from '../../../test-utils/load-test-asset';
|
||||
import { EnvVars, getEnvVar } from '../../../../src/util/envvars';
|
||||
import { envVars, getEnvVar } from '../../../../src/util/envVars';
|
||||
import { Language } from '../../../../src/entities/content/language';
|
||||
import { DwengoContentType } from '../../../../src/services/learning-objects/processing/content-type';
|
||||
|
||||
const example: LearningObjectExample = {
|
||||
createLearningObject: () => {
|
||||
const learningObject = new LearningObject();
|
||||
learningObject.hruid = `${getEnvVar(EnvVars.UserContentPrefix)}test_multiple_choice`;
|
||||
learningObject.hruid = `${getEnvVar(envVars.UserContentPrefix)}test_multiple_choice`;
|
||||
learningObject.language = Language.English;
|
||||
learningObject.version = 1;
|
||||
learningObject.title = 'Multiple choice question for testing';
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { LearningPath } from '../../../src/entities/content/learning-path.entity';
|
||||
import { Language } from '../../../src/entities/content/language';
|
||||
import { EnvVars, getEnvVar } from '../../../src/util/envvars';
|
||||
import { envVars, getEnvVar } from '../../../src/util/envVars';
|
||||
import { createLearningPathNode, createLearningPathTransition } from './learning-path-utils';
|
||||
import { LearningPathNode } from '../../../src/entities/content/learning-path-node.entity';
|
||||
|
||||
|
@ -19,7 +19,7 @@ const example: LearningPathExample = {
|
|||
createLearningPath: () => {
|
||||
const path = new LearningPath();
|
||||
path.language = Language.Dutch;
|
||||
path.hruid = `${getEnvVar(EnvVars.UserContentPrefix)}pn_werking`;
|
||||
path.hruid = `${getEnvVar(envVars.UserContentPrefix)}pn_werking`;
|
||||
path.title = 'Werken met notebooks';
|
||||
path.description = 'Een korte inleiding tot Python notebooks. Hoe ga je gemakkelijk en efficiënt met de notebooks aan de slag?';
|
||||
path.nodes = createNodes(path);
|
||||
|
|
|
@ -4,7 +4,7 @@ import testMultipleChoiceExample from '../learning-objects/test-multiple-choice/
|
|||
import { dummyLearningObject } from '../learning-objects/dummy/dummy-learning-object-example';
|
||||
import { createLearningPathNode, createLearningPathTransition } from './learning-path-utils';
|
||||
import { LearningObject } from '../../../src/entities/content/learning-object.entity';
|
||||
import { EnvVars, getEnvVar } from '../../../src/util/envvars';
|
||||
import { envVars, getEnvVar } from '../../../src/util/envVars';
|
||||
|
||||
export type ConditionTestLearningPathAndLearningObjects = {
|
||||
branchingObject: LearningObject;
|
||||
|
@ -15,7 +15,7 @@ export type ConditionTestLearningPathAndLearningObjects = {
|
|||
|
||||
export function createConditionTestLearningPathAndLearningObjects() {
|
||||
const learningPath = new LearningPath();
|
||||
learningPath.hruid = `${getEnvVar(EnvVars.UserContentPrefix)}test_conditions`;
|
||||
learningPath.hruid = `${getEnvVar(envVars.UserContentPrefix)}test_conditions`;
|
||||
learningPath.language = Language.English;
|
||||
learningPath.title = 'Example learning path with conditional transitions';
|
||||
learningPath.description = 'This learning path was made for the purpose of testing conditional transitions';
|
||||
|
@ -78,7 +78,3 @@ export function createConditionTestLearningPathAndLearningObjects() {
|
|||
learningPath: learningPath,
|
||||
};
|
||||
}
|
||||
|
||||
const _example: LearningPathExample = {
|
||||
createLearningPath: () => createConditionTestLearningPathAndLearningObjects().learningPath,
|
||||
};
|
||||
|
|
|
@ -28,6 +28,27 @@ export default [
|
|||
reportUnusedInlineConfigs: 'error',
|
||||
},
|
||||
rules: {
|
||||
'@typescript-eslint/naming-convention': [
|
||||
'warn',
|
||||
{ // Enforce that all variables, functions and properties are camelCase
|
||||
selector: 'variableLike',
|
||||
format: ['camelCase'],
|
||||
leadingUnderscore: 'allow'
|
||||
},
|
||||
{
|
||||
selector: 'variable',
|
||||
modifiers: ['const'],
|
||||
format: ['camelCase', 'UPPER_CASE'],
|
||||
trailingUnderscore: 'allow'
|
||||
},
|
||||
{ // Enforce that private members are prefixed with an underscore
|
||||
selector: 'memberLike',
|
||||
modifiers: ['private'],
|
||||
format: ['camelCase'],
|
||||
leadingUnderscore: 'allow',
|
||||
}
|
||||
],
|
||||
|
||||
'no-unused-expressions': 'off',
|
||||
'@typescript-eslint/no-unused-expressions': 'warn',
|
||||
'no-unused-vars': 'off',
|
||||
|
@ -57,7 +78,6 @@ export default [
|
|||
|
||||
'arrow-body-style': ['warn', 'as-needed'],
|
||||
'block-scoped-var': 'warn',
|
||||
camelcase: 'warn',
|
||||
'capitalized-comments': 'warn',
|
||||
'consistent-return': 'warn',
|
||||
'consistent-this': 'error',
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue