Skip to content

Commit 4842bf3

Browse files
committed
fix: add more variants of known/default server.ts
1 parent ce7ce06 commit 4842bf3

File tree

5 files changed

+230
-0
lines changed

5 files changed

+230
-0
lines changed

Diff for: src/helpers/knownServerTsSignatures.json

+4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
{
2+
"9f8b128c01e925b1187ddab7af26f3a9e84f2aefb34af7f8e14b7b4386edf87d": "CommonEngine",
3+
"eb938d816e6a680b8b52174cac4b0c53a101e40076a18dba7997b284165fb227": "CommonEngine",
4+
"0e451aa946aca10c9d6782ac008748fcd39236d3ad1cc9868100a2981105e010": "CommonEngine",
5+
"577f7bc87c16bd10bac499e228ef24d23dc4dd516e469b5db3eefae4edcf6345": "CommonEngine",
26
"5678601ed12556305074503967b44ae42c45c268579db057c25cbf4b21a7212e": "CommonEngine",
37
"76419eb94b4b8672ba3bd79d34c5a66c7c30ff173995ecc6e0adc5808b86822d": "AppEngine"
48
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
import { APP_BASE_HREF } from '@angular/common';
2+
import { CommonEngine } from '@angular/ssr/node';
3+
import express from 'express';
4+
import { fileURLToPath } from 'node:url';
5+
import { dirname, join, resolve } from 'node:path';
6+
import bootstrap from './src/main.server';
7+
8+
// The Express app is exported so that it can be used by serverless Functions.
9+
export function app(): express.Express {
10+
const server = express();
11+
const serverDistFolder = dirname(fileURLToPath(import.meta.url));
12+
const browserDistFolder = resolve(serverDistFolder, '../browser');
13+
const indexHtml = join(serverDistFolder, 'index.server.html');
14+
15+
const commonEngine = new CommonEngine();
16+
17+
server.set('view engine', 'html');
18+
server.set('views', browserDistFolder);
19+
20+
// Example Express Rest API endpoints
21+
// server.get('/api/**', (req, res) => { });
22+
// Serve static files from /browser
23+
server.get('*.*', express.static(browserDistFolder, {
24+
maxAge: '1y'
25+
}));
26+
27+
// All regular routes use the Angular engine
28+
server.get('*', (req, res, next) => {
29+
const { protocol, originalUrl, baseUrl, headers } = req;
30+
31+
commonEngine
32+
.render({
33+
bootstrap,
34+
documentFilePath: indexHtml,
35+
url: `${protocol}://${headers.host}${originalUrl}`,
36+
publicPath: browserDistFolder,
37+
providers: [{ provide: APP_BASE_HREF, useValue: baseUrl }],
38+
})
39+
.then((html) => res.send(html))
40+
.catch((err) => next(err));
41+
});
42+
43+
return server;
44+
}
45+
46+
function run(): void {
47+
const port = process.env['PORT'] || 4000;
48+
49+
// Start up the Node server
50+
const server = app();
51+
server.listen(port, () => {
52+
console.log(`Node Express server listening on http://localhost:${port}`);
53+
});
54+
}
55+
56+
run();
+56
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
import { APP_BASE_HREF } from '@angular/common';
2+
import { CommonEngine } from '@angular/ssr';
3+
import express from 'express';
4+
import { fileURLToPath } from 'node:url';
5+
import { dirname, join, resolve } from 'node:path';
6+
import bootstrap from './src/main.server';
7+
8+
// The Express app is exported so that it can be used by serverless Functions.
9+
export function app(): express.Express {
10+
const server = express();
11+
const serverDistFolder = dirname(fileURLToPath(import.meta.url));
12+
const browserDistFolder = resolve(serverDistFolder, '../browser');
13+
const indexHtml = join(serverDistFolder, 'index.server.html');
14+
15+
const commonEngine = new CommonEngine();
16+
17+
server.set('view engine', 'html');
18+
server.set('views', browserDistFolder);
19+
20+
// Example Express Rest API endpoints
21+
// server.get('/api/**', (req, res) => { });
22+
// Serve static files from /browser
23+
server.get('*.*', express.static(browserDistFolder, {
24+
maxAge: '1y'
25+
}));
26+
27+
// All regular routes use the Angular engine
28+
server.get('*', (req, res, next) => {
29+
const { protocol, originalUrl, baseUrl, headers } = req;
30+
31+
commonEngine
32+
.render({
33+
bootstrap,
34+
documentFilePath: indexHtml,
35+
url: `${protocol}://${headers.host}${originalUrl}`,
36+
publicPath: browserDistFolder,
37+
providers: [{ provide: APP_BASE_HREF, useValue: baseUrl }],
38+
})
39+
.then((html) => res.send(html))
40+
.catch((err) => next(err));
41+
});
42+
43+
return server;
44+
}
45+
46+
function run(): void {
47+
const port = process.env['PORT'] || 4000;
48+
49+
// Start up the Node server
50+
const server = app();
51+
server.listen(port, () => {
52+
console.log(`Node Express server listening on http://localhost:${port}`);
53+
});
54+
}
55+
56+
run();
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
import { APP_BASE_HREF } from '@angular/common';
2+
import { CommonEngine } from '@angular/ssr/node';
3+
import express from 'express';
4+
import { fileURLToPath } from 'node:url';
5+
import { dirname, join, resolve } from 'node:path';
6+
import bootstrap from './src/main.server';
7+
8+
// The Express app is exported so that it can be used by serverless Functions.
9+
export function app(): express.Express {
10+
const server = express();
11+
const serverDistFolder = dirname(fileURLToPath(import.meta.url));
12+
const browserDistFolder = resolve(serverDistFolder, '../browser');
13+
const indexHtml = join(serverDistFolder, 'index.server.html');
14+
15+
const commonEngine = new CommonEngine();
16+
17+
server.set('view engine', 'html');
18+
server.set('views', browserDistFolder);
19+
20+
// Example Express Rest API endpoints
21+
// server.get('/api/**', (req, res) => { });
22+
// Serve static files from /browser
23+
server.get('**', express.static(browserDistFolder, {
24+
maxAge: '1y',
25+
index: 'index.html',
26+
}));
27+
28+
// All regular routes use the Angular engine
29+
server.get('**', (req, res, next) => {
30+
const { protocol, originalUrl, baseUrl, headers } = req;
31+
32+
commonEngine
33+
.render({
34+
bootstrap,
35+
documentFilePath: indexHtml,
36+
url: `${protocol}://${headers.host}${originalUrl}`,
37+
publicPath: browserDistFolder,
38+
providers: [{ provide: APP_BASE_HREF, useValue: baseUrl }],
39+
})
40+
.then((html) => res.send(html))
41+
.catch((err) => next(err));
42+
});
43+
44+
return server;
45+
}
46+
47+
function run(): void {
48+
const port = process.env['PORT'] || 4000;
49+
50+
// Start up the Node server
51+
const server = app();
52+
server.listen(port, () => {
53+
console.log(`Node Express server listening on http://localhost:${port}`);
54+
});
55+
}
56+
57+
run();
+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
import { APP_BASE_HREF } from '@angular/common';
2+
import { CommonEngine } from '@angular/ssr';
3+
import express from 'express';
4+
import { fileURLToPath } from 'node:url';
5+
import { dirname, join, resolve } from 'node:path';
6+
import bootstrap from './src/main.server';
7+
8+
// The Express app is exported so that it can be used by serverless Functions.
9+
export function app(): express.Express {
10+
const server = express();
11+
const serverDistFolder = dirname(fileURLToPath(import.meta.url));
12+
const browserDistFolder = resolve(serverDistFolder, '../browser');
13+
const indexHtml = join(serverDistFolder, 'index.server.html');
14+
15+
const commonEngine = new CommonEngine();
16+
17+
server.set('view engine', 'html');
18+
server.set('views', browserDistFolder);
19+
20+
// Example Express Rest API endpoints
21+
// server.get('/api/**', (req, res) => { });
22+
// Serve static files from /browser
23+
server.get('**', express.static(browserDistFolder, {
24+
maxAge: '1y',
25+
index: 'index.html',
26+
}));
27+
28+
// All regular routes use the Angular engine
29+
server.get('**', (req, res, next) => {
30+
const { protocol, originalUrl, baseUrl, headers } = req;
31+
32+
commonEngine
33+
.render({
34+
bootstrap,
35+
documentFilePath: indexHtml,
36+
url: `${protocol}://${headers.host}${originalUrl}`,
37+
publicPath: browserDistFolder,
38+
providers: [{ provide: APP_BASE_HREF, useValue: baseUrl }],
39+
})
40+
.then((html) => res.send(html))
41+
.catch((err) => next(err));
42+
});
43+
44+
return server;
45+
}
46+
47+
function run(): void {
48+
const port = process.env['PORT'] || 4000;
49+
50+
// Start up the Node server
51+
const server = app();
52+
server.listen(port, () => {
53+
console.log(`Node Express server listening on http://localhost:${port}`);
54+
});
55+
}
56+
57+
run();

0 commit comments

Comments
 (0)