Commit Graph
22 Commits
Author SHA1 Message Date
Daniel ImmsandCursor 17ad33dc3d Remove TypeScript path mappings in favor of relative imports
Fixes https://github.com/xtermjs/xterm.js/issues/5896

TypeScript path mappings for common/*, browser/*, and headless/*
were not rewritten in emitted JavaScript, which forced webpack resolve
aliases and NODE_PATH workarounds so runtime could resolve modules.
That added build complexity and broke tooling such as ESLint import/no-cycle.

Changes:
- Convert ~750 imports across src/, addons/, and test/ to relative paths
- Remove common/browser/headless paths and src catch-all mappings from tsconfigs
  (keep @xterm/addon-* demo and addon typings paths)
- Remove webpack resolve.alias for common, browser, headless, and vs
- Drop NODE_PATH from unit tests, benchmarks, and VS Code launch config
- Fix addon-image IIPImageStorage to import ./Types after removing catch-all *

Verified: npm run build, esbuild, package, package-headless
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-31 09:16:10 -07:00
Cursor AgentandDaniel Imms 30b42838fd Extract StringBuilder and LimitedStringBuilder with unit tests
Replace PayloadStringBuffer with LimitedStringBuilder from common.
Add thorough StringBuilder and LimitedStringBuilder test coverage.

Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
2026-05-27 16:27:26 +00:00
Cursor AgentandDaniel Imms fad4821fd9 Fix O(n²) payload accumulation in DCS/OSC/APC handlers
Replace repeated string concatenation with a chunk buffer that joins
once on completion. Fixes #5916.

Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
2026-05-27 15:34:48 +00:00
Daniel Imms ccbf612ddb Fix lint 2026-01-31 15:33:49 -08:00
Daniel Imms 0ca1bd48be Inline payload limit 2026-01-31 15:21:48 -08:00
Daniel Imms 5ecdc7da44 Make payload limit configurable by tests 2026-01-31 15:08:05 -08:00
Daniel Imms bad7e329df Add @typescript-eslint/prefer-nullish-coalescing eslint rule 2026-01-31 08:43:05 -08:00
Jörg Breitbart 869c11f1d8 interface for subparser stack saves 2021-03-17 22:39:09 +01:00
Jörg Breitbart cc005a274d multiple changes:
- reorder exception throwing to be sync to band position
- document WriteBuffer._innerWrite
- remove any declarations
- remove conditional assigments
- use faster return value branching in all parsers
- remove dead code in benchmark
2021-02-27 20:18:41 +01:00
Jörg Breitbart b4635eddf3 make reset async aware 2021-02-25 19:04:37 +01:00
Jörg Breitbart 041e259c11 OSC impl, OscParser tests 2021-02-08 03:03:28 +01:00
Jörg Breitbart 9d0200252b fix possible OSC handler bug skipping the fallback handler 2021-01-21 13:05:57 +01:00
Jörg Breitbart d67faff92a simplify return eval 2021-01-21 11:38:47 +01:00
Jörg Breitbart c50c134e25 simplify parser handler interface:
- remove setHandler
- apply boolean return to ESC|CSI|OSC|DCS handlers
  (rewrite empty return defaulting to true)
- rename addHandler to registerHandler
2021-01-20 23:03:55 +01:00
Jörg Breitbart a2c266a005 rename handler type aliases to XyType to avoid ambiguity with class based types 2019-08-11 18:45:34 +02:00
Jörg Breitbart f677516e95 better interfaces, cleanup 2019-08-11 16:45:35 +02:00
Jörg Breitbart 1286eb618a rename to OscHandler and DcsHandler 2019-08-08 19:41:12 +02:00
Jörg Breitbart 7252a5921d cleanup parser rules and docs 2019-07-31 14:20:36 +02:00
Jörg Breitbart bffa78585e test cases for payload limits 2019-07-26 17:35:37 +02:00
Jörg Breitbart a9b2728c07 add DCS interface, payload limits for DCS/OSC 2019-07-26 15:59:24 +02:00
Jörg Breitbart 6606024c2b support for multiple DCS handler 2019-07-26 01:58:42 +02:00
Jörg Breitbart f626e1c93d fix OSC parsing 2019-07-25 20:38:14 +02:00