Inline compiler options in common layer tsconfigs; remove tsconfig.compiler.json
Each subfolder tsconfig.json now explicitly lists lib, types, paths, and project references instead of extending a shared tsconfig.compiler.json. Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
This commit is contained in:
co-authored by
Daniel Imms
parent
6d826ac022
commit
ba582efbfa
@@ -55,7 +55,6 @@ flowchart BT
|
||||
## TypeScript projects
|
||||
|
||||
- **`common/tsconfig.json`** — solution root; references each layer project (no sources).
|
||||
- **`common/tsconfig.compiler.json`** — shared `lib`, `paths`, and `types` for layer projects.
|
||||
- **`common/<layer>/tsconfig.json`** — composite project with `references` matching the dependency graph above. Test files (`**/*.test.ts`) are excluded from composite builds; unit tests compile via esbuild.
|
||||
- **`common/<layer>/tsconfig.json`** — self-contained composite project (`lib`, `paths`, `types`, `references`, `outDir`). Test files (`**/*.test.ts`) are excluded from composite builds; unit tests compile via esbuild.
|
||||
|
||||
Buffer-layer code depends on `buffer/BufferService`, `buffer/BufferOptions`, and `buffer/BufferLog` instead of `services` so the `buffer` project does not reference `services`.
|
||||
|
||||
@@ -1,9 +1,30 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["./*"],
|
||||
"common/encoding/*": ["../encoding/*"],
|
||||
"common/data/*": ["../data/*"],
|
||||
"common/buffer/*": ["../buffer/*"],
|
||||
"common/parser/*": ["../parser/*"],
|
||||
"common/input/*": ["../input/*"],
|
||||
"common/services/*": ["../services/*"],
|
||||
"common/terminal/*": ["../terminal/*"],
|
||||
"common/public/*": ["../public/*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/base",
|
||||
"rootDir": "."
|
||||
},
|
||||
|
||||
@@ -1,9 +1,30 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["../base/*"],
|
||||
"common/encoding/*": ["../encoding/*"],
|
||||
"common/data/*": ["../data/*"],
|
||||
"common/buffer/*": ["./*"],
|
||||
"common/parser/*": ["../parser/*"],
|
||||
"common/input/*": ["../input/*"],
|
||||
"common/services/*": ["../services/*"],
|
||||
"common/terminal/*": ["../terminal/*"],
|
||||
"common/public/*": ["../public/*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/buffer",
|
||||
"rootDir": "."
|
||||
},
|
||||
@@ -11,18 +32,12 @@
|
||||
"./**/*",
|
||||
"../../../typings/xterm.d.ts"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "../base"
|
||||
},
|
||||
{
|
||||
"path": "../encoding"
|
||||
},
|
||||
{
|
||||
"path": "../data"
|
||||
}
|
||||
],
|
||||
"exclude": [
|
||||
"**/*.test.ts"
|
||||
],
|
||||
"references": [
|
||||
{ "path": "../base" },
|
||||
{ "path": "../encoding" },
|
||||
{ "path": "../data" }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,21 +1,40 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["../base/*"],
|
||||
"common/encoding/*": ["../encoding/*"],
|
||||
"common/data/*": ["./*"],
|
||||
"common/buffer/*": ["../buffer/*"],
|
||||
"common/parser/*": ["../parser/*"],
|
||||
"common/input/*": ["../input/*"],
|
||||
"common/services/*": ["../services/*"],
|
||||
"common/terminal/*": ["../terminal/*"],
|
||||
"common/public/*": ["../public/*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/data",
|
||||
"rootDir": "."
|
||||
},
|
||||
"include": [
|
||||
"./**/*"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "../base"
|
||||
}
|
||||
],
|
||||
"exclude": [
|
||||
"**/*.test.ts"
|
||||
],
|
||||
"references": [
|
||||
{ "path": "../base" }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,21 +1,40 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["../base/*"],
|
||||
"common/encoding/*": ["./*"],
|
||||
"common/data/*": ["../data/*"],
|
||||
"common/buffer/*": ["../buffer/*"],
|
||||
"common/parser/*": ["../parser/*"],
|
||||
"common/input/*": ["../input/*"],
|
||||
"common/services/*": ["../services/*"],
|
||||
"common/terminal/*": ["../terminal/*"],
|
||||
"common/public/*": ["../public/*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/encoding",
|
||||
"rootDir": "."
|
||||
},
|
||||
"include": [
|
||||
"./**/*"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "../base"
|
||||
}
|
||||
],
|
||||
"exclude": [
|
||||
"**/*.test.ts"
|
||||
],
|
||||
"references": [
|
||||
{ "path": "../base" }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,30 +1,44 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["../base/*"],
|
||||
"common/encoding/*": ["../encoding/*"],
|
||||
"common/data/*": ["../data/*"],
|
||||
"common/buffer/*": ["../buffer/*"],
|
||||
"common/parser/*": ["../parser/*"],
|
||||
"common/input/*": ["./*"],
|
||||
"common/services/*": ["../services/*"],
|
||||
"common/terminal/*": ["../terminal/*"],
|
||||
"common/public/*": ["../public/*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/input",
|
||||
"rootDir": "."
|
||||
},
|
||||
"include": [
|
||||
"./**/*"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "../base"
|
||||
},
|
||||
{
|
||||
"path": "../data"
|
||||
},
|
||||
{
|
||||
"path": "../encoding"
|
||||
},
|
||||
{
|
||||
"path": "../parser"
|
||||
}
|
||||
],
|
||||
"exclude": [
|
||||
"**/*.test.ts"
|
||||
],
|
||||
"references": [
|
||||
{ "path": "../base" },
|
||||
{ "path": "../encoding" },
|
||||
{ "path": "../data" },
|
||||
{ "path": "../buffer" },
|
||||
{ "path": "../parser" }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,24 +1,43 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["../base/*"],
|
||||
"common/encoding/*": ["../encoding/*"],
|
||||
"common/data/*": ["../data/*"],
|
||||
"common/buffer/*": ["../buffer/*"],
|
||||
"common/parser/*": ["./*"],
|
||||
"common/input/*": ["../input/*"],
|
||||
"common/services/*": ["../services/*"],
|
||||
"common/terminal/*": ["../terminal/*"],
|
||||
"common/public/*": ["../public/*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/parser",
|
||||
"rootDir": "."
|
||||
},
|
||||
"include": [
|
||||
"./**/*"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "../base"
|
||||
},
|
||||
{
|
||||
"path": "../buffer"
|
||||
}
|
||||
],
|
||||
"exclude": [
|
||||
"**/*.test.ts"
|
||||
],
|
||||
"references": [
|
||||
{ "path": "../base" },
|
||||
{ "path": "../encoding" },
|
||||
{ "path": "../data" },
|
||||
{ "path": "../buffer" }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,9 +1,30 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["../base/*"],
|
||||
"common/encoding/*": ["../encoding/*"],
|
||||
"common/data/*": ["../data/*"],
|
||||
"common/buffer/*": ["../buffer/*"],
|
||||
"common/parser/*": ["../parser/*"],
|
||||
"common/input/*": ["../input/*"],
|
||||
"common/services/*": ["../services/*"],
|
||||
"common/terminal/*": ["../terminal/*"],
|
||||
"common/public/*": ["./*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/public",
|
||||
"rootDir": "."
|
||||
},
|
||||
@@ -11,24 +32,17 @@
|
||||
"./**/*",
|
||||
"../../../typings/xterm.d.ts"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "../base"
|
||||
},
|
||||
{
|
||||
"path": "../buffer"
|
||||
},
|
||||
{
|
||||
"path": "../parser"
|
||||
},
|
||||
{
|
||||
"path": "../services"
|
||||
},
|
||||
{
|
||||
"path": "../terminal"
|
||||
}
|
||||
],
|
||||
"exclude": [
|
||||
"**/*.test.ts"
|
||||
],
|
||||
"references": [
|
||||
{ "path": "../base" },
|
||||
{ "path": "../encoding" },
|
||||
{ "path": "../data" },
|
||||
{ "path": "../buffer" },
|
||||
{ "path": "../parser" },
|
||||
{ "path": "../input" },
|
||||
{ "path": "../services" },
|
||||
{ "path": "../terminal" }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,9 +1,30 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["../base/*"],
|
||||
"common/encoding/*": ["../encoding/*"],
|
||||
"common/data/*": ["../data/*"],
|
||||
"common/buffer/*": ["../buffer/*"],
|
||||
"common/parser/*": ["../parser/*"],
|
||||
"common/input/*": ["../input/*"],
|
||||
"common/services/*": ["./*"],
|
||||
"common/terminal/*": ["../terminal/*"],
|
||||
"common/public/*": ["../public/*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/services",
|
||||
"rootDir": "."
|
||||
},
|
||||
@@ -11,27 +32,15 @@
|
||||
"./**/*",
|
||||
"../../../typings/xterm.d.ts"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "../base"
|
||||
},
|
||||
{
|
||||
"path": "../encoding"
|
||||
},
|
||||
{
|
||||
"path": "../data"
|
||||
},
|
||||
{
|
||||
"path": "../buffer"
|
||||
},
|
||||
{
|
||||
"path": "../parser"
|
||||
},
|
||||
{
|
||||
"path": "../input"
|
||||
}
|
||||
],
|
||||
"exclude": [
|
||||
"**/*.test.ts"
|
||||
],
|
||||
"references": [
|
||||
{ "path": "../base" },
|
||||
{ "path": "../encoding" },
|
||||
{ "path": "../data" },
|
||||
{ "path": "../buffer" },
|
||||
{ "path": "../parser" },
|
||||
{ "path": "../input" }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,9 +1,30 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../tsconfig-library-base",
|
||||
"../tsconfig.compiler.json"
|
||||
],
|
||||
"extends": "../../tsconfig-library-base",
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["../base/*"],
|
||||
"common/encoding/*": ["../encoding/*"],
|
||||
"common/data/*": ["../data/*"],
|
||||
"common/buffer/*": ["../buffer/*"],
|
||||
"common/parser/*": ["../parser/*"],
|
||||
"common/input/*": ["../input/*"],
|
||||
"common/services/*": ["../services/*"],
|
||||
"common/terminal/*": ["./*"],
|
||||
"common/public/*": ["../public/*"],
|
||||
"common/*": ["../*"],
|
||||
"*": ["../../*"]
|
||||
},
|
||||
"outDir": "../../../out/common/terminal",
|
||||
"rootDir": "."
|
||||
},
|
||||
@@ -11,30 +32,16 @@
|
||||
"./**/*",
|
||||
"../../../typings/xterm.d.ts"
|
||||
],
|
||||
"references": [
|
||||
{
|
||||
"path": "../base"
|
||||
},
|
||||
{
|
||||
"path": "../encoding"
|
||||
},
|
||||
{
|
||||
"path": "../data"
|
||||
},
|
||||
{
|
||||
"path": "../buffer"
|
||||
},
|
||||
{
|
||||
"path": "../parser"
|
||||
},
|
||||
{
|
||||
"path": "../input"
|
||||
},
|
||||
{
|
||||
"path": "../services"
|
||||
}
|
||||
],
|
||||
"exclude": [
|
||||
"**/*.test.ts"
|
||||
],
|
||||
"references": [
|
||||
{ "path": "../base" },
|
||||
{ "path": "../encoding" },
|
||||
{ "path": "../data" },
|
||||
{ "path": "../buffer" },
|
||||
{ "path": "../parser" },
|
||||
{ "path": "../input" },
|
||||
{ "path": "../services" }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"es2015",
|
||||
"es2016.Array.Include",
|
||||
"es2019.string",
|
||||
"es2021.weakref",
|
||||
"dom"
|
||||
],
|
||||
"types": [
|
||||
"../../node_modules/@types/mocha"
|
||||
],
|
||||
"paths": {
|
||||
"@xterm/xterm": ["../../typings/xterm.d.ts"],
|
||||
"common/base/*": ["./base/*"],
|
||||
"common/encoding/*": ["./encoding/*"],
|
||||
"common/data/*": ["./data/*"],
|
||||
"common/buffer/*": ["./buffer/*"],
|
||||
"common/parser/*": ["./parser/*"],
|
||||
"common/input/*": ["./input/*"],
|
||||
"common/services/*": ["./services/*"],
|
||||
"common/terminal/*": ["./terminal/*"],
|
||||
"common/public/*": ["./public/*"],
|
||||
"common/*": ["./*"],
|
||||
"*": ["../*"]
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user