mirror of
https://github.com/denoland/deno.git
synced 2025-09-26 12:19:12 +00:00
![]() - Each workspace directory is probed for a `tsconfig.json`. - These and any that are included by their `references` are put into a list ordered by priority. - A tsconfig has lower priority than its `references`. - An earlier listed entry in `references` has higher priority than a later one. - A probed tsconfig in an inner directory has higher priority than an outer one. Their `references` would be interspersed between them. - Each tsconfig has a filter based on its `files`, `include` and `exclude` fields. If it doesn't have `files` or `include`, it will match any path in its containing directory not exempted by `exclude`. - For type-checking, each root path will be allocated compiler options based on the first tsconfig it whose filter it matches from this list. - Only if it doesn't match any tsconfig, it will fall back to using the nearest `deno.json`. If it's a workspace member and the root `deno.json` has `compilerOptions`, these will be merged using the same logic from `extends`. Inheritance between configs strictly occurs via `extends` in a `tsconfig.json`, and between workspace member and root `deno.json`s' `compilerOptions`. There is no implicit inheritance between `tsconfig.json` and `deno.json`. The default compiler options currently applied against tsconfigs are Deno's normal defaults, with the exception of `lib`. The default value for `lib` is `["deno.window", "deno.unstable", "dom"]` for files in the scope of a tsconfig with `lib` unspecified. This behaviour is depended on by, for example, the template project created by `create-vite -> svelte`. I expect we'll add more such exceptions over time with other fields. |
||
---|---|---|
.. | ||
args | ||
bench | ||
cache | ||
js | ||
lib | ||
lsp | ||
ops | ||
rt | ||
schemas | ||
snapshot | ||
standalone | ||
tools | ||
tsc | ||
util | ||
build.rs | ||
Cargo.toml | ||
cdp.rs | ||
clippy.toml | ||
deno.ico | ||
emit.rs | ||
entitlements.plist | ||
factory.rs | ||
file_fetcher.rs | ||
graph_container.rs | ||
graph_util.rs | ||
http_util.rs | ||
integration_tests_runner.rs | ||
jsr.rs | ||
main.rs | ||
module_loader.rs | ||
node.rs | ||
npm.rs | ||
README.md | ||
registry.rs | ||
resolver.rs | ||
task_runner.rs | ||
type_checker.rs | ||
worker.rs |