Import shared core from ../../../out/common|browser in addons so tsc
and runtime agree. Enable preserveConstEnums so const enums remain in
compiled out/ for addon consumers.
Build xterm esbuild before addons so out-esbuild exists for parallel
addon jobs. Verified: npm run setup, esbuild-demo-client, package.
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
Replace common/*, browser/*, and headless/* path-mapped imports with
relative paths across src/, addons/, test/, and demo/. Remove paths
from all tsconfig.json files and include addon typings directly.
Addon sources import shared code via out-esbuild/ so unit tests resolve
compiled modules with runtime const enums. Fix benchmark bare imports
and normalize corrupted tsconfig formatting.
Resolves#5896
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
Terminal.resize() already no-ops internally when dimensions haven't
changed. The addon's guard prevented resize() from being called at all,
forcing callers using ResizeObserver-based layouts to use perturbation
workarounds (resize to rows-1, then fit) that race with the observer.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>