PATH:
opt
/
bitninja-threat-hunting
/
node_modules
/
node-pty
/
src
/** * Copyright (c) 2019, Microsoft Corporation (MIT License). */ import { IDisposable } from './types'; interface IListener<T> { (e: T): void; } export interface IEvent<T> { (listener: (e: T) => any): IDisposable; } export class EventEmitter2<T> { private _listeners: IListener<T>[] = []; private _event?: IEvent<T>; public get event(): IEvent<T> { if (!this._event) { this._event = (listener: (e: T) => any) => { this._listeners.push(listener); const disposable = { dispose: () => { for (let i = 0; i < this._listeners.length; i++) { if (this._listeners[i] === listener) { this._listeners.splice(i, 1); return; } } } }; return disposable; }; } return this._event; } public fire(data: T): void { const queue: IListener<T>[] = []; for (let i = 0; i < this._listeners.length; i++) { queue.push(this._listeners[i]); } for (let i = 0; i < queue.length; i++) { queue[i].call(undefined, data); } } }
[+]
shared
[-] windowsPtyAgent.test.ts
[edit]
[-] index.ts
[edit]
[-] tsconfig.json
[edit]
[-] windowsTerminal.test.ts
[edit]
[+]
..
[-] unixTerminal.test.ts
[edit]
[-] native.d.ts
[edit]
[-] terminal.test.ts
[edit]
[-] conpty_console_list_agent.ts
[edit]
[-] eventEmitter2.test.ts
[edit]
[-] utils.ts
[edit]
[-] windowsConoutConnection.ts
[edit]
[-] eventEmitter2.ts
[edit]
[+]
worker
[-] interfaces.ts
[edit]
[-] unixTerminal.ts
[edit]
[-] types.ts
[edit]
[+]
unix
[-] windowsTerminal.ts
[edit]
[+]
win
[-] testUtils.test.ts
[edit]
[-] windowsPtyAgent.ts
[edit]
[-] terminal.ts
[edit]