monaco-editor-core 0.53.0 → 0.54.0-dev-20250910
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/esm/nls.keys.json +1 -1
- package/esm/nls.messages.de.js +2 -2
- package/esm/nls.messages.es.js +2 -2
- package/esm/nls.messages.fr.js +2 -2
- package/esm/nls.messages.it.js +2 -2
- package/esm/nls.messages.ja.js +2 -2
- package/esm/nls.messages.js +1 -1
- package/esm/nls.messages.json +1 -1
- package/esm/nls.messages.ko.js +2 -2
- package/esm/nls.messages.ru.js +2 -2
- package/esm/nls.messages.zh-cn.js +2 -2
- package/esm/nls.messages.zh-tw.js +2 -2
- package/esm/nls.metadata.json +0 -2
- package/esm/vs/base/browser/domSanitize.js +18 -8
- package/esm/vs/base/browser/domSanitize.js.map +1 -1
- package/esm/vs/base/browser/domStylesheets.js +3 -0
- package/esm/vs/base/browser/domStylesheets.js.map +1 -1
- package/esm/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
- package/esm/vs/base/browser/ui/dropdown/dropdown.js +1 -2
- package/esm/vs/base/browser/ui/dropdown/dropdown.js.map +1 -1
- package/esm/vs/base/common/async.js +6 -173
- package/esm/vs/base/common/async.js.map +1 -1
- package/esm/vs/base/common/fuzzyScorer.js +6 -3
- package/esm/vs/base/common/fuzzyScorer.js.map +1 -1
- package/esm/vs/base/common/strings.js +0 -3
- package/esm/vs/base/common/strings.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js +23 -13
- package/esm/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js.map +1 -1
- package/esm/vs/editor/browser/services/hoverService/hover.css +1 -1
- package/esm/vs/editor/common/config/editorOptions.js +1 -1
- package/esm/vs/editor/common/config/editorOptions.js.map +1 -1
- package/esm/vs/editor/common/viewModel/screenReaderSimpleModel.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +9 -4
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +2 -2
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +15 -10
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/view.css +13 -4
- package/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js +5 -4
- package/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js.map +1 -1
- package/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +1 -1
- package/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js.map +1 -1
- package/esm/vs/platform/actionWidget/browser/actionList.js +2 -2
- package/esm/vs/platform/actionWidget/browser/actionList.js.map +1 -1
- package/esm/vs/platform/actionWidget/browser/actionWidget.css +11 -12
- package/esm/vs/platform/actions/browser/actionViewItemService.js.map +1 -1
- package/esm/vs/platform/actions/browser/toolbar.js +3 -3
- package/esm/vs/platform/actions/browser/toolbar.js.map +1 -1
- package/esm/vs/platform/contextkey/common/contextkeys.js +1 -2
- package/esm/vs/platform/contextkey/common/contextkeys.js.map +1 -1
- package/esm/vs/platform/contextkey/common/scanner.js +5 -5
- package/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
- package/esm/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
- package/esm/vs/platform/list/browser/listService.js +27 -27
- package/esm/vs/platform/markers/common/markerService.js +2 -2
- package/esm/vs/platform/markers/common/markers.js +6 -6
- package/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +7 -7
- package/esm/vs/platform/quickinput/browser/helpQuickAccess.js +1 -1
- package/esm/vs/platform/quickinput/browser/quickInput.js +10 -10
- package/esm/vs/platform/quickinput/browser/quickInputActions.js +3 -3
- package/esm/vs/platform/quickinput/browser/quickInputController.js +6 -6
- package/esm/vs/platform/quickinput/browser/quickInputList.js +1 -1
- package/esm/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
- package/esm/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
- package/esm/vs/platform/theme/common/colorUtils.js +2 -2
- package/esm/vs/platform/theme/common/colors/baseColors.js +17 -17
- package/esm/vs/platform/theme/common/colors/chartsColors.js +8 -8
- package/esm/vs/platform/theme/common/colors/editorColors.js +95 -95
- package/esm/vs/platform/theme/common/colors/inputColors.js +47 -47
- package/esm/vs/platform/theme/common/colors/listColors.js +36 -36
- package/esm/vs/platform/theme/common/colors/menuColors.js +7 -7
- package/esm/vs/platform/theme/common/colors/minimapColors.js +11 -11
- package/esm/vs/platform/theme/common/colors/miscColors.js +15 -15
- package/esm/vs/platform/theme/common/colors/quickpickColors.js +9 -9
- package/esm/vs/platform/theme/common/colors/searchColors.js +3 -3
- package/esm/vs/platform/theme/common/iconRegistry.js +6 -6
- package/esm/vs/platform/undoRedo/common/undoRedoService.js +20 -20
- package/esm/vs/platform/workspace/common/workspace.js +1 -1
- package/package.json +2 -2
- package/version.txt +1 -1
|
@@ -1,3 +1,7 @@
|
|
|
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
|
+
*--------------------------------------------------------------------------------------------*/
|
|
1
5
|
/*---------------------------------------------------------------------------------------------
|
|
2
6
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
7
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
@@ -25,7 +29,7 @@ import { IContextKeyService } from '../../../../../../../platform/contextkey/com
|
|
|
25
29
|
import { nativeHoverDelegate } from '../../../../../../../platform/hover/browser/hover.js';
|
|
26
30
|
import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js';
|
|
27
31
|
import { defaultKeybindingLabelStyles } from '../../../../../../../platform/theme/browser/defaultStyles.js';
|
|
28
|
-
import { asCssVariable, descriptionForeground, editorActionListForeground, editorHoverBorder
|
|
32
|
+
import { asCssVariable, descriptionForeground, editorActionListForeground, editorHoverBorder } from '../../../../../../../platform/theme/common/colorRegistry.js';
|
|
29
33
|
import { hideInlineCompletionId, inlineSuggestCommitId, toggleShowCollapsedId } from '../../../controller/commandIds.js';
|
|
30
34
|
let GutterIndicatorMenuContent = class GutterIndicatorMenuContent {
|
|
31
35
|
constructor(_model, _close, _editorObs, _contextKeyService, _keybindingService, _commandService) {
|
|
@@ -98,7 +102,7 @@ let GutterIndicatorMenuContent = class GutterIndicatorMenuContent {
|
|
|
98
102
|
const actions = this._model.action ? [this._model.action] : [];
|
|
99
103
|
const actionBarFooter = actions.length > 0 ? actionBar(actions.map(action => ({
|
|
100
104
|
id: action.id,
|
|
101
|
-
label: action.title,
|
|
105
|
+
label: action.title + '...',
|
|
102
106
|
enabled: true,
|
|
103
107
|
run: () => this._commandService.executeCommand(action.id, ...(action.arguments ?? [])),
|
|
104
108
|
class: undefined,
|
|
@@ -109,8 +113,8 @@ let GutterIndicatorMenuContent = class GutterIndicatorMenuContent {
|
|
|
109
113
|
gotoAndAccept,
|
|
110
114
|
reject,
|
|
111
115
|
toggleCollapsedMode,
|
|
112
|
-
settings,
|
|
113
116
|
extensionCommands.length ? separator() : undefined,
|
|
117
|
+
settings,
|
|
114
118
|
...extensionCommands,
|
|
115
119
|
actionBarFooter ? separator() : undefined,
|
|
116
120
|
actionBarFooter
|
|
@@ -134,7 +138,7 @@ function hoverContent(content) {
|
|
|
134
138
|
class: 'content',
|
|
135
139
|
style: {
|
|
136
140
|
margin: 4,
|
|
137
|
-
minWidth:
|
|
141
|
+
minWidth: 180,
|
|
138
142
|
}
|
|
139
143
|
}, content);
|
|
140
144
|
}
|
|
@@ -143,10 +147,10 @@ function header(title) {
|
|
|
143
147
|
class: 'header',
|
|
144
148
|
style: {
|
|
145
149
|
color: asCssVariable(descriptionForeground),
|
|
146
|
-
fontSize: '
|
|
150
|
+
fontSize: '13px',
|
|
147
151
|
fontWeight: '600',
|
|
148
|
-
padding: '0
|
|
149
|
-
lineHeight:
|
|
152
|
+
padding: '0 4px',
|
|
153
|
+
lineHeight: 28,
|
|
150
154
|
}
|
|
151
155
|
}, [title]);
|
|
152
156
|
}
|
|
@@ -180,7 +184,8 @@ function option(props) {
|
|
|
180
184
|
disableTitle: true,
|
|
181
185
|
...defaultKeybindingLabelStyles,
|
|
182
186
|
keybindingLabelShadow: undefined,
|
|
183
|
-
|
|
187
|
+
keybindingLabelForeground: asCssVariable(descriptionForeground),
|
|
188
|
+
keybindingLabelBackground: 'transparent',
|
|
184
189
|
keybindingLabelBorder: 'transparent',
|
|
185
190
|
keybindingLabelBottomBorder: undefined,
|
|
186
191
|
}));
|
|
@@ -196,7 +201,7 @@ function actionBar(actions, options) {
|
|
|
196
201
|
return derived({ name: 'inlineEdits.actionBar' }, (_reader) => n.div({
|
|
197
202
|
class: ['action-widget-action-bar'],
|
|
198
203
|
style: {
|
|
199
|
-
padding: '
|
|
204
|
+
padding: '3px 24px',
|
|
200
205
|
}
|
|
201
206
|
}, [
|
|
202
207
|
n.div({
|
|
@@ -213,7 +218,7 @@ function separator() {
|
|
|
213
218
|
class: 'menu-separator',
|
|
214
219
|
style: {
|
|
215
220
|
color: asCssVariable(editorActionListForeground),
|
|
216
|
-
padding: '
|
|
221
|
+
padding: '2px 0',
|
|
217
222
|
}
|
|
218
223
|
}, n.div({
|
|
219
224
|
style: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.ts"],"names":[],"mappings":"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","file":"gutterIndicatorMenu.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\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\nimport { ChildNode, LiveElement, n } from '../../../../../../../base/browser/dom.js';\nimport { ActionBar, IActionBarOptions } from '../../../../../../../base/browser/ui/actionbar/actionbar.js';\nimport { renderIcon } from '../../../../../../../base/browser/ui/iconLabel/iconLabels.js';\nimport { KeybindingLabel } from '../../../../../../../base/browser/ui/keybindingLabel/keybindingLabel.js';\nimport { IAction } from '../../../../../../../base/common/actions.js';\nimport { Codicon } from '../../../../../../../base/common/codicons.js';\nimport { ResolvedKeybinding } from '../../../../../../../base/common/keybindings.js';\nimport { IObservable, autorun, constObservable, derived, observableFromEvent, observableValue } from '../../../../../../../base/common/observable.js';\nimport { OS } from '../../../../../../../base/common/platform.js';\nimport { ThemeIcon } from '../../../../../../../base/common/themables.js';\nimport { localize } from '../../../../../../../nls.js';\nimport { ICommandService } from '../../../../../../../platform/commands/common/commands.js';\nimport { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js';\nimport { nativeHoverDelegate } from '../../../../../../../platform/hover/browser/hover.js';\nimport { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js';\nimport { defaultKeybindingLabelStyles } from '../../../../../../../platform/theme/browser/defaultStyles.js';\nimport { asCssVariable, descriptionForeground, editorActionListForeground, editorHoverBorder, keybindingLabelBackground } from '../../../../../../../platform/theme/common/colorRegistry.js';\nimport { ObservableCodeEditor } from '../../../../../../browser/observableCodeEditor.js';\nimport { EditorOption } from '../../../../../../common/config/editorOptions.js';\nimport { hideInlineCompletionId, inlineSuggestCommitId, toggleShowCollapsedId } from '../../../controller/commandIds.js';\nimport { IInlineEditModel } from '../inlineEditsViewInterface.js';\nimport { FirstFnArg } from '../utils/utils.js';\n\nexport class GutterIndicatorMenuContent {\n\n\tprivate readonly _inlineEditsShowCollapsed: IObservable<boolean>;\n\n\tconstructor(\n\t\tprivate readonly _model: IInlineEditModel,\n\t\tprivate readonly _close: (focusEditor: boolean) => void,\n\t\tprivate readonly _editorObs: ObservableCodeEditor,\n\t\t@IContextKeyService private readonly _contextKeyService: IContextKeyService,\n\t\t@IKeybindingService private readonly _keybindingService: IKeybindingService,\n\t\t@ICommandService private readonly _commandService: ICommandService,\n\t) {\n\t\tthis._inlineEditsShowCollapsed = this._editorObs.getOption(EditorOption.inlineSuggest).map(s => s.edits.showCollapsed);\n\t}\n\n\tpublic toDisposableLiveElement(): LiveElement {\n\t\treturn this._createHoverContent().toDisposableLiveElement();\n\t}\n\n\tprivate _createHoverContent() {\n\t\tconst activeElement = observableValue<string | undefined>('active', undefined);\n\n\t\tconst createOptionArgs = (options: { id: string; title: string; icon: IObservable<ThemeIcon> | ThemeIcon; commandId: string | IObservable<string>; commandArgs?: unknown[] }): FirstFnArg<typeof option> => {\n\t\t\treturn {\n\t\t\t\ttitle: options.title,\n\t\t\t\ticon: options.icon,\n\t\t\t\tkeybinding: typeof options.commandId === 'string' ? this._getKeybinding(options.commandArgs ? undefined : options.commandId) : derived(this, reader => typeof options.commandId === 'string' ? undefined : this._getKeybinding(options.commandArgs ? undefined : options.commandId.read(reader)).read(reader)),\n\t\t\t\tisActive: activeElement.map(v => v === options.id),\n\t\t\t\tonHoverChange: v => activeElement.set(v ? options.id : undefined, undefined),\n\t\t\t\tonAction: () => {\n\t\t\t\t\tthis._close(true);\n\t\t\t\t\treturn this._commandService.executeCommand(typeof options.commandId === 'string' ? options.commandId : options.commandId.get(), ...(options.commandArgs ?? []));\n\t\t\t\t},\n\t\t\t};\n\t\t};\n\n\t\tconst title = header(this._model.displayName);\n\n\t\tconst gotoAndAccept = option(createOptionArgs({\n\t\t\tid: 'gotoAndAccept',\n\t\t\ttitle: `${localize('goto', \"Go To\")} / ${localize('accept', \"Accept\")}`,\n\t\t\ticon: Codicon.check,\n\t\t\tcommandId: inlineSuggestCommitId\n\t\t}));\n\n\t\tconst reject = option(createOptionArgs({\n\t\t\tid: 'reject',\n\t\t\ttitle: localize('reject', \"Reject\"),\n\t\t\ticon: Codicon.close,\n\t\t\tcommandId: hideInlineCompletionId\n\t\t}));\n\n\t\tconst extensionCommands = this._model.extensionCommands.map((c, idx) => option(createOptionArgs({\n\t\t\tid: c.command.id + '_' + idx,\n\t\t\ttitle: c.command.title,\n\t\t\ticon: c.icon ?? Codicon.symbolEvent,\n\t\t\tcommandId: c.command.id,\n\t\t\tcommandArgs: c.command.arguments\n\t\t})));\n\n\t\tconst toggleCollapsedMode = this._inlineEditsShowCollapsed.map(showCollapsed => showCollapsed ?\n\t\t\toption(createOptionArgs({\n\t\t\t\tid: 'showExpanded',\n\t\t\t\ttitle: localize('showExpanded', \"Show Expanded\"),\n\t\t\t\ticon: Codicon.expandAll,\n\t\t\t\tcommandId: toggleShowCollapsedId\n\t\t\t}))\n\t\t\t: option(createOptionArgs({\n\t\t\t\tid: 'showCollapsed',\n\t\t\t\ttitle: localize('showCollapsed', \"Show Collapsed\"),\n\t\t\t\ticon: Codicon.collapseAll,\n\t\t\t\tcommandId: toggleShowCollapsedId\n\t\t\t}))\n\t\t);\n\n\t\tconst settings = option(createOptionArgs({\n\t\t\tid: 'settings',\n\t\t\ttitle: localize('settings', \"Settings\"),\n\t\t\ticon: Codicon.gear,\n\t\t\tcommandId: 'workbench.action.openSettings',\n\t\t\tcommandArgs: ['@tag:nextEditSuggestions']\n\t\t}));\n\n\t\tconst actions = this._model.action ? [this._model.action] : [];\n\t\tconst actionBarFooter = actions.length > 0 ? actionBar(\n\t\t\tactions.map(action => ({\n\t\t\t\tid: action.id,\n\t\t\t\tlabel: action.title,\n\t\t\t\tenabled: true,\n\t\t\t\trun: () => this._commandService.executeCommand(action.id, ...(action.arguments ?? [])),\n\t\t\t\tclass: undefined,\n\t\t\t\ttooltip: action.tooltip ?? action.title\n\t\t\t})),\n\t\t\t{ hoverDelegate: nativeHoverDelegate /* unable to show hover inside another hover */ }\n\t\t) : undefined;\n\n\t\treturn hoverContent([\n\t\t\ttitle,\n\t\t\tgotoAndAccept,\n\t\t\treject,\n\t\t\ttoggleCollapsedMode,\n\t\t\tsettings,\n\n\t\t\textensionCommands.length ? separator() : undefined,\n\t\t\t...extensionCommands,\n\n\t\t\tactionBarFooter ? separator() : undefined,\n\t\t\tactionBarFooter\n\t\t]);\n\t}\n\n\tprivate _getKeybinding(commandId: string | undefined) {\n\t\tif (!commandId) {\n\t\t\treturn constObservable(undefined);\n\t\t}\n\t\treturn observableFromEvent(this._contextKeyService.onDidChangeContext, () => this._keybindingService.lookupKeybinding(commandId)); // TODO: use contextkeyservice to use different renderings\n\t}\n}\n\nfunction hoverContent(content: ChildNode) {\n\treturn n.div({\n\t\tclass: 'content',\n\t\tstyle: {\n\t\t\tmargin: 4,\n\t\t\tminWidth: 150,\n\t\t}\n\t}, content);\n}\n\nfunction header(title: string | IObservable<string>) {\n\treturn n.div({\n\t\tclass: 'header',\n\t\tstyle: {\n\t\t\tcolor: asCssVariable(descriptionForeground),\n\t\t\tfontSize: '12px',\n\t\t\tfontWeight: '600',\n\t\t\tpadding: '0 10px',\n\t\t\tlineHeight: 26,\n\t\t}\n\t}, [title]);\n}\n\nfunction option(props: {\n\ttitle: string;\n\ticon: IObservable<ThemeIcon> | ThemeIcon;\n\tkeybinding: IObservable<ResolvedKeybinding | undefined>;\n\tisActive?: IObservable<boolean>;\n\tonHoverChange?: (isHovered: boolean) => void;\n\tonAction?: () => void;\n}) {\n\treturn derived({ name: 'inlineEdits.option' }, (_reader) => n.div({\n\t\tclass: ['monaco-menu-option', props.isActive?.map(v => v && 'active')],\n\t\tonmouseenter: () => props.onHoverChange?.(true),\n\t\tonmouseleave: () => props.onHoverChange?.(false),\n\t\tonclick: props.onAction,\n\t\tonkeydown: e => {\n\t\t\tif (e.key === 'Enter') {\n\t\t\t\tprops.onAction?.();\n\t\t\t}\n\t\t},\n\t\ttabIndex: 0,\n\t\tstyle: {\n\t\t\tborderRadius: 3, // same as hover widget border radius\n\t\t}\n\t}, [\n\t\tn.elem('span', {\n\t\t\tstyle: {\n\t\t\t\tfontSize: 16,\n\t\t\t\tdisplay: 'flex',\n\t\t\t}\n\t\t}, [ThemeIcon.isThemeIcon(props.icon) ? renderIcon(props.icon) : props.icon.map(icon => renderIcon(icon))]),\n\t\tn.elem('span', {}, [props.title]),\n\t\tn.div({\n\t\t\tstyle: { marginLeft: 'auto' },\n\t\t\tref: elem => {\n\t\t\t\tconst keybindingLabel = _reader.store.add(new KeybindingLabel(elem, OS, {\n\t\t\t\t\tdisableTitle: true,\n\t\t\t\t\t...defaultKeybindingLabelStyles,\n\t\t\t\t\tkeybindingLabelShadow: undefined,\n\t\t\t\t\tkeybindingLabelBackground: asCssVariable(keybindingLabelBackground),\n\t\t\t\t\tkeybindingLabelBorder: 'transparent',\n\t\t\t\t\tkeybindingLabelBottomBorder: undefined,\n\t\t\t\t}));\n\t\t\t\t_reader.store.add(autorun(reader => {\n\t\t\t\t\tkeybindingLabel.set(props.keybinding.read(reader));\n\t\t\t\t}));\n\t\t\t}\n\t\t})\n\t]));\n}\n\n// TODO: make this observable\nfunction actionBar(actions: IAction[], options: IActionBarOptions) {\n\treturn derived({ name: 'inlineEdits.actionBar' }, (_reader) => n.div({\n\t\tclass: ['action-widget-action-bar'],\n\t\tstyle: {\n\t\t\tpadding: '0 10px',\n\t\t}\n\t}, [\n\t\tn.div({\n\t\t\tref: elem => {\n\t\t\t\tconst actionBar = _reader.store.add(new ActionBar(elem, options));\n\t\t\t\tactionBar.push(actions, { icon: false, label: true });\n\t\t\t}\n\t\t})\n\t]));\n}\n\nfunction separator() {\n\treturn n.div({\n\t\tid: 'inline-edit-gutter-indicator-menu-separator',\n\t\tclass: 'menu-separator',\n\t\tstyle: {\n\t\t\tcolor: asCssVariable(editorActionListForeground),\n\t\t\tpadding: '4px 0',\n\t\t}\n\t}, n.div({\n\t\tstyle: {\n\t\t\tborderBottom: `1px solid ${asCssVariable(editorHoverBorder)}`,\n\t\t}\n\t}));\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.ts"],"names":[],"mappings":"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","file":"gutterIndicatorMenu.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\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 * 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\nimport { ChildNode, LiveElement, n } from '../../../../../../../base/browser/dom.js';\nimport { ActionBar, IActionBarOptions } from '../../../../../../../base/browser/ui/actionbar/actionbar.js';\nimport { renderIcon } from '../../../../../../../base/browser/ui/iconLabel/iconLabels.js';\nimport { KeybindingLabel } from '../../../../../../../base/browser/ui/keybindingLabel/keybindingLabel.js';\nimport { IAction } from '../../../../../../../base/common/actions.js';\nimport { Codicon } from '../../../../../../../base/common/codicons.js';\nimport { ResolvedKeybinding } from '../../../../../../../base/common/keybindings.js';\nimport { IObservable, autorun, constObservable, derived, observableFromEvent, observableValue } from '../../../../../../../base/common/observable.js';\nimport { OS } from '../../../../../../../base/common/platform.js';\nimport { ThemeIcon } from '../../../../../../../base/common/themables.js';\nimport { localize } from '../../../../../../../nls.js';\nimport { ICommandService } from '../../../../../../../platform/commands/common/commands.js';\nimport { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js';\nimport { nativeHoverDelegate } from '../../../../../../../platform/hover/browser/hover.js';\nimport { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js';\nimport { defaultKeybindingLabelStyles } from '../../../../../../../platform/theme/browser/defaultStyles.js';\nimport { asCssVariable, descriptionForeground, editorActionListForeground, editorHoverBorder } from '../../../../../../../platform/theme/common/colorRegistry.js';\nimport { ObservableCodeEditor } from '../../../../../../browser/observableCodeEditor.js';\nimport { EditorOption } from '../../../../../../common/config/editorOptions.js';\nimport { hideInlineCompletionId, inlineSuggestCommitId, toggleShowCollapsedId } from '../../../controller/commandIds.js';\nimport { IInlineEditModel } from '../inlineEditsViewInterface.js';\nimport { FirstFnArg } from '../utils/utils.js';\n\nexport class GutterIndicatorMenuContent {\n\n\tprivate readonly _inlineEditsShowCollapsed: IObservable<boolean>;\n\n\tconstructor(\n\t\tprivate readonly _model: IInlineEditModel,\n\t\tprivate readonly _close: (focusEditor: boolean) => void,\n\t\tprivate readonly _editorObs: ObservableCodeEditor,\n\t\t@IContextKeyService private readonly _contextKeyService: IContextKeyService,\n\t\t@IKeybindingService private readonly _keybindingService: IKeybindingService,\n\t\t@ICommandService private readonly _commandService: ICommandService,\n\t) {\n\t\tthis._inlineEditsShowCollapsed = this._editorObs.getOption(EditorOption.inlineSuggest).map(s => s.edits.showCollapsed);\n\t}\n\n\tpublic toDisposableLiveElement(): LiveElement {\n\t\treturn this._createHoverContent().toDisposableLiveElement();\n\t}\n\n\tprivate _createHoverContent() {\n\t\tconst activeElement = observableValue<string | undefined>('active', undefined);\n\n\t\tconst createOptionArgs = (options: { id: string; title: string; icon: IObservable<ThemeIcon> | ThemeIcon; commandId: string | IObservable<string>; commandArgs?: unknown[] }): FirstFnArg<typeof option> => {\n\t\t\treturn {\n\t\t\t\ttitle: options.title,\n\t\t\t\ticon: options.icon,\n\t\t\t\tkeybinding: typeof options.commandId === 'string' ? this._getKeybinding(options.commandArgs ? undefined : options.commandId) : derived(this, reader => typeof options.commandId === 'string' ? undefined : this._getKeybinding(options.commandArgs ? undefined : options.commandId.read(reader)).read(reader)),\n\t\t\t\tisActive: activeElement.map(v => v === options.id),\n\t\t\t\tonHoverChange: v => activeElement.set(v ? options.id : undefined, undefined),\n\t\t\t\tonAction: () => {\n\t\t\t\t\tthis._close(true);\n\t\t\t\t\treturn this._commandService.executeCommand(typeof options.commandId === 'string' ? options.commandId : options.commandId.get(), ...(options.commandArgs ?? []));\n\t\t\t\t},\n\t\t\t};\n\t\t};\n\n\t\tconst title = header(this._model.displayName);\n\n\t\tconst gotoAndAccept = option(createOptionArgs({\n\t\t\tid: 'gotoAndAccept',\n\t\t\ttitle: `${localize('goto', \"Go To\")} / ${localize('accept', \"Accept\")}`,\n\t\t\ticon: Codicon.check,\n\t\t\tcommandId: inlineSuggestCommitId\n\t\t}));\n\n\t\tconst reject = option(createOptionArgs({\n\t\t\tid: 'reject',\n\t\t\ttitle: localize('reject', \"Reject\"),\n\t\t\ticon: Codicon.close,\n\t\t\tcommandId: hideInlineCompletionId\n\t\t}));\n\n\t\tconst extensionCommands = this._model.extensionCommands.map((c, idx) => option(createOptionArgs({\n\t\t\tid: c.command.id + '_' + idx,\n\t\t\ttitle: c.command.title,\n\t\t\ticon: c.icon ?? Codicon.symbolEvent,\n\t\t\tcommandId: c.command.id,\n\t\t\tcommandArgs: c.command.arguments\n\t\t})));\n\n\t\tconst toggleCollapsedMode = this._inlineEditsShowCollapsed.map(showCollapsed => showCollapsed ?\n\t\t\toption(createOptionArgs({\n\t\t\t\tid: 'showExpanded',\n\t\t\t\ttitle: localize('showExpanded', \"Show Expanded\"),\n\t\t\t\ticon: Codicon.expandAll,\n\t\t\t\tcommandId: toggleShowCollapsedId\n\t\t\t}))\n\t\t\t: option(createOptionArgs({\n\t\t\t\tid: 'showCollapsed',\n\t\t\t\ttitle: localize('showCollapsed', \"Show Collapsed\"),\n\t\t\t\ticon: Codicon.collapseAll,\n\t\t\t\tcommandId: toggleShowCollapsedId\n\t\t\t}))\n\t\t);\n\n\t\tconst settings = option(createOptionArgs({\n\t\t\tid: 'settings',\n\t\t\ttitle: localize('settings', \"Settings\"),\n\t\t\ticon: Codicon.gear,\n\t\t\tcommandId: 'workbench.action.openSettings',\n\t\t\tcommandArgs: ['@tag:nextEditSuggestions']\n\t\t}));\n\n\t\tconst actions = this._model.action ? [this._model.action] : [];\n\t\tconst actionBarFooter = actions.length > 0 ? actionBar(\n\t\t\tactions.map(action => ({\n\t\t\t\tid: action.id,\n\t\t\t\tlabel: action.title + '...',\n\t\t\t\tenabled: true,\n\t\t\t\trun: () => this._commandService.executeCommand(action.id, ...(action.arguments ?? [])),\n\t\t\t\tclass: undefined,\n\t\t\t\ttooltip: action.tooltip ?? action.title\n\t\t\t})),\n\t\t\t{ hoverDelegate: nativeHoverDelegate /* unable to show hover inside another hover */ }\n\t\t) : undefined;\n\n\t\treturn hoverContent([\n\t\t\ttitle,\n\t\t\tgotoAndAccept,\n\t\t\treject,\n\t\t\ttoggleCollapsedMode,\n\t\t\textensionCommands.length ? separator() : undefined,\n\t\t\tsettings,\n\n\t\t\t...extensionCommands,\n\n\t\t\tactionBarFooter ? separator() : undefined,\n\t\t\tactionBarFooter\n\t\t]);\n\t}\n\n\tprivate _getKeybinding(commandId: string | undefined) {\n\t\tif (!commandId) {\n\t\t\treturn constObservable(undefined);\n\t\t}\n\t\treturn observableFromEvent(this._contextKeyService.onDidChangeContext, () => this._keybindingService.lookupKeybinding(commandId)); // TODO: use contextkeyservice to use different renderings\n\t}\n}\n\nfunction hoverContent(content: ChildNode) {\n\treturn n.div({\n\t\tclass: 'content',\n\t\tstyle: {\n\t\t\tmargin: 4,\n\t\t\tminWidth: 180,\n\t\t}\n\t}, content);\n}\n\nfunction header(title: string | IObservable<string>) {\n\treturn n.div({\n\t\tclass: 'header',\n\t\tstyle: {\n\t\t\tcolor: asCssVariable(descriptionForeground),\n\t\t\tfontSize: '13px',\n\t\t\tfontWeight: '600',\n\t\t\tpadding: '0 4px',\n\t\t\tlineHeight: 28,\n\t\t}\n\t}, [title]);\n}\n\nfunction option(props: {\n\ttitle: string;\n\ticon: IObservable<ThemeIcon> | ThemeIcon;\n\tkeybinding: IObservable<ResolvedKeybinding | undefined>;\n\tisActive?: IObservable<boolean>;\n\tonHoverChange?: (isHovered: boolean) => void;\n\tonAction?: () => void;\n}) {\n\treturn derived({ name: 'inlineEdits.option' }, (_reader) => n.div({\n\t\tclass: ['monaco-menu-option', props.isActive?.map(v => v && 'active')],\n\t\tonmouseenter: () => props.onHoverChange?.(true),\n\t\tonmouseleave: () => props.onHoverChange?.(false),\n\t\tonclick: props.onAction,\n\t\tonkeydown: e => {\n\t\t\tif (e.key === 'Enter') {\n\t\t\t\tprops.onAction?.();\n\t\t\t}\n\t\t},\n\t\ttabIndex: 0,\n\t\tstyle: {\n\t\t\tborderRadius: 3, // same as hover widget border radius\n\t\t}\n\t}, [\n\t\tn.elem('span', {\n\t\t\tstyle: {\n\t\t\t\tfontSize: 16,\n\t\t\t\tdisplay: 'flex',\n\t\t\t}\n\t\t}, [ThemeIcon.isThemeIcon(props.icon) ? renderIcon(props.icon) : props.icon.map(icon => renderIcon(icon))]),\n\t\tn.elem('span', {}, [props.title]),\n\t\tn.div({\n\t\t\tstyle: { marginLeft: 'auto' },\n\t\t\tref: elem => {\n\t\t\t\tconst keybindingLabel = _reader.store.add(new KeybindingLabel(elem, OS, {\n\t\t\t\t\tdisableTitle: true,\n\t\t\t\t\t...defaultKeybindingLabelStyles,\n\t\t\t\t\tkeybindingLabelShadow: undefined,\n\t\t\t\t\tkeybindingLabelForeground: asCssVariable(descriptionForeground),\n\t\t\t\t\tkeybindingLabelBackground: 'transparent',\n\t\t\t\t\tkeybindingLabelBorder: 'transparent',\n\t\t\t\t\tkeybindingLabelBottomBorder: undefined,\n\t\t\t\t}));\n\t\t\t\t_reader.store.add(autorun(reader => {\n\t\t\t\t\tkeybindingLabel.set(props.keybinding.read(reader));\n\t\t\t\t}));\n\t\t\t}\n\t\t})\n\t]));\n}\n\n// TODO: make this observable\nfunction actionBar(actions: IAction[], options: IActionBarOptions) {\n\treturn derived({ name: 'inlineEdits.actionBar' }, (_reader) => n.div({\n\t\tclass: ['action-widget-action-bar'],\n\t\tstyle: {\n\t\t\tpadding: '3px 24px',\n\t\t}\n\t}, [\n\t\tn.div({\n\t\t\tref: elem => {\n\t\t\t\tconst actionBar = _reader.store.add(new ActionBar(elem, options));\n\t\t\t\tactionBar.push(actions, { icon: false, label: true });\n\t\t\t}\n\t\t})\n\t]));\n}\n\nfunction separator() {\n\treturn n.div({\n\t\tid: 'inline-edit-gutter-indicator-menu-separator',\n\t\tclass: 'menu-separator',\n\t\tstyle: {\n\t\t\tcolor: asCssVariable(editorActionListForeground),\n\t\t\tpadding: '2px 0',\n\t\t}\n\t}, n.div({\n\t\tstyle: {\n\t\t\tborderBottom: `1px solid ${asCssVariable(editorHoverBorder)}`,\n\t\t}\n\t}));\n}\n"]}
|
|
@@ -193,18 +193,27 @@
|
|
|
193
193
|
.monaco-menu-option {
|
|
194
194
|
color: var(--vscode-editorActionList-foreground);
|
|
195
195
|
font-size: 13px;
|
|
196
|
-
padding: 0
|
|
197
|
-
line-height:
|
|
196
|
+
padding: 0 4px;
|
|
197
|
+
line-height: 28px;
|
|
198
198
|
display: flex;
|
|
199
|
-
gap:
|
|
199
|
+
gap: 4px;
|
|
200
200
|
align-items: center;
|
|
201
|
-
border-radius:
|
|
201
|
+
border-radius: 3px;
|
|
202
202
|
cursor: pointer;
|
|
203
203
|
|
|
204
|
+
.monaco-keybinding-key {
|
|
205
|
+
font-size: 13px;
|
|
206
|
+
opacity: 0.7;
|
|
207
|
+
}
|
|
208
|
+
|
|
204
209
|
&.active {
|
|
205
210
|
background: var(--vscode-editorActionList-focusBackground);
|
|
206
211
|
color: var(--vscode-editorActionList-focusForeground);
|
|
207
212
|
outline: 1px solid var(--vscode-menu-selectionBorder, transparent);
|
|
208
213
|
outline-offset: -1px;
|
|
214
|
+
|
|
215
|
+
.monaco-keybinding-key {
|
|
216
|
+
color: var(--vscode-editorActionList-focusForeground);
|
|
217
|
+
}
|
|
209
218
|
}
|
|
210
219
|
}
|
|
@@ -1031,7 +1031,8 @@ export class SnakeCaseAction extends AbstractCaseAction {
|
|
|
1031
1031
|
}
|
|
1032
1032
|
}
|
|
1033
1033
|
export class CamelCaseAction extends AbstractCaseAction {
|
|
1034
|
-
static { this.
|
|
1034
|
+
static { this.singleLineWordBoundary = new BackwardsCompatibleRegExp('[_\\s-]+', 'gm'); }
|
|
1035
|
+
static { this.multiLineWordBoundary = new BackwardsCompatibleRegExp('[_-]+', 'gm'); }
|
|
1035
1036
|
static { this.validWordStart = new BackwardsCompatibleRegExp('^(\\p{Lu}[^\\p{Lu}])', 'gmu'); }
|
|
1036
1037
|
constructor() {
|
|
1037
1038
|
super({
|
|
@@ -1041,7 +1042,7 @@ export class CamelCaseAction extends AbstractCaseAction {
|
|
|
1041
1042
|
});
|
|
1042
1043
|
}
|
|
1043
1044
|
_modifyText(text, wordSeparators) {
|
|
1044
|
-
const wordBoundary = CamelCaseAction.
|
|
1045
|
+
const wordBoundary = /\r\n|\r|\n/.test(text) ? CamelCaseAction.multiLineWordBoundary.get() : CamelCaseAction.singleLineWordBoundary.get();
|
|
1045
1046
|
const validWordStart = CamelCaseAction.validWordStart.get();
|
|
1046
1047
|
if (!wordBoundary || !validWordStart) {
|
|
1047
1048
|
// cannot support this
|
|
@@ -1054,7 +1055,7 @@ export class CamelCaseAction extends AbstractCaseAction {
|
|
|
1054
1055
|
}
|
|
1055
1056
|
}
|
|
1056
1057
|
export class PascalCaseAction extends AbstractCaseAction {
|
|
1057
|
-
static { this.wordBoundary = new BackwardsCompatibleRegExp('[_\\
|
|
1058
|
+
static { this.wordBoundary = new BackwardsCompatibleRegExp('[_ \\t-]', 'gm'); }
|
|
1058
1059
|
static { this.wordBoundaryToMaintain = new BackwardsCompatibleRegExp('(?<=\\.)', 'gm'); }
|
|
1059
1060
|
constructor() {
|
|
1060
1061
|
super({
|
|
@@ -1134,7 +1135,7 @@ registerEditorAction(ReverseLinesAction);
|
|
|
1134
1135
|
if (SnakeCaseAction.caseBoundary.isSupported() && SnakeCaseAction.singleLetters.isSupported()) {
|
|
1135
1136
|
registerEditorAction(SnakeCaseAction);
|
|
1136
1137
|
}
|
|
1137
|
-
if (CamelCaseAction.
|
|
1138
|
+
if (CamelCaseAction.singleLineWordBoundary.isSupported() && CamelCaseAction.multiLineWordBoundary.isSupported()) {
|
|
1138
1139
|
registerEditorAction(CamelCaseAction);
|
|
1139
1140
|
}
|
|
1140
1141
|
if (PascalCaseAction.wordBoundary.isSupported()) {
|