@codingame/monaco-vscode-api 1.69.7 → 1.69.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api.js +8 -7
- package/dist/configuration.js +384 -73
- package/dist/contextkey.js +13 -1
- package/dist/dialogs.js +13 -12
- package/dist/extHost.js +2063 -1396
- package/dist/files.js +100 -105
- package/dist/keybindings.js +358 -307
- package/dist/languageConfiguration.js +5 -4
- package/dist/languageService.js +3 -3
- package/dist/languages.js +4 -3
- package/dist/layout.js +294 -311
- package/dist/messages.js +2 -0
- package/dist/missing-services.js +5304 -5954
- package/dist/modelEditor.js +69 -68
- package/dist/monaco.js +14 -13
- package/dist/notifications.js +268 -337
- package/dist/polyfill.js +446 -913
- package/dist/services.js +1 -1
- package/dist/services2.js +659 -26
- package/dist/snippets.js +102 -109
- package/dist/textmate.js +82 -89
- package/dist/theme.js +396 -407
- package/dist/tokenClassification.js +4 -3
- package/dist/tokenClassificationRegistry.js +78 -84
- package/dist/tools.js +2 -1
- package/dist/workbenchThemeService.js +1 -1
- package/dist/workspaceContext.js +2 -1
- package/package.json +1 -1
package/dist/notifications.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { E as Emitter } from './polyfill.js';
|
|
2
|
+
import { a as IntervalCounter, b as ILifecycleService } from './missing-services.js';
|
|
3
|
+
import { f as NotificationsFilter, b as __decorate, d as __param, h as NeverShowAgainScope } from './contextkey.js';
|
|
4
|
+
import { n, a as attachProgressBarStyler, B as ButtonBar, b as attachButtonStyler, g as getServiceOverride$1, D as DialogHandlerContribution } from './layout.js';
|
|
5
|
+
import { registerColor, contrastBorder, editorWidgetBackground, lighten, darken, editorWidgetForeground, textLinkForeground, editorErrorForeground, editorWarningForeground, editorInfoForeground, focusBorder, widgetShadow } from 'monaco-editor/esm/vs/platform/theme/common/colorRegistry.js';
|
|
5
6
|
import { localize } from 'monaco-editor/esm/vs/nls.js';
|
|
6
7
|
import { Disposable, toDisposable, DisposableStore, dispose } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
|
|
7
8
|
import { Event } from 'monaco-editor/esm/vs/base/common/event.js';
|
|
@@ -12,22 +13,22 @@ import { equals, isNonEmptyArray } from 'monaco-editor/esm/vs/base/common/arrays
|
|
|
12
13
|
import { Action, ActionRunner } from 'monaco-editor/esm/vs/base/common/actions.js';
|
|
13
14
|
import { ITelemetryService } from 'monaco-editor/esm/vs/platform/telemetry/common/telemetry.js';
|
|
14
15
|
import { hash } from 'monaco-editor/esm/vs/base/common/hash.js';
|
|
15
|
-
import {
|
|
16
|
+
import { d as IFileService, j as IEditorGroupsService, o as IHostService } from './services2.js';
|
|
16
17
|
import { RawContextKey, IContextKeyService, ContextKeyExpr } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
|
|
17
18
|
import { ILanguageService } from 'monaco-editor/esm/vs/editor/common/languages/language.js';
|
|
18
19
|
import { IModelService } from 'monaco-editor/esm/vs/editor/common/services/model.js';
|
|
19
20
|
import { isEqual, basename, dirname, extname } from 'monaco-editor/esm/vs/base/common/resources.js';
|
|
20
|
-
import { ICommandService } from 'monaco-editor/esm/vs/platform/commands/common/commands.js';
|
|
21
|
+
import { CommandsRegistry, ICommandService } from 'monaco-editor/esm/vs/platform/commands/common/commands.js';
|
|
21
22
|
import { KeybindingsRegistry } from 'monaco-editor/esm/vs/platform/keybinding/common/keybindingsRegistry.js';
|
|
22
|
-
import {
|
|
23
|
+
import { IListService, WorkbenchList } from 'monaco-editor/esm/vs/platform/list/browser/listService.js';
|
|
23
24
|
import { MenuRegistry, MenuId } from 'monaco-editor/esm/vs/platform/actions/common/actions.js';
|
|
24
25
|
import { registerIcon } from 'monaco-editor/esm/vs/platform/theme/common/iconRegistry.js';
|
|
25
26
|
import { Codicon } from 'monaco-editor/esm/vs/base/common/codicons.js';
|
|
26
|
-
import {
|
|
27
|
+
import { ThemeIcon, IThemeService, Themable, registerThemingParticipant } from 'monaco-editor/esm/vs/platform/theme/common/themeService.js';
|
|
27
28
|
import { IClipboardService } from 'monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js';
|
|
28
|
-
import {
|
|
29
|
+
import { clearNode, $, addDisposableListener, EventType as EventType$1, EventHelper, trackFocus, isAncestor, Dimension, scheduleAtNextAnimationFrame, getClientArea } from 'monaco-editor/esm/vs/base/browser/dom.js';
|
|
29
30
|
import { DomEmitter } from 'monaco-editor/esm/vs/base/browser/event.js';
|
|
30
|
-
import { Gesture, EventType
|
|
31
|
+
import { Gesture, EventType } from 'monaco-editor/esm/vs/base/browser/touch.js';
|
|
31
32
|
import { ActionBar } from 'monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js';
|
|
32
33
|
import { ProgressBar } from 'monaco-editor/esm/vs/base/browser/ui/progressbar/progressbar.js';
|
|
33
34
|
import { IContextMenuService } from 'monaco-editor/esm/vs/platform/contextview/browser/contextView.js';
|
|
@@ -52,105 +53,105 @@ var css$3 = "/*-----------------------------------------------------------------
|
|
|
52
53
|
n(css$3,{});
|
|
53
54
|
var css$2 = "/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/** Notification: Container */\n\n.monaco-workbench .notifications-list-container .notification-list-item {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-direction: column-reverse; /* the details row appears first in order for better keyboard access to notification buttons */\n\tpadding: 10px 5px;\n\theight: 100%;\n\tbox-sizing: border-box;\n}\n\n.monaco-workbench .notifications-list-container .notification-offset-helper {\n\topacity: 0;\n\tposition: absolute;\n\tline-height: 22px;\n\tword-wrap: break-word; /* never overflow long words, but break to next line */\n}\n\n/** Notification: Main Row */\n\n.monaco-workbench .notifications-list-container .notification-list-item > .notification-list-item-main-row {\n\tdisplay: flex;\n\tflex-grow: 1;\n}\n\n/** Notification: Icon */\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-icon {\n\tdisplay: flex;\n\talign-items: center;\n\tflex: 0 0 16px;\n\theight: 22px;\n\tmargin-right: 4px;\n\tmargin-left: 4px;\n\tfont-size: 18px;\n\tbackground-position: center;\n\tbackground-repeat: no-repeat;\n}\n\n/** Notification: Message */\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-message {\n\tline-height: 22px;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\tflex: 1; /* let the message always grow */\n\tuser-select: text;\n\t-webkit-user-select: text;\n}\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-message a:focus {\n\toutline-width: 1px;\n\toutline-style: solid;\n}\n\n.monaco-workbench .notifications-list-container .notification-list-item.expanded .notification-list-item-message {\n\twhite-space: normal;\n\tword-wrap: break-word; /* never overflow long words, but break to next line */\n}\n\n/** Notification: Toolbar Container */\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-toolbar-container {\n\tdisplay: none;\n\theight: 22px;\n}\n\n.monaco-workbench .notifications-list-container .notification-list-item:hover .notification-list-item-toolbar-container,\n.monaco-workbench .notifications-list-container .monaco-list-row.focused .notification-list-item .notification-list-item-toolbar-container,\n.monaco-workbench .notifications-list-container .notification-list-item.expanded .notification-list-item-toolbar-container {\n\tdisplay: block;\n}\n\n/** Notification: Details Row */\n\n.monaco-workbench .notifications-list-container .notification-list-item > .notification-list-item-details-row {\n\tdisplay: none;\n\talign-items: center;\n\tpadding-left: 5px;\n\toverflow: hidden; /* details row should never overflow */\n}\n\n.monaco-workbench .notifications-list-container .notification-list-item.expanded > .notification-list-item-details-row {\n\tdisplay: flex;\n}\n\n/** Notification: Source */\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-source {\n\tflex: 1;\n\tfont-size: 12px;\n\toverflow: hidden; /* always give away space to buttons container */\n\ttext-overflow: ellipsis;\n}\n\n/** Notification: Buttons */\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-buttons-container {\n\tdisplay: flex;\n\toverflow: hidden;\n}\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-buttons-container > .monaco-button-dropdown,\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-buttons-container > .monaco-button {\n\tmargin: 4px 5px; /* allows button focus outline to be visible */\n}\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-buttons-container .monaco-button {\n\toutline-offset: 2px !important;\n}\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-buttons-container .monaco-text-button {\n\twidth: fit-content;\n\twidth: -moz-fit-content;\n\tpadding: 5px 10px;\n\tdisplay: inline-block;\t/* to enable ellipsis in text overflow */\n\tfont-size: 12px;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-workbench .notifications-list-container .notification-list-item .notification-list-item-buttons-container .monaco-dropdown-button {\n\tpadding: 5px\n}\n\n/** Notification: Progress */\n\n.monaco-workbench .notifications-list-container .progress-bit {\n\theight: 2px;\n\tbottom: 0;\n}\n";
|
|
54
55
|
n(css$2,{});
|
|
55
|
-
const NOTIFICATIONS_CENTER_BORDER = (
|
|
56
|
+
const NOTIFICATIONS_CENTER_BORDER = ( registerColor('notificationCenter.border', {
|
|
56
57
|
dark: null,
|
|
57
58
|
light: null,
|
|
58
59
|
hcDark: contrastBorder,
|
|
59
60
|
hcLight: contrastBorder
|
|
60
|
-
},
|
|
61
|
+
}, ( localize(
|
|
61
62
|
'notificationCenterBorder',
|
|
62
63
|
"Notifications center border color. Notifications slide in from the bottom right of the window."
|
|
63
|
-
))))
|
|
64
|
-
const NOTIFICATIONS_TOAST_BORDER = (
|
|
64
|
+
))));
|
|
65
|
+
const NOTIFICATIONS_TOAST_BORDER = ( registerColor('notificationToast.border', {
|
|
65
66
|
dark: null,
|
|
66
67
|
light: null,
|
|
67
68
|
hcDark: contrastBorder,
|
|
68
69
|
hcLight: contrastBorder
|
|
69
|
-
},
|
|
70
|
+
}, ( localize(
|
|
70
71
|
'notificationToastBorder',
|
|
71
72
|
"Notification toast border color. Notifications slide in from the bottom right of the window."
|
|
72
|
-
))))
|
|
73
|
-
const NOTIFICATIONS_FOREGROUND = (
|
|
73
|
+
))));
|
|
74
|
+
const NOTIFICATIONS_FOREGROUND = ( registerColor('notifications.foreground', {
|
|
74
75
|
dark: editorWidgetForeground,
|
|
75
76
|
light: editorWidgetForeground,
|
|
76
77
|
hcDark: editorWidgetForeground,
|
|
77
78
|
hcLight: editorWidgetForeground
|
|
78
|
-
},
|
|
79
|
+
}, ( localize(
|
|
79
80
|
'notificationsForeground',
|
|
80
81
|
"Notifications foreground color. Notifications slide in from the bottom right of the window."
|
|
81
|
-
))))
|
|
82
|
-
const NOTIFICATIONS_BACKGROUND = (
|
|
82
|
+
))));
|
|
83
|
+
const NOTIFICATIONS_BACKGROUND = ( registerColor('notifications.background', {
|
|
83
84
|
dark: editorWidgetBackground,
|
|
84
85
|
light: editorWidgetBackground,
|
|
85
86
|
hcDark: editorWidgetBackground,
|
|
86
87
|
hcLight: editorWidgetBackground
|
|
87
|
-
},
|
|
88
|
+
}, ( localize(
|
|
88
89
|
'notificationsBackground',
|
|
89
90
|
"Notifications background color. Notifications slide in from the bottom right of the window."
|
|
90
|
-
))))
|
|
91
|
-
const NOTIFICATIONS_LINKS = (
|
|
91
|
+
))));
|
|
92
|
+
const NOTIFICATIONS_LINKS = ( registerColor('notificationLink.foreground', {
|
|
92
93
|
dark: textLinkForeground,
|
|
93
94
|
light: textLinkForeground,
|
|
94
95
|
hcDark: textLinkForeground,
|
|
95
96
|
hcLight: textLinkForeground
|
|
96
|
-
},
|
|
97
|
+
}, ( localize(
|
|
97
98
|
'notificationsLink',
|
|
98
99
|
"Notification links foreground color. Notifications slide in from the bottom right of the window."
|
|
99
|
-
))))
|
|
100
|
-
const NOTIFICATIONS_CENTER_HEADER_FOREGROUND = (
|
|
100
|
+
))));
|
|
101
|
+
const NOTIFICATIONS_CENTER_HEADER_FOREGROUND = ( registerColor('notificationCenterHeader.foreground', {
|
|
101
102
|
dark: null,
|
|
102
103
|
light: null,
|
|
103
104
|
hcDark: null,
|
|
104
105
|
hcLight: null
|
|
105
|
-
},
|
|
106
|
+
}, ( localize(
|
|
106
107
|
'notificationCenterHeaderForeground',
|
|
107
108
|
"Notifications center header foreground color. Notifications slide in from the bottom right of the window."
|
|
108
|
-
))))
|
|
109
|
-
const NOTIFICATIONS_CENTER_HEADER_BACKGROUND = (
|
|
110
|
-
dark: (
|
|
111
|
-
light: (
|
|
109
|
+
))));
|
|
110
|
+
const NOTIFICATIONS_CENTER_HEADER_BACKGROUND = ( registerColor('notificationCenterHeader.background', {
|
|
111
|
+
dark: ( lighten(NOTIFICATIONS_BACKGROUND, 0.3)),
|
|
112
|
+
light: ( darken(NOTIFICATIONS_BACKGROUND, 0.05)),
|
|
112
113
|
hcDark: NOTIFICATIONS_BACKGROUND,
|
|
113
114
|
hcLight: NOTIFICATIONS_BACKGROUND
|
|
114
|
-
},
|
|
115
|
+
}, ( localize(
|
|
115
116
|
'notificationCenterHeaderBackground',
|
|
116
117
|
"Notifications center header background color. Notifications slide in from the bottom right of the window."
|
|
117
|
-
))))
|
|
118
|
-
const NOTIFICATIONS_BORDER = (
|
|
118
|
+
))));
|
|
119
|
+
const NOTIFICATIONS_BORDER = ( registerColor('notifications.border', {
|
|
119
120
|
dark: NOTIFICATIONS_CENTER_HEADER_BACKGROUND,
|
|
120
121
|
light: NOTIFICATIONS_CENTER_HEADER_BACKGROUND,
|
|
121
122
|
hcDark: NOTIFICATIONS_CENTER_HEADER_BACKGROUND,
|
|
122
123
|
hcLight: NOTIFICATIONS_CENTER_HEADER_BACKGROUND
|
|
123
|
-
},
|
|
124
|
+
}, ( localize(
|
|
124
125
|
'notificationsBorder',
|
|
125
126
|
"Notifications border color separating from other notifications in the notifications center. Notifications slide in from the bottom right of the window."
|
|
126
|
-
))))
|
|
127
|
-
const NOTIFICATIONS_ERROR_ICON_FOREGROUND = (
|
|
127
|
+
))));
|
|
128
|
+
const NOTIFICATIONS_ERROR_ICON_FOREGROUND = ( registerColor('notificationsErrorIcon.foreground', {
|
|
128
129
|
dark: editorErrorForeground,
|
|
129
130
|
light: editorErrorForeground,
|
|
130
131
|
hcDark: editorErrorForeground,
|
|
131
132
|
hcLight: editorErrorForeground
|
|
132
|
-
},
|
|
133
|
+
}, ( localize(
|
|
133
134
|
'notificationsErrorIconForeground',
|
|
134
135
|
"The color used for the icon of error notifications. Notifications slide in from the bottom right of the window."
|
|
135
|
-
))))
|
|
136
|
-
const NOTIFICATIONS_WARNING_ICON_FOREGROUND = (
|
|
136
|
+
))));
|
|
137
|
+
const NOTIFICATIONS_WARNING_ICON_FOREGROUND = ( registerColor('notificationsWarningIcon.foreground', {
|
|
137
138
|
dark: editorWarningForeground,
|
|
138
139
|
light: editorWarningForeground,
|
|
139
140
|
hcDark: editorWarningForeground,
|
|
140
141
|
hcLight: editorWarningForeground
|
|
141
|
-
},
|
|
142
|
+
}, ( localize(
|
|
142
143
|
'notificationsWarningIconForeground',
|
|
143
144
|
"The color used for the icon of warning notifications. Notifications slide in from the bottom right of the window."
|
|
144
|
-
))))
|
|
145
|
-
const NOTIFICATIONS_INFO_ICON_FOREGROUND = (
|
|
145
|
+
))));
|
|
146
|
+
const NOTIFICATIONS_INFO_ICON_FOREGROUND = ( registerColor('notificationsInfoIcon.foreground', {
|
|
146
147
|
dark: editorInfoForeground,
|
|
147
148
|
light: editorInfoForeground,
|
|
148
149
|
hcDark: editorInfoForeground,
|
|
149
150
|
hcLight: editorInfoForeground
|
|
150
|
-
},
|
|
151
|
+
}, ( localize(
|
|
151
152
|
'notificationsInfoIconForeground',
|
|
152
153
|
"The color used for the icon of info notifications. Notifications slide in from the bottom right of the window."
|
|
153
|
-
))))
|
|
154
|
+
))));
|
|
154
155
|
class LinkedText {
|
|
155
156
|
constructor(nodes) {
|
|
156
157
|
this.nodes = nodes;
|
|
@@ -180,18 +181,16 @@ function parseLinkedText(text) {
|
|
|
180
181
|
if (index < text.length) {
|
|
181
182
|
result.push(text.substring(index));
|
|
182
183
|
}
|
|
183
|
-
return (
|
|
184
|
-
(new LinkedText(result))
|
|
185
|
-
);
|
|
184
|
+
return ( new LinkedText(result));
|
|
186
185
|
}
|
|
187
186
|
class NotificationHandle extends Disposable {
|
|
188
187
|
constructor(item, onClose) {
|
|
189
188
|
super();
|
|
190
189
|
this.item = item;
|
|
191
190
|
this.onClose = onClose;
|
|
192
|
-
this._onDidClose = this._register((
|
|
191
|
+
this._onDidClose = this._register(( new Emitter()));
|
|
193
192
|
this.onDidClose = this._onDidClose.event;
|
|
194
|
-
this._onDidChangeVisibility = this._register((
|
|
193
|
+
this._onDidChangeVisibility = this._register(( new Emitter()));
|
|
195
194
|
this.onDidChangeVisibility = this._onDidChangeVisibility.event;
|
|
196
195
|
this.registerListeners();
|
|
197
196
|
}
|
|
@@ -222,11 +221,11 @@ class NotificationHandle extends Disposable {
|
|
|
222
221
|
class NotificationsModel extends Disposable {
|
|
223
222
|
constructor() {
|
|
224
223
|
super(...arguments);
|
|
225
|
-
this._onDidChangeNotification = this._register((
|
|
224
|
+
this._onDidChangeNotification = this._register(( new Emitter()));
|
|
226
225
|
this.onDidChangeNotification = this._onDidChangeNotification.event;
|
|
227
|
-
this._onDidChangeStatusMessage = this._register((
|
|
226
|
+
this._onDidChangeStatusMessage = this._register(( new Emitter()));
|
|
228
227
|
this.onDidChangeStatusMessage = this._onDidChangeStatusMessage.event;
|
|
229
|
-
this._onDidChangeFilter = this._register((
|
|
228
|
+
this._onDidChangeFilter = this._register(( new Emitter()));
|
|
230
229
|
this.onDidChangeFilter = this._onDidChangeFilter.event;
|
|
231
230
|
this._notifications = [];
|
|
232
231
|
this.filter = NotificationsFilter.OFF;
|
|
@@ -248,9 +247,7 @@ class NotificationsModel extends Disposable {
|
|
|
248
247
|
}
|
|
249
248
|
this._notifications.splice(0, 0, item);
|
|
250
249
|
this._onDidChangeNotification.fire({ item, index: 0, kind: 0 });
|
|
251
|
-
return (
|
|
252
|
-
(new NotificationHandle(item, item => this.onClose(item)))
|
|
253
|
-
);
|
|
250
|
+
return ( new NotificationHandle(item, item => this.onClose(item)));
|
|
254
251
|
}
|
|
255
252
|
onClose(item) {
|
|
256
253
|
const liveItem = this.findNotification(item);
|
|
@@ -303,14 +300,14 @@ class NotificationsModel extends Disposable {
|
|
|
303
300
|
});
|
|
304
301
|
}
|
|
305
302
|
}
|
|
306
|
-
NotificationsModel.NO_OP_NOTIFICATION = (
|
|
303
|
+
NotificationsModel.NO_OP_NOTIFICATION = ( new NoOpNotification());
|
|
307
304
|
function isNotificationViewItem(obj) {
|
|
308
305
|
return obj instanceof NotificationViewItem;
|
|
309
306
|
}
|
|
310
307
|
class NotificationViewItemProgress extends Disposable {
|
|
311
308
|
constructor() {
|
|
312
309
|
super();
|
|
313
|
-
this._onDidChange = this._register((
|
|
310
|
+
this._onDidChange = this._register(( new Emitter()));
|
|
314
311
|
this.onDidChange = this._onDidChange.event;
|
|
315
312
|
this._state = Object.create(null);
|
|
316
313
|
}
|
|
@@ -368,13 +365,13 @@ class NotificationViewItem extends Disposable {
|
|
|
368
365
|
this._message = _message;
|
|
369
366
|
this._source = _source;
|
|
370
367
|
this._visible = false;
|
|
371
|
-
this._onDidChangeExpansion = this._register((
|
|
368
|
+
this._onDidChangeExpansion = this._register(( new Emitter()));
|
|
372
369
|
this.onDidChangeExpansion = this._onDidChangeExpansion.event;
|
|
373
|
-
this._onDidClose = this._register((
|
|
370
|
+
this._onDidClose = this._register(( new Emitter()));
|
|
374
371
|
this.onDidClose = this._onDidClose.event;
|
|
375
|
-
this._onDidChangeContent = this._register((
|
|
372
|
+
this._onDidChangeContent = this._register(( new Emitter()));
|
|
376
373
|
this.onDidChangeContent = this._onDidChangeContent.event;
|
|
377
|
-
this._onDidChangeVisibility = this._register((
|
|
374
|
+
this._onDidChangeVisibility = this._register(( new Emitter()));
|
|
378
375
|
this.onDidChangeVisibility = this._onDidChangeVisibility.event;
|
|
379
376
|
if (progress) {
|
|
380
377
|
this.setProgress(progress);
|
|
@@ -403,18 +400,16 @@ class NotificationViewItem extends Disposable {
|
|
|
403
400
|
else if (isErrorWithActions(notification.message)) {
|
|
404
401
|
actions = { primary: notification.message.actions };
|
|
405
402
|
}
|
|
406
|
-
return (
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
))
|
|
417
|
-
);
|
|
403
|
+
return ( new NotificationViewItem(
|
|
404
|
+
notification.id,
|
|
405
|
+
severity,
|
|
406
|
+
notification.sticky,
|
|
407
|
+
notification.silent || filter === NotificationsFilter.SILENT || (filter === NotificationsFilter.ERROR && notification.severity !== Severity.Error),
|
|
408
|
+
message,
|
|
409
|
+
notification.source,
|
|
410
|
+
notification.progress,
|
|
411
|
+
actions
|
|
412
|
+
));
|
|
418
413
|
}
|
|
419
414
|
static parseNotificationMessage(input) {
|
|
420
415
|
let message;
|
|
@@ -492,7 +487,7 @@ class NotificationViewItem extends Disposable {
|
|
|
492
487
|
}
|
|
493
488
|
get progress() {
|
|
494
489
|
if (!this._progress) {
|
|
495
|
-
this._progress = this._register((
|
|
490
|
+
this._progress = this._register(( new NotificationViewItemProgress()));
|
|
496
491
|
this._register(this._progress.onDidChange(() => this._onDidChangeContent.fire({ kind: 3 })));
|
|
497
492
|
}
|
|
498
493
|
return this._progress;
|
|
@@ -595,10 +590,10 @@ class ChoiceAction extends Action {
|
|
|
595
590
|
choice.run();
|
|
596
591
|
this._onDidRun.fire();
|
|
597
592
|
});
|
|
598
|
-
this._onDidRun = this._register((
|
|
593
|
+
this._onDidRun = this._register(( new Emitter()));
|
|
599
594
|
this.onDidRun = this._onDidRun.event;
|
|
600
595
|
this._keepOpen = !!choice.keepOpen;
|
|
601
|
-
this._menu = !choice.isSecondary && choice.menu ? choice.menu.map((c, index) => (
|
|
596
|
+
this._menu = !choice.isSecondary && choice.menu ? choice.menu.map((c, index) => ( new ChoiceAction(`${id}.${index}`, c))) : undefined;
|
|
602
597
|
}
|
|
603
598
|
get menu() {
|
|
604
599
|
return this._menu;
|
|
@@ -629,7 +624,7 @@ var css$1 = "/*-----------------------------------------------------------------
|
|
|
629
624
|
n(css$1,{});
|
|
630
625
|
function notificationToMetrics(message, source, silent) {
|
|
631
626
|
return {
|
|
632
|
-
id: (
|
|
627
|
+
id: ( hash(( message.toString())).toString()),
|
|
633
628
|
silent,
|
|
634
629
|
source: source || 'core'
|
|
635
630
|
};
|
|
@@ -652,38 +647,22 @@ let NotificationsTelemetry = class NotificationsTelemetry extends Disposable {
|
|
|
652
647
|
}));
|
|
653
648
|
}
|
|
654
649
|
};
|
|
655
|
-
NotificationsTelemetry = (
|
|
656
|
-
(
|
|
657
|
-
(
|
|
658
|
-
], NotificationsTelemetry))
|
|
659
|
-
const MultipleEditorGroupsContext = (
|
|
660
|
-
'multipleEditorGroups',
|
|
661
|
-
false,
|
|
662
|
-
(localize('multipleEditorGroups', "Whether there are multiple editor groups opened"))
|
|
663
|
-
)));
|
|
650
|
+
NotificationsTelemetry = ( __decorate([
|
|
651
|
+
( __param(0, ITelemetryService)),
|
|
652
|
+
( __param(1, INotificationService))
|
|
653
|
+
], NotificationsTelemetry));
|
|
654
|
+
const MultipleEditorGroupsContext = ( new RawContextKey('multipleEditorGroups', false, ( localize('multipleEditorGroups', "Whether there are multiple editor groups opened"))));
|
|
664
655
|
MultipleEditorGroupsContext.toNegated();
|
|
665
|
-
const NotificationFocusedContext = (
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
(localize('notificationFocus', "Whether a notification has keyboard focus"))
|
|
669
|
-
)));
|
|
670
|
-
const NotificationsCenterVisibleContext = ( (new RawContextKey(
|
|
671
|
-
'notificationCenterVisible',
|
|
672
|
-
false,
|
|
673
|
-
(localize('notificationCenterVisible', "Whether the notifications center is visible"))
|
|
674
|
-
)));
|
|
675
|
-
const NotificationsToastsVisibleContext = ( (new RawContextKey(
|
|
676
|
-
'notificationToastsVisible',
|
|
677
|
-
false,
|
|
678
|
-
(localize('notificationToastsVisible', "Whether a notification toast is visible"))
|
|
679
|
-
)));
|
|
656
|
+
const NotificationFocusedContext = ( new RawContextKey('notificationFocus', true, ( localize('notificationFocus', "Whether a notification has keyboard focus"))));
|
|
657
|
+
const NotificationsCenterVisibleContext = ( new RawContextKey('notificationCenterVisible', false, ( localize('notificationCenterVisible', "Whether the notifications center is visible"))));
|
|
658
|
+
const NotificationsToastsVisibleContext = ( new RawContextKey('notificationToastsVisible', false, ( localize('notificationToastsVisible', "Whether a notification toast is visible"))));
|
|
680
659
|
let ResourceContextKey = class ResourceContextKey {
|
|
681
660
|
constructor(_contextKeyService, _fileService, _languageService, _modelService) {
|
|
682
661
|
this._contextKeyService = _contextKeyService;
|
|
683
662
|
this._fileService = _fileService;
|
|
684
663
|
this._languageService = _languageService;
|
|
685
664
|
this._modelService = _modelService;
|
|
686
|
-
this._disposables = (
|
|
665
|
+
this._disposables = ( new DisposableStore());
|
|
687
666
|
this._schemeKey = ResourceContextKey.Scheme.bindTo(this._contextKeyService);
|
|
688
667
|
this._filenameKey = ResourceContextKey.Filename.bindTo(this._contextKeyService);
|
|
689
668
|
this._dirnameKey = ResourceContextKey.Dirname.bindTo(this._contextKeyService);
|
|
@@ -727,7 +706,7 @@ let ResourceContextKey = class ResourceContextKey {
|
|
|
727
706
|
}
|
|
728
707
|
this._value = value;
|
|
729
708
|
this._contextKeyService.bufferChangeEvents(() => {
|
|
730
|
-
this._resourceKey.set(value ? (
|
|
709
|
+
this._resourceKey.set(value ? ( value.toString()) : null);
|
|
731
710
|
this._schemeKey.set(value ? value.scheme : null);
|
|
732
711
|
this._filenameKey.set(value ? basename(value) : null);
|
|
733
712
|
this._dirnameKey.set(value ? dirname(value).fsPath : null);
|
|
@@ -756,60 +735,40 @@ let ResourceContextKey = class ResourceContextKey {
|
|
|
756
735
|
return this._value;
|
|
757
736
|
}
|
|
758
737
|
};
|
|
759
|
-
ResourceContextKey.Scheme = (
|
|
760
|
-
|
|
761
|
-
undefined,
|
|
762
|
-
{ type: 'string', description: ( (localize('resourceScheme', "The scheme of the resource"))) }
|
|
763
|
-
)));
|
|
764
|
-
ResourceContextKey.Filename = ( (new RawContextKey(
|
|
738
|
+
ResourceContextKey.Scheme = ( new RawContextKey('resourceScheme', undefined, { type: 'string', description: ( localize('resourceScheme', "The scheme of the resource")) }));
|
|
739
|
+
ResourceContextKey.Filename = ( new RawContextKey(
|
|
765
740
|
'resourceFilename',
|
|
766
741
|
undefined,
|
|
767
|
-
{ type: 'string', description: (
|
|
768
|
-
))
|
|
769
|
-
ResourceContextKey.Dirname = (
|
|
742
|
+
{ type: 'string', description: ( localize('resourceFilename', "The file name of the resource")) }
|
|
743
|
+
));
|
|
744
|
+
ResourceContextKey.Dirname = ( new RawContextKey(
|
|
770
745
|
'resourceDirname',
|
|
771
746
|
undefined,
|
|
772
|
-
{ type: 'string', description: (
|
|
773
|
-
))
|
|
774
|
-
ResourceContextKey.Path = (
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
)));
|
|
779
|
-
ResourceContextKey.LangId = ( (new RawContextKey(
|
|
780
|
-
'resourceLangId',
|
|
781
|
-
undefined,
|
|
782
|
-
{ type: 'string', description: ( (localize('resourceLangId', "The language identifier of the resource"))) }
|
|
783
|
-
)));
|
|
784
|
-
ResourceContextKey.Resource = ( (new RawContextKey(
|
|
785
|
-
'resource',
|
|
786
|
-
undefined,
|
|
787
|
-
{ type: 'URI', description: ( (localize('resource', "The full value of the resource including scheme and path"))) }
|
|
788
|
-
)));
|
|
789
|
-
ResourceContextKey.Extension = ( (new RawContextKey(
|
|
747
|
+
{ type: 'string', description: ( localize('resourceDirname', "The folder name the resource is contained in")) }
|
|
748
|
+
));
|
|
749
|
+
ResourceContextKey.Path = ( new RawContextKey('resourcePath', undefined, { type: 'string', description: ( localize('resourcePath', "The full path of the resource")) }));
|
|
750
|
+
ResourceContextKey.LangId = ( new RawContextKey('resourceLangId', undefined, { type: 'string', description: ( localize('resourceLangId', "The language identifier of the resource")) }));
|
|
751
|
+
ResourceContextKey.Resource = ( new RawContextKey('resource', undefined, { type: 'URI', description: ( localize('resource', "The full value of the resource including scheme and path")) }));
|
|
752
|
+
ResourceContextKey.Extension = ( new RawContextKey(
|
|
790
753
|
'resourceExtname',
|
|
791
754
|
undefined,
|
|
792
|
-
{ type: 'string', description: (
|
|
793
|
-
))
|
|
794
|
-
ResourceContextKey.HasResource = (
|
|
795
|
-
|
|
796
|
-
undefined,
|
|
797
|
-
{ type: 'boolean', description: ( (localize('resourceSet', "Whether a resource is present or not"))) }
|
|
798
|
-
)));
|
|
799
|
-
ResourceContextKey.IsFileSystemResource = ( (new RawContextKey(
|
|
755
|
+
{ type: 'string', description: ( localize('resourceExtname', "The extension name of the resource")) }
|
|
756
|
+
));
|
|
757
|
+
ResourceContextKey.HasResource = ( new RawContextKey('resourceSet', undefined, { type: 'boolean', description: ( localize('resourceSet', "Whether a resource is present or not")) }));
|
|
758
|
+
ResourceContextKey.IsFileSystemResource = ( new RawContextKey(
|
|
800
759
|
'isFileSystemResource',
|
|
801
760
|
undefined,
|
|
802
|
-
{ type: 'boolean', description: (
|
|
761
|
+
{ type: 'boolean', description: ( localize(
|
|
803
762
|
'isFileSystemResource',
|
|
804
763
|
"Whether the resource is backed by a file system provider"
|
|
805
|
-
))
|
|
806
|
-
))
|
|
807
|
-
ResourceContextKey = (
|
|
808
|
-
(
|
|
809
|
-
(
|
|
810
|
-
(
|
|
811
|
-
(
|
|
812
|
-
], ResourceContextKey))
|
|
764
|
+
)) }
|
|
765
|
+
));
|
|
766
|
+
ResourceContextKey = ( __decorate([
|
|
767
|
+
( __param(0, IContextKeyService)),
|
|
768
|
+
( __param(1, IFileService)),
|
|
769
|
+
( __param(2, ILanguageService)),
|
|
770
|
+
( __param(3, IModelService))
|
|
771
|
+
], ResourceContextKey));
|
|
813
772
|
const SHOW_NOTIFICATIONS_CENTER = 'notifications.showList';
|
|
814
773
|
const HIDE_NOTIFICATIONS_CENTER = 'notifications.hideList';
|
|
815
774
|
const HIDE_NOTIFICATION_TOAST = 'notifications.hideToasts';
|
|
@@ -838,6 +797,10 @@ function registerNotificationCommands(center, toasts, model) {
|
|
|
838
797
|
}
|
|
839
798
|
return undefined;
|
|
840
799
|
}
|
|
800
|
+
( CommandsRegistry.registerCommand(SHOW_NOTIFICATIONS_CENTER, () => {
|
|
801
|
+
toasts.hide();
|
|
802
|
+
center.show();
|
|
803
|
+
}));
|
|
841
804
|
KeybindingsRegistry.registerCommandAndKeybindingRule({
|
|
842
805
|
id: HIDE_NOTIFICATIONS_CENTER,
|
|
843
806
|
weight: 200 + 50,
|
|
@@ -955,20 +918,20 @@ function registerNotificationCommands(center, toasts, model) {
|
|
|
955
918
|
toasts.focusLast();
|
|
956
919
|
}
|
|
957
920
|
});
|
|
958
|
-
const category = { value: (
|
|
959
|
-
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: SHOW_NOTIFICATIONS_CENTER, title: { value: (
|
|
960
|
-
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: HIDE_NOTIFICATIONS_CENTER, title: { value: (
|
|
961
|
-
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: CLEAR_ALL_NOTIFICATIONS, title: { value: (
|
|
962
|
-
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: TOGGLE_DO_NOT_DISTURB_MODE, title: { value: (
|
|
963
|
-
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: FOCUS_NOTIFICATION_TOAST, title: { value: (
|
|
921
|
+
const category = { value: ( localize('notifications', "Notifications")), original: 'Notifications' };
|
|
922
|
+
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: SHOW_NOTIFICATIONS_CENTER, title: { value: ( localize('showNotifications', "Show Notifications")), original: 'Show Notifications' }, category } });
|
|
923
|
+
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: HIDE_NOTIFICATIONS_CENTER, title: { value: ( localize('hideNotifications', "Hide Notifications")), original: 'Hide Notifications' }, category }, when: NotificationsCenterVisibleContext });
|
|
924
|
+
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: CLEAR_ALL_NOTIFICATIONS, title: { value: ( localize('clearAllNotifications', "Clear All Notifications")), original: 'Clear All Notifications' }, category } });
|
|
925
|
+
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: TOGGLE_DO_NOT_DISTURB_MODE, title: { value: ( localize('toggleDoNotDisturbMode', "Toggle Do Not Disturb Mode")), original: 'Toggle Do Not Disturb Mode' }, category } });
|
|
926
|
+
MenuRegistry.appendMenuItem(MenuId.CommandPalette, { command: { id: FOCUS_NOTIFICATION_TOAST, title: { value: ( localize('focusNotificationToasts', "Focus Notification Toast")), original: 'Focus Notification Toast' }, category }, when: NotificationsToastsVisibleContext });
|
|
964
927
|
}
|
|
965
|
-
const clearIcon = registerIcon('notifications-clear', Codicon.close, (
|
|
966
|
-
const clearAllIcon = registerIcon('notifications-clear-all', Codicon.clearAll, (
|
|
967
|
-
const hideIcon = registerIcon('notifications-hide', Codicon.chevronDown, (
|
|
968
|
-
const expandIcon = registerIcon('notifications-expand', Codicon.chevronUp, (
|
|
969
|
-
const collapseIcon = registerIcon('notifications-collapse', Codicon.chevronDown, (
|
|
970
|
-
const configureIcon = registerIcon('notifications-configure', Codicon.gear, (
|
|
971
|
-
const doNotDisturbIcon = registerIcon('notifications-do-not-disturb', Codicon.bellSlash, (
|
|
928
|
+
const clearIcon = registerIcon('notifications-clear', Codicon.close, ( localize('clearIcon', 'Icon for the clear action in notifications.')));
|
|
929
|
+
const clearAllIcon = registerIcon('notifications-clear-all', Codicon.clearAll, ( localize('clearAllIcon', 'Icon for the clear all action in notifications.')));
|
|
930
|
+
const hideIcon = registerIcon('notifications-hide', Codicon.chevronDown, ( localize('hideIcon', 'Icon for the hide action in notifications.')));
|
|
931
|
+
const expandIcon = registerIcon('notifications-expand', Codicon.chevronUp, ( localize('expandIcon', 'Icon for the expand action in notifications.')));
|
|
932
|
+
const collapseIcon = registerIcon('notifications-collapse', Codicon.chevronDown, ( localize('collapseIcon', 'Icon for the collapse action in notifications.')));
|
|
933
|
+
const configureIcon = registerIcon('notifications-configure', Codicon.gear, ( localize('configureIcon', 'Icon for the configure action in notifications.')));
|
|
934
|
+
const doNotDisturbIcon = registerIcon('notifications-do-not-disturb', Codicon.bellSlash, ( localize('doNotDisturbIcon', 'Icon for the mute all action in notifications.')));
|
|
972
935
|
let ClearNotificationAction = class ClearNotificationAction extends Action {
|
|
973
936
|
constructor(id, label, commandService) {
|
|
974
937
|
super(id, label, ThemeIcon.asClassName(clearIcon));
|
|
@@ -979,10 +942,10 @@ let ClearNotificationAction = class ClearNotificationAction extends Action {
|
|
|
979
942
|
}
|
|
980
943
|
};
|
|
981
944
|
ClearNotificationAction.ID = CLEAR_NOTIFICATION;
|
|
982
|
-
ClearNotificationAction.LABEL = (
|
|
983
|
-
ClearNotificationAction = (
|
|
984
|
-
(
|
|
985
|
-
], ClearNotificationAction))
|
|
945
|
+
ClearNotificationAction.LABEL = ( localize('clearNotification', "Clear Notification"));
|
|
946
|
+
ClearNotificationAction = ( __decorate([
|
|
947
|
+
( __param(2, ICommandService))
|
|
948
|
+
], ClearNotificationAction));
|
|
986
949
|
let ClearAllNotificationsAction = class ClearAllNotificationsAction extends Action {
|
|
987
950
|
constructor(id, label, commandService) {
|
|
988
951
|
super(id, label, ThemeIcon.asClassName(clearAllIcon));
|
|
@@ -993,10 +956,10 @@ let ClearAllNotificationsAction = class ClearAllNotificationsAction extends Acti
|
|
|
993
956
|
}
|
|
994
957
|
};
|
|
995
958
|
ClearAllNotificationsAction.ID = CLEAR_ALL_NOTIFICATIONS;
|
|
996
|
-
ClearAllNotificationsAction.LABEL = (
|
|
997
|
-
ClearAllNotificationsAction = (
|
|
998
|
-
(
|
|
999
|
-
], ClearAllNotificationsAction))
|
|
959
|
+
ClearAllNotificationsAction.LABEL = ( localize('clearNotifications', "Clear All Notifications"));
|
|
960
|
+
ClearAllNotificationsAction = ( __decorate([
|
|
961
|
+
( __param(2, ICommandService))
|
|
962
|
+
], ClearAllNotificationsAction));
|
|
1000
963
|
let ToggleDoNotDisturbAction = class ToggleDoNotDisturbAction extends Action {
|
|
1001
964
|
constructor(id, label, commandService) {
|
|
1002
965
|
super(id, label, ThemeIcon.asClassName(doNotDisturbIcon));
|
|
@@ -1007,10 +970,10 @@ let ToggleDoNotDisturbAction = class ToggleDoNotDisturbAction extends Action {
|
|
|
1007
970
|
}
|
|
1008
971
|
};
|
|
1009
972
|
ToggleDoNotDisturbAction.ID = TOGGLE_DO_NOT_DISTURB_MODE;
|
|
1010
|
-
ToggleDoNotDisturbAction.LABEL = (
|
|
1011
|
-
ToggleDoNotDisturbAction = (
|
|
1012
|
-
(
|
|
1013
|
-
], ToggleDoNotDisturbAction))
|
|
973
|
+
ToggleDoNotDisturbAction.LABEL = ( localize('toggleDoNotDisturbMode', "Toggle Do Not Disturb Mode"));
|
|
974
|
+
ToggleDoNotDisturbAction = ( __decorate([
|
|
975
|
+
( __param(2, ICommandService))
|
|
976
|
+
], ToggleDoNotDisturbAction));
|
|
1014
977
|
let HideNotificationsCenterAction = class HideNotificationsCenterAction extends Action {
|
|
1015
978
|
constructor(id, label, commandService) {
|
|
1016
979
|
super(id, label, ThemeIcon.asClassName(hideIcon));
|
|
@@ -1021,10 +984,10 @@ let HideNotificationsCenterAction = class HideNotificationsCenterAction extends
|
|
|
1021
984
|
}
|
|
1022
985
|
};
|
|
1023
986
|
HideNotificationsCenterAction.ID = HIDE_NOTIFICATIONS_CENTER;
|
|
1024
|
-
HideNotificationsCenterAction.LABEL = (
|
|
1025
|
-
HideNotificationsCenterAction = (
|
|
1026
|
-
(
|
|
1027
|
-
], HideNotificationsCenterAction))
|
|
987
|
+
HideNotificationsCenterAction.LABEL = ( localize('hideNotificationsCenter', "Hide Notifications"));
|
|
988
|
+
HideNotificationsCenterAction = ( __decorate([
|
|
989
|
+
( __param(2, ICommandService))
|
|
990
|
+
], HideNotificationsCenterAction));
|
|
1028
991
|
let ExpandNotificationAction = class ExpandNotificationAction extends Action {
|
|
1029
992
|
constructor(id, label, commandService) {
|
|
1030
993
|
super(id, label, ThemeIcon.asClassName(expandIcon));
|
|
@@ -1035,10 +998,10 @@ let ExpandNotificationAction = class ExpandNotificationAction extends Action {
|
|
|
1035
998
|
}
|
|
1036
999
|
};
|
|
1037
1000
|
ExpandNotificationAction.ID = EXPAND_NOTIFICATION;
|
|
1038
|
-
ExpandNotificationAction.LABEL = (
|
|
1039
|
-
ExpandNotificationAction = (
|
|
1040
|
-
(
|
|
1041
|
-
], ExpandNotificationAction))
|
|
1001
|
+
ExpandNotificationAction.LABEL = ( localize('expandNotification', "Expand Notification"));
|
|
1002
|
+
ExpandNotificationAction = ( __decorate([
|
|
1003
|
+
( __param(2, ICommandService))
|
|
1004
|
+
], ExpandNotificationAction));
|
|
1042
1005
|
let CollapseNotificationAction = class CollapseNotificationAction extends Action {
|
|
1043
1006
|
constructor(id, label, commandService) {
|
|
1044
1007
|
super(id, label, ThemeIcon.asClassName(collapseIcon));
|
|
@@ -1049,10 +1012,10 @@ let CollapseNotificationAction = class CollapseNotificationAction extends Action
|
|
|
1049
1012
|
}
|
|
1050
1013
|
};
|
|
1051
1014
|
CollapseNotificationAction.ID = COLLAPSE_NOTIFICATION;
|
|
1052
|
-
CollapseNotificationAction.LABEL = (
|
|
1053
|
-
CollapseNotificationAction = (
|
|
1054
|
-
(
|
|
1055
|
-
], CollapseNotificationAction))
|
|
1015
|
+
CollapseNotificationAction.LABEL = ( localize('collapseNotification', "Collapse Notification"));
|
|
1016
|
+
CollapseNotificationAction = ( __decorate([
|
|
1017
|
+
( __param(2, ICommandService))
|
|
1018
|
+
], CollapseNotificationAction));
|
|
1056
1019
|
class ConfigureNotificationAction extends Action {
|
|
1057
1020
|
constructor(id, label, configurationActions) {
|
|
1058
1021
|
super(id, label, ThemeIcon.asClassName(configureIcon));
|
|
@@ -1060,7 +1023,7 @@ class ConfigureNotificationAction extends Action {
|
|
|
1060
1023
|
}
|
|
1061
1024
|
}
|
|
1062
1025
|
ConfigureNotificationAction.ID = 'workbench.action.configureNotification';
|
|
1063
|
-
ConfigureNotificationAction.LABEL = (
|
|
1026
|
+
ConfigureNotificationAction.LABEL = ( localize('configureNotification', "Configure Notification"));
|
|
1064
1027
|
let CopyNotificationMessageAction = class CopyNotificationMessageAction extends Action {
|
|
1065
1028
|
constructor(id, label, clipboardService) {
|
|
1066
1029
|
super(id, label);
|
|
@@ -1071,10 +1034,10 @@ let CopyNotificationMessageAction = class CopyNotificationMessageAction extends
|
|
|
1071
1034
|
}
|
|
1072
1035
|
};
|
|
1073
1036
|
CopyNotificationMessageAction.ID = 'workbench.action.copyNotificationMessage';
|
|
1074
|
-
CopyNotificationMessageAction.LABEL = (
|
|
1075
|
-
CopyNotificationMessageAction = (
|
|
1076
|
-
(
|
|
1077
|
-
], CopyNotificationMessageAction))
|
|
1037
|
+
CopyNotificationMessageAction.LABEL = ( localize('copyNotification', "Copy Text"));
|
|
1038
|
+
CopyNotificationMessageAction = ( __decorate([
|
|
1039
|
+
( __param(2, IClipboardService))
|
|
1040
|
+
], CopyNotificationMessageAction));
|
|
1078
1041
|
let NotificationActionRunner = class NotificationActionRunner extends ActionRunner {
|
|
1079
1042
|
constructor(telemetryService, notificationService) {
|
|
1080
1043
|
super();
|
|
@@ -1085,7 +1048,7 @@ let NotificationActionRunner = class NotificationActionRunner extends ActionRunn
|
|
|
1085
1048
|
this.telemetryService.publicLog2('workbenchActionExecuted', { id: action.id, from: 'message' });
|
|
1086
1049
|
if (isNotificationViewItem(context)) {
|
|
1087
1050
|
this.telemetryService.publicLog2('notification:actionExecuted', {
|
|
1088
|
-
id: (
|
|
1051
|
+
id: ( hash(( context.message.original.toString())).toString()),
|
|
1089
1052
|
actionLabel: action.label,
|
|
1090
1053
|
source: context.sourceId || 'core',
|
|
1091
1054
|
silent: context.silent
|
|
@@ -1099,10 +1062,10 @@ let NotificationActionRunner = class NotificationActionRunner extends ActionRunn
|
|
|
1099
1062
|
}
|
|
1100
1063
|
}
|
|
1101
1064
|
};
|
|
1102
|
-
NotificationActionRunner = (
|
|
1103
|
-
(
|
|
1104
|
-
(
|
|
1105
|
-
], NotificationActionRunner))
|
|
1065
|
+
NotificationActionRunner = ( __decorate([
|
|
1066
|
+
( __param(0, ITelemetryService)),
|
|
1067
|
+
( __param(1, INotificationService))
|
|
1068
|
+
], NotificationActionRunner));
|
|
1106
1069
|
class NotificationsListDelegate {
|
|
1107
1070
|
constructor(container) {
|
|
1108
1071
|
this.offsetHelper = this.createOffsetHelper(container);
|
|
@@ -1166,11 +1129,11 @@ class NotificationMessageRenderer {
|
|
|
1166
1129
|
else {
|
|
1167
1130
|
let title = node.title;
|
|
1168
1131
|
if (!title && node.href.startsWith('command:')) {
|
|
1169
|
-
title = (
|
|
1132
|
+
title = ( localize(
|
|
1170
1133
|
'executeCommand',
|
|
1171
1134
|
"Click to execute command '{0}'",
|
|
1172
1135
|
node.href.substr('command:'.length)
|
|
1173
|
-
))
|
|
1136
|
+
));
|
|
1174
1137
|
}
|
|
1175
1138
|
else if (!title) {
|
|
1176
1139
|
title = node.href;
|
|
@@ -1181,9 +1144,9 @@ class NotificationMessageRenderer {
|
|
|
1181
1144
|
EventHelper.stop(e, true);
|
|
1182
1145
|
actionHandler.callback(node.href);
|
|
1183
1146
|
};
|
|
1184
|
-
const onClick = actionHandler.toDispose.add((
|
|
1147
|
+
const onClick = actionHandler.toDispose.add(( new DomEmitter(anchor, 'click'))).event;
|
|
1185
1148
|
actionHandler.toDispose.add(Gesture.addTarget(anchor));
|
|
1186
|
-
const onTap = actionHandler.toDispose.add((
|
|
1149
|
+
const onTap = actionHandler.toDispose.add(( new DomEmitter(anchor, EventType.Tap))).event;
|
|
1187
1150
|
Event.any(onClick, onTap)(onPointer, null, actionHandler.toDispose);
|
|
1188
1151
|
}
|
|
1189
1152
|
messageContainer.appendChild(anchor);
|
|
@@ -1204,7 +1167,7 @@ let NotificationRenderer = class NotificationRenderer {
|
|
|
1204
1167
|
}
|
|
1205
1168
|
renderTemplate(container) {
|
|
1206
1169
|
const data = Object.create(null);
|
|
1207
|
-
data.toDispose = (
|
|
1170
|
+
data.toDispose = ( new DisposableStore());
|
|
1208
1171
|
data.container = document.createElement('div');
|
|
1209
1172
|
data.container.classList.add('notification-list-item');
|
|
1210
1173
|
data.mainRow = document.createElement('div');
|
|
@@ -1215,23 +1178,23 @@ let NotificationRenderer = class NotificationRenderer {
|
|
|
1215
1178
|
data.message.classList.add('notification-list-item-message');
|
|
1216
1179
|
const toolbarContainer = document.createElement('div');
|
|
1217
1180
|
toolbarContainer.classList.add('notification-list-item-toolbar-container');
|
|
1218
|
-
data.toolbar = (
|
|
1219
|
-
ariaLabel: (
|
|
1181
|
+
data.toolbar = ( new ActionBar(toolbarContainer, {
|
|
1182
|
+
ariaLabel: ( localize('notificationActions', "Notification Actions")),
|
|
1220
1183
|
actionViewItemProvider: action => {
|
|
1221
1184
|
if (action && action instanceof ConfigureNotificationAction) {
|
|
1222
|
-
const item = (
|
|
1185
|
+
const item = ( new DropdownMenuActionViewItem(
|
|
1223
1186
|
action,
|
|
1224
1187
|
action.configurationActions,
|
|
1225
1188
|
this.contextMenuService,
|
|
1226
1189
|
{ actionRunner: this.actionRunner, classNames: action.class }
|
|
1227
|
-
))
|
|
1190
|
+
));
|
|
1228
1191
|
data.toDispose.add(item);
|
|
1229
1192
|
return item;
|
|
1230
1193
|
}
|
|
1231
1194
|
return undefined;
|
|
1232
1195
|
},
|
|
1233
1196
|
actionRunner: this.actionRunner
|
|
1234
|
-
}))
|
|
1197
|
+
}));
|
|
1235
1198
|
data.toDispose.add(data.toolbar);
|
|
1236
1199
|
data.detailsRow = document.createElement('div');
|
|
1237
1200
|
data.detailsRow.classList.add('notification-list-item-details-row');
|
|
@@ -1247,7 +1210,7 @@ let NotificationRenderer = class NotificationRenderer {
|
|
|
1247
1210
|
data.mainRow.appendChild(data.icon);
|
|
1248
1211
|
data.mainRow.appendChild(data.message);
|
|
1249
1212
|
data.mainRow.appendChild(toolbarContainer);
|
|
1250
|
-
data.progress = (
|
|
1213
|
+
data.progress = ( new ProgressBar(container));
|
|
1251
1214
|
data.toDispose.add(attachProgressBarStyler(data.progress, this.themeService));
|
|
1252
1215
|
data.toDispose.add(data.progress);
|
|
1253
1216
|
data.renderer = this.instantiationService.createInstance(NotificationTemplateRenderer, data, this.actionRunner);
|
|
@@ -1262,11 +1225,11 @@ let NotificationRenderer = class NotificationRenderer {
|
|
|
1262
1225
|
}
|
|
1263
1226
|
};
|
|
1264
1227
|
NotificationRenderer.TEMPLATE_ID = 'notification';
|
|
1265
|
-
NotificationRenderer = (
|
|
1266
|
-
(
|
|
1267
|
-
(
|
|
1268
|
-
(
|
|
1269
|
-
], NotificationRenderer))
|
|
1228
|
+
NotificationRenderer = ( __decorate([
|
|
1229
|
+
( __param(1, IThemeService)),
|
|
1230
|
+
( __param(2, IContextMenuService)),
|
|
1231
|
+
( __param(3, IInstantiationService))
|
|
1232
|
+
], NotificationRenderer));
|
|
1270
1233
|
let NotificationTemplateRenderer = class NotificationTemplateRenderer extends Disposable {
|
|
1271
1234
|
constructor(template, actionRunner, openerService, instantiationService, themeService, keybindingService, contextMenuService) {
|
|
1272
1235
|
super();
|
|
@@ -1277,7 +1240,7 @@ let NotificationTemplateRenderer = class NotificationTemplateRenderer extends Di
|
|
|
1277
1240
|
this.themeService = themeService;
|
|
1278
1241
|
this.keybindingService = keybindingService;
|
|
1279
1242
|
this.contextMenuService = contextMenuService;
|
|
1280
|
-
this.inputDisposables = this._register((
|
|
1243
|
+
this.inputDisposables = this._register(( new DisposableStore()));
|
|
1281
1244
|
if (!NotificationTemplateRenderer.closeNotificationAction) {
|
|
1282
1245
|
NotificationTemplateRenderer.closeNotificationAction = instantiationService.createInstance(ClearNotificationAction, ClearNotificationAction.ID, ClearNotificationAction.LABEL);
|
|
1283
1246
|
NotificationTemplateRenderer.expandNotificationAction = instantiationService.createInstance(ExpandNotificationAction, ExpandNotificationAction.ID, ExpandNotificationAction.LABEL);
|
|
@@ -1290,12 +1253,12 @@ let NotificationTemplateRenderer = class NotificationTemplateRenderer extends Di
|
|
|
1290
1253
|
}
|
|
1291
1254
|
render(notification) {
|
|
1292
1255
|
this.template.container.classList.toggle('expanded', notification.expanded);
|
|
1293
|
-
this.inputDisposables.add(addDisposableListener(this.template.container, EventType.MOUSE_UP, e => {
|
|
1256
|
+
this.inputDisposables.add(addDisposableListener(this.template.container, EventType$1.MOUSE_UP, e => {
|
|
1294
1257
|
if (e.button === 1 ) {
|
|
1295
1258
|
EventHelper.stop(e, true);
|
|
1296
1259
|
}
|
|
1297
1260
|
}));
|
|
1298
|
-
this.inputDisposables.add(addDisposableListener(this.template.container, EventType.AUXCLICK, e => {
|
|
1261
|
+
this.inputDisposables.add(addDisposableListener(this.template.container, EventType$1.AUXCLICK, e => {
|
|
1299
1262
|
if (!notification.hasProgress && e.button === 1 ) {
|
|
1300
1263
|
EventHelper.stop(e, true);
|
|
1301
1264
|
notification.close();
|
|
@@ -1332,7 +1295,7 @@ let NotificationTemplateRenderer = class NotificationTemplateRenderer extends Di
|
|
|
1332
1295
|
renderMessage(notification) {
|
|
1333
1296
|
clearNode(this.template.message);
|
|
1334
1297
|
this.template.message.appendChild(NotificationMessageRenderer.render(notification.message, {
|
|
1335
|
-
callback: link => this.openerService.open((
|
|
1298
|
+
callback: link => this.openerService.open(( URI.parse(link)), { allowCommands: true }),
|
|
1336
1299
|
toDispose: this.inputDisposables
|
|
1337
1300
|
}));
|
|
1338
1301
|
const messageOverflows = notification.canCollapse && !notification.expanded && this.template.message.scrollWidth > this.template.message.clientWidth;
|
|
@@ -1380,7 +1343,7 @@ let NotificationTemplateRenderer = class NotificationTemplateRenderer extends Di
|
|
|
1380
1343
|
}
|
|
1381
1344
|
renderSource(notification) {
|
|
1382
1345
|
if (notification.expanded && notification.source) {
|
|
1383
|
-
this.template.source.textContent = (
|
|
1346
|
+
this.template.source.textContent = ( localize('notificationSource', "Source: {0}", notification.source));
|
|
1384
1347
|
this.template.source.title = notification.source;
|
|
1385
1348
|
}
|
|
1386
1349
|
else {
|
|
@@ -1401,7 +1364,7 @@ let NotificationTemplateRenderer = class NotificationTemplateRenderer extends Di
|
|
|
1401
1364
|
}
|
|
1402
1365
|
}
|
|
1403
1366
|
})();
|
|
1404
|
-
const buttonToolbar = this.inputDisposables.add((
|
|
1367
|
+
const buttonToolbar = this.inputDisposables.add(( new ButtonBar(this.template.buttonsContainer)));
|
|
1405
1368
|
for (let i = 0; i < primaryActions.length; i++) {
|
|
1406
1369
|
const action = primaryActions[i];
|
|
1407
1370
|
const options = {
|
|
@@ -1464,13 +1427,13 @@ let NotificationTemplateRenderer = class NotificationTemplateRenderer extends Di
|
|
|
1464
1427
|
}
|
|
1465
1428
|
};
|
|
1466
1429
|
NotificationTemplateRenderer.SEVERITIES = [Severity.Info, Severity.Warning, Severity.Error];
|
|
1467
|
-
NotificationTemplateRenderer = (
|
|
1468
|
-
(
|
|
1469
|
-
(
|
|
1470
|
-
(
|
|
1471
|
-
(
|
|
1472
|
-
(
|
|
1473
|
-
], NotificationTemplateRenderer))
|
|
1430
|
+
NotificationTemplateRenderer = ( __decorate([
|
|
1431
|
+
( __param(2, IOpenerService)),
|
|
1432
|
+
( __param(3, IInstantiationService)),
|
|
1433
|
+
( __param(4, IThemeService)),
|
|
1434
|
+
( __param(5, IKeybindingService)),
|
|
1435
|
+
( __param(6, IContextMenuService))
|
|
1436
|
+
], NotificationTemplateRenderer));
|
|
1474
1437
|
let NotificationsList = class NotificationsList extends Themable {
|
|
1475
1438
|
constructor(container, options, instantiationService, themeService, contextMenuService) {
|
|
1476
1439
|
super(themeService);
|
|
@@ -1502,7 +1465,7 @@ let NotificationsList = class NotificationsList extends Themable {
|
|
|
1502
1465
|
this.listContainer.classList.add('notifications-list-container');
|
|
1503
1466
|
const actionRunner = this._register(this.instantiationService.createInstance(NotificationActionRunner));
|
|
1504
1467
|
const renderer = this.instantiationService.createInstance(NotificationRenderer, actionRunner);
|
|
1505
|
-
const listDelegate = this.listDelegate = (
|
|
1468
|
+
const listDelegate = this.listDelegate = ( new NotificationsListDelegate(this.listContainer));
|
|
1506
1469
|
const options = this.options;
|
|
1507
1470
|
const list = this.list = this._register(this.instantiationService.createInstance(WorkbenchList, 'NotificationsList', this.listContainer, listDelegate, [renderer], {
|
|
1508
1471
|
...options,
|
|
@@ -1514,21 +1477,17 @@ let NotificationsList = class NotificationsList extends Themable {
|
|
|
1514
1477
|
accessibilityProvider: {
|
|
1515
1478
|
getAriaLabel(element) {
|
|
1516
1479
|
if (!element.source) {
|
|
1517
|
-
return (
|
|
1518
|
-
(localize('notificationAriaLabel', "{0}, notification", element.message.raw))
|
|
1519
|
-
);
|
|
1480
|
+
return ( localize('notificationAriaLabel', "{0}, notification", element.message.raw));
|
|
1520
1481
|
}
|
|
1521
|
-
return (
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
))
|
|
1528
|
-
);
|
|
1482
|
+
return ( localize(
|
|
1483
|
+
'notificationWithSourceAriaLabel',
|
|
1484
|
+
"{0}, source: {1}, notification",
|
|
1485
|
+
element.message.raw,
|
|
1486
|
+
element.source
|
|
1487
|
+
));
|
|
1529
1488
|
},
|
|
1530
1489
|
getWidgetAriaLabel() {
|
|
1531
|
-
return options.widgetAriaLabel ?? (
|
|
1490
|
+
return options.widgetAriaLabel ?? ( localize('notificationsList', "Notifications List"));
|
|
1532
1491
|
},
|
|
1533
1492
|
getRole() {
|
|
1534
1493
|
return 'dialog';
|
|
@@ -1652,11 +1611,11 @@ let NotificationsList = class NotificationsList extends Themable {
|
|
|
1652
1611
|
super.dispose();
|
|
1653
1612
|
}
|
|
1654
1613
|
};
|
|
1655
|
-
NotificationsList = (
|
|
1656
|
-
(
|
|
1657
|
-
(
|
|
1658
|
-
(
|
|
1659
|
-
], NotificationsList))
|
|
1614
|
+
NotificationsList = ( __decorate([
|
|
1615
|
+
( __param(2, IInstantiationService)),
|
|
1616
|
+
( __param(3, IThemeService)),
|
|
1617
|
+
( __param(4, IContextMenuService))
|
|
1618
|
+
], NotificationsList));
|
|
1660
1619
|
registerThemingParticipant((theme, collector) => {
|
|
1661
1620
|
const linkColor = theme.getColor(NOTIFICATIONS_LINKS);
|
|
1662
1621
|
if (linkColor) {
|
|
@@ -1695,11 +1654,11 @@ registerThemingParticipant((theme, collector) => {
|
|
|
1695
1654
|
}
|
|
1696
1655
|
});
|
|
1697
1656
|
var ToastVisibility;
|
|
1698
|
-
( (
|
|
1657
|
+
( (function(ToastVisibility) {
|
|
1699
1658
|
ToastVisibility[ToastVisibility["HIDDEN_OR_VISIBLE"] = 0] = "HIDDEN_OR_VISIBLE";
|
|
1700
1659
|
ToastVisibility[ToastVisibility["HIDDEN"] = 1] = "HIDDEN";
|
|
1701
1660
|
ToastVisibility[ToastVisibility["VISIBLE"] = 2] = "VISIBLE";
|
|
1702
|
-
})(ToastVisibility || (ToastVisibility = {})))
|
|
1661
|
+
})(ToastVisibility || (ToastVisibility = {})));
|
|
1703
1662
|
let NotificationsToasts = class NotificationsToasts extends Themable {
|
|
1704
1663
|
constructor(container, model, instantiationService, layoutService, themeService, editorGroupService, contextKeyService, lifecycleService, hostService) {
|
|
1705
1664
|
super(themeService);
|
|
@@ -1711,13 +1670,13 @@ let NotificationsToasts = class NotificationsToasts extends Themable {
|
|
|
1711
1670
|
this.contextKeyService = contextKeyService;
|
|
1712
1671
|
this.lifecycleService = lifecycleService;
|
|
1713
1672
|
this.hostService = hostService;
|
|
1714
|
-
this._onDidChangeVisibility = this._register((
|
|
1673
|
+
this._onDidChangeVisibility = this._register(( new Emitter()));
|
|
1715
1674
|
this.onDidChangeVisibility = this._onDidChangeVisibility.event;
|
|
1716
1675
|
this._isVisible = false;
|
|
1717
|
-
this.mapNotificationToToast = (
|
|
1718
|
-
this.mapNotificationToDisposable = (
|
|
1676
|
+
this.mapNotificationToToast = ( new Map());
|
|
1677
|
+
this.mapNotificationToDisposable = ( new Map());
|
|
1719
1678
|
this.notificationsToastsVisibleContextKey = NotificationsToastsVisibleContext.bindTo(this.contextKeyService);
|
|
1720
|
-
this.addedToastsIntervalCounter = (
|
|
1679
|
+
this.addedToastsIntervalCounter = ( new IntervalCounter(NotificationsToasts.SPAM_PROTECTION.interval));
|
|
1721
1680
|
this.registerListeners();
|
|
1722
1681
|
}
|
|
1723
1682
|
get isVisible() { return !!this._isVisible; }
|
|
@@ -1751,7 +1710,7 @@ let NotificationsToasts = class NotificationsToasts extends Themable {
|
|
|
1751
1710
|
if (this.addedToastsIntervalCounter.increment() > NotificationsToasts.SPAM_PROTECTION.limit) {
|
|
1752
1711
|
return;
|
|
1753
1712
|
}
|
|
1754
|
-
const itemDisposables = (
|
|
1713
|
+
const itemDisposables = ( new DisposableStore());
|
|
1755
1714
|
this.mapNotificationToDisposable.set(item, itemDisposables);
|
|
1756
1715
|
itemDisposables.add(scheduleAtNextAnimationFrame(() => this.doAddToast(item, itemDisposables)));
|
|
1757
1716
|
}
|
|
@@ -1779,18 +1738,14 @@ let NotificationsToasts = class NotificationsToasts extends Themable {
|
|
|
1779
1738
|
verticalScrollMode: 2 ,
|
|
1780
1739
|
widgetAriaLabel: (() => {
|
|
1781
1740
|
if (!item.source) {
|
|
1782
|
-
return (
|
|
1783
|
-
(localize('notificationAriaLabel', "{0}, notification", item.message.raw))
|
|
1784
|
-
);
|
|
1741
|
+
return ( localize('notificationAriaLabel', "{0}, notification", item.message.raw));
|
|
1785
1742
|
}
|
|
1786
|
-
return (
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
))
|
|
1793
|
-
);
|
|
1743
|
+
return ( localize(
|
|
1744
|
+
'notificationWithSourceAriaLabel',
|
|
1745
|
+
"{0}, source: {1}, notification",
|
|
1746
|
+
item.message.raw,
|
|
1747
|
+
item.source
|
|
1748
|
+
));
|
|
1794
1749
|
})()
|
|
1795
1750
|
});
|
|
1796
1751
|
itemDisposables.add(notificationList);
|
|
@@ -1836,8 +1791,8 @@ let NotificationsToasts = class NotificationsToasts extends Themable {
|
|
|
1836
1791
|
}
|
|
1837
1792
|
purgeNotification(item, notificationToastContainer, notificationList, disposables) {
|
|
1838
1793
|
let isMouseOverToast = false;
|
|
1839
|
-
disposables.add(addDisposableListener(notificationToastContainer, EventType.MOUSE_OVER, () => isMouseOverToast = true));
|
|
1840
|
-
disposables.add(addDisposableListener(notificationToastContainer, EventType.MOUSE_OUT, () => isMouseOverToast = false));
|
|
1794
|
+
disposables.add(addDisposableListener(notificationToastContainer, EventType$1.MOUSE_OVER, () => isMouseOverToast = true));
|
|
1795
|
+
disposables.add(addDisposableListener(notificationToastContainer, EventType$1.MOUSE_OUT, () => isMouseOverToast = false));
|
|
1841
1796
|
let purgeTimeoutHandle;
|
|
1842
1797
|
let listener;
|
|
1843
1798
|
const hideAfterTimeout = () => {
|
|
@@ -2032,9 +1987,7 @@ let NotificationsToasts = class NotificationsToasts extends Themable {
|
|
|
2032
1987
|
availableHeight = typeof availableHeight === 'number'
|
|
2033
1988
|
? Math.round(availableHeight * 0.618)
|
|
2034
1989
|
: 0;
|
|
2035
|
-
return (
|
|
2036
|
-
(new Dimension(Math.min(maxWidth, availableWidth), availableHeight))
|
|
2037
|
-
);
|
|
1990
|
+
return ( new Dimension(Math.min(maxWidth, availableWidth), availableHeight));
|
|
2038
1991
|
}
|
|
2039
1992
|
layoutLists(width) {
|
|
2040
1993
|
this.mapNotificationToToast.forEach(({ list }) => list.layout(width));
|
|
@@ -2087,25 +2040,25 @@ NotificationsToasts.SPAM_PROTECTION = {
|
|
|
2087
2040
|
interval: 800,
|
|
2088
2041
|
limit: NotificationsToasts.MAX_NOTIFICATIONS
|
|
2089
2042
|
};
|
|
2090
|
-
NotificationsToasts = (
|
|
2091
|
-
(
|
|
2092
|
-
(
|
|
2093
|
-
(
|
|
2094
|
-
(
|
|
2095
|
-
(
|
|
2096
|
-
(
|
|
2097
|
-
(
|
|
2098
|
-
], NotificationsToasts))
|
|
2043
|
+
NotificationsToasts = ( __decorate([
|
|
2044
|
+
( __param(2, IInstantiationService)),
|
|
2045
|
+
( __param(3, IWorkbenchLayoutService)),
|
|
2046
|
+
( __param(4, IThemeService)),
|
|
2047
|
+
( __param(5, IEditorGroupsService)),
|
|
2048
|
+
( __param(6, IContextKeyService)),
|
|
2049
|
+
( __param(7, ILifecycleService)),
|
|
2050
|
+
( __param(8, IHostService))
|
|
2051
|
+
], NotificationsToasts));
|
|
2099
2052
|
let NotificationService = class NotificationService extends Disposable {
|
|
2100
2053
|
constructor(storageService) {
|
|
2101
2054
|
super();
|
|
2102
2055
|
this.storageService = storageService;
|
|
2103
|
-
this.model = this._register((
|
|
2104
|
-
this._onDidAddNotification = this._register((
|
|
2056
|
+
this.model = this._register(( new NotificationsModel()));
|
|
2057
|
+
this._onDidAddNotification = this._register(( new Emitter()));
|
|
2105
2058
|
this.onDidAddNotification = this._onDidAddNotification.event;
|
|
2106
|
-
this._onDidRemoveNotification = this._register((
|
|
2059
|
+
this._onDidRemoveNotification = this._register(( new Emitter()));
|
|
2107
2060
|
this.onDidRemoveNotification = this._onDidRemoveNotification.event;
|
|
2108
|
-
this._onDidChangeDoNotDisturbMode = this._register((
|
|
2061
|
+
this._onDidChangeDoNotDisturbMode = this._register(( new Emitter()));
|
|
2109
2062
|
this.onDidChangeDoNotDisturbMode = this._onDidChangeDoNotDisturbMode.event;
|
|
2110
2063
|
this._doNotDisturbMode = this.storageService.getBoolean(NotificationService.DND_SETTINGS_KEY, -1 , false);
|
|
2111
2064
|
this.updateDoNotDisturbFilters();
|
|
@@ -2177,25 +2130,17 @@ let NotificationService = class NotificationService extends Disposable {
|
|
|
2177
2130
|
this.model.addNotification({ severity: Severity.Error, message });
|
|
2178
2131
|
}
|
|
2179
2132
|
notify(notification) {
|
|
2180
|
-
const toDispose = (
|
|
2133
|
+
const toDispose = ( new DisposableStore());
|
|
2181
2134
|
if (notification.neverShowAgain) {
|
|
2182
2135
|
const scope = this.toStorageScope(notification.neverShowAgain);
|
|
2183
2136
|
const id = notification.neverShowAgain.id;
|
|
2184
2137
|
if (this.storageService.getBoolean(id, scope)) {
|
|
2185
|
-
return (
|
|
2186
|
-
(new NoOpNotification())
|
|
2187
|
-
);
|
|
2138
|
+
return ( new NoOpNotification());
|
|
2188
2139
|
}
|
|
2189
|
-
const neverShowAgainAction = toDispose.add((
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
true,
|
|
2194
|
-
async () => {
|
|
2195
|
-
handle.close();
|
|
2196
|
-
this.storageService.store(id, true, scope, 0 );
|
|
2197
|
-
}
|
|
2198
|
-
))));
|
|
2140
|
+
const neverShowAgainAction = toDispose.add(( new Action('workbench.notification.neverShowAgain', ( localize('neverShowAgain', "Don't Show Again")), undefined, true, async () => {
|
|
2141
|
+
handle.close();
|
|
2142
|
+
this.storageService.store(id, true, scope, 0 );
|
|
2143
|
+
})));
|
|
2199
2144
|
const actions = {
|
|
2200
2145
|
primary: notification.actions?.primary || [],
|
|
2201
2146
|
secondary: notification.actions?.secondary || []
|
|
@@ -2225,17 +2170,15 @@ let NotificationService = class NotificationService extends Disposable {
|
|
|
2225
2170
|
}
|
|
2226
2171
|
}
|
|
2227
2172
|
prompt(severity, message, choices, options) {
|
|
2228
|
-
const toDispose = (
|
|
2173
|
+
const toDispose = ( new DisposableStore());
|
|
2229
2174
|
if (options?.neverShowAgain) {
|
|
2230
2175
|
const scope = this.toStorageScope(options.neverShowAgain);
|
|
2231
2176
|
const id = options.neverShowAgain.id;
|
|
2232
2177
|
if (this.storageService.getBoolean(id, scope)) {
|
|
2233
|
-
return (
|
|
2234
|
-
(new NoOpNotification())
|
|
2235
|
-
);
|
|
2178
|
+
return ( new NoOpNotification());
|
|
2236
2179
|
}
|
|
2237
2180
|
const neverShowAgainChoice = {
|
|
2238
|
-
label: (
|
|
2181
|
+
label: ( localize('neverShowAgain', "Don't Show Again")),
|
|
2239
2182
|
run: () => this.storageService.store(id, true, scope, 0 ),
|
|
2240
2183
|
isSecondary: options.neverShowAgain.isSecondary
|
|
2241
2184
|
};
|
|
@@ -2250,7 +2193,7 @@ let NotificationService = class NotificationService extends Disposable {
|
|
|
2250
2193
|
const primaryActions = [];
|
|
2251
2194
|
const secondaryActions = [];
|
|
2252
2195
|
choices.forEach((choice, index) => {
|
|
2253
|
-
const action = (
|
|
2196
|
+
const action = ( new ChoiceAction(`workbench.dialog.choice.${index}`, choice));
|
|
2254
2197
|
if (!choice.isSecondary) {
|
|
2255
2198
|
primaryActions.push(action);
|
|
2256
2199
|
}
|
|
@@ -2280,9 +2223,9 @@ let NotificationService = class NotificationService extends Disposable {
|
|
|
2280
2223
|
}
|
|
2281
2224
|
};
|
|
2282
2225
|
NotificationService.DND_SETTINGS_KEY = 'notifications.doNotDisturbMode';
|
|
2283
|
-
NotificationService = (
|
|
2284
|
-
(
|
|
2285
|
-
], NotificationService))
|
|
2226
|
+
NotificationService = ( __decorate([
|
|
2227
|
+
( __param(0, IStorageService))
|
|
2228
|
+
], NotificationService));
|
|
2286
2229
|
var css = "/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-workbench > .notifications-center {\n\tposition: absolute;\n\tz-index: 1000;\n\tright: 8px;\n\tbottom: 31px;\n\tdisplay: none;\n\toverflow: hidden;\n}\n\n.monaco-workbench.nostatusbar > .notifications-center {\n\tbottom: 8px;\n}\n\n.monaco-workbench > .notifications-center.visible {\n\tdisplay: block;\n}\n\n/* Header */\n\n.monaco-workbench > .notifications-center > .notifications-center-header {\n\tdisplay: flex;\n\talign-items: center;\n\tpadding-left: 8px;\n\tpadding-right: 5px;\n\theight: 35px;\n}\n\n.monaco-workbench > .notifications-center > .notifications-center-header > .notifications-center-header-title {\n\ttext-transform: uppercase;\n\tfont-size: 11px;\n}\n\n.monaco-workbench > .notifications-center > .notifications-center-header > .notifications-center-header-toolbar {\n\tflex: 1;\n}\n\n.monaco-workbench > .notifications-center > .notifications-center-header > .notifications-center-header-toolbar .actions-container {\n\tjustify-content: flex-end;\n}\n";
|
|
2287
2230
|
n(css,{});
|
|
2288
2231
|
let NotificationsCenter = class NotificationsCenter extends Themable {
|
|
@@ -2296,7 +2239,7 @@ let NotificationsCenter = class NotificationsCenter extends Themable {
|
|
|
2296
2239
|
this.editorGroupService = editorGroupService;
|
|
2297
2240
|
this.keybindingService = keybindingService;
|
|
2298
2241
|
this.notificationService = notificationService;
|
|
2299
|
-
this._onDidChangeVisibility = this._register((
|
|
2242
|
+
this._onDidChangeVisibility = this._register(( new Emitter()));
|
|
2300
2243
|
this.onDidChangeVisibility = this._onDidChangeVisibility.event;
|
|
2301
2244
|
this.notificationsCenterVisibleContextKey = NotificationsCenterVisibleContext.bindTo(this.contextKeyService);
|
|
2302
2245
|
this.notificationsCenterVisibleContextKey = NotificationsCenterVisibleContext.bindTo(contextKeyService);
|
|
@@ -2338,11 +2281,11 @@ let NotificationsCenter = class NotificationsCenter extends Themable {
|
|
|
2338
2281
|
updateTitle() {
|
|
2339
2282
|
const [notificationsCenterTitle, clearAllAction] = assertAllDefined(this.notificationsCenterTitle, this.clearAllAction);
|
|
2340
2283
|
if (this.model.notifications.length === 0) {
|
|
2341
|
-
notificationsCenterTitle.textContent = (
|
|
2284
|
+
notificationsCenterTitle.textContent = ( localize('notificationsEmpty', "No new notifications"));
|
|
2342
2285
|
clearAllAction.enabled = false;
|
|
2343
2286
|
}
|
|
2344
2287
|
else {
|
|
2345
|
-
notificationsCenterTitle.textContent = (
|
|
2288
|
+
notificationsCenterTitle.textContent = ( localize('notifications', "Notifications"));
|
|
2346
2289
|
clearAllAction.enabled = this.model.notifications.some(notification => !notification.hasProgress);
|
|
2347
2290
|
}
|
|
2348
2291
|
}
|
|
@@ -2359,10 +2302,10 @@ let NotificationsCenter = class NotificationsCenter extends Themable {
|
|
|
2359
2302
|
toolbarContainer.classList.add('notifications-center-header-toolbar');
|
|
2360
2303
|
this.notificationsCenterHeader.appendChild(toolbarContainer);
|
|
2361
2304
|
const actionRunner = this._register(this.instantiationService.createInstance(NotificationActionRunner));
|
|
2362
|
-
const notificationsToolBar = this._register((
|
|
2363
|
-
ariaLabel: (
|
|
2305
|
+
const notificationsToolBar = this._register(( new ActionBar(toolbarContainer, {
|
|
2306
|
+
ariaLabel: ( localize('notificationsToolbar', "Notification Center Actions")),
|
|
2364
2307
|
actionRunner
|
|
2365
|
-
})))
|
|
2308
|
+
})));
|
|
2366
2309
|
this.clearAllAction = this._register(this.instantiationService.createInstance(ClearAllNotificationsAction, ClearAllNotificationsAction.ID, ClearAllNotificationsAction.LABEL));
|
|
2367
2310
|
notificationsToolBar.push(this.clearAllAction, { icon: true, label: false, keybinding: this.getKeybindingLabel(this.clearAllAction) });
|
|
2368
2311
|
this.toggleDoNotDisturbAction = this._register(this.instantiationService.createInstance(ToggleDoNotDisturbAction, ToggleDoNotDisturbAction.ID, ToggleDoNotDisturbAction.LABEL));
|
|
@@ -2370,7 +2313,7 @@ let NotificationsCenter = class NotificationsCenter extends Themable {
|
|
|
2370
2313
|
const hideAllAction = this._register(this.instantiationService.createInstance(HideNotificationsCenterAction, HideNotificationsCenterAction.ID, HideNotificationsCenterAction.LABEL));
|
|
2371
2314
|
notificationsToolBar.push(hideAllAction, { icon: true, label: false, keybinding: this.getKeybindingLabel(hideAllAction) });
|
|
2372
2315
|
this.notificationsList = this.instantiationService.createInstance(NotificationsList, this.notificationsCenterContainer, {
|
|
2373
|
-
widgetAriaLabel: (
|
|
2316
|
+
widgetAriaLabel: ( localize('notificationsCenterWidgetAriaLabel', "Notifications Center"))
|
|
2374
2317
|
});
|
|
2375
2318
|
this.container.appendChild(this.notificationsCenterContainer);
|
|
2376
2319
|
}
|
|
@@ -2440,9 +2383,9 @@ let NotificationsCenter = class NotificationsCenter extends Themable {
|
|
|
2440
2383
|
const borderColor = this.getColor(NOTIFICATIONS_CENTER_BORDER);
|
|
2441
2384
|
this.notificationsCenterContainer.style.border = borderColor ? `1px solid ${borderColor}` : '';
|
|
2442
2385
|
const headerForeground = this.getColor(NOTIFICATIONS_CENTER_HEADER_FOREGROUND);
|
|
2443
|
-
this.notificationsCenterHeader.style.color = headerForeground ? (
|
|
2386
|
+
this.notificationsCenterHeader.style.color = headerForeground ? ( headerForeground.toString()) : '';
|
|
2444
2387
|
const headerBackground = this.getColor(NOTIFICATIONS_CENTER_HEADER_BACKGROUND);
|
|
2445
|
-
this.notificationsCenterHeader.style.background = headerBackground ? (
|
|
2388
|
+
this.notificationsCenterHeader.style.background = headerBackground ? ( headerBackground.toString()) : '';
|
|
2446
2389
|
}
|
|
2447
2390
|
}
|
|
2448
2391
|
layout(dimension) {
|
|
@@ -2477,16 +2420,16 @@ let NotificationsCenter = class NotificationsCenter extends Themable {
|
|
|
2477
2420
|
}
|
|
2478
2421
|
}
|
|
2479
2422
|
};
|
|
2480
|
-
NotificationsCenter.MAX_DIMENSIONS = (
|
|
2481
|
-
NotificationsCenter = (
|
|
2482
|
-
(
|
|
2483
|
-
(
|
|
2484
|
-
(
|
|
2485
|
-
(
|
|
2486
|
-
(
|
|
2487
|
-
(
|
|
2488
|
-
(
|
|
2489
|
-
], NotificationsCenter))
|
|
2423
|
+
NotificationsCenter.MAX_DIMENSIONS = ( new Dimension(450, 400));
|
|
2424
|
+
NotificationsCenter = ( __decorate([
|
|
2425
|
+
( __param(2, IThemeService)),
|
|
2426
|
+
( __param(3, IInstantiationService)),
|
|
2427
|
+
( __param(4, IWorkbenchLayoutService)),
|
|
2428
|
+
( __param(5, IContextKeyService)),
|
|
2429
|
+
( __param(6, IEditorGroupsService)),
|
|
2430
|
+
( __param(7, IKeybindingService)),
|
|
2431
|
+
( __param(8, INotificationService))
|
|
2432
|
+
], NotificationsCenter));
|
|
2490
2433
|
registerThemingParticipant((theme, collector) => {
|
|
2491
2434
|
const notificationBorderColor = theme.getColor(NOTIFICATIONS_BORDER);
|
|
2492
2435
|
if (notificationBorderColor) {
|
|
@@ -2513,7 +2456,7 @@ class NotificationsAlerts extends Disposable {
|
|
|
2513
2456
|
console.error(e.item.message.original);
|
|
2514
2457
|
}
|
|
2515
2458
|
else {
|
|
2516
|
-
console.error(toErrorMessage((
|
|
2459
|
+
console.error(toErrorMessage(( e.item.message.linkedText.toString()), true));
|
|
2517
2460
|
}
|
|
2518
2461
|
}
|
|
2519
2462
|
}
|
|
@@ -2533,25 +2476,13 @@ class NotificationsAlerts extends Disposable {
|
|
|
2533
2476
|
doTriggerAriaAlert(notification) {
|
|
2534
2477
|
let alertText;
|
|
2535
2478
|
if (notification.severity === Severity.Error) {
|
|
2536
|
-
alertText = (
|
|
2537
|
-
'alertErrorMessage',
|
|
2538
|
-
"Error: {0}",
|
|
2539
|
-
(notification.message.linkedText.toString())
|
|
2540
|
-
)));
|
|
2479
|
+
alertText = ( localize('alertErrorMessage', "Error: {0}", ( notification.message.linkedText.toString())));
|
|
2541
2480
|
}
|
|
2542
2481
|
else if (notification.severity === Severity.Warning) {
|
|
2543
|
-
alertText = (
|
|
2544
|
-
'alertWarningMessage',
|
|
2545
|
-
"Warning: {0}",
|
|
2546
|
-
(notification.message.linkedText.toString())
|
|
2547
|
-
)));
|
|
2482
|
+
alertText = ( localize('alertWarningMessage', "Warning: {0}", ( notification.message.linkedText.toString())));
|
|
2548
2483
|
}
|
|
2549
2484
|
else {
|
|
2550
|
-
alertText = (
|
|
2551
|
-
'alertInfoMessage',
|
|
2552
|
-
"Info: {0}",
|
|
2553
|
-
(notification.message.linkedText.toString())
|
|
2554
|
-
)));
|
|
2485
|
+
alertText = ( localize('alertInfoMessage', "Info: {0}", ( notification.message.linkedText.toString())));
|
|
2555
2486
|
}
|
|
2556
2487
|
alert(alertText);
|
|
2557
2488
|
}
|
|
@@ -2570,7 +2501,7 @@ function initialize(instantiationService) {
|
|
|
2570
2501
|
function getServiceOverride(container) {
|
|
2571
2502
|
onServicesInitialized(initialize);
|
|
2572
2503
|
return {
|
|
2573
|
-
[
|
|
2504
|
+
[INotificationService.toString()]: new SyncDescriptor(NotificationService),
|
|
2574
2505
|
...getServiceOverride$1(container)
|
|
2575
2506
|
};
|
|
2576
2507
|
}
|