Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/src/vs/workbench/services/banner/browser/bannerService.ts
3296 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
import { MarkdownString } from '../../../../base/common/htmlContent.js';
7
import { URI } from '../../../../base/common/uri.js';
8
import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js';
9
import { ILinkDescriptor } from '../../../../platform/opener/browser/link.js';
10
import { ThemeIcon } from '../../../../base/common/themables.js';
11
12
export interface IBannerItem {
13
readonly id: string;
14
readonly icon: ThemeIcon | URI | undefined;
15
readonly message: string | MarkdownString;
16
readonly actions?: ILinkDescriptor[];
17
readonly ariaLabel?: string;
18
readonly onClose?: () => void;
19
readonly closeLabel?: string;
20
}
21
22
export const IBannerService = createDecorator<IBannerService>('bannerService');
23
24
export interface IBannerService {
25
readonly _serviceBrand: undefined;
26
27
focus(): void;
28
focusNextAction(): void;
29
focusPreviousAction(): void;
30
hide(id: string): void;
31
show(item: IBannerItem): void;
32
}
33
34