Skip to content

Commit

Permalink
feat: include some possible dynamic imports with template literals in…
Browse files Browse the repository at this point in the history
… graph (#334)
  • Loading branch information
dsherret authored Nov 27, 2023
1 parent 2b41cd4 commit 60de461
Show file tree
Hide file tree
Showing 8 changed files with 855 additions and 213 deletions.
74 changes: 71 additions & 3 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ deno_semver = "0.5.0"
futures = "0.3.26"
import_map = "0.17.0"
indexmap = { version = "2", features = ["serde"] }
log = "0.4.20"
monch = "0.4.3"
once_cell = "1.16.0"
parking_lot = "0.12.0"
Expand All @@ -40,6 +41,7 @@ thiserror = "1.0.24"
url = { version = "2.2.2", features = ["serde"] }

[dev-dependencies]
tempfile = "3.4.0"
pretty_assertions = "1.0.0"
tokio = { version = "1.10.1", features = ["macros", "rt-multi-thread"] }

Expand Down
21 changes: 12 additions & 9 deletions lib/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ use deno_graph::source::CacheInfo;
use deno_graph::source::CacheSetting;
use deno_graph::source::LoadFuture;
use deno_graph::source::Loader;
use deno_graph::source::NullFileSystem;
use deno_graph::source::ResolutionMode;
use deno_graph::source::ResolveError;
use deno_graph::source::Resolver;
Expand Down Expand Up @@ -249,6 +250,7 @@ pub async fn js_create_graph(
BuildOptions {
is_dynamic: false,
resolver: maybe_resolver.as_ref().map(|r| r as &dyn Resolver),
file_system: Some(&NullFileSystem),
npm_resolver: None,
module_analyzer: None,
imports,
Expand Down Expand Up @@ -292,15 +294,16 @@ pub fn js_parse_module(
} else {
None
};
match deno_graph::parse_module(
GraphKind::All,
&specifier,
maybe_headers.as_ref(),
content.into(),
maybe_resolver.as_ref().map(|r| r as &dyn Resolver),
None,
None,
) {
match deno_graph::parse_module(deno_graph::ParseModuleOptions {
graph_kind: GraphKind::All,
specifier: &specifier,
maybe_headers: maybe_headers.as_ref(),
content: content.into(),
file_system: &NullFileSystem,
maybe_resolver: maybe_resolver.as_ref().map(|r| r as &dyn Resolver),
maybe_module_analyzer: None,
maybe_npm_resolver: None,
}) {
Ok(module) => {
let serializer =
serde_wasm_bindgen::Serializer::new().serialize_maps_as_objects(true);
Expand Down
Loading

0 comments on commit 60de461

Please sign in to comment.