From fee4943f760fae2c9386ceeda86c3f8fbfd8e6a0 Mon Sep 17 00:00:00 2001 From: David Sherret Date: Fri, 8 Mar 2024 14:14:28 -0500 Subject: fix(node): resolve .css files in npm packages when type checking (#22804) When type checking, we should just resolve css files in npm packages and not surface a type checking error on the specifier. --- tests/integration/npm_tests.rs | 16 ++++++++++++++++ .../registry/@denotest/css-export/1.0.0/dist/index.css | 1 + .../npm/registry/@denotest/css-export/1.0.0/package.json | 9 +++++++++ 3 files changed, 26 insertions(+) create mode 100644 tests/testdata/npm/registry/@denotest/css-export/1.0.0/dist/index.css create mode 100644 tests/testdata/npm/registry/@denotest/css-export/1.0.0/package.json (limited to 'tests') diff --git a/tests/integration/npm_tests.rs b/tests/integration/npm_tests.rs index e4e06e830..7c34415da 100644 --- a/tests/integration/npm_tests.rs +++ b/tests/integration/npm_tests.rs @@ -2551,6 +2551,22 @@ console.log(getValue()); output.assert_matches_text("Check file:///[WILDCARD]/main.ts\n"); } +#[test] +fn check_css_package_json_exports() { + let test_context = TestContextBuilder::for_npm().use_temp_cwd().build(); + let dir = test_context.temp_dir(); + dir.write( + "main.ts", + r#"import "npm:@denotest/css-export/dist/index.css";"#, + ); + test_context + .new_command() + .args("check main.ts") + .run() + .assert_matches_text("Download [WILDCARD]css-export\nDownload [WILDCARD]css-export/1.0.0.tgz\nCheck [WILDCARD]/main.ts\n") + .assert_exit_code(0); +} + #[test] fn cjs_export_analysis_require_re_export() { let test_context = TestContextBuilder::for_npm().use_temp_cwd().build(); diff --git a/tests/testdata/npm/registry/@denotest/css-export/1.0.0/dist/index.css b/tests/testdata/npm/registry/@denotest/css-export/1.0.0/dist/index.css new file mode 100644 index 000000000..2d91681f8 --- /dev/null +++ b/tests/testdata/npm/registry/@denotest/css-export/1.0.0/dist/index.css @@ -0,0 +1 @@ +body {} \ No newline at end of file diff --git a/tests/testdata/npm/registry/@denotest/css-export/1.0.0/package.json b/tests/testdata/npm/registry/@denotest/css-export/1.0.0/package.json new file mode 100644 index 000000000..f7a76aec9 --- /dev/null +++ b/tests/testdata/npm/registry/@denotest/css-export/1.0.0/package.json @@ -0,0 +1,9 @@ +{ + "name": "@denotest/css-export", + "version": "1.0.0", + "type": "module", + "exports": { + ".": "./index.js", + "./dist/*": "./dist/*" + } +} \ No newline at end of file -- cgit v1.2.3