Skip to content

Commit dee3614

Browse files
Make Deno target available
1 parent 9505916 commit dee3614

File tree

3 files changed

+8
-0
lines changed

3 files changed

+8
-0
lines changed

src/bindgen.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ fn build_target_arg_legacy(target: Target, cli_path: &Path) -> Result<String, fa
115115
}
116116
}
117117
Target::Bundler => "--browser",
118+
Target::Deno => "--deno",
118119
};
119120
Ok(target_arg.to_string())
120121
}

src/command/build.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,9 @@ pub enum Target {
5555
/// in a browser but pollutes the global namespace and must be manually
5656
/// instantiated.
5757
NoModules,
58+
/// Correspond to `--target deno` where the output is natively usable as
59+
/// a Deno module loaded with `import`.
60+
Deno,
5861
}
5962

6063
impl Default for Target {
@@ -70,6 +73,7 @@ impl fmt::Display for Target {
7073
Target::Web => "web",
7174
Target::Nodejs => "nodejs",
7275
Target::NoModules => "no-modules",
76+
Target::Deno => "deno",
7377
};
7478
write!(f, "{}", s)
7579
}
@@ -83,6 +87,7 @@ impl FromStr for Target {
8387
"web" => Ok(Target::Web),
8488
"nodejs" => Ok(Target::Nodejs),
8589
"no-modules" => Ok(Target::NoModules),
90+
"deno" => Ok(Target::Deno),
8691
_ => bail!("Unknown target: {}", s),
8792
}
8893
}

src/manifest/mod.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -590,6 +590,8 @@ impl CrateData {
590590
Target::NoModules => self.to_nomodules(scope, disable_dts, existing_deps, out_dir),
591591
Target::Bundler => self.to_esmodules(scope, disable_dts, existing_deps, out_dir),
592592
Target::Web => self.to_web(scope, disable_dts, existing_deps, out_dir),
593+
// Deno does not need package.json
594+
Target::Deno => return Ok(()),
593595
};
594596

595597
let npm_json = serde_json::to_string_pretty(&npm_data)?;

0 commit comments

Comments
 (0)