Skip to content

Commit d6a47f8

Browse files
committed
Backend: Maintenance
1 parent d366ed3 commit d6a47f8

File tree

5 files changed

+61
-58
lines changed

5 files changed

+61
-58
lines changed

server/package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
"express": "4.17.1",
4545
"express-static-gzip": "^2.0.6",
4646
"helmet": "^3.21.2",
47-
"http-proxy-middleware": "^0.20.0",
47+
"http-proxy-middleware": "^1.0.0",
4848
"node-cache": "^5.1.0",
4949
"node-fetch": "^2.6.0",
5050
"serve-favicon": "^2.5.0",
@@ -54,8 +54,8 @@
5454
"@types/express": "4.17.2",
5555
"@types/helmet": "^0.0.45",
5656
"@types/http-proxy-middleware": "^0.19.3",
57-
"@types/jest": "25.1.2",
58-
"@types/node": "13.7.1",
57+
"@types/jest": "25.1.3",
58+
"@types/node": "13.7.4",
5959
"@types/node-cache": "^4.2.5",
6060
"@types/node-fetch": "2.5.4",
6161
"@types/serve-favicon": "^2.5.0",
@@ -68,9 +68,9 @@
6868
"mkdirp": "^1.0.3",
6969
"rimraf": "^3.0.2",
7070
"supertest": "^4.0.2",
71-
"ts-jest": "25.2.0",
72-
"tslib": "1.10.0",
71+
"ts-jest": "25.2.1",
72+
"tslib": "1.11.0",
7373
"tslint": "6.0.0",
74-
"typescript": "3.7.5"
74+
"typescript": "3.8.2"
7575
}
7676
}

server/src/api/types/SampleTypes.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* Types related to data received from cloud API service
33
***********************************************************************/
44

