diff --git a/apps/daffio/server/server.ts b/apps/daffio/server/server.ts index 5b3366e637..9830f69416 100644 --- a/apps/daffio/server/server.ts +++ b/apps/daffio/server/server.ts @@ -1,4 +1,4 @@ - +// eslint-disable-next-line import/no-unassigned-import import 'zone.js/node'; import { APP_BASE_HREF } from '@angular/common'; @@ -6,7 +6,8 @@ import { CommonEngine } from '@angular/ssr'; import * as express from 'express'; import { existsSync } from 'node:fs'; import { join } from 'node:path'; -import bootstrap from './src/main.server'; + +import { AppServerModule } from '../src/main.server'; // The Express app is exported so that it can be used by serverless Functions. export function app(): express.Express { @@ -25,7 +26,7 @@ export function app(): express.Express { // server.get('/api/**', (req, res) => { }); // Serve static files from /browser server.get('*.*', express.static(distFolder, { - maxAge: '1y' + maxAge: '1y', })); // All regular routes use the Angular engine @@ -34,12 +35,13 @@ export function app(): express.Express { commonEngine .render({ - bootstrap, + bootstrap: AppServerModule, documentFilePath: indexHtml, url: `${protocol}://${headers.host}${originalUrl}`, publicPath: distFolder, providers: [ - { provide: APP_BASE_HREF, useValue: baseUrl },], + { provide: APP_BASE_HREF, useValue: baseUrl }, + ], }) .then((html) => res.send(html)) .catch((err) => next(err)); @@ -68,4 +70,4 @@ if (moduleFilename === __filename || moduleFilename.includes('iisnode')) { run(); } -export default bootstrap; +export * from '../src/main.server'; diff --git a/apps/daffio/serverless/webpack.serverless.config.js b/apps/daffio/serverless/webpack.serverless.config.js index db602d885b..79c88e274a 100644 --- a/apps/daffio/serverless/webpack.serverless.config.js +++ b/apps/daffio/serverless/webpack.serverless.config.js @@ -23,5 +23,5 @@ module.exports = { __dirname: false, }, // this makes sure we include node_modules and other 3rd party libraries - externals: [/(node_modules|main\..*\.js)/] + externals: [/(node_modules|main\..*\.js|.*\.txt|.*\.map)/] } \ No newline at end of file diff --git a/apps/daffio/src/app/app.module.ts b/apps/daffio/src/app/app.module.ts index b02184b9e7..223ad59519 100644 --- a/apps/daffio/src/app/app.module.ts +++ b/apps/daffio/src/app/app.module.ts @@ -1,5 +1,8 @@ import { HttpClientModule } from '@angular/common/http'; -import { NgModule } from '@angular/core'; +import { + APP_ID, + NgModule, +} from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { ServiceWorkerModule } from '@angular/service-worker'; @@ -29,7 +32,7 @@ import { environment } from '../environments/environment'; @NgModule({ imports: [ - BrowserModule.withServerTransition({ appId: 'serverApp' }), + BrowserModule, BrowserAnimationsModule, StoreModule.forRoot({}), @@ -57,7 +60,7 @@ import { environment } from '../environments/environment'; StoreDevtoolsModule.instrument({ maxAge: 25, // Retains last 25 states logOnly: environment.production, // Restrict extension to log-only mode - connectInZone: true + connectInZone: true, }), TemplateModule, ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production }), @@ -70,6 +73,10 @@ import { environment } from '../environments/environment'; ], providers: [ DAFF_THEME_INITIALIZER, + { + provide: APP_ID, + useValue: 'serverApp', + }, ], }) export class AppModule {}