From 00aa5ae19b599f6f0ce4d267609e0dab89a68a2c Mon Sep 17 00:00:00 2001 From: Mike Date: Wed, 27 Apr 2022 19:15:31 -0400 Subject: [PATCH 1/2] Patch to be able to run the server --- server/search-lessons.route.ts | 65 ++++++++++++++++------------------ 1 file changed, 30 insertions(+), 35 deletions(-) diff --git a/server/search-lessons.route.ts b/server/search-lessons.route.ts index 9e71fb13..c783b471 100644 --- a/server/search-lessons.route.ts +++ b/server/search-lessons.route.ts @@ -1,46 +1,41 @@ - - - -import {Request, Response} from 'express'; -import {LESSONS} from "./db-data"; -import {setTimeout} from "timers"; - - +import { Request, Response } from "express"; +import { LESSONS } from "./db-data"; +import { setTimeout } from "timers"; export function searchLessons(req: Request, res: Response) { + const queryParams = req.query; - const queryParams = req.query; - - const courseId = queryParams.courseId, - filter = queryParams.filter || '', - sortOrder = queryParams.sortOrder || 'asc', - pageNumber = parseInt(queryParams.pageNumber) || 0, - pageSize = parseInt(queryParams.pageSize) || 3; - - let lessons; - - if (courseId) { - lessons = Object.values(LESSONS).filter(lesson => lesson.courseId == courseId).sort((l1, l2) => l1.id - l2.id); - } - else { - lessons = Object.values(LESSONS); - } + const courseId = queryParams.courseId, + filter = queryParams.filter || "", + sortOrder = queryParams.sortOrder || "asc", + pageNumber = parseInt(queryParams.pageNumber as string) || 0, + pageSize = parseInt(queryParams.pageSize as string) || 3; - if (filter) { - lessons = lessons.filter(lesson => lesson.description.trim().toLowerCase().search(filter.toLowerCase()) >= 0); - } + let lessons; - if (sortOrder == "desc") { - lessons = lessons.reverse(); - } + if (courseId) { + lessons = Object.values(LESSONS) + .filter((lesson) => Number(lesson.courseId) == Number(courseId)) + .sort((l1, l2) => l1.id - l2.id); + } else { + lessons = Object.values(LESSONS); + } - const initialPos = pageNumber * pageSize; + if (filter) { + lessons = lessons.filter( + (lesson) => lesson.description.trim().toLowerCase().search(filter) >= 0 + ); + } - const lessonsPage = lessons.slice(initialPos, initialPos + pageSize); + if (sortOrder == "desc") { + lessons = lessons.reverse(); + } - setTimeout(() => { - res.status(200).json({payload: lessonsPage}); - },1000); + const initialPos = pageNumber * pageSize; + const lessonsPage = lessons.slice(initialPos, initialPos + pageSize); + setTimeout(() => { + res.status(200).json({ payload: lessonsPage }); + }, 1000); } From 71f131bcda764b310f1afb943f336d70ce51e208 Mon Sep 17 00:00:00 2001 From: Mike Date: Wed, 27 Apr 2022 19:24:34 -0400 Subject: [PATCH 2/2] modify package json --- package.json | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index b45fec3f..98bf2b84 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,8 @@ "license": "MIT", "scripts": { "ng": "ng", - "start": "./node_modules/.bin/ng serve --proxy-config ./proxy.json", - "server": "./node_modules/.bin/ts-node -P ./server/server.tsconfig.json ./server/server.ts", + "start": "ng serve --proxy-config ./proxy.json", + "server": "ts-node -P ./server/server.tsconfig.json ./server/server.ts", "build": "ng build", "test": "ng test", "lint": "ng lint", @@ -13,6 +13,7 @@ }, "private": true, "dependencies": { + "6": "^0.0.1", "@angular/animations": "13.0.3", "@angular/cdk": "^13.0.3", "@angular/common": "13.0.3", @@ -28,6 +29,7 @@ "core-js": "^2.4.1", "express": "^4.16.2", "moment": "^2.22.2", + "npm": "^6.0.0", "rxjs": "6.5.4", "tslib": "^2.0.0", "zone.js": "~0.11.4" @@ -44,7 +46,7 @@ "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", - "karma": "~6.3.2", + "karma": "~6.3.0", "karma-chrome-launcher": "~3.1.0", "karma-cli": "~1.0.1", "karma-coverage-istanbul-reporter": "~3.0.2", @@ -55,4 +57,4 @@ "tslint": "~6.1.0", "typescript": "4.4.4" } -} \ No newline at end of file +}