diff options
Diffstat (limited to 'cli/module_loader.rs')
-rw-r--r-- | cli/module_loader.rs | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/cli/module_loader.rs b/cli/module_loader.rs index 3ac222b01..afd707ad8 100644 --- a/cli/module_loader.rs +++ b/cli/module_loader.rs @@ -35,7 +35,6 @@ use crate::util::text_encoding::code_without_source_map; use crate::util::text_encoding::source_map_from_code; use crate::worker::ModuleLoaderAndSourceMapGetter; use crate::worker::ModuleLoaderFactory; - use deno_ast::MediaType; use deno_core::anyhow::anyhow; use deno_core::anyhow::bail; @@ -64,6 +63,7 @@ use deno_graph::Module; use deno_graph::ModuleGraph; use deno_graph::Resolution; use deno_runtime::code_cache; +use deno_runtime::deno_node::create_host_defined_options; use deno_runtime::deno_permissions::PermissionsContainer; use deno_semver::npm::NpmPackageReqReference; use node_resolver::NodeResolutionMode; @@ -725,6 +725,19 @@ impl<TGraphContainer: ModuleGraphContainer> ModuleLoader Ok(specifier) } + fn get_host_defined_options<'s>( + &self, + scope: &mut deno_core::v8::HandleScope<'s>, + name: &str, + ) -> Option<deno_core::v8::Local<'s, deno_core::v8::Data>> { + let name = deno_core::ModuleSpecifier::parse(name).ok()?; + if self.0.shared.node_resolver.in_npm_package(&name) { + Some(create_host_defined_options(scope)) + } else { + None + } + } + fn load( &self, specifier: &ModuleSpecifier, |