diff --git a/addons/addon-attach/test/tsconfig.json b/addons/addon-attach/test/tsconfig.json index 73f17c2a5..900a727ed 100644 --- a/addons/addon-attach/test/tsconfig.json +++ b/addons/addon-attach/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-clipboard/src/tsconfig.json b/addons/addon-clipboard/src/tsconfig.json index b1192735c..b61072808 100644 --- a/addons/addon-clipboard/src/tsconfig.json +++ b/addons/addon-clipboard/src/tsconfig.json @@ -15,6 +15,9 @@ "../../../node_modules/@types/mocha" ], "paths": { + "browser/*": [ + "../../../src/browser/*" + ], "@xterm/addon-clipboard": [ "../typings/addon-clipboard.d.ts" ] diff --git a/addons/addon-clipboard/test/tsconfig.json b/addons/addon-clipboard/test/tsconfig.json index 73f17c2a5..900a727ed 100644 --- a/addons/addon-clipboard/test/tsconfig.json +++ b/addons/addon-clipboard/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-fit/src/FitAddon.ts b/addons/addon-fit/src/FitAddon.ts index 812d31d3f..3db988acd 100644 --- a/addons/addon-fit/src/FitAddon.ts +++ b/addons/addon-fit/src/FitAddon.ts @@ -5,7 +5,7 @@ import type { Terminal, ITerminalAddon, IRenderDimensions } from '@xterm/xterm'; import type { FitAddon as IFitApi } from '@xterm/addon-fit'; -import { ViewportConstants } from '../../../src/browser/shared/Constants'; +import { ViewportConstants } from 'browser/shared/Constants'; interface ITerminalDimensions { /** diff --git a/addons/addon-fit/src/tsconfig.json b/addons/addon-fit/src/tsconfig.json index 98bf0cf98..068b43370 100644 --- a/addons/addon-fit/src/tsconfig.json +++ b/addons/addon-fit/src/tsconfig.json @@ -15,6 +15,9 @@ "../../../node_modules/@types/mocha" ], "paths": { + "browser/*": [ + "../../../src/browser/*" + ], "@xterm/addon-fit": [ "../typings/addon-fit.d.ts" ] diff --git a/addons/addon-fit/test/tsconfig.json b/addons/addon-fit/test/tsconfig.json index 73f17c2a5..900a727ed 100644 --- a/addons/addon-fit/test/tsconfig.json +++ b/addons/addon-fit/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-image/src/ImageAddon.ts b/addons/addon-image/src/ImageAddon.ts index 07aea05c5..8fd395431 100644 --- a/addons/addon-image/src/ImageAddon.ts +++ b/addons/addon-image/src/ImageAddon.ts @@ -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 '../../../src/common/Event'; +import { Emitter, type IEvent } from 'common/Event'; import { IIPHandler } from './IIPHandler'; import { ImageRenderer } from './ImageRenderer'; import { ImageStorage, CELL_SIZE_DEFAULT } from './ImageStorage'; diff --git a/addons/addon-image/src/ImageRenderer.ts b/addons/addon-image/src/ImageRenderer.ts index 285f13724..5854efaec 100644 --- a/addons/addon-image/src/ImageRenderer.ts +++ b/addons/addon-image/src/ImageRenderer.ts @@ -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 '../../../src/common/Lifecycle'; +import { Disposable, MutableDisposable, toDisposable } from 'common/Lifecycle'; const enum Constants { PLACEHOLDER_LENGTH = 4096, diff --git a/addons/addon-image/src/Types.ts b/addons/addon-image/src/Types.ts index 9a70f4399..19a1acca1 100644 --- a/addons/addon-image/src/Types.ts +++ b/addons/addon-image/src/Types.ts @@ -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 '../../../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'; +import { Attributes, BgFlags, Content, ExtFlags, UnderlineStyle } from 'common/buffer/Constants'; +import type { AttributeData } from 'common/buffer/AttributeData'; +import type { IParams, IDcsHandler, IOscHandler, IApcHandler, IEscapeSequenceParser } from 'common/parser/Types'; +import type { IBufferLine, IExtendedAttrs, IInputHandler } from 'common/Types'; +import type { ITerminal, ReadonlyColorSet } from 'browser/Types'; +import type { IRenderDimensions } from 'browser/renderer/shared/Types'; +import type { ICoreBrowserService, IRenderService, IThemeService } from 'browser/services/Services'; export const enum Cell { CONTENT = 0, // codepoint and wcwidth information (enum Content) diff --git a/addons/addon-image/src/tsconfig.json b/addons/addon-image/src/tsconfig.json index 18e276a35..9a5d24c1f 100644 --- a/addons/addon-image/src/tsconfig.json +++ b/addons/addon-image/src/tsconfig.json @@ -12,9 +12,10 @@ "../../../node_modules/@types/mocha" ], "paths": { - "@xterm/addon-image": [ - "../typings/addon-image.d.ts" - ] + "browser/*": [ "../../../src/browser/*" ], + "common/*": [ "../../../src/common/*" ], + "@xterm/addon-image": [ "../typings/addon-image.d.ts" ], + "*": [ "./*" ] } }, "include": [ @@ -22,11 +23,7 @@ "../../../typings/xterm.d.ts" ], "references": [ - { - "path": "../../../src/browser" - }, - { - "path": "../../../src/common" - } + { "path": "../../../src/browser" }, + { "path": "../../../src/common" } ] } diff --git a/addons/addon-image/test/tsconfig.json b/addons/addon-image/test/tsconfig.json index 73f17c2a5..900a727ed 100644 --- a/addons/addon-image/test/tsconfig.json +++ b/addons/addon-image/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-image/webpack.config.js b/addons/addon-image/webpack.config.js index ba2fa35a4..01147d7e7 100644 --- a/addons/addon-image/webpack.config.js +++ b/addons/addon-image/webpack.config.js @@ -24,6 +24,11 @@ const addon = { resolve: { modules: ['./node_modules'], extensions: [ '.js' ], + alias: { + common: path.resolve('../../out/common'), + browser: path.resolve('../../out/browser'), + vs: path.resolve('../../out/vs') + } }, output: { filename: mainFile, diff --git a/addons/addon-ligatures/test/tsconfig.json b/addons/addon-ligatures/test/tsconfig.json index 25a92c8e4..6986e2b46 100644 --- a/addons/addon-ligatures/test/tsconfig.json +++ b/addons/addon-ligatures/test/tsconfig.json @@ -10,6 +10,11 @@ "sourceMap": true, "removeComments": true, "strict": true, + "paths": { + "*": [ + "./*" + ] + }, "types": [ "../../../node_modules/@types/mocha", "../../../node_modules/@types/node" diff --git a/addons/addon-progress/src/ProgressAddon.ts b/addons/addon-progress/src/ProgressAddon.ts index e474edca3..9d71179e1 100644 --- a/addons/addon-progress/src/ProgressAddon.ts +++ b/addons/addon-progress/src/ProgressAddon.ts @@ -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 '../../../src/common/Event'; +import type { Emitter, IEvent } from 'common/Event'; const enum ProgressType { diff --git a/addons/addon-progress/src/tsconfig.json b/addons/addon-progress/src/tsconfig.json index 3d64b7791..bd437f5b6 100644 --- a/addons/addon-progress/src/tsconfig.json +++ b/addons/addon-progress/src/tsconfig.json @@ -15,6 +15,12 @@ "../../../node_modules/@types/mocha" ], "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "@xterm/addon-progress": [ "../typings/addon-progress.d.ts" ] diff --git a/addons/addon-progress/test/tsconfig.json b/addons/addon-progress/test/tsconfig.json index 73f17c2a5..900a727ed 100644 --- a/addons/addon-progress/test/tsconfig.json +++ b/addons/addon-progress/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-progress/webpack.config.js b/addons/addon-progress/webpack.config.js index 250b04a49..1bf29bfd2 100644 --- a/addons/addon-progress/webpack.config.js +++ b/addons/addon-progress/webpack.config.js @@ -24,6 +24,11 @@ module.exports = { resolve: { modules: ['./node_modules'], extensions: [ '.js' ], + alias: { + common: path.resolve('../../out/common'), + browser: path.resolve('../../out/browser'), + vs: path.resolve('../../out/vs') + } }, output: { filename: mainFile, diff --git a/addons/addon-search/src/DecorationManager.ts b/addons/addon-search/src/DecorationManager.ts index 1675ef10f..a8ec12017 100644 --- a/addons/addon-search/src/DecorationManager.ts +++ b/addons/addon-search/src/DecorationManager.ts @@ -5,7 +5,7 @@ import type { Terminal, IDisposable, IDecoration } from '@xterm/xterm'; import type { ISearchDecorationOptions } from '@xterm/addon-search'; -import { dispose, Disposable, toDisposable } from '../../../src/common/Lifecycle'; +import { dispose, Disposable, toDisposable } from 'common/Lifecycle'; import type { ISearchResult } from './SearchEngine'; /** diff --git a/addons/addon-search/src/SearchAddon.ts b/addons/addon-search/src/SearchAddon.ts index 720ed26f0..cb4094743 100644 --- a/addons/addon-search/src/SearchAddon.ts +++ b/addons/addon-search/src/SearchAddon.ts @@ -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 '../../../src/common/Event'; -import { Disposable, MutableDisposable, toDisposable } from '../../../src/common/Lifecycle'; -import { disposableTimeout } from '../../../src/common/Async'; +import { Emitter, type IEvent } from 'common/Event'; +import { Disposable, MutableDisposable, toDisposable } from 'common/Lifecycle'; +import { disposableTimeout } from 'common/Async'; import { SearchLineCache } from './SearchLineCache'; import { SearchState } from './SearchState'; import { SearchEngine, type ISearchResult } from './SearchEngine'; diff --git a/addons/addon-search/src/SearchEngine.test.ts b/addons/addon-search/src/SearchEngine.test.ts index e2ab9939b..b3cea8f54 100644 --- a/addons/addon-search/src/SearchEngine.test.ts +++ b/addons/addon-search/src/SearchEngine.test.ts @@ -5,9 +5,9 @@ import { assert } from 'chai'; import { SearchEngine } from './SearchEngine'; import { SearchLineCache } from './SearchLineCache'; -import { Terminal } from '../../../src/browser/public/Terminal'; +import { Terminal } from 'browser/public/Terminal'; import type { ISearchOptions } from '@xterm/addon-search'; -import { DisposableStore } from '../../../src/common/Lifecycle'; +import { DisposableStore } from 'common/Lifecycle'; function writeP(terminal: Terminal, data: string): Promise { return new Promise(r => terminal.write(data, r)); diff --git a/addons/addon-search/src/SearchLineCache.test.ts b/addons/addon-search/src/SearchLineCache.test.ts index 1a465858c..77f64c81e 100644 --- a/addons/addon-search/src/SearchLineCache.test.ts +++ b/addons/addon-search/src/SearchLineCache.test.ts @@ -4,8 +4,8 @@ */ import { assert } from 'chai'; import { SearchLineCache, LineCacheEntry } from './SearchLineCache'; -import { Terminal } from '../../../src/browser/public/Terminal'; -import { timeout } from '../../../src/common/Async'; +import { Terminal } from 'browser/public/Terminal'; +import { timeout } from 'common/Async'; function writeP(terminal: Terminal, data: string): Promise { return new Promise(r => terminal.write(data, r)); diff --git a/addons/addon-search/src/SearchLineCache.ts b/addons/addon-search/src/SearchLineCache.ts index 1b590ec74..526f4bfcc 100644 --- a/addons/addon-search/src/SearchLineCache.ts +++ b/addons/addon-search/src/SearchLineCache.ts @@ -4,8 +4,8 @@ */ import type { Terminal } from '@xterm/xterm'; -import { combinedDisposable, Disposable, MutableDisposable, toDisposable } from '../../../src/common/Lifecycle'; -import { disposableTimeout } from '../../../src/common/Async'; +import { combinedDisposable, Disposable, MutableDisposable, toDisposable } from 'common/Lifecycle'; +import { disposableTimeout } from 'common/Async'; export type LineCacheEntry = [ /** diff --git a/addons/addon-search/src/SearchResultTracker.ts b/addons/addon-search/src/SearchResultTracker.ts index 9c7997741..285345b7a 100644 --- a/addons/addon-search/src/SearchResultTracker.ts +++ b/addons/addon-search/src/SearchResultTracker.ts @@ -5,8 +5,8 @@ import type { ISearchResultChangeEvent } from '@xterm/addon-search'; import type { IDisposable } from '@xterm/xterm'; -import { Emitter, type IEvent } from '../../../src/common/Event'; -import { Disposable } from '../../../src/common/Lifecycle'; +import { Emitter, type IEvent } from 'common/Event'; +import { Disposable } from 'common/Lifecycle'; import type { ISearchResult } from './SearchEngine'; /** diff --git a/addons/addon-search/src/tsconfig.json b/addons/addon-search/src/tsconfig.json index 7e05af738..9817710fa 100644 --- a/addons/addon-search/src/tsconfig.json +++ b/addons/addon-search/src/tsconfig.json @@ -15,6 +15,12 @@ "../../../node_modules/@types/mocha" ], "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "@xterm/addon-search" : [ "../typings/addon-search.d.ts" ] diff --git a/addons/addon-search/test/tsconfig.json b/addons/addon-search/test/tsconfig.json index 73f17c2a5..900a727ed 100644 --- a/addons/addon-search/test/tsconfig.json +++ b/addons/addon-search/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-search/webpack.config.js b/addons/addon-search/webpack.config.js index 9410c84d0..adc3d4bdb 100644 --- a/addons/addon-search/webpack.config.js +++ b/addons/addon-search/webpack.config.js @@ -24,6 +24,10 @@ module.exports = { resolve: { modules: ['./node_modules'], extensions: [ '.js' ], + alias: { + common: path.resolve('../../out/common'), + vs: path.resolve('../../out/vs') + } }, output: { filename: mainFile, diff --git a/addons/addon-serialize/benchmark/SerializeAddon.benchmark.ts b/addons/addon-serialize/benchmark/SerializeAddon.benchmark.ts index 0b0130cca..b60dba1dd 100644 --- a/addons/addon-serialize/benchmark/SerializeAddon.benchmark.ts +++ b/addons/addon-serialize/benchmark/SerializeAddon.benchmark.ts @@ -6,8 +6,8 @@ import { perfContext, before, ThroughputRuntimeCase } from 'xterm-benchmark'; import { spawn } from 'node-pty'; -import { Utf8ToUtf32, stringFromCodePoint } from '../../../src/common/input/TextDecoder'; -import { Terminal } from '../../../src/browser/public/Terminal'; +import { Utf8ToUtf32, stringFromCodePoint } from 'common/input/TextDecoder'; +import { Terminal } from 'browser/public/Terminal'; import { SerializeAddon } from 'SerializeAddon'; class TestTerminal extends Terminal { diff --git a/addons/addon-serialize/benchmark/tsconfig.json b/addons/addon-serialize/benchmark/tsconfig.json index f187b3c8f..ad7ee6d04 100644 --- a/addons/addon-serialize/benchmark/tsconfig.json +++ b/addons/addon-serialize/benchmark/tsconfig.json @@ -6,36 +6,24 @@ ], "rootDir": "..", "outDir": "../out-benchmark", - "types": [ - "../../../node_modules/@types/node" - ], + "types": ["../../../node_modules/@types/node"], "moduleResolution": "nodenext", "strict": false, "target": "es2021", "module": "nodenext", "paths": { - "SerializeAddon": [ - "../src/SerializeAddon" - ], + "common/*": ["../../../src/common/*"], + "browser/*": ["../../../src/browser/*"], + "SerializeAddon": ["../src/SerializeAddon"], "@xterm/addon-serialize": [ "../typings/addon-serialize.d.ts" ] } }, - "include": [ - "../**/*", - "../../../typings/xterm.d.ts" - ], - "exclude": [ - "../../../**/*test.ts", - "../../**/*api.ts" - ], + "include": ["../**/*", "../../../typings/xterm.d.ts"], + "exclude": ["../../../**/*test.ts", "../../**/*api.ts"], "references": [ - { - "path": "../../../src/common" - }, - { - "path": "../../../src/browser" - } + { "path": "../../../src/common" }, + { "path": "../../../src/browser" } ] } diff --git a/addons/addon-serialize/src/SerializeAddon.test.ts b/addons/addon-serialize/src/SerializeAddon.test.ts index 0cfc83258..4f4fd5461 100644 --- a/addons/addon-serialize/src/SerializeAddon.test.ts +++ b/addons/addon-serialize/src/SerializeAddon.test.ts @@ -6,10 +6,10 @@ import jsdom = require('jsdom'); import { assert } from 'chai'; import { SerializeAddon } from './SerializeAddon'; -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'; +import { Terminal } from 'browser/public/Terminal'; +import { SelectionModel } from 'browser/selection/SelectionModel'; +import { IBufferService } from 'common/services/Services'; +import { ThemeService } from 'browser/services/ThemeService'; function sgr(...seq: string[]): string { return `\x1b[${seq.join(';')}m`; diff --git a/addons/addon-serialize/src/SerializeAddon.ts b/addons/addon-serialize/src/SerializeAddon.ts index fbcc65cfa..4980c8eda 100644 --- a/addons/addon-serialize/src/SerializeAddon.ts +++ b/addons/addon-serialize/src/SerializeAddon.ts @@ -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 '../../../src/common/Types'; -import { DEFAULT_ANSI_COLORS } from '../../../src/browser/Types'; -import { UnderlineStyle } from '../../../src/common/buffer/Constants'; +import { IAttributeData, IColor } from 'common/Types'; +import { DEFAULT_ANSI_COLORS } from 'browser/Types'; +import { UnderlineStyle } from 'common/buffer/Constants'; function constrain(value: number, low: number, high: number): number { return Math.max(low, Math.min(value, high)); diff --git a/addons/addon-serialize/src/tsconfig.json b/addons/addon-serialize/src/tsconfig.json index 8176e660e..725647366 100644 --- a/addons/addon-serialize/src/tsconfig.json +++ b/addons/addon-serialize/src/tsconfig.json @@ -11,6 +11,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "@xterm/addon-serialize": [ "../typings/addon-serialize.d.ts" ] diff --git a/addons/addon-serialize/test/tsconfig.json b/addons/addon-serialize/test/tsconfig.json index 9d3f4722c..769909b19 100644 --- a/addons/addon-serialize/test/tsconfig.json +++ b/addons/addon-serialize/test/tsconfig.json @@ -9,6 +9,14 @@ "outDir": "../out-test", "sourceMap": true, "removeComments": true, + "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ] + }, "strict": true, "types": [ "../../../node_modules/@types/node" diff --git a/addons/addon-serialize/webpack.config.js b/addons/addon-serialize/webpack.config.js index c38ab9f2b..837a73a38 100644 --- a/addons/addon-serialize/webpack.config.js +++ b/addons/addon-serialize/webpack.config.js @@ -24,6 +24,10 @@ module.exports = { resolve: { modules: ['./node_modules'], extensions: [ '.js' ], + alias: { + common: path.resolve('../../out/common'), + browser: path.resolve('../../out/browser') + } }, output: { filename: mainFile, diff --git a/addons/addon-unicode-graphemes/benchmark/UnicodeGraphemeAddon.benchmark.ts b/addons/addon-unicode-graphemes/benchmark/UnicodeGraphemeAddon.benchmark.ts index 74b434814..7538b9344 100644 --- a/addons/addon-unicode-graphemes/benchmark/UnicodeGraphemeAddon.benchmark.ts +++ b/addons/addon-unicode-graphemes/benchmark/UnicodeGraphemeAddon.benchmark.ts @@ -6,8 +6,8 @@ import { perfContext, before, ThroughputRuntimeCase } from 'xterm-benchmark'; import { spawn } from 'node-pty'; -import { Utf8ToUtf32, stringFromCodePoint } from '../../../src/common/input/TextDecoder'; -import { CoreBrowserTerminal } from '../../../src/browser/CoreBrowserTerminal'; +import { Utf8ToUtf32, stringFromCodePoint } from 'common/input/TextDecoder'; +import { CoreBrowserTerminal } from 'browser/CoreBrowserTerminal'; import { UnicodeGraphemeProvider } from 'UnicodeGraphemeProvider'; diff --git a/addons/addon-unicode-graphemes/benchmark/tsconfig.json b/addons/addon-unicode-graphemes/benchmark/tsconfig.json index 75fda6d08..1781ca318 100644 --- a/addons/addon-unicode-graphemes/benchmark/tsconfig.json +++ b/addons/addon-unicode-graphemes/benchmark/tsconfig.json @@ -1,41 +1,26 @@ { "compilerOptions": { - "lib": [ - "dom", - "es6" - ], + "lib": ["dom", "es6"], "rootDir": "..", "outDir": "../out-benchmark", - "types": [ - "../../../node_modules/@types/node" - ], + "types": ["../../../node_modules/@types/node"], "moduleResolution": "nodenext", "strict": false, "target": "es2015", "module": "nodenext", "paths": { - "UnicodeGraphemeProvider": [ - "../src/UnicodeGraphemeProvider" - ], + "common/*": ["../../../src/common/*"], + "browser/*": ["../../../src/browser/*"], + "UnicodeGraphemeProvider": ["../src/UnicodeGraphemeProvider"], "@xterm/addon-unicode-graphemes": [ "../typings/addon-unicode-graphemes.d.ts" ] } }, - "include": [ - "../**/*", - "../../../typings/xterm.d.ts" - ], - "exclude": [ - "../../../**/*test.ts", - "../../**/*api.ts" - ], + "include": ["../**/*", "../../../typings/xterm.d.ts"], + "exclude": ["../../../**/*test.ts", "../../**/*api.ts"], "references": [ - { - "path": "../../../src/common" - }, - { - "path": "../../../src/browser" - } + { "path": "../../../src/common" }, + { "path": "../../../src/browser" } ] } diff --git a/addons/addon-unicode-graphemes/src/UnicodeGraphemeProvider.ts b/addons/addon-unicode-graphemes/src/UnicodeGraphemeProvider.ts index ed258805d..3d5717a0f 100644 --- a/addons/addon-unicode-graphemes/src/UnicodeGraphemeProvider.ts +++ b/addons/addon-unicode-graphemes/src/UnicodeGraphemeProvider.ts @@ -4,8 +4,8 @@ */ import { IUnicodeVersionProvider } from '@xterm/xterm'; -import { UnicodeCharProperties, UnicodeCharWidth } from '../../../src/common/services/Services'; -import { UnicodeService } from '../../../src/common/services/UnicodeService'; +import { UnicodeCharProperties, UnicodeCharWidth } from 'common/services/Services'; +import { UnicodeService } from 'common/services/UnicodeService'; import * as UC from './third-party/UnicodeProperties'; export class UnicodeGraphemeProvider implements IUnicodeVersionProvider { diff --git a/addons/addon-unicode-graphemes/src/tsconfig.json b/addons/addon-unicode-graphemes/src/tsconfig.json index de62f95cb..824909dbd 100644 --- a/addons/addon-unicode-graphemes/src/tsconfig.json +++ b/addons/addon-unicode-graphemes/src/tsconfig.json @@ -12,6 +12,9 @@ "removeComments": true, "strict": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], "@xterm/addon-unicode-graphemes": [ "../typings/addon-unicode-graphemes.d.ts" ] diff --git a/addons/addon-unicode-graphemes/test/tsconfig.json b/addons/addon-unicode-graphemes/test/tsconfig.json index 9d3f4722c..769909b19 100644 --- a/addons/addon-unicode-graphemes/test/tsconfig.json +++ b/addons/addon-unicode-graphemes/test/tsconfig.json @@ -9,6 +9,14 @@ "outDir": "../out-test", "sourceMap": true, "removeComments": true, + "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ] + }, "strict": true, "types": [ "../../../node_modules/@types/node" diff --git a/addons/addon-unicode-graphemes/webpack.config.js b/addons/addon-unicode-graphemes/webpack.config.js index b3934006e..35e111d53 100644 --- a/addons/addon-unicode-graphemes/webpack.config.js +++ b/addons/addon-unicode-graphemes/webpack.config.js @@ -24,6 +24,10 @@ module.exports = { resolve: { modules: ['./node_modules'], extensions: [ '.js' ], + alias: { + common: path.resolve('../../out/common'), + vs: path.resolve('../../out/vs') + } }, output: { filename: mainFile, diff --git a/addons/addon-unicode11/src/UnicodeV11.ts b/addons/addon-unicode11/src/UnicodeV11.ts index d80b60b80..79568960a 100644 --- a/addons/addon-unicode11/src/UnicodeV11.ts +++ b/addons/addon-unicode11/src/UnicodeV11.ts @@ -4,8 +4,8 @@ */ import { IUnicodeVersionProvider } from '@xterm/xterm'; -import { UnicodeCharProperties, UnicodeCharWidth } from '../../../src/common/services/Services'; -import { UnicodeService } from '../../../src/common/services/UnicodeService'; +import { UnicodeCharProperties, UnicodeCharWidth } from 'common/services/Services'; +import { UnicodeService } from 'common/services/UnicodeService'; const BMP_COMBINING = [ [0x0300, 0x036F], [0x0483, 0x0489], [0x0591, 0x05BD], diff --git a/addons/addon-unicode11/src/tsconfig.json b/addons/addon-unicode11/src/tsconfig.json index a5b97d43e..31286fb0f 100644 --- a/addons/addon-unicode11/src/tsconfig.json +++ b/addons/addon-unicode11/src/tsconfig.json @@ -12,8 +12,14 @@ "removeComments": true, "strict": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], "@xterm/addon-unicode11": [ "../typings/addon-unicode11.d.ts" + ], + "*": [ + "./*" ] }, "types": [ diff --git a/addons/addon-unicode11/test/tsconfig.json b/addons/addon-unicode11/test/tsconfig.json index 73f17c2a5..900a727ed 100644 --- a/addons/addon-unicode11/test/tsconfig.json +++ b/addons/addon-unicode11/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-unicode11/webpack.config.js b/addons/addon-unicode11/webpack.config.js index f3ae10eef..9b66049fd 100644 --- a/addons/addon-unicode11/webpack.config.js +++ b/addons/addon-unicode11/webpack.config.js @@ -24,6 +24,10 @@ module.exports = { resolve: { modules: ['./node_modules'], extensions: [ '.js' ], + alias: { + common: path.resolve('../../out/common'), + vs: path.resolve('../../out/vs') + } }, output: { filename: mainFile, diff --git a/addons/addon-web-fonts/test/tsconfig.json b/addons/addon-web-fonts/test/tsconfig.json index 66097910d..59664e32b 100644 --- a/addons/addon-web-fonts/test/tsconfig.json +++ b/addons/addon-web-fonts/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-web-links/test/tsconfig.json b/addons/addon-web-links/test/tsconfig.json index 66097910d..59664e32b 100644 --- a/addons/addon-web-links/test/tsconfig.json +++ b/addons/addon-web-links/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-webgl/src/CellColorResolver.ts b/addons/addon-webgl/src/CellColorResolver.ts index 52e19a823..3a4661cc3 100644 --- a/addons/addon-webgl/src/CellColorResolver.ts +++ b/addons/addon-webgl/src/CellColorResolver.ts @@ -1,12 +1,12 @@ -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 { ISelectionRenderModel } from 'browser/renderer/shared/Types'; +import { ICoreBrowserService, IThemeService } from 'browser/services/Services'; +import { ReadonlyColorSet } from 'browser/Types'; +import { Attributes, BgFlags, ExtFlags, FgFlags, NULL_CELL_CODE, UnderlineStyle } from 'common/buffer/Constants'; +import { IDecorationService, IOptionsService } from 'common/services/Services'; +import { ICellData } from 'common/Types'; import { Terminal } from '@xterm/xterm'; -import { rgba } from '../../../src/common/Color'; -import { treatGlyphAsBackgroundColor } from '../../../src/browser/renderer/shared/RendererUtils'; +import { rgba } from 'common/Color'; +import { treatGlyphAsBackgroundColor } from 'browser/renderer/shared/RendererUtils'; import { blockPatternCodepoints } from './customGlyphs/CustomGlyphDefinitions'; // Work variables to avoid garbage collection diff --git a/addons/addon-webgl/src/CharAtlasCache.ts b/addons/addon-webgl/src/CharAtlasCache.ts index 9aa165f12..823a74cc6 100644 --- a/addons/addon-webgl/src/CharAtlasCache.ts +++ b/addons/addon-webgl/src/CharAtlasCache.ts @@ -5,10 +5,10 @@ import { TextureAtlas } from './TextureAtlas'; import { ITerminalOptions, Terminal } from '@xterm/xterm'; -import { ITerminal, ReadonlyColorSet } from '../../../src/browser/Types'; +import { ITerminal, ReadonlyColorSet } from 'browser/Types'; import { ICharAtlasConfig, ITextureAtlas } from './Types'; import { generateConfig, configEquals } from './CharAtlasUtils'; -import type { ILogService } from '../../../src/common/services/Services'; +import type { ILogService } from 'common/services/Services'; interface ITextureAtlasCacheEntry { atlas: ITextureAtlas; diff --git a/addons/addon-webgl/src/CharAtlasUtils.test.ts b/addons/addon-webgl/src/CharAtlasUtils.test.ts index 572989410..0a135746e 100644 --- a/addons/addon-webgl/src/CharAtlasUtils.test.ts +++ b/addons/addon-webgl/src/CharAtlasUtils.test.ts @@ -6,8 +6,8 @@ import { assert } from 'chai'; import { configEquals } from './CharAtlasUtils'; import { ICharAtlasConfig } from './Types'; -import { NULL_COLOR } from '../../../src/common/Color'; -import { IColor } from '../../../src/common/Types'; +import { NULL_COLOR } from 'common/Color'; +import { IColor } from 'common/Types'; function createTestConfig(overrides: Partial = {}): ICharAtlasConfig { const color: IColor = { css: '#ffffff', rgba: 0xffffffff }; diff --git a/addons/addon-webgl/src/CharAtlasUtils.ts b/addons/addon-webgl/src/CharAtlasUtils.ts index 6a98c9a8d..d9ca69b39 100644 --- a/addons/addon-webgl/src/CharAtlasUtils.ts +++ b/addons/addon-webgl/src/CharAtlasUtils.ts @@ -4,10 +4,10 @@ */ import { ICharAtlasConfig } from './Types'; -import { Attributes } from '../../../src/common/buffer/Constants'; +import { Attributes } from 'common/buffer/Constants'; import { ITerminalOptions } from '@xterm/xterm'; -import { IColorSet, ReadonlyColorSet } from '../../../src/browser/Types'; -import { NULL_COLOR } from '../../../src/common/Color'; +import { IColorSet, ReadonlyColorSet } from 'browser/Types'; +import { NULL_COLOR } from 'common/Color'; export function generateConfig(deviceCellWidth: number, deviceCellHeight: number, deviceCharWidth: number, deviceCharHeight: number, options: Required, colors: ReadonlyColorSet, devicePixelRatio: number, deviceMaxTextureSize: number, customGlyphs: boolean = true): ICharAtlasConfig { // null out some fields that don't matter diff --git a/addons/addon-webgl/src/Constants.ts b/addons/addon-webgl/src/Constants.ts index e37aecdb4..a00434d61 100644 --- a/addons/addon-webgl/src/Constants.ts +++ b/addons/addon-webgl/src/Constants.ts @@ -3,7 +3,7 @@ * @license MIT */ -import { isFirefox, isLegacyEdge } from '../../../src/common/Platform'; +import { isFirefox, isLegacyEdge } from 'common/Platform'; export const DIM_OPACITY = 0.5; // The text baseline is set conditionally by browser. Using 'ideographic' for Firefox or Legacy Edge diff --git a/addons/addon-webgl/src/CursorBlinkStateManager.ts b/addons/addon-webgl/src/CursorBlinkStateManager.ts index 1339dae03..688aee7b7 100644 --- a/addons/addon-webgl/src/CursorBlinkStateManager.ts +++ b/addons/addon-webgl/src/CursorBlinkStateManager.ts @@ -3,8 +3,8 @@ * @license MIT */ -import { RendererConstants } from '../../../src/browser/renderer/shared/Constants'; -import { ICoreBrowserService } from '../../../src/browser/services/Services'; +import { RendererConstants } from 'browser/renderer/shared/Constants'; +import { ICoreBrowserService } from 'browser/services/Services'; const enum Constants { /** diff --git a/addons/addon-webgl/src/DevicePixelObserver.ts b/addons/addon-webgl/src/DevicePixelObserver.ts index 50ed09941..dcd8de0a6 100644 --- a/addons/addon-webgl/src/DevicePixelObserver.ts +++ b/addons/addon-webgl/src/DevicePixelObserver.ts @@ -3,7 +3,7 @@ * @license MIT */ -import { toDisposable, IDisposable } from '../../../src/common/Lifecycle'; +import { toDisposable, IDisposable } from '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 diff --git a/addons/addon-webgl/src/GlyphRenderer.ts b/addons/addon-webgl/src/GlyphRenderer.ts index 915979206..650fc451a 100644 --- a/addons/addon-webgl/src/GlyphRenderer.ts +++ b/addons/addon-webgl/src/GlyphRenderer.ts @@ -3,14 +3,14 @@ * @license MIT */ import { TextureAtlas } from './TextureAtlas'; -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 { IRenderDimensions } from 'browser/renderer/shared/Types'; +import { NULL_CELL_CODE } from 'common/buffer/Constants'; +import { Disposable, toDisposable } from '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 '../../../src/common/services/Services'; -import { allowRescaling, throwIfFalsy } from '../../../src/browser/renderer/shared/RendererUtils'; +import type { ILogService, IOptionsService } from 'common/services/Services'; +import { allowRescaling, throwIfFalsy } from 'browser/renderer/shared/RendererUtils'; interface IVertices { attributes: Float32Array; diff --git a/addons/addon-webgl/src/RectangleRenderer.ts b/addons/addon-webgl/src/RectangleRenderer.ts index 0eb45a11c..eebfda3b3 100644 --- a/addons/addon-webgl/src/RectangleRenderer.ts +++ b/addons/addon-webgl/src/RectangleRenderer.ts @@ -3,18 +3,18 @@ * @license MIT */ -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 { IRenderDimensions } from 'browser/renderer/shared/Types'; +import { IThemeService } from 'browser/services/Services'; +import { ReadonlyColorSet } from 'browser/Types'; +import { Attributes, FgFlags } from 'common/buffer/Constants'; +import { Disposable, toDisposable } from 'common/Lifecycle'; +import { IColor } from '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 '../../../src/browser/renderer/shared/RendererUtils'; -import type { ILogService } from '../../../src/common/services/Services'; +import { throwIfFalsy } from 'browser/renderer/shared/RendererUtils'; +import type { ILogService } from 'common/services/Services'; const enum VertexAttribLocations { POSITION = 0, diff --git a/addons/addon-webgl/src/RenderModel.ts b/addons/addon-webgl/src/RenderModel.ts index e1fe54628..6113a9bdc 100644 --- a/addons/addon-webgl/src/RenderModel.ts +++ b/addons/addon-webgl/src/RenderModel.ts @@ -4,8 +4,8 @@ */ import { ICursorRenderModel, IRenderModel } from './Types'; -import { ISelectionRenderModel } from '../../../src/browser/renderer/shared/Types'; -import { createSelectionRenderModel } from '../../../src/browser/renderer/shared/SelectionRenderModel'; +import { ISelectionRenderModel } from 'browser/renderer/shared/Types'; +import { createSelectionRenderModel } from 'browser/renderer/shared/SelectionRenderModel'; export const enum RenderModelConstants { INDICIES_PER_CELL = 4, diff --git a/addons/addon-webgl/src/TextureAtlas.ts b/addons/addon-webgl/src/TextureAtlas.ts index a6dda7b71..dab0b1c85 100644 --- a/addons/addon-webgl/src/TextureAtlas.ts +++ b/addons/addon-webgl/src/TextureAtlas.ts @@ -3,19 +3,19 @@ * @license MIT */ -import { IColorContrastCache } from '../../../src/browser/Types'; +import { IColorContrastCache } from 'browser/Types'; import { DIM_OPACITY, TEXT_BASELINE } from './Constants'; import { tryDrawCustomGlyph } from './customGlyphs/CustomGlyphRasterizer'; -import { computeNextVariantOffset, treatGlyphAsBackgroundColor, isPowerlineGlyph, isRestrictedPowerlineGlyph, throwIfFalsy } from '../../../src/browser/renderer/shared/RendererUtils'; +import { computeNextVariantOffset, treatGlyphAsBackgroundColor, isPowerlineGlyph, isRestrictedPowerlineGlyph, throwIfFalsy } from 'browser/renderer/shared/RendererUtils'; import { IBoundingBox, ICharAtlasConfig, IRasterizedGlyph, ITextureAtlas } from './Types'; -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'; +import { NULL_COLOR, channels, color, rgba } from 'common/Color'; +import { FourKeyMap } from 'common/MultiKeyMap'; +import { IdleTaskQueue } from 'common/TaskQueue'; +import { IColor } from 'common/Types'; +import { AttributeData } from 'common/buffer/AttributeData'; +import { Attributes, DEFAULT_COLOR, DEFAULT_EXT, UnderlineStyle } from 'common/buffer/Constants'; +import { ILogService, IUnicodeService } from 'common/services/Services'; +import { Emitter } from 'common/Event'; /** * A shared object which is used to draw nothing for a particular cell. diff --git a/addons/addon-webgl/src/Types.ts b/addons/addon-webgl/src/Types.ts index 913d9c8ab..294582e37 100644 --- a/addons/addon-webgl/src/Types.ts +++ b/addons/addon-webgl/src/Types.ts @@ -4,10 +4,10 @@ */ import { FontWeight } from '@xterm/xterm'; -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'; +import { IColorSet } from 'browser/Types'; +import { ISelectionRenderModel } from 'browser/renderer/shared/Types'; +import { CursorInactiveStyle, CursorStyle, type IDisposable } from 'common/Types'; +import type { IEvent } from 'common/Event'; export interface IRenderModel { cells: Uint32Array; diff --git a/addons/addon-webgl/src/WebglAddon.ts b/addons/addon-webgl/src/WebglAddon.ts index b370d2955..624c9ea38 100644 --- a/addons/addon-webgl/src/WebglAddon.ts +++ b/addons/addon-webgl/src/WebglAddon.ts @@ -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 '../../../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 { ICharacterJoinerService, ICharSizeService, ICoreBrowserService, IRenderService, IThemeService } from 'browser/services/Services'; +import { ITerminal } from 'browser/Types'; +import { Disposable, toDisposable } from 'common/Lifecycle'; +import { getSafariVersion, isSafari } from 'common/Platform'; +import { ICoreService, IDecorationService, ILogService, IOptionsService } from 'common/services/Services'; import { IWebGL2RenderingContext } from './Types'; import { WebglRenderer } from './WebglRenderer'; -import { Emitter, EventUtils } from '../../../src/common/Event'; +import { Emitter, EventUtils } from 'common/Event'; export class WebglAddon extends Disposable implements ITerminalAddon, IWebglApi { private _terminal?: Terminal; diff --git a/addons/addon-webgl/src/WebglRenderer.ts b/addons/addon-webgl/src/WebglRenderer.ts index 1302d6be2..9c2f459df 100644 --- a/addons/addon-webgl/src/WebglRenderer.ts +++ b/addons/addon-webgl/src/WebglRenderer.ts @@ -3,19 +3,19 @@ * @license MIT */ -import { ITerminal } from '../../../src/browser/Types'; +import { ITerminal } from 'browser/Types'; import { CellColorResolver } from './CellColorResolver'; import { acquireTextureAtlas, removeTerminalFromCache } from './CharAtlasCache'; import { CursorBlinkStateManager } from './CursorBlinkStateManager'; import { observeDevicePixelDimensions } from './DevicePixelObserver'; -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 { IRenderDimensions, IRenderer, IRequestRedrawEvent } from 'browser/renderer/shared/Types'; +import { ICharSizeService, ICharacterJoinerService, ICoreBrowserService, IThemeService } from 'browser/services/Services'; +import { CharData, IBufferLine, ICellData } from 'common/Types'; +import { AttributeData } from 'common/buffer/AttributeData'; +import { CellData } from 'common/buffer/CellData'; +import { Attributes, Content, FgFlags, NULL_CELL_CHAR, NULL_CELL_CODE } from 'common/buffer/Constants'; +import { TextBlinkStateManager } from 'browser/renderer/shared/TextBlinkStateManager'; +import { ICoreService, IDecorationService, ILogService, IOptionsService } from '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 '../../../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'; +import { Emitter, EventUtils } from 'common/Event'; +import { addDisposableListener } from 'browser/Dom'; +import { combinedDisposable, Disposable, MutableDisposable, toDisposable } from 'common/Lifecycle'; +import { createRenderDimensions } from 'browser/renderer/shared/RendererUtils'; const enum Constants { MERGE_RETRY_LIMIT = 32 diff --git a/addons/addon-webgl/src/WebglUtils.ts b/addons/addon-webgl/src/WebglUtils.ts index b106f7d56..9944c6bd3 100644 --- a/addons/addon-webgl/src/WebglUtils.ts +++ b/addons/addon-webgl/src/WebglUtils.ts @@ -3,8 +3,8 @@ * @license MIT */ -import { throwIfFalsy } from '../../../src/browser/renderer/shared/RendererUtils'; -import type { ILogService } from '../../../src/common/services/Services'; +import { throwIfFalsy } from 'browser/renderer/shared/RendererUtils'; +import type { ILogService } from 'common/services/Services'; /** * A matrix that when multiplies will translate 0-1 coordinates (left to right, diff --git a/addons/addon-webgl/src/customGlyphs/CustomGlyphRasterizer.ts b/addons/addon-webgl/src/customGlyphs/CustomGlyphRasterizer.ts index d1c9fd83c..357d512d2 100644 --- a/addons/addon-webgl/src/customGlyphs/CustomGlyphRasterizer.ts +++ b/addons/addon-webgl/src/customGlyphs/CustomGlyphRasterizer.ts @@ -3,8 +3,8 @@ * @license MIT */ -import { throwIfFalsy } from '../../../../src/browser/renderer/shared/RendererUtils'; -import type { ILogService } from '../../../../src/common/services/Services'; +import { throwIfFalsy } from 'browser/renderer/shared/RendererUtils'; +import type { ILogService } from 'common/services/Services'; import { customGlyphDefinitions } from './CustomGlyphDefinitions'; import { CustomGlyphDefinitionType, CustomGlyphScaleType, CustomGlyphVectorType, type CustomGlyphDefinitionPart, type CustomGlyphPathDrawFunctionDefinition, type CustomGlyphPatternDefinition, type ICustomGlyphSolidOctantBlockVector, type ICustomGlyphVectorShape } from './Types'; diff --git a/addons/addon-webgl/src/renderLayer/BaseRenderLayer.ts b/addons/addon-webgl/src/renderLayer/BaseRenderLayer.ts index 4c286284d..5b1161532 100644 --- a/addons/addon-webgl/src/renderLayer/BaseRenderLayer.ts +++ b/addons/addon-webgl/src/renderLayer/BaseRenderLayer.ts @@ -3,16 +3,16 @@ * @license MIT */ -import { ReadonlyColorSet } from '../../../../src/browser/Types'; +import { ReadonlyColorSet } from 'browser/Types'; import { acquireTextureAtlas } from '../CharAtlasCache'; -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 { IRenderDimensions } from 'browser/renderer/shared/Types'; +import { ICoreBrowserService, IThemeService } from 'browser/services/Services'; +import { Disposable, toDisposable } from 'common/Lifecycle'; +import { CellData } from 'common/buffer/CellData'; +import { IOptionsService } from 'common/services/Services'; import { Terminal } from '@xterm/xterm'; import { IRenderLayer } from './Types'; -import { throwIfFalsy } from '../../../../src/browser/renderer/shared/RendererUtils'; +import { throwIfFalsy } from 'browser/renderer/shared/RendererUtils'; import { TEXT_BASELINE } from '../Constants'; import type { ITextureAtlas } from '../Types'; diff --git a/addons/addon-webgl/src/renderLayer/LinkRenderLayer.ts b/addons/addon-webgl/src/renderLayer/LinkRenderLayer.ts index e076b9bd7..faceac44f 100644 --- a/addons/addon-webgl/src/renderLayer/LinkRenderLayer.ts +++ b/addons/addon-webgl/src/renderLayer/LinkRenderLayer.ts @@ -4,11 +4,11 @@ */ import { is256Color } from '../CharAtlasUtils'; -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 { INVERTED_DEFAULT_COLOR } from 'browser/renderer/shared/Constants'; +import { IRenderDimensions } from 'browser/renderer/shared/Types'; +import { ICoreBrowserService, IThemeService } from 'browser/services/Services'; +import { ILinkifier2, ILinkifierEvent } from 'browser/Types'; +import { IOptionsService } from 'common/services/Services'; import { Terminal } from '@xterm/xterm'; import { BaseRenderLayer } from './BaseRenderLayer'; diff --git a/addons/addon-webgl/src/renderLayer/Types.ts b/addons/addon-webgl/src/renderLayer/Types.ts index 74cd5e27b..feeceb145 100644 --- a/addons/addon-webgl/src/renderLayer/Types.ts +++ b/addons/addon-webgl/src/renderLayer/Types.ts @@ -4,7 +4,7 @@ */ import { IDisposable, Terminal } from '@xterm/xterm'; -import { IRenderDimensions } from '../../../../src/browser/renderer/shared/Types'; +import { IRenderDimensions } from 'browser/renderer/shared/Types'; export interface IRenderLayer extends IDisposable { /** diff --git a/addons/addon-webgl/src/tsconfig.json b/addons/addon-webgl/src/tsconfig.json index 99154a1ab..7035daa86 100644 --- a/addons/addon-webgl/src/tsconfig.json +++ b/addons/addon-webgl/src/tsconfig.json @@ -11,8 +11,17 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "@xterm/addon-webgl": [ "../typings/addon-webgl.d.ts" + ], + "*": [ + "./*" ] }, "strict": true, diff --git a/addons/addon-webgl/test/tsconfig.json b/addons/addon-webgl/test/tsconfig.json index 3f3ca3dbc..73439ddc1 100644 --- a/addons/addon-webgl/test/tsconfig.json +++ b/addons/addon-webgl/test/tsconfig.json @@ -10,6 +10,12 @@ "sourceMap": true, "removeComments": true, "paths": { + "common/*": [ + "../../../src/common/*" + ], + "browser/*": [ + "../../../src/browser/*" + ], "*": [ "./*" ] diff --git a/addons/addon-webgl/webpack.config.js b/addons/addon-webgl/webpack.config.js index 81e2dc3a8..2eab992e7 100644 --- a/addons/addon-webgl/webpack.config.js +++ b/addons/addon-webgl/webpack.config.js @@ -24,6 +24,11 @@ module.exports = { resolve: { modules: ['./node_modules'], extensions: [ '.js' ], + alias: { + common: path.resolve('../../out/common'), + browser: path.resolve('../../out/browser'), + vs: path.resolve('../../out/vs') + } }, output: { filename: mainFile, diff --git a/bin/test_unit.js b/bin/test_unit.js index e7270e6b1..58fdd9a32 100644 --- a/bin/test_unit.js +++ b/bin/test_unit.js @@ -8,6 +8,10 @@ const path = require('path'); const COVERAGE_LINES_THRESHOLD = 40; +// Add `out-esbuild` to NODE_PATH so addon path-mapped imports (common/*, browser/*) resolve. +const env = { ...process.env }; +env.NODE_PATH = path.resolve(__dirname, '../out-esbuild'); + let testFiles = ['**/out-esbuild/**/*.test.js']; let flagArgs = []; @@ -42,7 +46,7 @@ if (checkCoverage) { args, { cwd: path.resolve(__dirname, '..'), - env: process.env, + env, shell: true, stdio: 'inherit' } @@ -55,7 +59,7 @@ const run = cp.spawnSync( [...testFiles, ...flagArgs], { cwd: path.resolve(__dirname, '..'), - env: process.env, + env, shell: true, stdio: 'inherit' }