Use src/ imports in addons; bundle test output via esbuild

Addons no longer import from out/ or out-esbuild in source. TypeScript
and editors resolve ../../../src/common|browser directly. Addon unit test
artifacts bundle those dependencies from source (platform node, npm
packages external).

Reverts preserveConstEnums; const enums are handled in bundled output.

Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
This commit is contained in:
Cursor Agent
2026-05-28 01:28:31 +00:00
co-authored by Daniel Imms
parent 07bdaf8767
commit 18100d32fb
39 changed files with 138 additions and 134 deletions
+1 -1
View File
@@ -5,7 +5,7 @@
import type { Terminal, ITerminalAddon, IRenderDimensions } from '@xterm/xterm';
import type { FitAddon as IFitApi } from '@xterm/addon-fit';
import { ViewportConstants } from '../../../out/browser/shared/Constants';
import { ViewportConstants } from '../../../src/browser/shared/Constants';
interface ITerminalDimensions {
/**
+1 -1
View File
@@ -5,7 +5,7 @@
import type { ITerminalAddon, IDisposable } from '@xterm/xterm';
import type { ImageAddon as IImageApi } from '@xterm/addon-image';
import { Emitter, type IEvent } from '../../../out/common/Event';
import { Emitter, type IEvent } from '../../../src/common/Event';
import { IIPHandler } from './IIPHandler';
import { ImageRenderer } from './ImageRenderer';
import { ImageStorage, CELL_SIZE_DEFAULT } from './ImageStorage';
+1 -1
View File
@@ -6,7 +6,7 @@
import { toRGBA8888 } from 'sixel/lib/Colors';
import { IDisposable } from '@xterm/xterm';
import { ICellSize, ImageLayer, ITerminalExt, IImageSpec, IRenderDimensions, IRenderService } from './Types';
import { Disposable, MutableDisposable, toDisposable } from '../../../out/common/Lifecycle';
import { Disposable, MutableDisposable, toDisposable } from '../../../src/common/Lifecycle';
const enum Constants {
PLACEHOLDER_LENGTH = 4096,
+7 -7
View File
@@ -6,13 +6,13 @@
import { IDisposable, IMarker, Terminal } from '@xterm/xterm';
// private imports from base repo we build against
import { Attributes, BgFlags, Content, ExtFlags, UnderlineStyle } from '../../../out/common/buffer/Constants';
import type { AttributeData } from '../../../out/common/buffer/AttributeData';
import type { IParams, IDcsHandler, IOscHandler, IApcHandler, IEscapeSequenceParser } from '../../../out/common/parser/Types';
import type { IBufferLine, IExtendedAttrs, IInputHandler } from '../../../out/common/Types';
import type { ITerminal, ReadonlyColorSet } from '../../../out/browser/Types';
import type { IRenderDimensions } from '../../../out/browser/renderer/shared/Types';
import type { ICoreBrowserService, IRenderService, IThemeService } from '../../../out/browser/services/Services';
import { Attributes, BgFlags, Content, ExtFlags, UnderlineStyle } from '../../../src/common/buffer/Constants';
import type { AttributeData } from '../../../src/common/buffer/AttributeData';
import type { IParams, IDcsHandler, IOscHandler, IApcHandler, IEscapeSequenceParser } from '../../../src/common/parser/Types';
import type { IBufferLine, IExtendedAttrs, IInputHandler } from '../../../src/common/Types';
import type { ITerminal, ReadonlyColorSet } from '../../../src/browser/Types';
import type { IRenderDimensions } from '../../../src/browser/renderer/shared/Types';
import type { ICoreBrowserService, IRenderService, IThemeService } from '../../../src/browser/services/Services';
export const enum Cell {
CONTENT = 0, // codepoint and wcwidth information (enum Content)
+1 -1
View File
@@ -5,7 +5,7 @@
import type { Terminal, ITerminalAddon, IDisposable } from '@xterm/xterm';
import type { ProgressAddon as IProgressApi, IProgressState } from '@xterm/addon-progress';
import type { Emitter, IEvent } from '../../../out/common/Event';
import type { Emitter, IEvent } from '../../../src/common/Event';
const enum ProgressType {
+1 -1
View File
@@ -5,7 +5,7 @@
import type { Terminal, IDisposable, IDecoration } from '@xterm/xterm';
import type { ISearchDecorationOptions } from '@xterm/addon-search';
import { dispose, Disposable, toDisposable } from '../../../out/common/Lifecycle';
import { dispose, Disposable, toDisposable } from '../../../src/common/Lifecycle';
import type { ISearchResult } from './SearchEngine';
/**
+3 -3
View File
@@ -5,9 +5,9 @@
import type { Terminal, IDisposable, ITerminalAddon } from '@xterm/xterm';
import type { SearchAddon as ISearchApi, ISearchOptions, ISearchAddonOptions, ISearchResultChangeEvent, ISearchDecorationOptions } from '@xterm/addon-search';
import { Emitter, type IEvent } from '../../../out/common/Event';
import { Disposable, MutableDisposable, toDisposable } from '../../../out/common/Lifecycle';
import { disposableTimeout } from '../../../out/common/Async';
import { Emitter, type IEvent } from '../../../src/common/Event';
import { Disposable, MutableDisposable, toDisposable } from '../../../src/common/Lifecycle';
import { disposableTimeout } from '../../../src/common/Async';
import { SearchLineCache } from './SearchLineCache';
import { SearchState } from './SearchState';
import { SearchEngine, type ISearchResult } from './SearchEngine';
+2 -2
View File
@@ -5,9 +5,9 @@
import { assert } from 'chai';
import { SearchEngine } from './SearchEngine';
import { SearchLineCache } from './SearchLineCache';
import { Terminal } from '../../../out/browser/public/Terminal';
import { Terminal } from '../../../src/browser/public/Terminal';
import type { ISearchOptions } from '@xterm/addon-search';
import { DisposableStore } from '../../../out/common/Lifecycle';
import { DisposableStore } from '../../../src/common/Lifecycle';
function writeP(terminal: Terminal, data: string): Promise<void> {
return new Promise(r => terminal.write(data, r));
@@ -4,8 +4,8 @@
*/
import { assert } from 'chai';
import { SearchLineCache, LineCacheEntry } from './SearchLineCache';
import { Terminal } from '../../../out/browser/public/Terminal';
import { timeout } from '../../../out/common/Async';
import { Terminal } from '../../../src/browser/public/Terminal';
import { timeout } from '../../../src/common/Async';
function writeP(terminal: Terminal, data: string): Promise<void> {
return new Promise(r => terminal.write(data, r));
+2 -2
View File
@@ -4,8 +4,8 @@
*/
import type { Terminal } from '@xterm/xterm';
import { combinedDisposable, Disposable, MutableDisposable, toDisposable } from '../../../out/common/Lifecycle';
import { disposableTimeout } from '../../../out/common/Async';
import { combinedDisposable, Disposable, MutableDisposable, toDisposable } from '../../../src/common/Lifecycle';
import { disposableTimeout } from '../../../src/common/Async';
export type LineCacheEntry = [
/**
@@ -5,8 +5,8 @@
import type { ISearchResultChangeEvent } from '@xterm/addon-search';
import type { IDisposable } from '@xterm/xterm';
import { Emitter, type IEvent } from '../../../out/common/Event';
import { Disposable } from '../../../out/common/Lifecycle';
import { Emitter, type IEvent } from '../../../src/common/Event';
import { Disposable } from '../../../src/common/Lifecycle';
import type { ISearchResult } from './SearchEngine';
/**
@@ -6,8 +6,8 @@
import { perfContext, before, ThroughputRuntimeCase } from 'xterm-benchmark';
import { spawn } from 'node-pty';
import { Utf8ToUtf32, stringFromCodePoint } from '../../../out/common/input/TextDecoder';
import { Terminal } from '../../../out/browser/public/Terminal';
import { Utf8ToUtf32, stringFromCodePoint } from '../../../src/common/input/TextDecoder';
import { Terminal } from '../../../src/browser/public/Terminal';
import { SerializeAddon } from '../src/SerializeAddon';
class TestTerminal extends Terminal {
@@ -6,10 +6,10 @@
import jsdom = require('jsdom');
import { assert } from 'chai';
import { SerializeAddon } from './SerializeAddon';
import { Terminal } from '../../../out/browser/public/Terminal';
import { SelectionModel } from '../../../out/browser/selection/SelectionModel';
import { IBufferService } from '../../../out/common/services/Services';
import { ThemeService } from '../../../out/browser/services/ThemeService';
import { Terminal } from '../../../src/browser/public/Terminal';
import { SelectionModel } from '../../../src/browser/selection/SelectionModel';
import { IBufferService } from '../../../src/common/services/Services';
import { ThemeService } from '../../../src/browser/services/ThemeService';
function sgr(...seq: string[]): string {
return `\x1b[${seq.join(';')}m`;
+3 -3
View File
@@ -7,9 +7,9 @@
import type { IBuffer, IBufferCell, IBufferRange, ITerminalAddon, Terminal } from '@xterm/xterm';
import type { IHTMLSerializeOptions, SerializeAddon as ISerializeApi, ISerializeOptions, ISerializeRange } from '@xterm/addon-serialize';
import { IAttributeData, IColor } from '../../../out/common/Types';
import { DEFAULT_ANSI_COLORS } from '../../../out/browser/Types';
import { UnderlineStyle } from '../../../out/common/buffer/Constants';
import { IAttributeData, IColor } from '../../../src/common/Types';
import { DEFAULT_ANSI_COLORS } from '../../../src/browser/Types';
import { UnderlineStyle } from '../../../src/common/buffer/Constants';
function constrain(value: number, low: number, high: number): number {
return Math.max(low, Math.min(value, high));
@@ -6,8 +6,8 @@
import { perfContext, before, ThroughputRuntimeCase } from 'xterm-benchmark';
import { spawn } from 'node-pty';
import { Utf8ToUtf32, stringFromCodePoint } from '../../../out/common/input/TextDecoder';
import { CoreBrowserTerminal } from '../../../out/browser/CoreBrowserTerminal';
import { Utf8ToUtf32, stringFromCodePoint } from '../../../src/common/input/TextDecoder';
import { CoreBrowserTerminal } from '../../../src/browser/CoreBrowserTerminal';
import { UnicodeGraphemeProvider } from '../src/UnicodeGraphemeProvider';
@@ -4,8 +4,8 @@
*/
import { IUnicodeVersionProvider } from '@xterm/xterm';
import { UnicodeCharProperties, UnicodeCharWidth } from '../../../out/common/services/Services';
import { UnicodeService } from '../../../out/common/services/UnicodeService';
import { UnicodeCharProperties, UnicodeCharWidth } from '../../../src/common/services/Services';
import { UnicodeService } from '../../../src/common/services/UnicodeService';
import * as UC from './third-party/UnicodeProperties';
export class UnicodeGraphemeProvider implements IUnicodeVersionProvider {
+2 -2
View File
@@ -4,8 +4,8 @@
*/
import { IUnicodeVersionProvider } from '@xterm/xterm';
import { UnicodeCharProperties, UnicodeCharWidth } from '../../../out/common/services/Services';
import { UnicodeService } from '../../../out/common/services/UnicodeService';
import { UnicodeCharProperties, UnicodeCharWidth } from '../../../src/common/services/Services';
import { UnicodeService } from '../../../src/common/services/UnicodeService';
const BMP_COMBINING = [
[0x0300, 0x036F], [0x0483, 0x0489], [0x0591, 0x05BD],
+8 -8
View File
@@ -1,12 +1,12 @@
import { ISelectionRenderModel } from '../../../out/browser/renderer/shared/Types';
import { ICoreBrowserService, IThemeService } from '../../../out/browser/services/Services';
import { ReadonlyColorSet } from '../../../out/browser/Types';
import { Attributes, BgFlags, ExtFlags, FgFlags, NULL_CELL_CODE, UnderlineStyle } from '../../../out/common/buffer/Constants';
import { IDecorationService, IOptionsService } from '../../../out/common/services/Services';
import { ICellData } from '../../../out/common/Types';
import { ISelectionRenderModel } from '../../../src/browser/renderer/shared/Types';
import { ICoreBrowserService, IThemeService } from '../../../src/browser/services/Services';
import { ReadonlyColorSet } from '../../../src/browser/Types';
import { Attributes, BgFlags, ExtFlags, FgFlags, NULL_CELL_CODE, UnderlineStyle } from '../../../src/common/buffer/Constants';
import { IDecorationService, IOptionsService } from '../../../src/common/services/Services';
import { ICellData } from '../../../src/common/Types';
import { Terminal } from '@xterm/xterm';
import { rgba } from '../../../out/common/Color';
import { treatGlyphAsBackgroundColor } from '../../../out/browser/renderer/shared/RendererUtils';
import { rgba } from '../../../src/common/Color';
import { treatGlyphAsBackgroundColor } from '../../../src/browser/renderer/shared/RendererUtils';
import { blockPatternCodepoints } from './customGlyphs/CustomGlyphDefinitions';
// Work variables to avoid garbage collection
+2 -2
View File
@@ -5,10 +5,10 @@
import { TextureAtlas } from './TextureAtlas';
import { ITerminalOptions, Terminal } from '@xterm/xterm';
import { ITerminal, ReadonlyColorSet } from '../../../out/browser/Types';
import { ITerminal, ReadonlyColorSet } from '../../../src/browser/Types';
import { ICharAtlasConfig, ITextureAtlas } from './Types';
import { generateConfig, configEquals } from './CharAtlasUtils';
import type { ILogService } from '../../../out/common/services/Services';
import type { ILogService } from '../../../src/common/services/Services';
interface ITextureAtlasCacheEntry {
atlas: ITextureAtlas;
@@ -6,8 +6,8 @@
import { assert } from 'chai';
import { configEquals } from './CharAtlasUtils';
import { ICharAtlasConfig } from './Types';
import { NULL_COLOR } from '../../../out/common/Color';
import { IColor } from '../../../out/common/Types';
import { NULL_COLOR } from '../../../src/common/Color';
import { IColor } from '../../../src/common/Types';
function createTestConfig(overrides: Partial<ICharAtlasConfig> = {}): ICharAtlasConfig {
const color: IColor = { css: '#ffffff', rgba: 0xffffffff };
+3 -3
View File
@@ -4,10 +4,10 @@
*/
import { ICharAtlasConfig } from './Types';
import { Attributes } from '../../../out/common/buffer/Constants';
import { Attributes } from '../../../src/common/buffer/Constants';
import { ITerminalOptions } from '@xterm/xterm';
import { IColorSet, ReadonlyColorSet } from '../../../out/browser/Types';
import { NULL_COLOR } from '../../../out/common/Color';
import { IColorSet, ReadonlyColorSet } from '../../../src/browser/Types';
import { NULL_COLOR } from '../../../src/common/Color';
export function generateConfig(deviceCellWidth: number, deviceCellHeight: number, deviceCharWidth: number, deviceCharHeight: number, options: Required<ITerminalOptions>, colors: ReadonlyColorSet, devicePixelRatio: number, deviceMaxTextureSize: number, customGlyphs: boolean = true): ICharAtlasConfig {
// null out some fields that don't matter
+1 -1
View File
@@ -3,7 +3,7 @@
* @license MIT
*/
import { isFirefox, isLegacyEdge } from '../../../out/common/Platform';
import { isFirefox, isLegacyEdge } from '../../../src/common/Platform';
export const DIM_OPACITY = 0.5;
// The text baseline is set conditionally by browser. Using 'ideographic' for Firefox or Legacy Edge
@@ -3,8 +3,8 @@
* @license MIT
*/
import { RendererConstants } from '../../../out/browser/renderer/shared/Constants';
import { ICoreBrowserService } from '../../../out/browser/services/Services';
import { RendererConstants } from '../../../src/browser/renderer/shared/Constants';
import { ICoreBrowserService } from '../../../src/browser/services/Services';
const enum Constants {
/**
@@ -3,7 +3,7 @@
* @license MIT
*/
import { toDisposable, IDisposable } from '../../../out/common/Lifecycle';
import { toDisposable, IDisposable } from '../../../src/common/Lifecycle';
export function observeDevicePixelDimensions(element: HTMLElement, parentWindow: Window & typeof globalThis, callback: (deviceWidth: number, deviceHeight: number) => void): IDisposable {
// Observe any resizes to the element and extract the actual pixel size of the element if the
+5 -5
View File
@@ -3,14 +3,14 @@
* @license MIT
*/
import { TextureAtlas } from './TextureAtlas';
import { IRenderDimensions } from '../../../out/browser/renderer/shared/Types';
import { NULL_CELL_CODE } from '../../../out/common/buffer/Constants';
import { Disposable, toDisposable } from '../../../out/common/Lifecycle';
import { IRenderDimensions } from '../../../src/browser/renderer/shared/Types';
import { NULL_CELL_CODE } from '../../../src/common/buffer/Constants';
import { Disposable, toDisposable } from '../../../src/common/Lifecycle';
import { Terminal } from '@xterm/xterm';
import { IRenderModel, IWebGL2RenderingContext, IWebGLVertexArrayObject, type IRasterizedGlyph, type ITextureAtlas } from './Types';
import { createProgram, GLTexture, PROJECTION_MATRIX } from './WebglUtils';
import type { ILogService, IOptionsService } from '../../../out/common/services/Services';
import { allowRescaling, throwIfFalsy } from '../../../out/browser/renderer/shared/RendererUtils';
import type { ILogService, IOptionsService } from '../../../src/common/services/Services';
import { allowRescaling, throwIfFalsy } from '../../../src/browser/renderer/shared/RendererUtils';
interface IVertices {
attributes: Float32Array;
+8 -8
View File
@@ -3,18 +3,18 @@
* @license MIT
*/
import { IRenderDimensions } from '../../../out/browser/renderer/shared/Types';
import { IThemeService } from '../../../out/browser/services/Services';
import { ReadonlyColorSet } from '../../../out/browser/Types';
import { Attributes, FgFlags } from '../../../out/common/buffer/Constants';
import { Disposable, toDisposable } from '../../../out/common/Lifecycle';
import { IColor } from '../../../out/common/Types';
import { IRenderDimensions } from '../../../src/browser/renderer/shared/Types';
import { IThemeService } from '../../../src/browser/services/Services';
import { ReadonlyColorSet } from '../../../src/browser/Types';
import { Attributes, FgFlags } from '../../../src/common/buffer/Constants';
import { Disposable, toDisposable } from '../../../src/common/Lifecycle';
import { IColor } from '../../../src/common/Types';
import { Terminal } from '@xterm/xterm';
import { RenderModelConstants } from './RenderModel';
import { IRenderModel, IWebGL2RenderingContext, IWebGLVertexArrayObject } from './Types';
import { createProgram, expandFloat32Array, PROJECTION_MATRIX } from './WebglUtils';
import { throwIfFalsy } from '../../../out/browser/renderer/shared/RendererUtils';
import type { ILogService } from '../../../out/common/services/Services';
import { throwIfFalsy } from '../../../src/browser/renderer/shared/RendererUtils';
import type { ILogService } from '../../../src/common/services/Services';
const enum VertexAttribLocations {
POSITION = 0,
+2 -2
View File
@@ -4,8 +4,8 @@
*/
import { ICursorRenderModel, IRenderModel } from './Types';
import { ISelectionRenderModel } from '../../../out/browser/renderer/shared/Types';
import { createSelectionRenderModel } from '../../../out/browser/renderer/shared/SelectionRenderModel';
import { ISelectionRenderModel } from '../../../src/browser/renderer/shared/Types';
import { createSelectionRenderModel } from '../../../src/browser/renderer/shared/SelectionRenderModel';
export const enum RenderModelConstants {
INDICIES_PER_CELL = 4,
+10 -10
View File
@@ -3,19 +3,19 @@
* @license MIT
*/
import { IColorContrastCache } from '../../../out/browser/Types';
import { IColorContrastCache } from '../../../src/browser/Types';
import { DIM_OPACITY, TEXT_BASELINE } from './Constants';
import { tryDrawCustomGlyph } from './customGlyphs/CustomGlyphRasterizer';
import { computeNextVariantOffset, treatGlyphAsBackgroundColor, isPowerlineGlyph, isRestrictedPowerlineGlyph, throwIfFalsy } from '../../../out/browser/renderer/shared/RendererUtils';
import { computeNextVariantOffset, treatGlyphAsBackgroundColor, isPowerlineGlyph, isRestrictedPowerlineGlyph, throwIfFalsy } from '../../../src/browser/renderer/shared/RendererUtils';
import { IBoundingBox, ICharAtlasConfig, IRasterizedGlyph, ITextureAtlas } from './Types';
import { NULL_COLOR, channels, color, rgba } from '../../../out/common/Color';
import { FourKeyMap } from '../../../out/common/MultiKeyMap';
import { IdleTaskQueue } from '../../../out/common/TaskQueue';
import { IColor } from '../../../out/common/Types';
import { AttributeData } from '../../../out/common/buffer/AttributeData';
import { Attributes, DEFAULT_COLOR, DEFAULT_EXT, UnderlineStyle } from '../../../out/common/buffer/Constants';
import { ILogService, IUnicodeService } from '../../../out/common/services/Services';
import { Emitter } from '../../../out/common/Event';
import { NULL_COLOR, channels, color, rgba } from '../../../src/common/Color';
import { FourKeyMap } from '../../../src/common/MultiKeyMap';
import { IdleTaskQueue } from '../../../src/common/TaskQueue';
import { IColor } from '../../../src/common/Types';
import { AttributeData } from '../../../src/common/buffer/AttributeData';
import { Attributes, DEFAULT_COLOR, DEFAULT_EXT, UnderlineStyle } from '../../../src/common/buffer/Constants';
import { ILogService, IUnicodeService } from '../../../src/common/services/Services';
import { Emitter } from '../../../src/common/Event';
/**
* A shared object which is used to draw nothing for a particular cell.
+4 -4
View File
@@ -4,10 +4,10 @@
*/
import { FontWeight } from '@xterm/xterm';
import { IColorSet } from '../../../out/browser/Types';
import { ISelectionRenderModel } from '../../../out/browser/renderer/shared/Types';
import { CursorInactiveStyle, CursorStyle, type IDisposable } from '../../../out/common/Types';
import type { IEvent } from '../../../out/common/Event';
import { IColorSet } from '../../../src/browser/Types';
import { ISelectionRenderModel } from '../../../src/browser/renderer/shared/Types';
import { CursorInactiveStyle, CursorStyle, type IDisposable } from '../../../src/common/Types';
import type { IEvent } from '../../../src/common/Event';
export interface IRenderModel {
cells: Uint32Array;
+6 -6
View File
@@ -5,14 +5,14 @@
import type { ITerminalAddon, Terminal } from '@xterm/xterm';
import type { IWebglAddonOptions, WebglAddon as IWebglApi } from '@xterm/addon-webgl';
import { ICharacterJoinerService, ICharSizeService, ICoreBrowserService, IRenderService, IThemeService } from '../../../out/browser/services/Services';
import { ITerminal } from '../../../out/browser/Types';
import { Disposable, toDisposable } from '../../../out/common/Lifecycle';
import { getSafariVersion, isSafari } from '../../../out/common/Platform';
import { ICoreService, IDecorationService, ILogService, IOptionsService } from '../../../out/common/services/Services';
import { ICharacterJoinerService, ICharSizeService, ICoreBrowserService, IRenderService, IThemeService } from '../../../src/browser/services/Services';
import { ITerminal } from '../../../src/browser/Types';
import { Disposable, toDisposable } from '../../../src/common/Lifecycle';
import { getSafariVersion, isSafari } from '../../../src/common/Platform';
import { ICoreService, IDecorationService, ILogService, IOptionsService } from '../../../src/common/services/Services';
import { IWebGL2RenderingContext } from './Types';
import { WebglRenderer } from './WebglRenderer';
import { Emitter, EventUtils } from '../../../out/common/Event';
import { Emitter, EventUtils } from '../../../src/common/Event';
export class WebglAddon extends Disposable implements ITerminalAddon, IWebglApi {
private _terminal?: Terminal;
+13 -13
View File
@@ -3,19 +3,19 @@
* @license MIT
*/
import { ITerminal } from '../../../out/browser/Types';
import { ITerminal } from '../../../src/browser/Types';
import { CellColorResolver } from './CellColorResolver';
import { acquireTextureAtlas, removeTerminalFromCache } from './CharAtlasCache';
import { CursorBlinkStateManager } from './CursorBlinkStateManager';
import { observeDevicePixelDimensions } from './DevicePixelObserver';
import { IRenderDimensions, IRenderer, IRequestRedrawEvent } from '../../../out/browser/renderer/shared/Types';
import { ICharSizeService, ICharacterJoinerService, ICoreBrowserService, IThemeService } from '../../../out/browser/services/Services';
import { CharData, IBufferLine, ICellData } from '../../../out/common/Types';
import { AttributeData } from '../../../out/common/buffer/AttributeData';
import { CellData } from '../../../out/common/buffer/CellData';
import { Attributes, Content, FgFlags, NULL_CELL_CHAR, NULL_CELL_CODE } from '../../../out/common/buffer/Constants';
import { TextBlinkStateManager } from '../../../out/browser/renderer/shared/TextBlinkStateManager';
import { ICoreService, IDecorationService, ILogService, IOptionsService } from '../../../out/common/services/Services';
import { IRenderDimensions, IRenderer, IRequestRedrawEvent } from '../../../src/browser/renderer/shared/Types';
import { ICharSizeService, ICharacterJoinerService, ICoreBrowserService, IThemeService } from '../../../src/browser/services/Services';
import { CharData, IBufferLine, ICellData } from '../../../src/common/Types';
import { AttributeData } from '../../../src/common/buffer/AttributeData';
import { CellData } from '../../../src/common/buffer/CellData';
import { Attributes, Content, FgFlags, NULL_CELL_CHAR, NULL_CELL_CODE } from '../../../src/common/buffer/Constants';
import { TextBlinkStateManager } from '../../../src/browser/renderer/shared/TextBlinkStateManager';
import { ICoreService, IDecorationService, ILogService, IOptionsService } from '../../../src/common/services/Services';
import { Terminal } from '@xterm/xterm';
import { GlyphRenderer } from './GlyphRenderer';
import { RectangleRenderer } from './RectangleRenderer';
@@ -23,10 +23,10 @@ import { COMBINED_CHAR_BIT_MASK, RenderModel, RenderModelConstants } from './Ren
import { IWebGL2RenderingContext, type ITextureAtlas } from './Types';
import { LinkRenderLayer } from './renderLayer/LinkRenderLayer';
import { IRenderLayer } from './renderLayer/Types';
import { Emitter, EventUtils } from '../../../out/common/Event';
import { addDisposableListener } from '../../../out/browser/Dom';
import { combinedDisposable, Disposable, MutableDisposable, toDisposable } from '../../../out/common/Lifecycle';
import { createRenderDimensions } from '../../../out/browser/renderer/shared/RendererUtils';
import { Emitter, EventUtils } from '../../../src/common/Event';
import { addDisposableListener } from '../../../src/browser/Dom';
import { combinedDisposable, Disposable, MutableDisposable, toDisposable } from '../../../src/common/Lifecycle';
import { createRenderDimensions } from '../../../src/browser/renderer/shared/RendererUtils';
const enum Constants {
MERGE_RETRY_LIMIT = 32
+2 -2
View File
@@ -3,8 +3,8 @@
* @license MIT
*/
import { throwIfFalsy } from '../../../out/browser/renderer/shared/RendererUtils';
import type { ILogService } from '../../../out/common/services/Services';
import { throwIfFalsy } from '../../../src/browser/renderer/shared/RendererUtils';
import type { ILogService } from '../../../src/common/services/Services';
/**
* A matrix that when multiplies will translate 0-1 coordinates (left to right,
@@ -3,8 +3,8 @@
* @license MIT
*/
import { throwIfFalsy } from '../../../../out/browser/renderer/shared/RendererUtils';
import type { ILogService } from '../../../../out/common/services/Services';
import { throwIfFalsy } from '../../../../src/browser/renderer/shared/RendererUtils';
import type { ILogService } from '../../../../src/common/services/Services';
import { customGlyphDefinitions } from './CustomGlyphDefinitions';
import { CustomGlyphDefinitionType, CustomGlyphScaleType, CustomGlyphVectorType, type CustomGlyphDefinitionPart, type CustomGlyphPathDrawFunctionDefinition, type CustomGlyphPatternDefinition, type ICustomGlyphSolidOctantBlockVector, type ICustomGlyphVectorShape } from './Types';
@@ -3,16 +3,16 @@
* @license MIT
*/
import { ReadonlyColorSet } from '../../../../out/browser/Types';
import { ReadonlyColorSet } from '../../../../src/browser/Types';
import { acquireTextureAtlas } from '../CharAtlasCache';
import { IRenderDimensions } from '../../../../out/browser/renderer/shared/Types';
import { ICoreBrowserService, IThemeService } from '../../../../out/browser/services/Services';
import { Disposable, toDisposable } from '../../../../out/common/Lifecycle';
import { CellData } from '../../../../out/common/buffer/CellData';
import { IOptionsService } from '../../../../out/common/services/Services';
import { IRenderDimensions } from '../../../../src/browser/renderer/shared/Types';
import { ICoreBrowserService, IThemeService } from '../../../../src/browser/services/Services';
import { Disposable, toDisposable } from '../../../../src/common/Lifecycle';
import { CellData } from '../../../../src/common/buffer/CellData';
import { IOptionsService } from '../../../../src/common/services/Services';
import { Terminal } from '@xterm/xterm';
import { IRenderLayer } from './Types';
import { throwIfFalsy } from '../../../../out/browser/renderer/shared/RendererUtils';
import { throwIfFalsy } from '../../../../src/browser/renderer/shared/RendererUtils';
import { TEXT_BASELINE } from '../Constants';
import type { ITextureAtlas } from '../Types';
@@ -4,11 +4,11 @@
*/
import { is256Color } from '../CharAtlasUtils';
import { INVERTED_DEFAULT_COLOR } from '../../../../out/browser/renderer/shared/Constants';
import { IRenderDimensions } from '../../../../out/browser/renderer/shared/Types';
import { ICoreBrowserService, IThemeService } from '../../../../out/browser/services/Services';
import { ILinkifier2, ILinkifierEvent } from '../../../../out/browser/Types';
import { IOptionsService } from '../../../../out/common/services/Services';
import { INVERTED_DEFAULT_COLOR } from '../../../../src/browser/renderer/shared/Constants';
import { IRenderDimensions } from '../../../../src/browser/renderer/shared/Types';
import { ICoreBrowserService, IThemeService } from '../../../../src/browser/services/Services';
import { ILinkifier2, ILinkifierEvent } from '../../../../src/browser/Types';
import { IOptionsService } from '../../../../src/common/services/Services';
import { Terminal } from '@xterm/xterm';
import { BaseRenderLayer } from './BaseRenderLayer';
+1 -1
View File
@@ -4,7 +4,7 @@
*/
import { IDisposable, Terminal } from '@xterm/xterm';
import { IRenderDimensions } from '../../../../out/browser/renderer/shared/Types';
import { IRenderDimensions } from '../../../../src/browser/renderer/shared/Types';
export interface IRenderLayer extends IDisposable {
/**
+10 -3
View File
@@ -107,13 +107,20 @@ if (config.addon) {
};
outConfig = {
...outConfig,
bundle: true,
platform: 'node',
packages: 'external',
entryPoints: [`addons/addon-${config.addon}/src/**/*.ts`],
outdir: `addons/addon-${config.addon}/out-esbuild/`
outdir: `addons/addon-${config.addon}/out-esbuild/`,
// Public API stays external; src/common|browser are bundled from source.
external: ['@xterm/xterm', '@xterm/headless', '@xterm/addon-*'],
};
// Playwright suites only (not run by unit tests); keep unbundled.
outTestConfig = {
...outConfig,
format: 'cjs',
sourcemap: true,
entryPoints: [`addons/addon-${config.addon}/test/**/*.ts`],
outdir: `addons/addon-${config.addon}/out-esbuild-test/`
outdir: `addons/addon-${config.addon}/out-esbuild-test/`,
};
if (config.addon === 'ligatures') {
+5 -7
View File
@@ -3,15 +3,13 @@
"description": "A headless terminal component that runs in Node.js",
"version": "6.0.0",
"main": "lib-headless/xterm-headless.js",
"module": "lib-headless/xterm-headless.mjs",
"module": "lib/xterm.mjs",
"types": "typings/xterm-headless.d.ts",
"exports": {
"types": "./typings/xterm-headless.d.ts",
"import": "./lib-headless/xterm-headless.mjs",
"require": "./lib-headless/xterm-headless.js"
},
"repository": "https://github.com/xtermjs/xterm.js",
"license": "MIT",
"workspaces": [
"addons/*"
],
"keywords": [
"cli",
"command-line",
@@ -27,4 +25,4 @@
"webgl",
"xterm"
]
}
}
+1 -2
View File
@@ -5,7 +5,6 @@
"strict": true,
"declarationMap": true,
"experimentalDecorators": true,
"downlevelIteration": true,
"preserveConstEnums": true
"downlevelIteration": true
}
}