From 2bb236822030c44cfb38ca7f390fef65d3ab9629 Mon Sep 17 00:00:00 2001 From: sapphi-red <49056869+sapphi-red@users.noreply.github.com> Date: Wed, 23 Apr 2025 20:43:40 +0900 Subject: [PATCH] fix(css): resolve relative imports in sass properly on Windows --- packages/vite/src/node/plugins/css.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/vite/src/node/plugins/css.ts b/packages/vite/src/node/plugins/css.ts index 378a2a193eb2f8..f3c4d1ec512775 100644 --- a/packages/vite/src/node/plugins/css.ts +++ b/packages/vite/src/node/plugins/css.ts @@ -1207,6 +1207,8 @@ export function getEmptyChunkReplacer( ) } +const fileURLWithWindowsDriveRE = /^file:\/\/\/[a-zA-Z]:\// + interface CSSAtImportResolvers { css: ResolveIdFn sass: ResolveIdFn @@ -1245,7 +1247,9 @@ function createCSSResolvers(config: ResolvedConfig): CSSAtImportResolvers { args[1] = fileURLToPath(args[1], { windows: // file:///foo cannot be converted to path with windows mode - isWindows && args[1].startsWith('file:///') ? false : undefined, + isWindows && !fileURLWithWindowsDriveRE.test(args[1]) + ? false + : undefined, }) } return resolver(...args)