UNPKG

@sussudio/platform

Version:

Internal APIs for VS Code's service injection the base services.

66 lines (64 loc) 2.36 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { Codicon } from '@sussudio/base/common/codicons.mjs'; import { ResolvedKeybinding } from '@sussudio/base/common/keybindings.mjs'; import { Disposable } from '@sussudio/base/common/lifecycle.mjs'; import '../../../css!./actionWidget.mjs'; import { IActionItem } from '../common/actionWidget.mjs'; import { IContextViewService } from '../../contextview/browser/contextView.mjs'; import { IKeybindingService } from '../../keybinding/common/keybinding.mjs'; export declare const acceptSelectedActionCommand = 'acceptSelectedCodeAction'; export declare const previewSelectedActionCommand = 'previewSelectedCodeAction'; export interface IRenderDelegate { onHide(didCancel?: boolean): void; onSelect(action: IActionItem, preview?: boolean): Promise<any>; } export interface IListMenuItem<T extends IActionItem> { readonly item?: T; readonly kind: ActionListItemKind; readonly group?: { kind?: any; icon?: { codicon: Codicon; color?: string; }; title: string; }; readonly disabled?: boolean; readonly label?: string; readonly description?: string; readonly keybinding?: ResolvedKeybinding; } export declare const enum ActionListItemKind { Action = 'action', Header = 'header', } export declare class ActionList<T extends IActionItem> extends Disposable { private readonly _delegate; private readonly _contextViewService; private readonly _keybindingService; readonly domNode: HTMLElement; private readonly _list; private readonly _actionLineHeight; private readonly _headerLineHeight; private readonly _allMenuItems; constructor( user: string, preview: boolean, items: readonly IListMenuItem<T>[], _delegate: IRenderDelegate, _contextViewService: IContextViewService, _keybindingService: IKeybindingService, ); private focusCondition; hide(didCancel?: boolean): void; layout(minWidth: number): number; focusPrevious(): void; focusNext(): void; acceptSelected(preview?: boolean): void; private onListSelection; private onListHover; private onListClick; }