summaryrefslogtreecommitdiff
path: root/cli/tsc/mod.rs
diff options
context:
space:
mode:
authorDavid Sherret <dsherret@users.noreply.github.com>2023-10-05 16:18:29 -0400
committerGitHub <noreply@github.com>2023-10-05 20:18:29 +0000
commit820e93e3e742a22f010f3200312039c50ae0d63a (patch)
treecb6c69c2427d7eb88484bafcbc4a61e70522c671 /cli/tsc/mod.rs
parent7a01799f490739612be27725f1584a995f6b1491 (diff)
refactor(npm): add referrer when resolving npm package sub path from deno module (#20800)
Adds a `referrer` parameter to this function instead of using a fake one.
Diffstat (limited to 'cli/tsc/mod.rs')
-rw-r--r--cli/tsc/mod.rs31
1 files changed, 18 insertions, 13 deletions
diff --git a/cli/tsc/mod.rs b/cli/tsc/mod.rs
index c7371e0c5..c08d12e28 100644
--- a/cli/tsc/mod.rs
+++ b/cli/tsc/mod.rs
@@ -586,7 +586,7 @@ fn op_resolve(
let maybe_result = match resolved_dep {
Some(ResolutionResolved { specifier, .. }) => {
- resolve_graph_specifier_types(specifier, state)?
+ resolve_graph_specifier_types(specifier, &referrer, state)?
}
_ => resolve_non_graph_specifier_types(&specifier, &referrer, state)?,
};
@@ -629,6 +629,7 @@ fn op_resolve(
fn resolve_graph_specifier_types(
specifier: &ModuleSpecifier,
+ referrer: &ModuleSpecifier,
state: &State,
) -> Result<Option<(ModuleSpecifier, MediaType)>, AnyError> {
let graph = &state.graph;
@@ -663,12 +664,14 @@ fn resolve_graph_specifier_types(
.as_managed()
.unwrap() // should never be byonm because it won't create Module::Npm
.resolve_pkg_folder_from_deno_module(module.nv_reference.nv())?;
- let maybe_resolution = npm.node_resolver.resolve_npm_reference(
- &package_folder,
- module.nv_reference.sub_path(),
- NodeResolutionMode::Types,
- &PermissionsContainer::allow_all(),
- )?;
+ let maybe_resolution =
+ npm.node_resolver.resolve_package_subpath_from_deno_module(
+ &package_folder,
+ module.nv_reference.sub_path(),
+ referrer,
+ NodeResolutionMode::Types,
+ &PermissionsContainer::allow_all(),
+ )?;
Ok(Some(NodeResolution::into_specifier_and_media_type(
maybe_resolution,
)))
@@ -721,12 +724,14 @@ fn resolve_non_graph_specifier_types(
let package_folder = npm
.npm_resolver
.resolve_pkg_folder_from_deno_module_req(npm_req_ref.req(), referrer)?;
- let maybe_resolution = node_resolver.resolve_npm_reference(
- &package_folder,
- npm_req_ref.sub_path(),
- NodeResolutionMode::Types,
- &PermissionsContainer::allow_all(),
- )?;
+ let maybe_resolution = node_resolver
+ .resolve_package_subpath_from_deno_module(
+ &package_folder,
+ npm_req_ref.sub_path(),
+ referrer,
+ NodeResolutionMode::Types,
+ &PermissionsContainer::allow_all(),
+ )?;
Ok(Some(NodeResolution::into_specifier_and_media_type(
maybe_resolution,
)))