From c0a30ffde68d93e23bda0017a2799c75c73a6db1 Mon Sep 17 00:00:00 2001 From: skirtle <65301168+skirtles-code@users.noreply.github.com> Date: Mon, 12 May 2025 16:15:35 +0100 Subject: [PATCH] Fix a 'Pre-transform error' using aliases with Vite --- .../config/packages/playground/vite.config.mts.ejs | 6 ++++-- .../config/packages/docs/.vitepress/config.mts.ejs | 10 ++++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/packages/create-vue-lib/src/template/playground/config/packages/playground/vite.config.mts.ejs b/packages/create-vue-lib/src/template/playground/config/packages/playground/vite.config.mts.ejs index 2ba0ac7..d1515d6 100644 --- a/packages/create-vue-lib/src/template/playground/config/packages/playground/vite.config.mts.ejs +++ b/packages/create-vue-lib/src/template/playground/config/packages/playground/vite.config.mts.ejs @@ -21,11 +21,13 @@ export default defineConfig(({ mode }): UserConfig => ({ { find: '@', replacement: '@', - customResolver(source, importer) { - return source.replace( + customResolver(source, importer, options) { + const filePath = source.replace( /^@\//, importer?.startsWith(librarySrc) ? librarySrc : playgroundSrc ) + + return this.resolve(filePath, importer, options) } }, { find: '<%- config.scopedPackageName %>', diff --git a/packages/create-vue-lib/src/template/vitepress/config/packages/docs/.vitepress/config.mts.ejs b/packages/create-vue-lib/src/template/vitepress/config/packages/docs/.vitepress/config.mts.ejs index 2e2fa5f..a1efdc4 100644 --- a/packages/create-vue-lib/src/template/vitepress/config/packages/docs/.vitepress/config.mts.ejs +++ b/packages/create-vue-lib/src/template/vitepress/config/packages/docs/.vitepress/config.mts.ejs @@ -4,7 +4,7 @@ import { defineConfigWithTheme } from 'vitepress' <%_ if (config.includeAtAliases) { _%> const librarySrc = fileURLToPath(new URL('../../<%- config.mainPackageDirName %>/src/', import.meta.url)) -const playgroundSrc = fileURLToPath(new URL('../src/', import.meta.url)) +const docsSrc = fileURLToPath(new URL('../src/', import.meta.url)) <%_ } _%> export default ({ mode }: { mode: string }) => defineConfigWithTheme({ @@ -40,11 +40,13 @@ export default ({ mode }: { mode: string }) => defineConfigWithTheme({ { find: '@', replacement: '@', - customResolver(source, importer) { - return source.replace( + customResolver(source, importer, options) { + const filePath = source.replace( /^@\//, - importer?.startsWith(librarySrc) ? librarySrc : playgroundSrc + importer?.startsWith(librarySrc) ? librarySrc : docsSrc ) + + return this.resolve(filePath, importer, options) } }, { find: '<%- config.scopedPackageName %>',