Move common primitives to src/common/primitives/

Phase 1 of #5963: reorganize building blocks (buffer, parser, input,
data, and shared utilities) under common/primitives/. Runtime code
(services, public API, CoreTerminal, InputHandler) stays in place.

Update import paths across browser, headless, addons, and tests.
Add TypeScript path mappings so common/* aliases resolve primitives
first, then the common root.

Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
This commit is contained in:
Cursor Agent
2026-06-06 18:21:03 +00:00
co-authored by Daniel Imms
parent 3cdbc77386
commit 701c0affd5
187 changed files with 320 additions and 284 deletions
@@ -4,12 +4,12 @@
*/
import { perfContext, before, beforeEach, ThroughputRuntimeCase } from 'xterm-benchmark';
import { EscapeSequenceParser } from 'common/parser/EscapeSequenceParser';
import { C0, C1 } from 'common/data/EscapeSequences';
import { IDcsHandler, IOscHandler, IApcHandler, IParams } from 'common/parser/Types';
import { OscHandler } from 'common/parser/OscParser';
import { DcsHandler } from 'common/parser/DcsParser';
import { ApcHandler } from 'common/parser/ApcParser';
import { EscapeSequenceParser } from 'common/primitives/parser/EscapeSequenceParser';
import { C0, C1 } from 'common/primitives/data/EscapeSequences';
import { IDcsHandler, IOscHandler, IApcHandler, IParams } from 'common/primitives/parser/Types';
import { OscHandler } from 'common/primitives/parser/OscParser';
import { DcsHandler } from 'common/primitives/parser/DcsParser';
import { ApcHandler } from 'common/primitives/parser/ApcParser';
const SIZE = 5000000;
+1 -1
View File
@@ -4,7 +4,7 @@
*/
import { perfContext, before, RuntimeCase } from 'xterm-benchmark';
import { Emitter } from 'common/Event';
import { Emitter } from 'common/primitives/Event';
const ITERATIONS = 1_000_000;
+1 -1
View File
@@ -6,7 +6,7 @@
import { perfContext, before, ThroughputRuntimeCase } from 'xterm-benchmark';
import { spawn } from 'node-pty';
import { Utf8ToUtf32, stringFromCodePoint } from 'common/input/TextDecoder';
import { Utf8ToUtf32, stringFromCodePoint } from 'common/primitives/input/TextDecoder';
import { CoreBrowserTerminal } from 'browser/CoreBrowserTerminal';
perfContext('Terminal: ls -lR /usr/lib', () => {
+4 -1
View File
@@ -13,7 +13,10 @@
"target": "es2021",
"module": "nodenext",
"paths": {
"common/*": ["../../src/common/*"],
"common/*": [
"../../src/common/primitives/*",
"../../src/common/*"
],
"browser/*": ["../../src/browser/*"]
}
},
+1 -1
View File
@@ -8,7 +8,7 @@ import { deepStrictEqual, strictEqual } from 'assert';
import type { IRenderDimensions as IRenderDimensionsInternal } from '../../src/browser/renderer/shared/Types';
import type { IRenderService } from '../../src/browser/services/Services';
import type { IDisposable } from '../../src/common/Types';
import type { IMarker } from '../../src/common/buffer/Types';
import type { IMarker } from '../../src/common/primitives/buffer/Types';
import type { ICoreTerminal } from '../../src/common/CoreTerminal';
import * as playwright from '@playwright/test';
import { IBuffer, IBufferCell, IBufferLine, IBufferNamespace, IBufferRange, IDecoration, IDecorationOptions, IModes, IRenderDimensions, ITerminalInitOnlyOptions, ITerminalOptions, Terminal } from '@xterm/xterm';