- 'use strict';
- import { window } from 'vscode';
- import { Container } from '../container';
- import { Iterables } from '../system';
- import { CommandQuickPickItem, getQuickPickIgnoreFocusOut } from './commonQuickPicks';
- import { RepositoryQuickPickItem } from './gitQuickPicks';
-
- export class RepositoriesQuickPick {
- static async show(
- placeHolder: string,
- goBackCommand?: CommandQuickPickItem
- ): Promise<RepositoryQuickPickItem | CommandQuickPickItem | undefined> {
- const items: (RepositoryQuickPickItem | CommandQuickPickItem)[] = await Promise.all([
- ...Iterables.map(await Container.git.getOrderedRepositories(), r =>
- RepositoryQuickPickItem.create(r, undefined, { branch: true, status: true })
- )
- ]);
-
- if (goBackCommand !== undefined) {
- items.splice(0, 0, goBackCommand);
- }
-
- // const scope = await Container.keyboard.beginScope({ left: goBackCommand });
-
- const pick = await window.showQuickPick(items, {
- placeHolder: placeHolder,
- ignoreFocusOut: getQuickPickIgnoreFocusOut()
- });
-
- // await scope.dispose();
-
- return pick;
- }
- }
|