diff --git a/AGENTS.md b/AGENTS.md
index 1f0822af9..81eab37fb 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -3,8 +3,8 @@
## Architecture Overview
**Core Structure**: xterm.js is a multi-target terminal emulator with these main source areas:
-- `src/common/primitives/`: Building blocks (buffer, parser, input, data, utilities); TypeScript project `src/common/primitives/tsconfig.json`
-- `src/common/runtime/`: Services, `CoreTerminal`, `InputHandler`, public API adapters; TypeScript project `src/common/runtime/tsconfig.json`
+- `src/primitives/`: Building blocks (buffer, parser, input, data, utilities); TypeScript project `src/primitives/tsconfig.json`
+- `src/runtime/`: Services, `CoreTerminal`, `InputHandler`, public API adapters; TypeScript project `src/runtime/tsconfig.json`
- `src/target-browser/`: Browser terminal with DOM rendering
- `src/target-headless/`: Node terminal without DOM
diff --git a/addons/addon-attach/test/tsconfig.json b/addons/addon-attach/test/tsconfig.json
index 021c7e67e..ce70f71b4 100644
--- a/addons/addon-attach/test/tsconfig.json
+++ b/addons/addon-attach/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-clipboard/test/tsconfig.json b/addons/addon-clipboard/test/tsconfig.json
index 021c7e67e..ce70f71b4 100644
--- a/addons/addon-clipboard/test/tsconfig.json
+++ b/addons/addon-clipboard/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-fit/test/tsconfig.json b/addons/addon-fit/test/tsconfig.json
index 021c7e67e..ce70f71b4 100644
--- a/addons/addon-fit/test/tsconfig.json
+++ b/addons/addon-fit/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-image/src/tsconfig.json b/addons/addon-image/src/tsconfig.json
index a2c37b0d1..e3151ec07 100644
--- a/addons/addon-image/src/tsconfig.json
+++ b/addons/addon-image/src/tsconfig.json
@@ -14,9 +14,8 @@
"paths": {
"target-browser/*": [ "../../../src/target-browser/*" ],
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"@xterm/addon-image": [ "../typings/addon-image.d.ts" ],
"*": [ "./*" ]
@@ -28,6 +27,6 @@
],
"references": [
{ "path": "../../../src/target-browser" },
- { "path": "../../../src/common" }
+ { "path": "../../../src" }
]
}
diff --git a/addons/addon-image/test/tsconfig.json b/addons/addon-image/test/tsconfig.json
index 021c7e67e..ce70f71b4 100644
--- a/addons/addon-image/test/tsconfig.json
+++ b/addons/addon-image/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-image/webpack.config.js b/addons/addon-image/webpack.config.js
index 729c1888b..6b25cb585 100644
--- a/addons/addon-image/webpack.config.js
+++ b/addons/addon-image/webpack.config.js
@@ -25,7 +25,10 @@ const addon = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('../../out/common'),
+ common: [
+ path.resolve('../../out/runtime'),
+ path.resolve('../../out/primitives'),
+ ],
browser: path.resolve('../../out/target-browser'),
vs: path.resolve('../../out/vs')
}
diff --git a/addons/addon-progress/src/tsconfig.json b/addons/addon-progress/src/tsconfig.json
index f40480334..4852631ff 100644
--- a/addons/addon-progress/src/tsconfig.json
+++ b/addons/addon-progress/src/tsconfig.json
@@ -16,9 +16,8 @@
],
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -37,7 +36,7 @@
"path": "../../../src/target-browser"
},
{
- "path": "../../../src/common"
+ "path": "../../../src"
}
]
}
diff --git a/addons/addon-progress/test/tsconfig.json b/addons/addon-progress/test/tsconfig.json
index 021c7e67e..ce70f71b4 100644
--- a/addons/addon-progress/test/tsconfig.json
+++ b/addons/addon-progress/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-progress/webpack.config.js b/addons/addon-progress/webpack.config.js
index 344bbf5d9..312b77e02 100644
--- a/addons/addon-progress/webpack.config.js
+++ b/addons/addon-progress/webpack.config.js
@@ -25,7 +25,10 @@ module.exports = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('../../out/common'),
+ common: [
+ path.resolve('../../out/runtime'),
+ path.resolve('../../out/primitives'),
+ ],
browser: path.resolve('../../out/target-browser'),
vs: path.resolve('../../out/vs')
}
diff --git a/addons/addon-search/src/tsconfig.json b/addons/addon-search/src/tsconfig.json
index 89ace297c..a2e9cada4 100644
--- a/addons/addon-search/src/tsconfig.json
+++ b/addons/addon-search/src/tsconfig.json
@@ -16,9 +16,8 @@
],
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -34,7 +33,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-search/test/tsconfig.json b/addons/addon-search/test/tsconfig.json
index 021c7e67e..ce70f71b4 100644
--- a/addons/addon-search/test/tsconfig.json
+++ b/addons/addon-search/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-search/webpack.config.js b/addons/addon-search/webpack.config.js
index adc3d4bdb..0039d31db 100644
--- a/addons/addon-search/webpack.config.js
+++ b/addons/addon-search/webpack.config.js
@@ -25,7 +25,10 @@ module.exports = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('../../out/common'),
+ common: [
+ path.resolve('../../out/runtime'),
+ path.resolve('../../out/primitives'),
+ ],
vs: path.resolve('../../out/vs')
}
},
diff --git a/addons/addon-serialize/benchmark/tsconfig.json b/addons/addon-serialize/benchmark/tsconfig.json
index 9b37492e2..657bee6a3 100644
--- a/addons/addon-serialize/benchmark/tsconfig.json
+++ b/addons/addon-serialize/benchmark/tsconfig.json
@@ -13,9 +13,8 @@
"module": "nodenext",
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": ["../../../src/target-browser/*"],
"SerializeAddon": ["../src/SerializeAddon"],
@@ -27,7 +26,7 @@
"include": ["../**/*", "../../../typings/xterm.d.ts"],
"exclude": ["../../../**/*test.ts", "../../**/*api.ts"],
"references": [
- { "path": "../../../src/common" },
+ { "path": "../../../src" },
{ "path": "../../../src/target-browser" }
]
}
diff --git a/addons/addon-serialize/src/tsconfig.json b/addons/addon-serialize/src/tsconfig.json
index 77a63ea94..b0b46fd0e 100644
--- a/addons/addon-serialize/src/tsconfig.json
+++ b/addons/addon-serialize/src/tsconfig.json
@@ -12,9 +12,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -35,7 +34,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-serialize/test/tsconfig.json b/addons/addon-serialize/test/tsconfig.json
index 00fbe13e0..14cf813a3 100644
--- a/addons/addon-serialize/test/tsconfig.json
+++ b/addons/addon-serialize/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -30,7 +29,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-serialize/webpack.config.js b/addons/addon-serialize/webpack.config.js
index ac8fb10c9..377ac33a1 100644
--- a/addons/addon-serialize/webpack.config.js
+++ b/addons/addon-serialize/webpack.config.js
@@ -25,7 +25,10 @@ module.exports = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('../../out/common'),
+ common: [
+ path.resolve('../../out/runtime'),
+ path.resolve('../../out/primitives'),
+ ],
browser: path.resolve('../../out/target-browser')
}
},
diff --git a/addons/addon-unicode-graphemes/benchmark/tsconfig.json b/addons/addon-unicode-graphemes/benchmark/tsconfig.json
index 17f8b98e2..86353bcad 100644
--- a/addons/addon-unicode-graphemes/benchmark/tsconfig.json
+++ b/addons/addon-unicode-graphemes/benchmark/tsconfig.json
@@ -10,9 +10,8 @@
"module": "nodenext",
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": ["../../../src/target-browser/*"],
"UnicodeGraphemeProvider": ["../src/UnicodeGraphemeProvider"],
@@ -24,7 +23,7 @@
"include": ["../**/*", "../../../typings/xterm.d.ts"],
"exclude": ["../../../**/*test.ts", "../../**/*api.ts"],
"references": [
- { "path": "../../../src/common" },
+ { "path": "../../../src" },
{ "path": "../../../src/target-browser" }
]
}
diff --git a/addons/addon-unicode-graphemes/src/tsconfig.json b/addons/addon-unicode-graphemes/src/tsconfig.json
index cb33432d8..5c3010bee 100644
--- a/addons/addon-unicode-graphemes/src/tsconfig.json
+++ b/addons/addon-unicode-graphemes/src/tsconfig.json
@@ -13,9 +13,8 @@
"strict": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"@xterm/addon-unicode-graphemes": [
"../typings/addon-unicode-graphemes.d.ts"
@@ -31,7 +30,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
}
]
}
diff --git a/addons/addon-unicode-graphemes/test/tsconfig.json b/addons/addon-unicode-graphemes/test/tsconfig.json
index 00fbe13e0..14cf813a3 100644
--- a/addons/addon-unicode-graphemes/test/tsconfig.json
+++ b/addons/addon-unicode-graphemes/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -30,7 +29,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-unicode-graphemes/webpack.config.js b/addons/addon-unicode-graphemes/webpack.config.js
index 35e111d53..1836b4cb1 100644
--- a/addons/addon-unicode-graphemes/webpack.config.js
+++ b/addons/addon-unicode-graphemes/webpack.config.js
@@ -25,7 +25,10 @@ module.exports = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('../../out/common'),
+ common: [
+ path.resolve('../../out/runtime'),
+ path.resolve('../../out/primitives'),
+ ],
vs: path.resolve('../../out/vs')
}
},
diff --git a/addons/addon-unicode11/src/tsconfig.json b/addons/addon-unicode11/src/tsconfig.json
index 1b105d364..2130dea9c 100644
--- a/addons/addon-unicode11/src/tsconfig.json
+++ b/addons/addon-unicode11/src/tsconfig.json
@@ -13,9 +13,8 @@
"strict": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"@xterm/addon-unicode11": [
"../typings/addon-unicode11.d.ts"
@@ -34,7 +33,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
}
]
}
diff --git a/addons/addon-unicode11/test/tsconfig.json b/addons/addon-unicode11/test/tsconfig.json
index 021c7e67e..ce70f71b4 100644
--- a/addons/addon-unicode11/test/tsconfig.json
+++ b/addons/addon-unicode11/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-unicode11/webpack.config.js b/addons/addon-unicode11/webpack.config.js
index 9b66049fd..148d8186f 100644
--- a/addons/addon-unicode11/webpack.config.js
+++ b/addons/addon-unicode11/webpack.config.js
@@ -25,7 +25,10 @@ module.exports = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('../../out/common'),
+ common: [
+ path.resolve('../../out/runtime'),
+ path.resolve('../../out/primitives'),
+ ],
vs: path.resolve('../../out/vs')
}
},
diff --git a/addons/addon-web-fonts/test/tsconfig.json b/addons/addon-web-fonts/test/tsconfig.json
index fe3807221..66e97e124 100644
--- a/addons/addon-web-fonts/test/tsconfig.json
+++ b/addons/addon-web-fonts/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-web-links/test/tsconfig.json b/addons/addon-web-links/test/tsconfig.json
index fe3807221..66e97e124 100644
--- a/addons/addon-web-links/test/tsconfig.json
+++ b/addons/addon-web-links/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -33,7 +32,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-webgl/src/tsconfig.json b/addons/addon-webgl/src/tsconfig.json
index bba6db680..64d65b69f 100644
--- a/addons/addon-webgl/src/tsconfig.json
+++ b/addons/addon-webgl/src/tsconfig.json
@@ -12,9 +12,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -38,7 +37,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-webgl/test/tsconfig.json b/addons/addon-webgl/test/tsconfig.json
index 1f93c82a0..93749f2ae 100644
--- a/addons/addon-webgl/test/tsconfig.json
+++ b/addons/addon-webgl/test/tsconfig.json
@@ -11,9 +11,8 @@
"removeComments": true,
"paths": {
"common/*": [
- "../../../src/common/primitives/*",
- "../../../src/common/runtime/*",
- "../../../src/common/*"
+ "../../../src/primitives/*",
+ "../../../src/runtime/*",
],
"target-browser/*": [
"../../../src/target-browser/*"
@@ -34,7 +33,7 @@
],
"references": [
{
- "path": "../../../src/common"
+ "path": "../../../src"
},
{
"path": "../../../src/target-browser"
diff --git a/addons/addon-webgl/webpack.config.js b/addons/addon-webgl/webpack.config.js
index 387bf4993..24550f1ce 100644
--- a/addons/addon-webgl/webpack.config.js
+++ b/addons/addon-webgl/webpack.config.js
@@ -25,7 +25,10 @@ module.exports = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('../../out/common'),
+ common: [
+ path.resolve('../../out/runtime'),
+ path.resolve('../../out/primitives'),
+ ],
browser: path.resolve('../../out/target-browser'),
vs: path.resolve('../../out/vs')
}
diff --git a/bin/esbuild.mjs b/bin/esbuild.mjs
index 23d55fee8..6aaca0f79 100644
--- a/bin/esbuild.mjs
+++ b/bin/esbuild.mjs
@@ -192,14 +192,14 @@ if (config.addon) {
outBuilds = [
{
...outConfig,
- entryPoints: ['src/common/primitives/**/*.ts'],
- outbase: 'src/common/primitives',
+ entryPoints: ['src/primitives/**/*.ts'],
+ outbase: 'src/primitives',
outdir: 'out-esbuild/common',
},
{
...outConfig,
- entryPoints: ['src/common/runtime/**/*.ts'],
- outbase: 'src/common/runtime',
+ entryPoints: ['src/runtime/**/*.ts'],
+ outbase: 'src/runtime',
outdir: 'out-esbuild/common',
},
{
diff --git a/bin/publish.js b/bin/publish.js
index 8e6d5fc18..39cdd0a31 100644
--- a/bin/publish.js
+++ b/bin/publish.js
@@ -81,7 +81,7 @@ function checkAndPublishPackage(packageDir, repoCommit, peerDependencies, update
// Update Version.ts with the new version
if (updateVersionTs) {
- const versionTsPath = path.join(packageDir, 'src/common/primitives/Version.ts');
+ const versionTsPath = path.join(packageDir, 'src/primitives/Version.ts');
const versionTsContent = fs.readFileSync(versionTsPath, 'utf8');
const updatedVersionTs = versionTsContent.replace(
/export const XTERM_VERSION = '[^']+';/,
diff --git a/src/ARCHITECTURE.md b/src/ARCHITECTURE.md
index 9b5d68ea7..2d97eb356 100644
--- a/src/ARCHITECTURE.md
+++ b/src/ARCHITECTURE.md
@@ -6,8 +6,8 @@ This document describes how `src/` is organized. The layout follows [issue #5963
```mermaid
flowchart BT
- primitives["common/primitives
building blocks"]
- runtime["common/runtime
services, integration"]
+ primitives["primitives
building blocks"]
+ runtime["runtime
services, integration"]
targetBrowser["target-browser
DOM terminal"]
targetHeadless["target-headless
Node terminal"]
@@ -20,15 +20,15 @@ flowchart BT
| Project | `tsconfig` | Output | Role |
| --- | --- | --- | --- |
-| Primitives | `src/common/primitives/tsconfig.json` | `out/common/primitives/` | Buffer, parser, input helpers, static data, shared utilities. Must not import from `runtime/`. |
-| Runtime | `src/common/runtime/tsconfig.json` | `out/common/runtime/` | Services (DI), `CoreTerminal`, `InputHandler`, public API adapters, `Types.ts`. References primitives. |
-| Common (solution) | `src/common/tsconfig.json` | — | Solution root; references primitives + runtime only. |
-| Target browser | `src/target-browser/tsconfig.json` | `out/target-browser/` | Browser rendering, input, public `Terminal`. References common. |
-| Target headless | `src/target-headless/tsconfig.json` | `out/target-headless/` | Headless terminal. References common. |
+| Primitives | `src/primitives/tsconfig.json` | `out/primitives/` | Buffer, parser, input helpers, static data, shared utilities. Must not import from `runtime/`. |
+| Runtime | `src/runtime/tsconfig.json` | `out/runtime/` | Services (DI), `CoreTerminal`, `InputHandler`, public API adapters, `Types.ts`. References primitives. |
+| Source (solution) | `src/tsconfig.json` | — | Solution root; references primitives + runtime only. |
+| Target browser | `src/target-browser/tsconfig.json` | `out/target-browser/` | Browser rendering, input, public `Terminal`. References `src/`. |
+| Target headless | `src/target-headless/tsconfig.json` | `out/target-headless/` | Headless terminal. References `src/`. |
Unit test files (`**/*.test.ts`) are excluded from composite library builds; they are compiled via esbuild for `npm run test-unit`.
-## `common/primitives/`
+## `primitives/`
| Area | Contents |
| --- | --- |
@@ -40,7 +40,7 @@ Unit test files (`**/*.test.ts`) are excluded from composite library builds; the
Primitives depend only on other primitives (and `@xterm/xterm` typings where needed). Buffer code uses `IBufferService` from `common/buffer/BufferService`, not `common/services/Services`.
-## `common/runtime/`
+## `runtime/`
| Area | Contents |
| --- | --- |
@@ -52,12 +52,12 @@ Primitives depend only on other primitives (and `@xterm/xterm` typings where nee
## Import paths
-Source keeps the `common/...` prefix. Each project's `paths` in `tsconfig.json` map that prefix to the correct layer (primitives first, then runtime, for targets).
+Source keeps the `common/...` prefix (logical module name, not a physical `common/` folder). Each project's `paths` in `tsconfig.json` map that prefix to `primitives/` and/or `runtime/`.
Platform code uses:
-- `target-browser/...` — was `browser/...`
-- `target-headless/...` — was `headless/...`
+- `target-browser/...` — browser terminal
+- `target-headless/...` — Node terminal
## Published packages vs source folders
diff --git a/src/common/primitives/Async.ts b/src/primitives/Async.ts
similarity index 100%
rename from src/common/primitives/Async.ts
rename to src/primitives/Async.ts
diff --git a/src/common/primitives/CircularList.test.ts b/src/primitives/CircularList.test.ts
similarity index 100%
rename from src/common/primitives/CircularList.test.ts
rename to src/primitives/CircularList.test.ts
diff --git a/src/common/primitives/CircularList.ts b/src/primitives/CircularList.ts
similarity index 100%
rename from src/common/primitives/CircularList.ts
rename to src/primitives/CircularList.ts
diff --git a/src/common/primitives/Color.test.ts b/src/primitives/Color.test.ts
similarity index 100%
rename from src/common/primitives/Color.test.ts
rename to src/primitives/Color.test.ts
diff --git a/src/common/primitives/Color.ts b/src/primitives/Color.ts
similarity index 100%
rename from src/common/primitives/Color.ts
rename to src/primitives/Color.ts
diff --git a/src/common/primitives/ColorTypes.ts b/src/primitives/ColorTypes.ts
similarity index 100%
rename from src/common/primitives/ColorTypes.ts
rename to src/primitives/ColorTypes.ts
diff --git a/src/common/primitives/Event.test.ts b/src/primitives/Event.test.ts
similarity index 100%
rename from src/common/primitives/Event.test.ts
rename to src/primitives/Event.test.ts
diff --git a/src/common/primitives/Event.ts b/src/primitives/Event.ts
similarity index 100%
rename from src/common/primitives/Event.ts
rename to src/primitives/Event.ts
diff --git a/src/common/primitives/KeyboardTypes.ts b/src/primitives/KeyboardTypes.ts
similarity index 100%
rename from src/common/primitives/KeyboardTypes.ts
rename to src/primitives/KeyboardTypes.ts
diff --git a/src/common/primitives/Lifecycle.ts b/src/primitives/Lifecycle.ts
similarity index 100%
rename from src/common/primitives/Lifecycle.ts
rename to src/primitives/Lifecycle.ts
diff --git a/src/common/primitives/MultiKeyMap.test.ts b/src/primitives/MultiKeyMap.test.ts
similarity index 100%
rename from src/common/primitives/MultiKeyMap.test.ts
rename to src/primitives/MultiKeyMap.test.ts
diff --git a/src/common/primitives/MultiKeyMap.ts b/src/primitives/MultiKeyMap.ts
similarity index 100%
rename from src/common/primitives/MultiKeyMap.ts
rename to src/primitives/MultiKeyMap.ts
diff --git a/src/common/primitives/Platform.ts b/src/primitives/Platform.ts
similarity index 100%
rename from src/common/primitives/Platform.ts
rename to src/primitives/Platform.ts
diff --git a/src/common/primitives/SortedList.test.ts b/src/primitives/SortedList.test.ts
similarity index 100%
rename from src/common/primitives/SortedList.test.ts
rename to src/primitives/SortedList.test.ts
diff --git a/src/common/primitives/SortedList.ts b/src/primitives/SortedList.ts
similarity index 100%
rename from src/common/primitives/SortedList.ts
rename to src/primitives/SortedList.ts
diff --git a/src/common/primitives/StringBuilder.test.ts b/src/primitives/StringBuilder.test.ts
similarity index 100%
rename from src/common/primitives/StringBuilder.test.ts
rename to src/primitives/StringBuilder.test.ts
diff --git a/src/common/primitives/StringBuilder.ts b/src/primitives/StringBuilder.ts
similarity index 100%
rename from src/common/primitives/StringBuilder.ts
rename to src/primitives/StringBuilder.ts
diff --git a/src/common/primitives/TaskQueue.ts b/src/primitives/TaskQueue.ts
similarity index 100%
rename from src/common/primitives/TaskQueue.ts
rename to src/primitives/TaskQueue.ts
diff --git a/src/common/primitives/TerminalOptions.ts b/src/primitives/TerminalOptions.ts
similarity index 100%
rename from src/common/primitives/TerminalOptions.ts
rename to src/primitives/TerminalOptions.ts
diff --git a/src/common/primitives/Version.ts b/src/primitives/Version.ts
similarity index 100%
rename from src/common/primitives/Version.ts
rename to src/primitives/Version.ts
diff --git a/src/common/primitives/buffer/AttributeData.ts b/src/primitives/buffer/AttributeData.ts
similarity index 100%
rename from src/common/primitives/buffer/AttributeData.ts
rename to src/primitives/buffer/AttributeData.ts
diff --git a/src/common/primitives/buffer/Buffer.test.ts b/src/primitives/buffer/Buffer.test.ts
similarity index 100%
rename from src/common/primitives/buffer/Buffer.test.ts
rename to src/primitives/buffer/Buffer.test.ts
diff --git a/src/common/primitives/buffer/Buffer.ts b/src/primitives/buffer/Buffer.ts
similarity index 100%
rename from src/common/primitives/buffer/Buffer.ts
rename to src/primitives/buffer/Buffer.ts
diff --git a/src/common/primitives/buffer/BufferLine.test.ts b/src/primitives/buffer/BufferLine.test.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferLine.test.ts
rename to src/primitives/buffer/BufferLine.test.ts
diff --git a/src/common/primitives/buffer/BufferLine.ts b/src/primitives/buffer/BufferLine.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferLine.ts
rename to src/primitives/buffer/BufferLine.ts
diff --git a/src/common/primitives/buffer/BufferLineStringCache.ts b/src/primitives/buffer/BufferLineStringCache.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferLineStringCache.ts
rename to src/primitives/buffer/BufferLineStringCache.ts
diff --git a/src/common/primitives/buffer/BufferLog.ts b/src/primitives/buffer/BufferLog.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferLog.ts
rename to src/primitives/buffer/BufferLog.ts
diff --git a/src/common/primitives/buffer/BufferOptions.ts b/src/primitives/buffer/BufferOptions.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferOptions.ts
rename to src/primitives/buffer/BufferOptions.ts
diff --git a/src/common/primitives/buffer/BufferRange.test.ts b/src/primitives/buffer/BufferRange.test.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferRange.test.ts
rename to src/primitives/buffer/BufferRange.test.ts
diff --git a/src/common/primitives/buffer/BufferRange.ts b/src/primitives/buffer/BufferRange.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferRange.ts
rename to src/primitives/buffer/BufferRange.ts
diff --git a/src/common/primitives/buffer/BufferReflow.test.ts b/src/primitives/buffer/BufferReflow.test.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferReflow.test.ts
rename to src/primitives/buffer/BufferReflow.test.ts
diff --git a/src/common/primitives/buffer/BufferReflow.ts b/src/primitives/buffer/BufferReflow.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferReflow.ts
rename to src/primitives/buffer/BufferReflow.ts
diff --git a/src/common/primitives/buffer/BufferService.ts b/src/primitives/buffer/BufferService.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferService.ts
rename to src/primitives/buffer/BufferService.ts
diff --git a/src/common/primitives/buffer/BufferSet.test.ts b/src/primitives/buffer/BufferSet.test.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferSet.test.ts
rename to src/primitives/buffer/BufferSet.test.ts
diff --git a/src/common/primitives/buffer/BufferSet.ts b/src/primitives/buffer/BufferSet.ts
similarity index 100%
rename from src/common/primitives/buffer/BufferSet.ts
rename to src/primitives/buffer/BufferSet.ts
diff --git a/src/common/primitives/buffer/CellData.test.ts b/src/primitives/buffer/CellData.test.ts
similarity index 100%
rename from src/common/primitives/buffer/CellData.test.ts
rename to src/primitives/buffer/CellData.test.ts
diff --git a/src/common/primitives/buffer/CellData.ts b/src/primitives/buffer/CellData.ts
similarity index 100%
rename from src/common/primitives/buffer/CellData.ts
rename to src/primitives/buffer/CellData.ts
diff --git a/src/common/primitives/buffer/CellTypes.ts b/src/primitives/buffer/CellTypes.ts
similarity index 100%
rename from src/common/primitives/buffer/CellTypes.ts
rename to src/primitives/buffer/CellTypes.ts
diff --git a/src/common/primitives/buffer/Constants.ts b/src/primitives/buffer/Constants.ts
similarity index 100%
rename from src/common/primitives/buffer/Constants.ts
rename to src/primitives/buffer/Constants.ts
diff --git a/src/common/primitives/buffer/Marker.ts b/src/primitives/buffer/Marker.ts
similarity index 100%
rename from src/common/primitives/buffer/Marker.ts
rename to src/primitives/buffer/Marker.ts
diff --git a/src/common/primitives/buffer/Types.ts b/src/primitives/buffer/Types.ts
similarity index 100%
rename from src/common/primitives/buffer/Types.ts
rename to src/primitives/buffer/Types.ts
diff --git a/src/common/primitives/data/Charsets.ts b/src/primitives/data/Charsets.ts
similarity index 100%
rename from src/common/primitives/data/Charsets.ts
rename to src/primitives/data/Charsets.ts
diff --git a/src/common/primitives/data/EscapeSequences.ts b/src/primitives/data/EscapeSequences.ts
similarity index 100%
rename from src/common/primitives/data/EscapeSequences.ts
rename to src/primitives/data/EscapeSequences.ts
diff --git a/src/common/primitives/input/Keyboard.test.ts b/src/primitives/input/Keyboard.test.ts
similarity index 100%
rename from src/common/primitives/input/Keyboard.test.ts
rename to src/primitives/input/Keyboard.test.ts
diff --git a/src/common/primitives/input/Keyboard.ts b/src/primitives/input/Keyboard.ts
similarity index 100%
rename from src/common/primitives/input/Keyboard.ts
rename to src/primitives/input/Keyboard.ts
diff --git a/src/common/primitives/input/KittyKeyboard.test.ts b/src/primitives/input/KittyKeyboard.test.ts
similarity index 100%
rename from src/common/primitives/input/KittyKeyboard.test.ts
rename to src/primitives/input/KittyKeyboard.test.ts
diff --git a/src/common/primitives/input/KittyKeyboard.ts b/src/primitives/input/KittyKeyboard.ts
similarity index 100%
rename from src/common/primitives/input/KittyKeyboard.ts
rename to src/primitives/input/KittyKeyboard.ts
diff --git a/src/common/primitives/input/TextDecoder.test.ts b/src/primitives/input/TextDecoder.test.ts
similarity index 100%
rename from src/common/primitives/input/TextDecoder.test.ts
rename to src/primitives/input/TextDecoder.test.ts
diff --git a/src/common/primitives/input/TextDecoder.ts b/src/primitives/input/TextDecoder.ts
similarity index 100%
rename from src/common/primitives/input/TextDecoder.ts
rename to src/primitives/input/TextDecoder.ts
diff --git a/src/common/primitives/input/UnicodeProperties.ts b/src/primitives/input/UnicodeProperties.ts
similarity index 100%
rename from src/common/primitives/input/UnicodeProperties.ts
rename to src/primitives/input/UnicodeProperties.ts
diff --git a/src/common/primitives/input/UnicodeTypes.ts b/src/primitives/input/UnicodeTypes.ts
similarity index 100%
rename from src/common/primitives/input/UnicodeTypes.ts
rename to src/primitives/input/UnicodeTypes.ts
diff --git a/src/common/primitives/input/UnicodeV6.test.ts b/src/primitives/input/UnicodeV6.test.ts
similarity index 100%
rename from src/common/primitives/input/UnicodeV6.test.ts
rename to src/primitives/input/UnicodeV6.test.ts
diff --git a/src/common/primitives/input/UnicodeV6.ts b/src/primitives/input/UnicodeV6.ts
similarity index 100%
rename from src/common/primitives/input/UnicodeV6.ts
rename to src/primitives/input/UnicodeV6.ts
diff --git a/src/common/primitives/input/Win32InputMode.test.ts b/src/primitives/input/Win32InputMode.test.ts
similarity index 100%
rename from src/common/primitives/input/Win32InputMode.test.ts
rename to src/primitives/input/Win32InputMode.test.ts
diff --git a/src/common/primitives/input/Win32InputMode.ts b/src/primitives/input/Win32InputMode.ts
similarity index 100%
rename from src/common/primitives/input/Win32InputMode.ts
rename to src/primitives/input/Win32InputMode.ts
diff --git a/src/common/primitives/input/WriteBuffer.test.ts b/src/primitives/input/WriteBuffer.test.ts
similarity index 100%
rename from src/common/primitives/input/WriteBuffer.test.ts
rename to src/primitives/input/WriteBuffer.test.ts
diff --git a/src/common/primitives/input/WriteBuffer.ts b/src/primitives/input/WriteBuffer.ts
similarity index 100%
rename from src/common/primitives/input/WriteBuffer.ts
rename to src/primitives/input/WriteBuffer.ts
diff --git a/src/common/primitives/input/XParseColor.test.ts b/src/primitives/input/XParseColor.test.ts
similarity index 100%
rename from src/common/primitives/input/XParseColor.test.ts
rename to src/primitives/input/XParseColor.test.ts
diff --git a/src/common/primitives/input/XParseColor.ts b/src/primitives/input/XParseColor.ts
similarity index 100%
rename from src/common/primitives/input/XParseColor.ts
rename to src/primitives/input/XParseColor.ts
diff --git a/src/common/primitives/parser/ApcParser.test.ts b/src/primitives/parser/ApcParser.test.ts
similarity index 100%
rename from src/common/primitives/parser/ApcParser.test.ts
rename to src/primitives/parser/ApcParser.test.ts
diff --git a/src/common/primitives/parser/ApcParser.ts b/src/primitives/parser/ApcParser.ts
similarity index 100%
rename from src/common/primitives/parser/ApcParser.ts
rename to src/primitives/parser/ApcParser.ts
diff --git a/src/common/primitives/parser/Constants.ts b/src/primitives/parser/Constants.ts
similarity index 100%
rename from src/common/primitives/parser/Constants.ts
rename to src/primitives/parser/Constants.ts
diff --git a/src/common/primitives/parser/DcsParser.test.ts b/src/primitives/parser/DcsParser.test.ts
similarity index 100%
rename from src/common/primitives/parser/DcsParser.test.ts
rename to src/primitives/parser/DcsParser.test.ts
diff --git a/src/common/primitives/parser/DcsParser.ts b/src/primitives/parser/DcsParser.ts
similarity index 100%
rename from src/common/primitives/parser/DcsParser.ts
rename to src/primitives/parser/DcsParser.ts
diff --git a/src/common/primitives/parser/EscapeSequenceParser.test.ts b/src/primitives/parser/EscapeSequenceParser.test.ts
similarity index 100%
rename from src/common/primitives/parser/EscapeSequenceParser.test.ts
rename to src/primitives/parser/EscapeSequenceParser.test.ts
diff --git a/src/common/primitives/parser/EscapeSequenceParser.ts b/src/primitives/parser/EscapeSequenceParser.ts
similarity index 100%
rename from src/common/primitives/parser/EscapeSequenceParser.ts
rename to src/primitives/parser/EscapeSequenceParser.ts
diff --git a/src/common/primitives/parser/OscParser.test.ts b/src/primitives/parser/OscParser.test.ts
similarity index 100%
rename from src/common/primitives/parser/OscParser.test.ts
rename to src/primitives/parser/OscParser.test.ts
diff --git a/src/common/primitives/parser/OscParser.ts b/src/primitives/parser/OscParser.ts
similarity index 100%
rename from src/common/primitives/parser/OscParser.ts
rename to src/primitives/parser/OscParser.ts
diff --git a/src/common/primitives/parser/Params.test.ts b/src/primitives/parser/Params.test.ts
similarity index 100%
rename from src/common/primitives/parser/Params.test.ts
rename to src/primitives/parser/Params.test.ts
diff --git a/src/common/primitives/parser/Params.ts b/src/primitives/parser/Params.ts
similarity index 100%
rename from src/common/primitives/parser/Params.ts
rename to src/primitives/parser/Params.ts
diff --git a/src/common/primitives/parser/Types.ts b/src/primitives/parser/Types.ts
similarity index 100%
rename from src/common/primitives/parser/Types.ts
rename to src/primitives/parser/Types.ts
diff --git a/src/common/primitives/tsconfig.json b/src/primitives/tsconfig.json
similarity index 66%
rename from src/common/primitives/tsconfig.json
rename to src/primitives/tsconfig.json
index 6d63d8481..ae900fdc3 100644
--- a/src/common/primitives/tsconfig.json
+++ b/src/primitives/tsconfig.json
@@ -1,5 +1,5 @@
{
- "extends": "../../tsconfig-library-base",
+ "extends": "../tsconfig-library-base",
"compilerOptions": {
"lib": [
"es2015",
@@ -9,23 +9,23 @@
],
"composite": true,
"rootDir": ".",
- "outDir": "../../../out/common/primitives",
+ "outDir": "../../out/primitives",
"types": [
- "../../../node_modules/@types/mocha"
+ "../../node_modules/@types/mocha"
],
"paths": {
- "@xterm/xterm": ["../../../typings/xterm.d.ts"],
+ "@xterm/xterm": ["../../typings/xterm.d.ts"],
"common/buffer/*": ["./buffer/*"],
"common/data/*": ["./data/*"],
"common/input/*": ["./input/*"],
"common/parser/*": ["./parser/*"],
"common/*": ["./*"],
- "*": ["../../*"]
+ "*": ["../*"]
}
},
"include": [
"./**/*",
- "../../../typings/xterm.d.ts"
+ "../../typings/xterm.d.ts"
],
"exclude": [
"**/*.test.ts"
diff --git a/src/common/primitives/tsconfig.spec.json b/src/primitives/tsconfig.spec.json
similarity index 88%
rename from src/common/primitives/tsconfig.spec.json
rename to src/primitives/tsconfig.spec.json
index c75f49ca1..ef774f9c4 100644
--- a/src/common/primitives/tsconfig.spec.json
+++ b/src/primitives/tsconfig.spec.json
@@ -4,7 +4,7 @@
"composite": false,
"noEmit": true,
"paths": {
- "@xterm/xterm": ["../../../typings/xterm.d.ts"],
+ "@xterm/xterm": ["../../typings/xterm.d.ts"],
"common/buffer/*": ["./buffer/*"],
"common/data/*": ["./data/*"],
"common/input/*": ["./input/*"],
@@ -13,7 +13,7 @@
"common/TestUtils.test": ["../runtime/TestUtils.test"],
"common/Types": ["../runtime/Types"],
"common/*": ["./*", "../runtime/*"],
- "*": ["../../*"]
+ "*": ["../*"]
}
},
"include": [
diff --git a/src/common/runtime/CoreTerminal.ts b/src/runtime/CoreTerminal.ts
similarity index 100%
rename from src/common/runtime/CoreTerminal.ts
rename to src/runtime/CoreTerminal.ts
diff --git a/src/common/runtime/InputHandler.test.ts b/src/runtime/InputHandler.test.ts
similarity index 100%
rename from src/common/runtime/InputHandler.test.ts
rename to src/runtime/InputHandler.test.ts
diff --git a/src/common/runtime/InputHandler.ts b/src/runtime/InputHandler.ts
similarity index 100%
rename from src/common/runtime/InputHandler.ts
rename to src/runtime/InputHandler.ts
diff --git a/src/common/runtime/TestUtils.test.ts b/src/runtime/TestUtils.test.ts
similarity index 100%
rename from src/common/runtime/TestUtils.test.ts
rename to src/runtime/TestUtils.test.ts
diff --git a/src/common/runtime/Types.ts b/src/runtime/Types.ts
similarity index 100%
rename from src/common/runtime/Types.ts
rename to src/runtime/Types.ts
diff --git a/src/common/runtime/WindowsMode.ts b/src/runtime/WindowsMode.ts
similarity index 100%
rename from src/common/runtime/WindowsMode.ts
rename to src/runtime/WindowsMode.ts
diff --git a/src/common/runtime/public/AddonManager.test.ts b/src/runtime/public/AddonManager.test.ts
similarity index 100%
rename from src/common/runtime/public/AddonManager.test.ts
rename to src/runtime/public/AddonManager.test.ts
diff --git a/src/common/runtime/public/AddonManager.ts b/src/runtime/public/AddonManager.ts
similarity index 100%
rename from src/common/runtime/public/AddonManager.ts
rename to src/runtime/public/AddonManager.ts
diff --git a/src/common/runtime/public/BufferApiView.ts b/src/runtime/public/BufferApiView.ts
similarity index 100%
rename from src/common/runtime/public/BufferApiView.ts
rename to src/runtime/public/BufferApiView.ts
diff --git a/src/common/runtime/public/BufferLineApiView.ts b/src/runtime/public/BufferLineApiView.ts
similarity index 100%
rename from src/common/runtime/public/BufferLineApiView.ts
rename to src/runtime/public/BufferLineApiView.ts
diff --git a/src/common/runtime/public/BufferNamespaceApi.ts b/src/runtime/public/BufferNamespaceApi.ts
similarity index 100%
rename from src/common/runtime/public/BufferNamespaceApi.ts
rename to src/runtime/public/BufferNamespaceApi.ts
diff --git a/src/common/runtime/public/ParserApi.ts b/src/runtime/public/ParserApi.ts
similarity index 100%
rename from src/common/runtime/public/ParserApi.ts
rename to src/runtime/public/ParserApi.ts
diff --git a/src/common/runtime/public/UnicodeApi.ts b/src/runtime/public/UnicodeApi.ts
similarity index 100%
rename from src/common/runtime/public/UnicodeApi.ts
rename to src/runtime/public/UnicodeApi.ts
diff --git a/src/common/runtime/services/BufferService.ts b/src/runtime/services/BufferService.ts
similarity index 100%
rename from src/common/runtime/services/BufferService.ts
rename to src/runtime/services/BufferService.ts
diff --git a/src/common/runtime/services/CharsetService.ts b/src/runtime/services/CharsetService.ts
similarity index 100%
rename from src/common/runtime/services/CharsetService.ts
rename to src/runtime/services/CharsetService.ts
diff --git a/src/common/runtime/services/CoreService.test.ts b/src/runtime/services/CoreService.test.ts
similarity index 100%
rename from src/common/runtime/services/CoreService.test.ts
rename to src/runtime/services/CoreService.test.ts
diff --git a/src/common/runtime/services/CoreService.ts b/src/runtime/services/CoreService.ts
similarity index 100%
rename from src/common/runtime/services/CoreService.ts
rename to src/runtime/services/CoreService.ts
diff --git a/src/common/runtime/services/DecorationService.test.ts b/src/runtime/services/DecorationService.test.ts
similarity index 100%
rename from src/common/runtime/services/DecorationService.test.ts
rename to src/runtime/services/DecorationService.test.ts
diff --git a/src/common/runtime/services/DecorationService.ts b/src/runtime/services/DecorationService.ts
similarity index 100%
rename from src/common/runtime/services/DecorationService.ts
rename to src/runtime/services/DecorationService.ts
diff --git a/src/common/runtime/services/InstantiationService.ts b/src/runtime/services/InstantiationService.ts
similarity index 100%
rename from src/common/runtime/services/InstantiationService.ts
rename to src/runtime/services/InstantiationService.ts
diff --git a/src/common/runtime/services/LogService.ts b/src/runtime/services/LogService.ts
similarity index 100%
rename from src/common/runtime/services/LogService.ts
rename to src/runtime/services/LogService.ts
diff --git a/src/common/runtime/services/MouseStateService.test.ts b/src/runtime/services/MouseStateService.test.ts
similarity index 100%
rename from src/common/runtime/services/MouseStateService.test.ts
rename to src/runtime/services/MouseStateService.test.ts
diff --git a/src/common/runtime/services/MouseStateService.ts b/src/runtime/services/MouseStateService.ts
similarity index 100%
rename from src/common/runtime/services/MouseStateService.ts
rename to src/runtime/services/MouseStateService.ts
diff --git a/src/common/runtime/services/OptionsService.test.ts b/src/runtime/services/OptionsService.test.ts
similarity index 100%
rename from src/common/runtime/services/OptionsService.test.ts
rename to src/runtime/services/OptionsService.test.ts
diff --git a/src/common/runtime/services/OptionsService.ts b/src/runtime/services/OptionsService.ts
similarity index 100%
rename from src/common/runtime/services/OptionsService.ts
rename to src/runtime/services/OptionsService.ts
diff --git a/src/common/runtime/services/OscLinkService.test.ts b/src/runtime/services/OscLinkService.test.ts
similarity index 100%
rename from src/common/runtime/services/OscLinkService.test.ts
rename to src/runtime/services/OscLinkService.test.ts
diff --git a/src/common/runtime/services/OscLinkService.ts b/src/runtime/services/OscLinkService.ts
similarity index 100%
rename from src/common/runtime/services/OscLinkService.ts
rename to src/runtime/services/OscLinkService.ts
diff --git a/src/common/runtime/services/ServiceRegistry.ts b/src/runtime/services/ServiceRegistry.ts
similarity index 100%
rename from src/common/runtime/services/ServiceRegistry.ts
rename to src/runtime/services/ServiceRegistry.ts
diff --git a/src/common/runtime/services/Services.ts b/src/runtime/services/Services.ts
similarity index 100%
rename from src/common/runtime/services/Services.ts
rename to src/runtime/services/Services.ts
diff --git a/src/common/runtime/services/UnicodeService.test.ts b/src/runtime/services/UnicodeService.test.ts
similarity index 100%
rename from src/common/runtime/services/UnicodeService.test.ts
rename to src/runtime/services/UnicodeService.test.ts
diff --git a/src/common/runtime/services/UnicodeService.ts b/src/runtime/services/UnicodeService.ts
similarity index 100%
rename from src/common/runtime/services/UnicodeService.ts
rename to src/runtime/services/UnicodeService.ts
diff --git a/src/common/runtime/tsconfig.json b/src/runtime/tsconfig.json
similarity index 74%
rename from src/common/runtime/tsconfig.json
rename to src/runtime/tsconfig.json
index a9886139b..79bdac171 100644
--- a/src/common/runtime/tsconfig.json
+++ b/src/runtime/tsconfig.json
@@ -1,5 +1,5 @@
{
- "extends": "../../tsconfig-library-base",
+ "extends": "../tsconfig-library-base",
"compilerOptions": {
"lib": [
"es2015",
@@ -9,12 +9,12 @@
],
"composite": true,
"rootDir": ".",
- "outDir": "../../../out/common/runtime",
+ "outDir": "../../out/runtime",
"types": [
- "../../../node_modules/@types/mocha"
+ "../../node_modules/@types/mocha"
],
"paths": {
- "@xterm/xterm": ["../../../typings/xterm.d.ts"],
+ "@xterm/xterm": ["../../typings/xterm.d.ts"],
"common/buffer/*": ["../primitives/buffer/*"],
"common/data/*": ["../primitives/data/*"],
"common/input/*": ["../primitives/input/*"],
@@ -23,12 +23,12 @@
"common/public/*": ["./public/*"],
"common/Types": ["./Types"],
"common/*": ["../primitives/*", "./*"],
- "*": ["../../*"]
+ "*": ["../*"]
}
},
"include": [
"./**/*",
- "../../../typings/xterm.d.ts"
+ "../../typings/xterm.d.ts"
],
"exclude": [
"**/*.test.ts"
diff --git a/src/target-browser/tsconfig.json b/src/target-browser/tsconfig.json
index bee93e1b0..7747751b6 100644
--- a/src/target-browser/tsconfig.json
+++ b/src/target-browser/tsconfig.json
@@ -11,14 +11,14 @@
],
"skipLibCheck": true,
"paths": {
- "common/buffer/*": ["../common/primitives/buffer/*"],
- "common/data/*": ["../common/primitives/data/*"],
- "common/input/*": ["../common/primitives/input/*"],
- "common/parser/*": ["../common/primitives/parser/*"],
- "common/services/*": ["../common/runtime/services/*"],
- "common/public/*": ["../common/runtime/public/*"],
- "common/Types": ["../common/runtime/Types"],
- "common/*": ["../common/primitives/*", "../common/runtime/*"],
+ "common/buffer/*": ["../primitives/buffer/*"],
+ "common/data/*": ["../primitives/data/*"],
+ "common/input/*": ["../primitives/input/*"],
+ "common/parser/*": ["../primitives/parser/*"],
+ "common/services/*": ["../runtime/services/*"],
+ "common/public/*": ["../runtime/public/*"],
+ "common/Types": ["../runtime/Types"],
+ "common/*": ["../primitives/*", "../runtime/*"],
"*": [ "./../*" ]
}
},
@@ -30,6 +30,6 @@
"**/*.test.ts"
],
"references": [
- { "path": "../common" }
+ { "path": ".." }
]
}
diff --git a/src/target-headless/tsconfig.json b/src/target-headless/tsconfig.json
index 4170687d2..8c50dbdfa 100644
--- a/src/target-headless/tsconfig.json
+++ b/src/target-headless/tsconfig.json
@@ -12,14 +12,14 @@
"../../node_modules/@types/node"
],
"paths": {
- "common/buffer/*": ["../common/primitives/buffer/*"],
- "common/data/*": ["../common/primitives/data/*"],
- "common/input/*": ["../common/primitives/input/*"],
- "common/parser/*": ["../common/primitives/parser/*"],
- "common/services/*": ["../common/runtime/services/*"],
- "common/public/*": ["../common/runtime/public/*"],
- "common/Types": ["../common/runtime/Types"],
- "common/*": ["../common/primitives/*", "../common/runtime/*"],
+ "common/buffer/*": ["../primitives/buffer/*"],
+ "common/data/*": ["../primitives/data/*"],
+ "common/input/*": ["../primitives/input/*"],
+ "common/parser/*": ["../primitives/parser/*"],
+ "common/services/*": ["../runtime/services/*"],
+ "common/public/*": ["../runtime/public/*"],
+ "common/Types": ["../runtime/Types"],
+ "common/*": ["../primitives/*", "../runtime/*"],
"*": [ "./../*" ]
}
},
@@ -32,6 +32,6 @@
"**/*.test.ts"
],
"references": [
- { "path": "../common" }
+ { "path": ".." }
]
}
diff --git a/src/common/tsconfig.json b/src/tsconfig.json
similarity index 71%
rename from src/common/tsconfig.json
rename to src/tsconfig.json
index 0915b26bb..f8e6ff447 100644
--- a/src/common/tsconfig.json
+++ b/src/tsconfig.json
@@ -1,5 +1,5 @@
{
- "extends": "../tsconfig-library-base",
+ "extends": "./tsconfig-library-base",
"files": [],
"references": [
{ "path": "./primitives" },
diff --git a/test/benchmark/tsconfig.json b/test/benchmark/tsconfig.json
index f7847d35d..1ead91bc4 100644
--- a/test/benchmark/tsconfig.json
+++ b/test/benchmark/tsconfig.json
@@ -15,9 +15,8 @@
"module": "nodenext",
"paths": {
"common/*": [
- "../../src/common/primitives/*",
- "../../src/common/runtime/*",
- "../../src/common/*"
+ "../../src/primitives/*",
+ "../../src/runtime/*",
],
"target-browser/*": [ "../../src/target-browser/*" ],
"Terminal": ["../../src/Terminal"]
@@ -31,7 +30,7 @@
"../../**/*test.ts"
],
"references": [
- { "path": "../../src/common" },
+ { "path": "../../src" },
{ "path": "../../src/target-browser" },
]
}
diff --git a/test/playwright/tsconfig.json b/test/playwright/tsconfig.json
index ad25338ea..2450e90a1 100644
--- a/test/playwright/tsconfig.json
+++ b/test/playwright/tsconfig.json
@@ -22,9 +22,8 @@
"../../src/target-browser/*"
],
"common/*": [
- "../../src/common/primitives/*",
- "../../src/common/runtime/*",
- "../../src/common/*"
+ "../../src/primitives/*",
+ "../../src/runtime/*",
]
},
"target": "ESNext",
@@ -40,7 +39,7 @@
"path": "../../src/target-browser"
},
{
- "path": "../../src/common"
+ "path": "../../src"
}
]
}
diff --git a/webpack.config.headless.js b/webpack.config.headless.js
index 197be4cdb..cc6ce7ef6 100644
--- a/webpack.config.headless.js
+++ b/webpack.config.headless.js
@@ -30,7 +30,10 @@ const config = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('./out/common'),
+ common: [
+ path.resolve('./out/runtime'),
+ path.resolve('./out/primitives'),
+ ],
headless: path.resolve('./out/target-headless'),
vs: path.resolve('./out/vs')
}
diff --git a/webpack.config.js b/webpack.config.js
index 991ac6fe2..c2893b2a6 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -32,7 +32,10 @@ const config = {
modules: ['./node_modules'],
extensions: [ '.js' ],
alias: {
- common: path.resolve('./out/common'),
+ common: [
+ path.resolve('./out/runtime'),
+ path.resolve('./out/primitives'),
+ ],
browser: path.resolve('./out/target-browser'),
vs: path.resolve('./out/vs'),
}