Skip to content
4 changes: 3 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
"start": "node demo/start",
"start-zmodem": "node demo/zmodem/app",
"lint": "tslint 'src/**/*.ts' './demo/**/*.ts'",
"pretest": "npm run layering",
"test": "npm run mocha",
"posttest": "npm run lint",
"test-debug": "node --inspect-brk node_modules/.bin/gulp test",
Expand All @@ -64,6 +65,7 @@
"coveralls": "nyc report --reporter=text-lcov | coveralls",
"webpack": "gulp webpack",
"watch": "concurrently --kill-others-on-fail --names \"lib,css\" \"tsc -w\" \"gulp watch-css\"",
"watch-addons": "concurrently --kill-others-on-fail --names \"attach,fit,fullscreen,search,terminado,webLinks,winptyCompat,zmodem\" \"tsc -w -p ./src/addons/attach\" \"tsc -w -p ./src/addons/fit\" \"tsc -w -p ./src/addons/fullscreen\" \"tsc -w -p ./src/addons/search\" \"tsc -w -p ./src/addons/terminado\" \"tsc -w -p ./src/addons/webLinks\" \"tsc -w -p ./src/addons/winptyCompat\" \"tsc -w -p ./src/addons/zmodem\""
"watch-addons": "concurrently --kill-others-on-fail --names \"attach,fit,fullscreen,search,terminado,webLinks,winptyCompat,zmodem\" \"tsc -w -p ./src/addons/attach\" \"tsc -w -p ./src/addons/fit\" \"tsc -w -p ./src/addons/fullscreen\" \"tsc -w -p ./src/addons/search\" \"tsc -w -p ./src/addons/terminado\" \"tsc -w -p ./src/addons/webLinks\" \"tsc -w -p ./src/addons/winptyCompat\" \"tsc -w -p ./src/addons/zmodem\"",
"layering": "concurrently --kill-others-on-fail --names \"common,core\" \"tsc -p ./src/common\" \"tsc -p ./src/core\""
}
}
11 changes: 7 additions & 4 deletions src/addons/fit/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,20 @@
"target": "es5",
"lib": [
"dom",
"es6",
"es5"
],
"rootDir": ".",
"outDir": "../../../lib/addons/fit/",
"sourceMap": true,
"removeComments": true,
"declaration": true,
"preserveWatchOutput": true
"preserveWatchOutput": true,
"types": [
"../../node_modules/@types/mocha",
"../.."
]
},
"include": [
"**/*.ts",
"../../../typings/xterm.d.ts"
"**/*.ts"
]
}
11 changes: 7 additions & 4 deletions src/addons/fullscreen/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,20 @@
"target": "es5",
"lib": [
"dom",
"es6",
"es5"
],
"rootDir": ".",
"outDir": "../../../lib/addons/fullscreen/",
"sourceMap": true,
"removeComments": true,
"declaration": true,
"preserveWatchOutput": true
"preserveWatchOutput": true,
"types": [
"../../node_modules/@types/mocha",
"../.."
]
},
"include": [
"**/*.ts",
"../../../typings/xterm.d.ts"
"**/*.ts"
]
}
3 changes: 1 addition & 2 deletions src/addons/search/search.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,14 @@ import * as search from './search';
import { SearchHelper } from './SearchHelper';
import { ISearchOptions, ISearchResult } from './Interfaces';


class MockTerminalPlain {}

