Closed
Description
While importing the npm:@types packages as per #16653 silences errors from the language server when running deno check I see the following error:
% deno check index.tsx
Check file:///Users/lrowe/scratch/react-server-deno/index.tsx
error: Uncaught Error: Error resolving package config for 'npm:[email protected]/jsx-runtime': [ERR_PACKAGE_PATH_NOT_EXPORTED] Package subpath './jsx-runtime' is not defined by "exports" in '/Users/lrowe/Library/Caches/deno/npm/registry.npmjs.org/react/18.2.0/package.json' imported from '/Users/lrowe/Library/Caches/deno/npm/registry.npmjs.org/react/18.2.0/'
at <anonymous> (ext:deno_tsc/99_main_compiler.js:592:28)
However in react's package.json an entry for './jsx-runtime' exists:
"exports": {
".": {
"react-server": "./react.shared-subset.js",
"default": "./index.js"
},
"./package.json": "./package.json",
"./jsx-runtime": "./jsx-runtime.js",
"./jsx-dev-runtime": "./jsx-dev-runtime.js"
},
Files to reproduce:
index.tsx:
// See: https://github.com/denoland/deno/issues/16653
import type {} from "npm:@types/react@18";
import type {} from "npm:@types/react-dom@18";
import React from "npm:react@18";
import { renderToString } from "npm:react-dom@18/server";
function Hello() {
return <div>Hello world!</div>;
}
console.log(renderToString(<Hello />));
deno.json:
{
"compilerOptions": {
"jsx": "react-jsx",
"jsxImportSource": "npm:react@18"
}
}
% deno --version
deno 1.31.2 (release, aarch64-apple-darwin)
v8 11.0.226.19
typescript 4.9.4