summaryrefslogtreecommitdiff
path: root/cli/resolver.rs
diff options
context:
space:
mode:
authorDavid Sherret <dsherret@users.noreply.github.com>2024-01-03 22:50:58 -0500
committerGitHub <noreply@github.com>2024-01-04 09:20:58 +0530
commit48556748577ba46db5f9212d14a0fcaa90d632f6 (patch)
treeddc4ada934f3b65e18dd9b8c3bf9d232d567bc16 /cli/resolver.rs
parentad65440092ed2e5f85d1c7cadb6f59bef0c7be75 (diff)
fix(unstable/byonm): support using an import map with byonm (#21786)
Supports mixing an import map with byonm.
Diffstat (limited to 'cli/resolver.rs')
-rw-r--r--cli/resolver.rs31
1 files changed, 16 insertions, 15 deletions
diff --git a/cli/resolver.rs b/cli/resolver.rs
index 808ffcb9a..2bd947c34 100644
--- a/cli/resolver.rs
+++ b/cli/resolver.rs
@@ -253,22 +253,23 @@ impl Resolver for CliGraphResolver {
}
let referrer = &referrer_range.specifier;
- let result = match self
+ let result = self
.mapped_specifier_resolver
- .resolve(specifier, referrer)?
- {
- MappedResolution::ImportMap(specifier) => Ok(specifier),
- MappedResolution::PackageJson(specifier) => {
- // found a specifier in the package.json, so mark that
- // we need to do an "npm install" later
- self.found_package_json_dep_flag.raise();
- Ok(specifier)
- }
- MappedResolution::None => {
- deno_graph::resolve_import(specifier, &referrer_range.specifier)
- .map_err(|err| err.into())
- }
- };
+ .resolve(specifier, referrer)
+ .map_err(|err| err.into())
+ .and_then(|resolution| match resolution {
+ MappedResolution::ImportMap(specifier) => Ok(specifier),
+ MappedResolution::PackageJson(specifier) => {
+ // found a specifier in the package.json, so mark that
+ // we need to do an "npm install" later
+ self.found_package_json_dep_flag.raise();
+ Ok(specifier)
+ }
+ MappedResolution::None => {
+ deno_graph::resolve_import(specifier, &referrer_range.specifier)
+ .map_err(|err| err.into())
+ }
+ });
// do sloppy imports resolution if enabled
let result =