5-
// The 'main' or 'central' data piece fnullrom the response
5+
// The 'main' or 'central' data piece from the response
66
// provided by API server
77
export class SampleRetrievalData {
88
readonly name?: string;

server/src/srv/server.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@ import * as express from "express";
1010
import nodeFetch from "node-fetch";
1111
import * as helmet from "helmet";
1212
import * as expressStaticGzip from "express-static-gzip";
13-
import proxy = require("http-proxy-middleware");
1413
import favicon = require("serve-favicon");
1514
import * as SPAs from "../../config/spa.config";
1615
import { CustomError, handleErrors } from "../utils/error";
1716
import { logger } from "../utils/logger";
1817
import { SampleController } from "../api/controllers/SampleController";
18+
const { createProxyMiddleware } = require("http-proxy-middleware");
1919

2020
export enum StaticAssetPath {
2121
// The path to static assets served by Express needs to be
@@ -62,7 +62,7 @@ class Server {
6262
}
6363

6464
private addRoutes(): void {
65-
// Redirect to the landing page of SPA that has 'redirect: true'
65+
// Redirect to the landing page of the SPA that has 'redirect: true'
6666
this.m_app.get("/", (_req, res, next) => {
6767
if (Server.s_useDevWebserver) {
6868
// Get the resourse from dev server
@@ -101,7 +101,7 @@ class Server {
101101
// Proxy to devserver ws:// protocol
102102
if (Server.s_useDevWebserver) {
103103
this.m_app.use("/sockjs-node",
104-
proxy({ target: Server.s_urlDevWebserver, changeOrigin: true, ws: true })
104+
createProxyMiddleware({ target: Server.s_urlDevWebserver, changeOrigin: true, ws: true })
105105
);
106106
}
107107

@@ -160,7 +160,7 @@ class Server {
160160
}
161161

162162
// If there are two SPAs in spa.config.js called 'first and 'second',
163-
// then returns string: "(first)|(second)"
163+
// then returns string: "(first)|(second)"
164164
private static getLandingPages(): string {
165165
const entryPoints = SPAs.getNames();
166166
let ret: string = "";
@@ -188,12 +188,13 @@ class Server {
188188

189189
private readonly m_app: express.Application;
190190
private m_assetPath: StaticAssetPath = StaticAssetPath.TRANSPILED;
191-
private m_expressStaticMiddleware: ReturnType<typeof expressStaticGzip>|undefined = undefined;
191+
private m_expressStaticMiddleware?: ReturnType<typeof expressStaticGzip> = undefined;
192192
private static readonly s_htmlExtension = ".html";
193193
private static readonly s_urlDevWebserver = "http://localhost:8080";
194194
/* tslint:disable:no-string-literal */
195195
private static readonly s_useDevWebserver = process.env["USE_DEV_WEBSERVER"] === "true";
196196
/* tslint:enable:no-string-literal */
197+
// Regex must be either simple or constructed using a library that provides DOS protection.
197198
private static readonly s_regexLandingPages = Server.getLandingPagesRegex();
198199
private static readonly s_regexArtifacts = Server.getClientBuildArtifactsRegex();
199200
private static readonly s_expressStaticConfig: expressStaticGzip.ExpressStaticGzipOptions = {

server/tslint.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
"member-ordering": false,
1414
"member-access": false,
1515
"max-classes-per-file": [true, 3, "exclude-class-expressions"],
16-
"interface-over-type-literal": false
16+
"interface-over-type-literal": false,
17+
"no-var-requires": false
1718
},
1819
"rulesDirectory": []
1920
}

server/yarn.lock

Lines changed: 46 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -561,6 +561,13 @@
561561
dependencies:
562562
"@types/node" "*"
563563

564+
"@types/http-proxy@^1.17.3":
565+
version "1.17.3"
566+
resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.3.tgz#348e1b808ff9585423cb909e9992d89ccdbf4c14"
567+
integrity sha512-wIPqXANye5BbORbuh74exbwNzj+UWCwWyeEFJzUQ7Fq3W2NSAy+7x7nX1fgbEypr2/TdKqpeuxLnXWgzN533/Q==
568+
dependencies:
569+
"@types/node" "*"
570+
564571
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
565572
version "2.0.1"
566573
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff"
@@ -581,10 +588,10 @@
581588
"@types/istanbul-lib-coverage" "*"
582589
"@types/istanbul-lib-report" "*"
583590

584-
"@types/[email protected].2":
585-
version "25.1.2"
586-
resolved "https://registry.yarnpkg.com/@types/jest/-/jest-25.1.2.tgz#1c4c8770c27906c7d8def5d2033df9dbd39f60da"
587-
integrity sha512-EsPIgEsonlXmYV7GzUqcvORsSS9Gqxw/OvkGwHfAdpjduNRxMlhsav0O5Kb0zijc/eXSO/uW6SJt9nwull8AUQ==
591+
"@types/[email protected].3":
592+
version "25.1.3"
593+
resolved "https://registry.yarnpkg.com/@types/jest/-/jest-25.1.3.tgz#9b0b5addebccfb631175870be8ba62182f1bc35a"
594+
integrity sha512-jqargqzyJWgWAJCXX96LBGR/Ei7wQcZBvRv0PLEu9ZByMfcs23keUJrKv9FMR6YZf9YCbfqDqgmY+JUBsnqhrg==
588595
dependencies:
589596
jest-diff "^25.1.0"
590597
pretty-format "^25.1.0"
@@ -613,10 +620,10 @@
613620
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.2.tgz#c4e63af5e8823ce9cc3f0b34f7b998c2171f0c44"
614621
integrity sha512-dyYO+f6ihZEtNPDcWNR1fkoTDf3zAK3lAABDze3mz6POyIercH0lEUawUFXlG8xaQZmm1yEBON/4TsYv/laDYg==
615622

616-
"@types/[email protected].1":
617-
version "13.7.1"
618-
resolved "https://registry.yarnpkg.com/@types/node/-/node-13.7.1.tgz#238eb34a66431b71d2aaddeaa7db166f25971a0d"
619-
integrity sha512-Zq8gcQGmn4txQEJeiXo/KiLpon8TzAl0kmKH4zdWctPj05nWwp1ClMdAVEloqrQKfaC48PNLdgN/aVaLqUrluA==
623+
"@types/[email protected].4":
624+
version "13.7.4"
625+
resolved "https://registry.yarnpkg.com/@types/node/-/node-13.7.4.tgz#76c3cb3a12909510f52e5dc04a6298cdf9504ffd"
626+
integrity sha512-oVeL12C6gQS/GAExndigSaLxTrKpQPxewx9bOcwfvJiJge4rr7wNaph4J+ns5hrmIV2as5qxqN8YKthn9qh0jw==
620627

621628
"@types/range-parser@*":
622629
version "1.2.3"
@@ -1053,11 +1060,6 @@ camelcase@^2.0.0:
10531060
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
10541061
integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=
10551062

1056-
camelcase@^4.1.0:
1057-
version "4.1.0"
1058-
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
1059-
integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=
1060-
10611063
camelcase@^5.0.0, camelcase@^5.3.1:
10621064
version "5.3.1"
10631065
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
@@ -1624,10 +1626,10 @@ etag@~1.8.1:
16241626
resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
16251627
integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
16261628

1627-
eventemitter3@^3.0.0:
1628-
version "3.1.2"
1629-
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7"
1630-
integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==
1629+
eventemitter3@^4.0.0:
1630+
version "4.0.0"
1631+
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.0.tgz#d65176163887ee59f386d64c82610b696a4a74eb"
1632+
integrity sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==
16311633

16321634
exec-sh@^0.3.2:
16331635
version "0.3.2"
@@ -2195,22 +2197,23 @@ http-errors@~1.7.2:
21952197
statuses ">= 1.5.0 < 2"
21962198
toidentifier "1.0.0"
21972199

2198-
http-proxy-middleware@^0.20.0:
2199-
version "0.20.0"
2200-
resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.20.0.tgz#5b128f7207985c4ea91b53fab8ad897a48c690d6"
2201-
integrity sha512-dNJAk71nEJhPiAczQH9hGvE/MT9kEs+zn2Dh+Hi94PGZe1GluQirC7mw5rdREUtWx6qGS1Gu0bZd4qEAg+REgw==
2200+
http-proxy-middleware@^1.0.0:
2201+
version "1.0.0"
2202+
resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-1.0.0.tgz#984bbbb38cda7ce4495889388afe8b0f39ccd5c8"
2203+
integrity sha512-1yM4gD7R/U9R5AwA6STkoj8JfjnMeZIUrd8e23Yc14A7xVVLUWlAikgvidklwq1UOroJ07sc6NWNULeOJMYOeQ==
22022204
dependencies:
2203-
http-proxy "^1.17.0"
2205+
"@types/http-proxy" "^1.17.3"
2206+
http-proxy "^1.18.0"
22042207
is-glob "^4.0.1"
2205-
lodash "^4.17.14"
2208+
lodash "^4.17.15"
22062209
micromatch "^4.0.2"
22072210

2208-
http-proxy@^1.17.0:
2209-
version "1.17.0"
2210-
resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a"
2211-
integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==
2211+
http-proxy@^1.18.0:
2212+
version "1.18.0"
2213+
resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.0.tgz#dbe55f63e75a347db7f3d99974f2692a314a6a3a"
2214+
integrity sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ==
22122215
dependencies:
2213-
eventemitter3 "^3.0.0"
2216+
eventemitter3 "^4.0.0"
22142217
follow-redirects "^1.0.0"
22152218
requires-port "^1.0.0"
22162219

@@ -4553,10 +4556,10 @@ triple-beam@^1.2.0, triple-beam@^1.3.0:
45534556
resolved "https://registry.yarnpkg.com/triple-beam/-/triple-beam-1.3.0.tgz#a595214c7298db8339eeeee083e4d10bd8cb8dd9"
45544557
integrity sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==
45554558

4556-
4557-
version "25.2.0"
4558-
resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-25.2.0.tgz#dfd87c2b71ef4867f5a0a44f40cb9c67e02991ac"
4559-
integrity sha512-VaRdb0da46eorLfuHEFf0G3d+jeREcV+Wb/SvW71S4y9Oe8SHWU+m1WY/3RaMknrBsnvmVH0/rRjT8dkgeffNQ==
4559+
4560+
version "25.2.1"
4561+
resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-25.2.1.tgz#49bf05da26a8b7fbfbc36b4ae2fcdc2fef35c85d"
4562+
integrity sha512-TnntkEEjuXq/Gxpw7xToarmHbAafgCaAzOpnajnFC6jI7oo1trMzAHA04eWpc3MhV6+yvhE8uUBAmN+teRJh0A==
45604563
dependencies:
45614564
bs-logger "0.x"
45624565
buffer-from "1.x"
@@ -4567,9 +4570,14 @@ [email protected]:
45674570
mkdirp "0.x"
45684571
resolve "1.x"
45694572
semver "^5.5"
4570-
yargs-parser "10.x"
4573+
yargs-parser "^16.1.0"
45714574

4572-
[email protected], tslib@^1.10.0, tslib@^1.8.1:
4575+
4576+
version "1.11.0"
4577+
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.0.tgz#f1f3528301621a53220d58373ae510ff747a66bc"
4578+
integrity sha512-BmndXUtiTn/VDDrJzQE7Mm22Ix3PxgLltW9bSNLoeCY31gnG2OPx0QqJnuc9oMIKioYrz487i6K9o4Pdn0j+Kg==
4579+
4580+
tslib@^1.10.0, tslib@^1.8.1:
45734581
version "1.10.0"
45744582
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"
45754583
integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==
@@ -4644,10 +4652,10 @@ typedarray-to-buffer@^3.1.5:
46444652
dependencies:
46454653
is-typedarray "^1.0.0"
46464654

4647-
typescript@3.7.5:
4648-
version "3.7.5"
4649-
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.5.tgz#0692e21f65fd4108b9330238aac11dd2e177a1ae"
4650-
integrity sha512-/P5lkRXkWHNAbcJIiHPfRoKqyd7bsyCma1hZNUGfn20qm64T6ZBlrzprymeu918H+mB/0rIg2gGK/BXkhhYgBw==
4655+
typescript@3.8.2:
4656+
version "3.8.2"
4657+
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.8.2.tgz#91d6868aaead7da74f493c553aeff76c0c0b1d5a"
4658+
integrity sha512-EgOVgL/4xfVrCMbhYKUQTdF37SQn4Iw73H5BgCrF1Abdun7Kwy/QZsE/ssAy0y4LxBbvua3PIbFsbRczWWnDdQ==
46514659

46524660
unescape-js@^1.0.3:
46534661
version "1.1.1"
@@ -4909,13 +4917,6 @@ y18n@^4.0.0:
49094917
resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b"
49104918
integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==
49114919

4912-
4913-
version "10.1.0"
4914-
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8"
4915-
integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==
4916-
dependencies:
4917-
camelcase "^4.1.0"
4918-
49194920
yargs-parser@^13.1.1:
49204921
version "13.1.1"
49214922
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0"

0 commit comments

Comments
 (0)