From 68f1a2a35ef9777f34e28acbd8b6e4f9e0d36e5a Mon Sep 17 00:00:00 2001 From: pieh Date: Thu, 21 Nov 2024 13:08:06 +0100 Subject: [PATCH 1/5] fix: adjust getAngularRuntimeVersion to not find auto-installed version in .netlify/plugins --- src/helpers/getPackageVersion.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/helpers/getPackageVersion.js b/src/helpers/getPackageVersion.js index dbe80b99..1bb2746d 100644 --- a/src/helpers/getPackageVersion.js +++ b/src/helpers/getPackageVersion.js @@ -1,3 +1,5 @@ +const { createRequire } = require('node:module') + const { readJSON } = require('fs-extra') /** @@ -29,8 +31,8 @@ module.exports.getAngularVersion = getAngularVersion const getAngularRuntimeVersion = async function (root) { let packagePath try { - // eslint-disable-next-line n/no-missing-require - packagePath = require.resolve('@netlify/angular-runtime/package.json', { paths: [root] }) + const siteRequire = createRequire(root) + packagePath = siteRequire.resolve('@netlify/angular-runtime/package.json') } catch { // module not found return From 1cdeac4f28b1ad076a503e7bc831138ab6a6f439 Mon Sep 17 00:00:00 2001 From: pieh Date: Thu, 21 Nov 2024 13:11:49 +0100 Subject: [PATCH 2/5] docs: fix wrong code snippet in README --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 4f0059ed..320e3037 100644 --- a/README.md +++ b/README.md @@ -123,7 +123,7 @@ export async function netlifyCommonEngineHandler(request: Request, context: any) // Example API endpoints can be defined here. // Uncomment and define endpoints as necessary. // const pathname = new URL(request.url).pathname; - // if (pathname = '/api/hello') { + // if (pathname === '/api/hello') { // return Response.json({ message: 'Hello from the API' }); // } @@ -145,7 +145,7 @@ export async function netlifyAppEngineHandler(request: Request): Promise Date: Thu, 21 Nov 2024 13:12:20 +0100 Subject: [PATCH 3/5] fix: add commented out example API to code snippets shown on incompatible server.ts error --- src/helpers/serverModuleHelpers.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/helpers/serverModuleHelpers.js b/src/helpers/serverModuleHelpers.js index facc6da7..7c5dec27 100644 --- a/src/helpers/serverModuleHelpers.js +++ b/src/helpers/serverModuleHelpers.js @@ -16,6 +16,13 @@ import { render } from '@netlify/angular-runtime/common-engine' const commonEngine = new CommonEngine() export async function netlifyCommonEngineHandler(request: Request, context: any): Promise { + // Example API endpoints can be defined here. + // Uncomment and define endpoints as necessary. + // const pathname = new URL(request.url).pathname; + // if (pathname === '/api/hello') { + // return Response.json({ message: 'Hello from the API' }); + // } + return await render(commonEngine) } ` @@ -29,6 +36,13 @@ const angularAppEngine = new AngularAppEngine() export async function netlifyAppEngineHandler(request: Request): Promise { const context = getContext() + // Example API endpoints can be defined here. + // Uncomment and define endpoints as necessary. + // const pathname = new URL(request.url).pathname; + // if (pathname === '/api/hello') { + // return Response.json({ message: 'Hello from the API' }); + // } + const result = await angularAppEngine.handle(request, context) return result || new Response('Not found', { status: 404 }) } From 289784eb20e377eee8c62c902f69431e47bab3ce Mon Sep 17 00:00:00 2001 From: pieh Date: Thu, 21 Nov 2024 15:55:22 +0100 Subject: [PATCH 4/5] fix: use :internal: trick --- src/helpers/getPackageVersion.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/helpers/getPackageVersion.js b/src/helpers/getPackageVersion.js index 1bb2746d..f9f0c374 100644 --- a/src/helpers/getPackageVersion.js +++ b/src/helpers/getPackageVersion.js @@ -1,4 +1,5 @@ const { createRequire } = require('node:module') +const { join } = require('node:path/posix') const { readJSON } = require('fs-extra') @@ -31,7 +32,7 @@ module.exports.getAngularVersion = getAngularVersion const getAngularRuntimeVersion = async function (root) { let packagePath try { - const siteRequire = createRequire(root) + const siteRequire = createRequire(join(root, ':internal:')) packagePath = siteRequire.resolve('@netlify/angular-runtime/package.json') } catch { // module not found From 019cf7d1de81427cf9d508d27e89d9536b5bc65b Mon Sep 17 00:00:00 2001 From: pieh Date: Thu, 21 Nov 2024 15:55:58 +0100 Subject: [PATCH 5/5] fix: add missing ending qoute --- src/helpers/serverModuleHelpers.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/helpers/serverModuleHelpers.js b/src/helpers/serverModuleHelpers.js index 7c5dec27..dcee9ebd 100644 --- a/src/helpers/serverModuleHelpers.js +++ b/src/helpers/serverModuleHelpers.js @@ -127,7 +127,7 @@ const fixServerTs = async function ({ angularVersion, siteRoot, failPlugin, fail ) } else if (!satisfies(angularRuntimeVersionInstalledByUser, '>=2.2.0', { includePrerelease: true })) { failBuild( - `Angular@19 SSR on Netlify requires '@netlify/angular-runtime' version 2.2.0 or later to be installed. Found version "${angularRuntimeVersionInstalledByUser}. Please update it to version 2.2.0 or later and try again.`, + `Angular@19 SSR on Netlify requires '@netlify/angular-runtime' version 2.2.0 or later to be installed. Found version "${angularRuntimeVersionInstalledByUser}". Please update it to version 2.2.0 or later and try again.`, ) }