summaryrefslogtreecommitdiff
path: root/cli/tools/registry
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tools/registry')
-rw-r--r--cli/tools/registry/unfurl.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/cli/tools/registry/unfurl.rs b/cli/tools/registry/unfurl.rs
index a28ba445a..489c9a1be 100644
--- a/cli/tools/registry/unfurl.rs
+++ b/cli/tools/registry/unfurl.rs
@@ -75,6 +75,9 @@ impl SpecifierUnfurler {
match resolved {
MappedResolution::Normal(specifier)
| MappedResolution::ImportMap(specifier) => Some(specifier),
+ MappedResolution::WorkspaceJsrPackage { pkg_req_ref, .. } => {
+ Some(ModuleSpecifier::parse(&pkg_req_ref.to_string()).unwrap())
+ }
MappedResolution::WorkspaceNpmPackage {
target_pkg_json: pkg_json,
pkg_name,
@@ -388,11 +391,14 @@ mod tests {
use super::*;
use deno_ast::MediaType;
use deno_ast::ModuleSpecifier;
+ use deno_config::workspace::ResolverWorkspaceJsrPackage;
use deno_core::serde_json::json;
use deno_core::url::Url;
use deno_runtime::deno_fs::RealFs;
use deno_runtime::deno_node::PackageJson;
+ use deno_semver::Version;
use import_map::ImportMapWithDiagnostics;
+ use indexmap::IndexMap;
use pretty_assertions::assert_eq;
use test_util::testdata_path;
@@ -436,6 +442,13 @@ mod tests {
let workspace_resolver = WorkspaceResolver::new_raw(
Arc::new(ModuleSpecifier::from_directory_path(&cwd).unwrap()),
Some(import_map),
+ vec![ResolverWorkspaceJsrPackage {
+ base: ModuleSpecifier::from_directory_path(cwd.join("jsr-package"))
+ .unwrap(),
+ name: "@denotest/example".to_string(),
+ version: Some(Version::parse_standard("1.0.0").unwrap()),
+ exports: IndexMap::from([(".".to_string(), "mod.ts".to_string())]),
+ }],
vec![Arc::new(package_json)],
deno_config::workspace::PackageJsonDepResolution::Enabled,
);
@@ -458,6 +471,7 @@ import b from "./b.js";
import b2 from "./b";
import "./mod.ts";
import url from "url";
+import "@denotest/example";
// TODO: unfurl these to jsr
// import "npm:@jsr/std__fs@1/file";
// import "npm:@jsr/std__fs@1";
@@ -507,6 +521,7 @@ import b from "./b.ts";
import b2 from "./b.ts";
import "./mod.ts";
import url from "node:url";
+import "jsr:@denotest/example@^1.0.0";
// TODO: unfurl these to jsr
// import "npm:@jsr/std__fs@1/file";
// import "npm:@jsr/std__fs@1";