Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 0fdf498

Browse files
refactor(@schematics/angular): update templates to use express version 5
1 parent 20af866 commit 0fdf498

File tree

16 files changed

+299
-65
lines changed

16 files changed

+299
-65
lines changed

‎package.json‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@
7373
"@types/babel__core": "7.20.5",
7474
"@types/babel__generator": "^7.6.8",
7575
"@types/browser-sync": "^2.27.0",
76-
"@types/express": "^4.16.0",
76+
"@types/express": "~5.0.1",
7777
"@types/http-proxy": "^1.17.4",
7878
"@types/ini": "^4.0.0",
7979
"@types/jasmine": "~5.1.0",
@@ -106,7 +106,7 @@
106106
"eslint-config-prettier": "10.1.1",
107107
"eslint-plugin-header": "3.1.1",
108108
"eslint-plugin-import": "2.31.0",
109-
"express": "4.21.2",
109+
"express": "5.1.0",
110110
"fast-glob": "3.3.3",
111111
"globals": "16.0.0",
112112
"http-proxy": "^1.18.1",

‎packages/angular_devkit/build_angular/src/builders/ssr-dev-server/specs/proxy_spec.ts‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,12 @@ describe('Serve SSR Builder', () => {
3939
server.set('view engine', 'html');
4040
server.set('views', distFolder);
4141
42-
server.get('*.*', express.static(distFolder, {
43-
maxAge: '1y'
42+
server.use(express.static(distFolder, {
43+
maxAge: '1y',
44+
index: false,
4445
}));
4546
46-
server.get('*', (req, res, next) => {
47+
server.use((req, res, next) => {
4748
commonEngine
4849
.render({
4950
bootstrap: AppServerModule,

‎packages/angular_devkit/build_angular/src/builders/ssr-dev-server/specs/ssl_spec.ts‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,12 @@ describe('Serve SSR Builder', () => {
3939
server.set('view engine', 'html');
4040
server.set('views', distFolder);
4141
42-
server.get('*.*', express.static(distFolder, {
43-
maxAge: '1y'
42+
server.use(express.static(distFolder, {
43+
maxAge: '1y',
44+
index: false,
4445
}));
4546
46-
server.get('*', (req, res, next) => {
47+
server.use((req, res, next) => {
4748
commonEngine
4849
.render({
4950
bootstrap: AppServerModule,

‎packages/angular_devkit/build_angular/src/builders/ssr-dev-server/specs/works_spec.ts‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,12 @@ describe('Serve SSR Builder', () => {
3838
server.set('view engine', 'html');
3939
server.set('views', distFolder);
4040
41-
server.get('*.*', express.static(distFolder, {
42-
maxAge: '1y'
41+
server.use(express.static(distFolder, {
42+
maxAge: '1y',
43+
index: false,
4344
}));
4445
45-
server.get('*', (req, res, next) => {
46+
server.use((req, res, next) => {
4647
commonEngine
4748
.render({
4849
bootstrap: AppServerModule,

‎packages/schematics/angular/migrations/use-application-builder/migration.ts‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,6 @@ function* updateBuildTarget(
158158

159159
yield externalSchematic('@schematics/angular', 'ssr', {
160160
project: projectName,
161-
skipInstall: true,
162161
});
163162
}
164163
}

‎packages/schematics/angular/ssr/files/application-builder/server.ts.template‎

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const angularApp = new AngularNodeAppEngine();
1818
*
1919
* Example:
2020
* ```ts
21-
* app.get('/api/**', (req, res) => {
21+
* app.get('/api/{*splat}', (req, res) => {
2222
* // Handle API request
2323
* });
2424
* ```
@@ -38,7 +38,7 @@ app.use(
3838
/**
3939
* Handle all other requests by rendering the Angular application.
4040
*/
41-
app.use('/**', (req, res, next) => {
41+
app.use((req, res, next) => {
4242
angularApp
4343
.handle(req)
4444
.then((response) =>
@@ -53,7 +53,11 @@ app.use('/**', (req, res, next) => {
5353
*/
5454
if (isMainModule(import.meta.url)) {
5555
const port = process.env['PORT'] || 4000;
56-
app.listen(port, () => {
56+
app.listen(port, (error) => {
57+
if (error) {
58+
throw error;
59+
}
60+
5761
console.log(`Node Express server listening on http://localhost:${port}`);
5862
});
5963
}

‎packages/schematics/angular/ssr/files/server-builder/server.ts.template‎

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,15 @@ export function app(): express.Express {
2121
server.set('views', distFolder);
2222

2323
// Example Express Rest API endpoints
24-
// server.get('/api/**', (req, res) => { });
24+
// server.get('/api/{*splat}', (req, res) => { });
2525
// Serve static files from /browser
26-
server.get('*.*', express.static(distFolder, {
27-
maxAge: '1y'
26+
server.use(express.static(distFolder, {
27+
maxAge: '1y',
28+
index: false,
2829
}));
2930

3031
// All regular routes use the Angular engine
31-
server.get('*', (req, res, next) => {
32+
server.use((req, res, next) => {
3233
const { protocol, originalUrl, baseUrl, headers } = req;
3334

3435
commonEngine
@@ -51,7 +52,11 @@ function run(): void {
5152

5253
// Start up the Node server
5354
const server = app();
54-
server.listen(port, () => {
55+
server.listen(port, (error) => {
56+
if (error) {
57+
throw error;
58+
}
59+
5560
console.log(`Node Express server listening on http://localhost:${port}`);
5661
});
5762
}

‎packages/schematics/angular/ssr/index.ts‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import { posix } from 'node:path';
2424
import { Schema as ServerOptions } from '../server/schema';
2525
import {
2626
DependencyType,
27+
ExistingBehavior,
2728
InstallBehavior,
2829
addDependency,
2930
readWorkspace,
@@ -299,10 +300,12 @@ function addDependencies({ skipInstall }: SSROptions, isUsingApplicationBuilder:
299300
addDependency('express', latestVersions['express'], {
300301
type: DependencyType.Default,
301302
install,
303+
existing: ExistingBehavior.Replace,
302304
}),
303305
addDependency('@types/express', latestVersions['@types/express'], {
304306
type: DependencyType.Dev,
305307
install,
308+
existing: ExistingBehavior.Replace,
306309
}),
307310
];
308311

‎packages/schematics/angular/utility/latest-versions/package.json‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
"comment": "This file is needed so that dependencies are synced by Renovate.",
44
"private": true,
55
"dependencies": {
6-
"@types/express": "^4.17.17",
6+
"@types/express": "^5.0.1",
77
"@types/jasmine": "~5.1.0",
88
"@types/node": "^20.17.19",
99
"browser-sync": "^3.0.0",
10-
"express": "^4.18.2",
10+
"express": "^5.1.0",
1111
"jasmine-core": "~5.6.0",
1212
"jasmine-spec-reporter": "~7.0.0",
1313
"karma-chrome-launcher": "~3.2.0",

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /