diff --git a/src/EscapeSequenceParser.test.ts b/src/EscapeSequenceParser.test.ts index fc9bbe7a..01e018ef 100644 --- a/src/EscapeSequenceParser.test.ts +++ b/src/EscapeSequenceParser.test.ts @@ -110,18 +110,18 @@ let state: any; // parser with Uint8Array based transition table let parserUint = new TestEscapeSequenceParser(VT500_TRANSITION_TABLE); parserUint.setPrintHandler(testTerminal.print.bind(testTerminal)); -parserUint.setCsiHandlerFallback((...params: any[]) => { - testTerminal.actionCSI(params[0], params[1], String.fromCharCode(params[2])); +parserUint.setCsiHandlerFallback((collect: string, params: number[], flag: number) => { + testTerminal.actionCSI(collect, params, String.fromCharCode(flag)); }); -parserUint.setEscHandlerFallback((...params: any[]) => { - testTerminal.actionESC(params[0], String.fromCharCode(params[1])); +parserUint.setEscHandlerFallback((collect: string, flag: number) => { + testTerminal.actionESC(collect, String.fromCharCode(flag)); }); -parserUint.setExecuteHandlerFallback((...params: any[]) => { - testTerminal.actionExecute(String.fromCharCode(params[0])); +parserUint.setExecuteHandlerFallback((code: number) => { + testTerminal.actionExecute(String.fromCharCode(code)); }); -parserUint.setOscHandlerFallback((...params: any[]) => { - if (params[0] === -1) testTerminal.actionOSC(params[1]); // handle error condition silently - else testTerminal.actionOSC(params[0] + ';' + params[1]); +parserUint.setOscHandlerFallback((identifier: number, data: string) => { + if (identifier === -1) testTerminal.actionOSC(data); // handle error condition silently + else testTerminal.actionOSC('' + identifier + ';' + data); }); parserUint.setDcsHandlerFallback(new DcsTest()); @@ -135,18 +135,18 @@ for (let i = 0; i < VT500_TRANSITION_TABLE.table.length; ++i) { // parser with array based transition table let parserArray = new TestEscapeSequenceParser(VT500_TRANSITION_TABLE_ARRAY); parserArray.setPrintHandler(testTerminal.print.bind(testTerminal)); -parserArray.setCsiHandlerFallback((...params: any[]) => { - testTerminal.actionCSI(params[0], params[1], String.fromCharCode(params[2])); +parserArray.setCsiHandlerFallback((collect: string, params: number[], flag: number) => { + testTerminal.actionCSI(collect, params, String.fromCharCode(flag)); }); -parserArray.setEscHandlerFallback((...params: any[]) => { - testTerminal.actionESC(params[0], String.fromCharCode(params[1])); +parserArray.setEscHandlerFallback((collect: string, flag: number) => { + testTerminal.actionESC(collect, String.fromCharCode(flag)); }); -parserArray.setExecuteHandlerFallback((...params: any[]) => { - testTerminal.actionExecute(String.fromCharCode(params[0])); +parserArray.setExecuteHandlerFallback((code: number) => { + testTerminal.actionExecute(String.fromCharCode(code)); }); -parserArray.setOscHandlerFallback((...params: any[]) => { - if (params[0] === -1) testTerminal.actionOSC(params[1]); // handle error condition silently - else testTerminal.actionOSC(params[0] + ';' + params[1]); +parserArray.setOscHandlerFallback((identifier: number, data: string) => { + if (identifier === -1) testTerminal.actionOSC(data); // handle error condition silently + else testTerminal.actionOSC('' + identifier + ';' + data); }); parserArray.setDcsHandlerFallback(new DcsTest()); diff --git a/src/EscapeSequenceParser.ts b/src/EscapeSequenceParser.ts index 5aabc251..207c32e9 100644 --- a/src/EscapeSequenceParser.ts +++ b/src/EscapeSequenceParser.ts @@ -227,10 +227,10 @@ export class EscapeSequenceParser implements IEscapeSequenceParser { // fallback handlers protected _printHandlerFb: (data: string, start: number, end: number) => void; - protected _executeHandlerFb: (...params: any[]) => void; - protected _csiHandlerFb: (...params: any[]) => void; - protected _escHandlerFb: (...params: any[]) => void; - protected _oscHandlerFb: (...params: any[]) => void; + protected _executeHandlerFb: (code: number) => void; + protected _csiHandlerFb: (collect: string, params: number[], flag: number) => void; + protected _escHandlerFb: (collect: string, flag: number) => void; + protected _oscHandlerFb: (identifier: number, data: string) => void; protected _dcsHandlerFb: IDcsHandler; protected _errorHandlerFb: (state: IParsingState) => IParsingState; @@ -243,10 +243,10 @@ export class EscapeSequenceParser implements IEscapeSequenceParser { // set default fallback handlers and handler lookup containers this._printHandlerFb = (data, start, end): void => { }; - this._executeHandlerFb = (...params: any[]): void => { }; - this._csiHandlerFb = (...params: any[]): void => { }; - this._escHandlerFb = (...params: any[]): void => { }; - this._oscHandlerFb = (...params: any[]): void => { }; + this._executeHandlerFb = (code: number): void => { }; + this._csiHandlerFb = (collect: string, params: number[], flag: number): void => { }; + this._escHandlerFb = (collect: string, flag: number): void => { }; + this._oscHandlerFb = (identifier: number, data: string): void => { }; this._dcsHandlerFb = new DcsDummy(); this._errorHandlerFb = (state: IParsingState): IParsingState => state; this._printHandler = this._printHandlerFb; @@ -272,7 +272,7 @@ export class EscapeSequenceParser implements IEscapeSequenceParser { clearExecuteHandler(flag: string): void { if (this._executeHandlers[flag.charCodeAt(0)]) delete this._executeHandlers[flag.charCodeAt(0)]; } - setExecuteHandlerFallback(callback: (...params: any[]) => void): void { + setExecuteHandlerFallback(callback: (code: number) => void): void { this._executeHandlerFb = callback; } @@ -282,7 +282,7 @@ export class EscapeSequenceParser implements IEscapeSequenceParser { clearCsiHandler(flag: string): void { if (this._csiHandlers[flag.charCodeAt(0)]) delete this._csiHandlers[flag.charCodeAt(0)]; } - setCsiHandlerFallback(callback: (...params: any[]) => void): void { + setCsiHandlerFallback(callback: (collect: string, params: number[], flag: number) => void): void { this._csiHandlerFb = callback; } @@ -292,7 +292,7 @@ export class EscapeSequenceParser implements IEscapeSequenceParser { clearEscHandler(collectAndFlag: string): void { if (this._escHandlers[collectAndFlag]) delete this._escHandlers[collectAndFlag]; } - setEscHandlerFallback(callback: (...params: any[]) => void): void { + setEscHandlerFallback(callback: (collect: string, flag: number) => void): void { this._escHandlerFb = callback; } @@ -302,7 +302,7 @@ export class EscapeSequenceParser implements IEscapeSequenceParser { clearOscHandler(ident: number): void { if (this._oscHandlers[ident]) delete this._oscHandlers[ident]; } - setOscHandlerFallback(callback: (...params: any[]) => void): void { + setOscHandlerFallback(callback: (identifier: number, data: string) => void): void { this._oscHandlerFb = callback; } diff --git a/src/InputHandler.ts b/src/InputHandler.ts index b8f68fc1..397ec984 100644 --- a/src/InputHandler.ts +++ b/src/InputHandler.ts @@ -119,17 +119,17 @@ export class InputHandler implements IInputHandler { /** * custom fallback handlers */ - this._parser.setCsiHandlerFallback((...params: any[]) => { - this._terminal.error('Unknown CSI code: ', params); + this._parser.setCsiHandlerFallback((collect: string, params: number[], flag: number) => { + this._terminal.error('Unknown CSI code: ', collect, params, String.fromCharCode(flag)); }); - this._parser.setEscHandlerFallback((...params: any[]) => { - this._terminal.error('Unknown ESC code: ', params); + this._parser.setEscHandlerFallback((collect: string, flag: number) => { + this._terminal.error('Unknown ESC code: ', collect, String.fromCharCode(flag)); }); - this._parser.setExecuteHandlerFallback((...params: any[]) => { - this._terminal.error('Unknown EXECUTE code: ', params); + this._parser.setExecuteHandlerFallback((code: number) => { + this._terminal.error('Unknown EXECUTE code: ', code); }); - this._parser.setOscHandlerFallback((...params: any[]) => { - this._terminal.error('Unknown OSC code: ', params); + this._parser.setOscHandlerFallback((identifier: number, data: string) => { + this._terminal.error('Unknown OSC code: ', identifier, data); }); /** diff --git a/src/Types.ts b/src/Types.ts index 60f923d7..52812e3d 100644 --- a/src/Types.ts +++ b/src/Types.ts @@ -483,19 +483,19 @@ export interface IEscapeSequenceParser { setExecuteHandler(flag: string, callback: () => void): void; clearExecuteHandler(flag: string): void; - setExecuteHandlerFallback(callback: (...params: any[]) => void): void; + setExecuteHandlerFallback(callback: (code: number) => void): void; setCsiHandler(flag: string, callback: (params: number[], collect: string) => void): void; clearCsiHandler(flag: string): void; - setCsiHandlerFallback(callback: (...params: any[]) => void): void; + setCsiHandlerFallback(callback: (collect: string, params: number[], flag: number) => void): void; setEscHandler(collectAndFlag: string, callback: () => void): void; clearEscHandler(collectAndFlag: string): void; - setEscHandlerFallback(callback: (...params: any[]) => void): void; + setEscHandlerFallback(callback: (collect: string, flag: number) => void): void; setOscHandler(ident: number, callback: (data: string) => void): void; clearOscHandler(ident: number): void; - setOscHandlerFallback(callback: (...params: any[]) => void): void; + setOscHandlerFallback(callback: (identifier: number, data: string) => void): void; setDcsHandler(collectAndFlag: string, handler: IDcsHandler): void; clearDcsHandler(collectAndFlag: string): void;