UNPKG

@finos/legend-application

Version:
94 lines 3.57 kB
/** * Copyright (c) 2020-present, Goldman Sachs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import type { GenericLegendApplicationStore } from '../ApplicationStore.js'; import { Terminal, type TerminalWriteOption, type TerminalSetupConfiguration } from './Terminal.js'; export declare class XTerm extends Terminal { private instance; private readonly resizer; private readonly renderer; private readonly searcher; private linkProvider?; private _TEMPORARY__onKeyListener?; private _TEMPORARY__onDataListener?; private command; private commandHistory; private currentCommandSearchString; private commandHistoryNavigationIdx; private isRunningCommand; private readonly setupState; constructor(applicationStore: GenericLegendApplicationStore); setup(configuration?: TerminalSetupConfiguration | undefined): void; private getCommandRange; private computeCursorJumpMovement; /** * Generate the ANSI escape sequence for new cursor position * after being moved by the the number of cells. * * @param val a number (negative means cursor move leftwards) * @param limit whether to limit the movement of the cursor by the command range * @returns cursor movement information including the ANSI escape sequence for new cursor position and scroll distance */ private computeCursorMovement; /** * Write value to command with awareness of the current cursor position */ private writeToCommand; /** * Remove number of characters from command with awareness of the current cursor position * NOTE: negative number means backward deleting (i.e. backspace) */ private deleteFromCommand; get isSetup(): boolean; isFocused(): boolean; mount(container: HTMLElement): void; dispose(): void; autoResize(): void; focus(): void; private addCommandToHistory; /** * This methods help update the current command to a command in history * stack, it does the necessary resetting and helps properly update * the history navigation index */ private setCommandFromHistory; private setCommand; private newCommand; private newSystemCommand; /** * Flush the terminal screen completely * * Probably due to write buffer batching, calling `reset` or `clear` on xterm terminal immediately after * write commands will not work. To solve this, we can either promisify the `reset` call or write the ANSI * reset sequence \x1bc */ private flushScreen; private get isFlushed(); clear(): void; private resetANSIStyling; showHelp(): void; showCommonANSIEscapeSequences(): void; abort(): void; fail(error: string, opts?: TerminalWriteOption): void; output(val: string, opts?: TerminalWriteOption): void; search(val: string): void; clearSearch(): void; findPrevious(): void; findNext(): void; private getContent; copy(): void; copyAll(): void; } //# sourceMappingURL=XTerm.d.ts.map