Skip to content

Commit

Permalink
move adjust virtual import into own resolve hook
Browse files Browse the repository at this point in the history
  • Loading branch information
patricklx committed Jun 14, 2024
1 parent 1486226 commit a842310
Showing 1 changed file with 29 additions and 5 deletions.
34 changes: 29 additions & 5 deletions packages/vite/src/esbuild-resolver.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,10 @@ export function esBuildResolver(root = process.cwd()): EsBuildPlugin {
let firstFailure;

for (let candidate of candidates(path)) {
let { specifier, fromFile } = adjustVirtualImport(candidate, importer);
let result = await build.resolve(specifier, {
let result = await build.resolve(candidate, {
namespace,
resolveDir,
importer: fromFile,
importer,
kind,
pluginData: { ...pluginData, embroiderExtensionSearch: true },
});
Expand All @@ -53,8 +52,7 @@ export function esBuildResolver(root = process.cwd()): EsBuildPlugin {
return firstFailure;
});
build.onResolve({ filter: /./ }, async ({ path, importer, pluginData, kind }) => {
let { specifier, fromFile } = adjustVirtualImport(path, importer);
let request = EsBuildModuleRequest.from(build, kind, specifier, fromFile, pluginData);
let request = EsBuildModuleRequest.from(build, kind, path, importer, pluginData);
if (!request) {
return null;
}
Expand All @@ -70,6 +68,32 @@ export function esBuildResolver(root = process.cwd()): EsBuildPlugin {
}
});

build.onResolve({ filter: /./ }, async args => {
let { path, importer, namespace, resolveDir, kind } = args;
let { specifier, fromFile } = adjustVirtualImport(path, importer);
if (specifier === path) {
return null;
}

let result = await build.resolve(specifier, {
namespace,
resolveDir,
importer: fromFile,
kind,
pluginData: {
embroiderExtensionSearch: true,
embroider: {
enableCustomResolver: false,
}
},
});

if (result.errors.length === 0) {
return result;
}
return null;
})

build.onLoad({ namespace: 'embroider', filter: /./ }, ({ path }) => {
// We don't want esbuild to try loading virtual CSS files
if (path.endsWith('.css')) {
Expand Down

0 comments on commit a842310

Please sign in to comment.