(
event: vscode.Event<TResult>,
filter?: (event: TResult) => boolean | undefined,
)
| 117 | * @returns A promise that resolves when the specified event is fired with the TResult subject of the event. If a filter is specified, the promise will not resolve until the filter returns true. |
| 118 | */ |
| 119 | export function WaitEvent<TResult>( |
| 120 | event: vscode.Event<TResult>, |
| 121 | filter?: (event: TResult) => boolean | undefined, |
| 122 | ): Promise<TResult> { |
| 123 | return new Promise<TResult>((resolve) => { |
| 124 | const listener = event((result: TResult) => { |
| 125 | if (!filter || filter(result)) { |
| 126 | listener.dispose(); |
| 127 | resolve(result); |
| 128 | } |
| 129 | }); |
| 130 | }); |
| 131 | } |
no test coverage detected