From effbba8a5ec3111dd48783f7b41e0f4447263882 Mon Sep 17 00:00:00 2001 From: Nicola Krumschmidt Date: Wed, 30 Jun 2021 16:03:21 +0200 Subject: [PATCH] Fix extension loading on windows (#6579) Javascript import syntax uses URLs instead of paths, so we have to normalize the extension paths to forward slashes when importing them inside the virtual entrypoints. Fixes #6550 --- packages/shared/src/utils/generate-extensions-entry.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/shared/src/utils/generate-extensions-entry.ts b/packages/shared/src/utils/generate-extensions-entry.ts index daa5b0a975..adc479dffc 100644 --- a/packages/shared/src/utils/generate-extensions-entry.ts +++ b/packages/shared/src/utils/generate-extensions-entry.ts @@ -1,10 +1,13 @@ -import path from 'path'; +import path from 'path/posix'; import { AppExtensionType, Extension } from '../types'; export function generateExtensionsEntry(type: AppExtensionType, extensions: Extension[]): string { const filteredExtensions = extensions.filter((extension) => extension.type === type); return `${filteredExtensions - .map((extension, i) => `import e${i} from '${path.resolve(extension.path, extension.entrypoint || '')}';\n`) + .map( + (extension, i) => + `import e${i} from './${path.relative('.', path.resolve(extension.path, extension.entrypoint || ''))}';\n` + ) .join('')}export default [${filteredExtensions.map((_, i) => `e${i}`).join(',')}];`; }