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', | ||||
|  |  | |||
		Reference in a new issue