class MockTerminal {
private _core: any;
public searchHelper: TestSearchHelper;
public cols: number;
constructor(options: any) {
this._core = new (require('../../../lib/Terminal').Terminal)(options);
this._core = new (require('../../../lib/Terminal')).Terminal(options);
this.searchHelper = new TestSearchHelper(this as any);
this.cols = options.cols;
}
Expand Down
15 changes: 10 additions & 5 deletions src/addons/search/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,23 @@
"module": "commonjs",
"target": "es5",
"lib": [
"dom",
"es6",
"es5"
],
"rootDir": ".",
"outDir": "../../../lib/addons/search/",
"sourceMap": true,
"removeComments": true,
"declaration": true,
"preserveWatchOutput": true
"preserveWatchOutput": true,
"types": [
"../../node_modules/@types/mocha",
"../.."
]
},
"include": [
"**/*.ts",
"../../../typings/xterm.d.ts"
"**/*.ts"
],
"exclude": [
"**/*.test.ts"
]
}
12 changes: 7 additions & 5 deletions src/addons/terminado/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,20 @@
"module": "commonjs",
"target": "es5",
"lib": [
"dom",
"es6",
"es5"
],
"rootDir": ".",
"outDir": "../../../lib/addons/terminado/",
"sourceMap": true,
"removeComments": true,
"declaration": true,
"preserveWatchOutput": true
"preserveWatchOutput": true,
"types": [
"../../node_modules/@types/mocha",
"../.."
]
},
"include": [
"**/*.ts",
"../../../typings/xterm.d.ts"
"**/*.ts"
]
}
11 changes: 7 additions & 4 deletions src/addons/webLinks/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,20 @@
"target": "es5",
"lib": [
"dom",
"es6",
"es5",
],
"rootDir": ".",
"outDir": "../../../lib/addons/webLinks/",
"sourceMap": true,
"removeComments": true,
"declaration": true,
"preserveWatchOutput": true
"preserveWatchOutput": true,
"types": [
"../../node_modules/@types/mocha",
"../.."
]
},
"include": [
"**/*.ts",
"../../../typings/xterm.d.ts"
"**/*.ts"
]
}
12 changes: 7 additions & 5 deletions src/addons/winptyCompat/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,20 @@
"module": "commonjs",
"target": "es5",
"lib": [
"dom",
"es6",
"es5"
],
"rootDir": ".",
"outDir": "../../../lib/addons/winptyCompat/",
"sourceMap": true,
"removeComments": true,
"declaration": true,
"preserveWatchOutput": true
"preserveWatchOutput": true,
"types": [
"../../node_modules/@types/mocha",
"../.."
]
},
"include": [
"**/*.ts",
"../../../typings/xterm.d.ts"
"**/*.ts"
]
}
12 changes: 7 additions & 5 deletions src/addons/zmodem/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,20 @@
"module": "commonjs",
"target": "es5",
"lib": [
"dom",
"es6",
"es5"
],
"rootDir": ".",
"outDir": "../../../lib/addons/zmodem/",
"sourceMap": true,
"removeComments": true,
"declaration": true,
"preserveWatchOutput": true
"preserveWatchOutput": true,
"types": [
"../../node_modules/@types/mocha",
"../.."
]
},
"include": [
"**/*.ts",
"../../../typings/xterm.d.ts"
"**/*.ts"
]
}
2 changes: 1 addition & 1 deletion src/common/EventEmitter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export class EventEmitter extends Disposable implements IEventEmitter, IDisposab
super();
// Restore the previous events if available, this will happen if the
// constructor is called multiple times on the same object (terminal reset).
this._events = this._events || {};
this._events = (<any>this)._events || {};
}

public on(type: string, listener: XtermListener): void {
Expand Down
19 changes: 19 additions & 0 deletions src/common/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"compilerOptions": {
"target": "es5",
"lib": [
"es5"
],
"rootDir": ".",
"noEmit": true,
"strict": true,
"pretty": true,
"types": [
"../../node_modules/@types/mocha",
"../../"
]
},
"include": [
"./**/*"
]
}
4 changes: 2 additions & 2 deletions src/core/data/Charsets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ import { ICharset } from '../Types';
* to be represented within the terminal with only 8-bit encoding. See ISO 2022
* for a discussion on character sets. Only VT100 character sets are supported.
*/
export const CHARSETS: { [key: string]: ICharset } = {};
export const CHARSETS: { [key: string]: ICharset | null } = {};

/**
* The default character set, US.
*/
export const DEFAULT_CHARSET: ICharset = CHARSETS['B'];
export const DEFAULT_CHARSET: ICharset | null = CHARSETS['B'];

/**
* DEC Special Character and Line Drawing Set.
Expand Down
5 changes: 3 additions & 2 deletions src/core/input/Keyboard.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import { assert } from 'chai';
import { evaluateKeyboardEvent } from './Keyboard';
import { IKeyboardResult } from '../Types';
import { IKeyboardEvent } from '../../common/Types';

/**
* A helper function for testing which allows passing in a partial event and defaults will be filled
Expand All @@ -20,12 +21,12 @@ function testEvaluateKeyboardEvent(partialEvent: {
isMac?: boolean;
macOptionIsMeta?: boolean;
} = {}): IKeyboardResult {
const event = {
const event: IKeyboardEvent = {
altKey: partialEvent.altKey || false,
ctrlKey: partialEvent.ctrlKey || false,
shiftKey: partialEvent.shiftKey || false,
metaKey: partialEvent.metaKey || false,
keyCode: partialEvent.keyCode !== undefined ? partialEvent.keyCode : undefined,
keyCode: partialEvent.keyCode !== undefined ? partialEvent.keyCode : 0,
key: partialEvent.key || '',
type: partialEvent.type || ''
};
Expand Down
20 changes: 20 additions & 0 deletions src/core/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"compilerOptions": {
"target": "es5",
"lib": [
"es5"
],
"rootDir": ".",
"noEmit": true,
"strict": true,
"pretty": true,
"types": [
"../../node_modules/@types/mocha",
"../../"
]
},
"include": [
"./**/*",
"../common/**/*"
]
}
2 changes: 2 additions & 0 deletions typings/xterm.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
* to be stable and consumed by external programs.
*/

/// <reference lib="dom"/>

declare module 'xterm' {
/**
* A string representing text font weight.
Expand Down