monaco-editor-core 0.54.0-dev-20250911 → 0.54.0-dev-20250913

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.
Files changed (51) hide show
  1. package/esm/nls.messages.de.js +1 -1
  2. package/esm/nls.messages.es.js +1 -1
  3. package/esm/nls.messages.fr.js +1 -1
  4. package/esm/nls.messages.it.js +1 -1
  5. package/esm/nls.messages.ja.js +1 -1
  6. package/esm/nls.messages.ko.js +1 -1
  7. package/esm/nls.messages.ru.js +1 -1
  8. package/esm/nls.messages.zh-cn.js +1 -1
  9. package/esm/nls.messages.zh-tw.js +1 -1
  10. package/esm/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  11. package/esm/vs/base/browser/ui/menu/menu.js +2 -0
  12. package/esm/vs/base/browser/ui/menu/menu.js.map +1 -1
  13. package/esm/vs/base/common/observableInternal/index.js +3 -0
  14. package/esm/vs/base/common/observableInternal/index.js.map +1 -1
  15. package/esm/vs/base/common/observableInternal/logging/debugGetDependencyGraph.js +71 -0
  16. package/esm/vs/base/common/observableInternal/logging/debugGetDependencyGraph.js.map +1 -0
  17. package/esm/vs/base/common/observableInternal/observables/baseObservable.js +4 -0
  18. package/esm/vs/base/common/observableInternal/observables/baseObservable.js.map +1 -1
  19. package/esm/vs/base/common/observableInternal/observables/derivedImpl.js +10 -0
  20. package/esm/vs/base/common/observableInternal/observables/derivedImpl.js.map +1 -1
  21. package/esm/vs/base/common/observableInternal/observables/observableFromEvent.js +3 -0
  22. package/esm/vs/base/common/observableInternal/observables/observableFromEvent.js.map +1 -1
  23. package/esm/vs/base/common/observableInternal/reactions/autorunImpl.js +9 -0
  24. package/esm/vs/base/common/observableInternal/reactions/autorunImpl.js.map +1 -1
  25. package/esm/vs/editor/browser/widget/diffEditor/commands.js +12 -1
  26. package/esm/vs/editor/browser/widget/diffEditor/commands.js.map +1 -1
  27. package/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +25 -0
  28. package/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js.map +1 -1
  29. package/esm/vs/editor/common/core/ranges/lineRange.js +3 -0
  30. package/esm/vs/editor/common/core/ranges/lineRange.js.map +1 -1
  31. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +4 -1
  32. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js.map +1 -1
  33. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +2 -0
  34. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js.map +1 -1
  35. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js +1 -0
  36. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js.map +1 -1
  37. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +2 -1
  38. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js.map +1 -1
  39. package/esm/vs/platform/actionWidget/browser/actionList.js +3 -0
  40. package/esm/vs/platform/actionWidget/browser/actionList.js.map +1 -1
  41. package/esm/vs/platform/quickinput/browser/quickInput.js +2 -2
  42. package/esm/vs/platform/quickinput/browser/quickInput.js.map +1 -1
  43. package/esm/vs/platform/quickinput/browser/quickInputController.js +4 -0
  44. package/esm/vs/platform/quickinput/browser/quickInputController.js.map +1 -1
  45. package/esm/vs/platform/quickinput/browser/tree/quickInputTreeController.js +12 -0
  46. package/esm/vs/platform/quickinput/browser/tree/quickInputTreeController.js.map +1 -1
  47. package/esm/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.js +11 -5
  48. package/esm/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.js.map +1 -1
  49. package/esm/vs/platform/quickinput/common/quickInput.js.map +1 -1
  50. package/package.json +6 -2
  51. package/version.txt +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.ts"],"names":[],"mappings":"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","file":"theme.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 { Color } from '../../../../../../base/common/color.js';\nimport { BugIndicatingError } from '../../../../../../base/common/errors.js';\nimport { IObservable, observableFromEventOpts } from '../../../../../../base/common/observable.js';\nimport { localize } from '../../../../../../nls.js';\nimport { buttonBackground, buttonForeground, buttonSecondaryBackground, buttonSecondaryForeground, diffInserted, diffInsertedLine, diffRemoved, editorBackground } from '../../../../../../platform/theme/common/colorRegistry.js';\nimport { ColorIdentifier, darken, registerColor, transparent } from '../../../../../../platform/theme/common/colorUtils.js';\nimport { IThemeService } from '../../../../../../platform/theme/common/themeService.js';\nimport { InlineEditTabAction } from './inlineEditsViewInterface.js';\n\nexport const originalBackgroundColor = registerColor(\n\t'inlineEdit.originalBackground',\n\ttransparent(diffRemoved, 0.2),\n\tlocalize('inlineEdit.originalBackground', 'Background color for the original text in inline edits.'),\n\ttrue\n);\nexport const modifiedBackgroundColor = registerColor(\n\t'inlineEdit.modifiedBackground',\n\ttransparent(diffInserted, 0.3),\n\tlocalize('inlineEdit.modifiedBackground', 'Background color for the modified text in inline edits.'),\n\ttrue\n);\n\nexport const originalChangedLineBackgroundColor = registerColor(\n\t'inlineEdit.originalChangedLineBackground',\n\ttransparent(diffRemoved, 0.8),\n\tlocalize('inlineEdit.originalChangedLineBackground', 'Background color for the changed lines in the original text of inline edits.'),\n\ttrue\n);\n\nexport const originalChangedTextOverlayColor = registerColor(\n\t'inlineEdit.originalChangedTextBackground',\n\ttransparent(diffRemoved, 0.8),\n\tlocalize('inlineEdit.originalChangedTextBackground', 'Overlay color for the changed text in the original text of inline edits.'),\n\ttrue\n);\n\nexport const modifiedChangedLineBackgroundColor = registerColor(\n\t'inlineEdit.modifiedChangedLineBackground',\n\t{\n\t\tlight: transparent(diffInsertedLine, 0.7),\n\t\tdark: transparent(diffInsertedLine, 0.7),\n\t\thcDark: diffInsertedLine,\n\t\thcLight: diffInsertedLine\n\t},\n\tlocalize('inlineEdit.modifiedChangedLineBackground', 'Background color for the changed lines in the modified text of inline edits.'),\n\ttrue\n);\n\nexport const modifiedChangedTextOverlayColor = registerColor(\n\t'inlineEdit.modifiedChangedTextBackground',\n\ttransparent(diffInserted, 0.7),\n\tlocalize('inlineEdit.modifiedChangedTextBackground', 'Overlay color for the changed text in the modified text of inline edits.'),\n\ttrue\n);\n\n// ------- GUTTER INDICATOR -------\n\nexport const inlineEditIndicatorPrimaryForeground = registerColor(\n\t'inlineEdit.gutterIndicator.primaryForeground',\n\tbuttonForeground,\n\tlocalize('inlineEdit.gutterIndicator.primaryForeground', 'Foreground color for the primary inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorPrimaryBorder = registerColor(\n\t'inlineEdit.gutterIndicator.primaryBorder',\n\tbuttonBackground,\n\tlocalize('inlineEdit.gutterIndicator.primaryBorder', 'Border color for the primary inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorPrimaryBackground = registerColor(\n\t'inlineEdit.gutterIndicator.primaryBackground',\n\t{\n\t\tlight: transparent(inlineEditIndicatorPrimaryBorder, 0.5),\n\t\tdark: transparent(inlineEditIndicatorPrimaryBorder, 0.4),\n\t\thcDark: transparent(inlineEditIndicatorPrimaryBorder, 0.4),\n\t\thcLight: transparent(inlineEditIndicatorPrimaryBorder, 0.5),\n\t},\n\tlocalize('inlineEdit.gutterIndicator.primaryBackground', 'Background color for the primary inline edit gutter indicator.')\n);\n\nexport const inlineEditIndicatorSecondaryForeground = registerColor(\n\t'inlineEdit.gutterIndicator.secondaryForeground',\n\tbuttonSecondaryForeground,\n\tlocalize('inlineEdit.gutterIndicator.secondaryForeground', 'Foreground color for the secondary inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorSecondaryBorder = registerColor(\n\t'inlineEdit.gutterIndicator.secondaryBorder',\n\tbuttonSecondaryBackground,\n\tlocalize('inlineEdit.gutterIndicator.secondaryBorder', 'Border color for the secondary inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorSecondaryBackground = registerColor(\n\t'inlineEdit.gutterIndicator.secondaryBackground',\n\tinlineEditIndicatorSecondaryBorder,\n\tlocalize('inlineEdit.gutterIndicator.secondaryBackground', 'Background color for the secondary inline edit gutter indicator.')\n);\n\nexport const inlineEditIndicatorsuccessfulForeground = registerColor(\n\t'inlineEdit.gutterIndicator.successfulForeground',\n\tbuttonForeground,\n\tlocalize('inlineEdit.gutterIndicator.successfulForeground', 'Foreground color for the successful inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorsuccessfulBorder = registerColor(\n\t'inlineEdit.gutterIndicator.successfulBorder',\n\tbuttonBackground,\n\tlocalize('inlineEdit.gutterIndicator.successfulBorder', 'Border color for the successful inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorsuccessfulBackground = registerColor(\n\t'inlineEdit.gutterIndicator.successfulBackground',\n\tinlineEditIndicatorsuccessfulBorder,\n\tlocalize('inlineEdit.gutterIndicator.successfulBackground', 'Background color for the successful inline edit gutter indicator.')\n);\n\nexport const inlineEditIndicatorBackground = registerColor(\n\t'inlineEdit.gutterIndicator.background',\n\t{\n\t\thcDark: transparent('tab.inactiveBackground', 0.5),\n\t\thcLight: transparent('tab.inactiveBackground', 0.5),\n\t\tdark: transparent('tab.inactiveBackground', 0.5),\n\t\tlight: '#5f5f5f18',\n\t},\n\tlocalize('inlineEdit.gutterIndicator.background', 'Background color for the inline edit gutter indicator.')\n);\n\n// ------- BORDER COLORS -------\n\nconst originalBorder = registerColor(\n\t'inlineEdit.originalBorder',\n\t{\n\t\tlight: diffRemoved,\n\t\tdark: diffRemoved,\n\t\thcDark: diffRemoved,\n\t\thcLight: diffRemoved\n\t},\n\tlocalize('inlineEdit.originalBorder', 'Border color for the original text in inline edits.')\n);\n\nconst modifiedBorder = registerColor(\n\t'inlineEdit.modifiedBorder',\n\t{\n\t\tlight: darken(diffInserted, 0.6),\n\t\tdark: diffInserted,\n\t\thcDark: diffInserted,\n\t\thcLight: diffInserted\n\t},\n\tlocalize('inlineEdit.modifiedBorder', 'Border color for the modified text in inline edits.')\n);\n\nconst tabWillAcceptModifiedBorder = registerColor(\n\t'inlineEdit.tabWillAcceptModifiedBorder',\n\t{\n\t\tlight: darken(modifiedBorder, 0),\n\t\tdark: darken(modifiedBorder, 0),\n\t\thcDark: darken(modifiedBorder, 0),\n\t\thcLight: darken(modifiedBorder, 0)\n\t},\n\tlocalize('inlineEdit.tabWillAcceptModifiedBorder', 'Modified border color for the inline edits widget when tab will accept it.')\n);\n\nconst tabWillAcceptOriginalBorder = registerColor(\n\t'inlineEdit.tabWillAcceptOriginalBorder',\n\t{\n\t\tlight: darken(originalBorder, 0),\n\t\tdark: darken(originalBorder, 0),\n\t\thcDark: darken(originalBorder, 0),\n\t\thcLight: darken(originalBorder, 0)\n\t},\n\tlocalize('inlineEdit.tabWillAcceptOriginalBorder', 'Original border color for the inline edits widget over the original text when tab will accept it.')\n);\n\nexport function getModifiedBorderColor(tabAction: IObservable<InlineEditTabAction>): IObservable<string> {\n\treturn tabAction.map(a => a === InlineEditTabAction.Accept ? tabWillAcceptModifiedBorder : modifiedBorder);\n}\n\nexport function getOriginalBorderColor(tabAction: IObservable<InlineEditTabAction>): IObservable<string> {\n\treturn tabAction.map(a => a === InlineEditTabAction.Accept ? tabWillAcceptOriginalBorder : originalBorder);\n}\n\nexport function getEditorBlendedColor(colorIdentifier: ColorIdentifier | IObservable<ColorIdentifier>, themeService: IThemeService): IObservable<Color> {\n\tlet color: IObservable<Color>;\n\tif (typeof colorIdentifier === 'string') {\n\t\tcolor = observeColor(colorIdentifier, themeService);\n\t} else {\n\t\tcolor = colorIdentifier.map((identifier, reader) => observeColor(identifier, themeService).read(reader));\n\t}\n\n\tconst backgroundColor = observeColor(editorBackground, themeService);\n\n\treturn color.map((c, reader) => c.makeOpaque(backgroundColor.read(reader)));\n}\n\nexport function observeColor(colorIdentifier: ColorIdentifier, themeService: IThemeService): IObservable<Color> {\n\treturn observableFromEventOpts(\n\t\t{\n\t\t\towner: { observeColor: colorIdentifier },\n\t\t\tequalsFn: (a: Color, b: Color) => a.equals(b),\n\t\t},\n\t\tthemeService.onDidColorThemeChange,\n\t\t() => {\n\t\t\tconst color = themeService.getColorTheme().getColor(colorIdentifier);\n\t\t\tif (!color) {\n\t\t\t\tthrow new BugIndicatingError(`Missing color: ${colorIdentifier}`);\n\t\t\t}\n\t\t\treturn color;\n\t\t}\n\t);\n}\n"]}
1
+ {"version":3,"sources":["vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.ts"],"names":[],"mappings":"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","file":"theme.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 { Color } from '../../../../../../base/common/color.js';\nimport { BugIndicatingError } from '../../../../../../base/common/errors.js';\nimport { IObservable, observableFromEventOpts } from '../../../../../../base/common/observable.js';\nimport { localize } from '../../../../../../nls.js';\nimport { buttonBackground, buttonForeground, buttonSecondaryBackground, buttonSecondaryForeground, diffInserted, diffInsertedLine, diffRemoved, editorBackground } from '../../../../../../platform/theme/common/colorRegistry.js';\nimport { ColorIdentifier, darken, registerColor, transparent } from '../../../../../../platform/theme/common/colorUtils.js';\nimport { IThemeService } from '../../../../../../platform/theme/common/themeService.js';\nimport { InlineEditTabAction } from './inlineEditsViewInterface.js';\n\nexport const originalBackgroundColor = registerColor(\n\t'inlineEdit.originalBackground',\n\ttransparent(diffRemoved, 0.2),\n\tlocalize('inlineEdit.originalBackground', 'Background color for the original text in inline edits.'),\n\ttrue\n);\nexport const modifiedBackgroundColor = registerColor(\n\t'inlineEdit.modifiedBackground',\n\ttransparent(diffInserted, 0.3),\n\tlocalize('inlineEdit.modifiedBackground', 'Background color for the modified text in inline edits.'),\n\ttrue\n);\n\nexport const originalChangedLineBackgroundColor = registerColor(\n\t'inlineEdit.originalChangedLineBackground',\n\ttransparent(diffRemoved, 0.8),\n\tlocalize('inlineEdit.originalChangedLineBackground', 'Background color for the changed lines in the original text of inline edits.'),\n\ttrue\n);\n\nexport const originalChangedTextOverlayColor = registerColor(\n\t'inlineEdit.originalChangedTextBackground',\n\ttransparent(diffRemoved, 0.8),\n\tlocalize('inlineEdit.originalChangedTextBackground', 'Overlay color for the changed text in the original text of inline edits.'),\n\ttrue\n);\n\nexport const modifiedChangedLineBackgroundColor = registerColor(\n\t'inlineEdit.modifiedChangedLineBackground',\n\t{\n\t\tlight: transparent(diffInsertedLine, 0.7),\n\t\tdark: transparent(diffInsertedLine, 0.7),\n\t\thcDark: diffInsertedLine,\n\t\thcLight: diffInsertedLine\n\t},\n\tlocalize('inlineEdit.modifiedChangedLineBackground', 'Background color for the changed lines in the modified text of inline edits.'),\n\ttrue\n);\n\nexport const modifiedChangedTextOverlayColor = registerColor(\n\t'inlineEdit.modifiedChangedTextBackground',\n\ttransparent(diffInserted, 0.7),\n\tlocalize('inlineEdit.modifiedChangedTextBackground', 'Overlay color for the changed text in the modified text of inline edits.'),\n\ttrue\n);\n\n// ------- GUTTER INDICATOR -------\n\nexport const inlineEditIndicatorPrimaryForeground = registerColor(\n\t'inlineEdit.gutterIndicator.primaryForeground',\n\tbuttonForeground,\n\tlocalize('inlineEdit.gutterIndicator.primaryForeground', 'Foreground color for the primary inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorPrimaryBorder = registerColor(\n\t'inlineEdit.gutterIndicator.primaryBorder',\n\tbuttonBackground,\n\tlocalize('inlineEdit.gutterIndicator.primaryBorder', 'Border color for the primary inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorPrimaryBackground = registerColor(\n\t'inlineEdit.gutterIndicator.primaryBackground',\n\t{\n\t\tlight: transparent(inlineEditIndicatorPrimaryBorder, 0.5),\n\t\tdark: transparent(inlineEditIndicatorPrimaryBorder, 0.4),\n\t\thcDark: transparent(inlineEditIndicatorPrimaryBorder, 0.4),\n\t\thcLight: transparent(inlineEditIndicatorPrimaryBorder, 0.5),\n\t},\n\tlocalize('inlineEdit.gutterIndicator.primaryBackground', 'Background color for the primary inline edit gutter indicator.')\n);\n\nexport const inlineEditIndicatorSecondaryForeground = registerColor(\n\t'inlineEdit.gutterIndicator.secondaryForeground',\n\tbuttonSecondaryForeground,\n\tlocalize('inlineEdit.gutterIndicator.secondaryForeground', 'Foreground color for the secondary inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorSecondaryBorder = registerColor(\n\t'inlineEdit.gutterIndicator.secondaryBorder',\n\tbuttonSecondaryBackground,\n\tlocalize('inlineEdit.gutterIndicator.secondaryBorder', 'Border color for the secondary inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorSecondaryBackground = registerColor(\n\t'inlineEdit.gutterIndicator.secondaryBackground',\n\tinlineEditIndicatorSecondaryBorder,\n\tlocalize('inlineEdit.gutterIndicator.secondaryBackground', 'Background color for the secondary inline edit gutter indicator.')\n);\n\nexport const inlineEditIndicatorsuccessfulForeground = registerColor(\n\t'inlineEdit.gutterIndicator.successfulForeground',\n\tbuttonForeground,\n\tlocalize('inlineEdit.gutterIndicator.successfulForeground', 'Foreground color for the successful inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorsuccessfulBorder = registerColor(\n\t'inlineEdit.gutterIndicator.successfulBorder',\n\tbuttonBackground,\n\tlocalize('inlineEdit.gutterIndicator.successfulBorder', 'Border color for the successful inline edit gutter indicator.')\n);\nexport const inlineEditIndicatorsuccessfulBackground = registerColor(\n\t'inlineEdit.gutterIndicator.successfulBackground',\n\tinlineEditIndicatorsuccessfulBorder,\n\tlocalize('inlineEdit.gutterIndicator.successfulBackground', 'Background color for the successful inline edit gutter indicator.')\n);\n\nexport const inlineEditIndicatorBackground = registerColor(\n\t'inlineEdit.gutterIndicator.background',\n\t{\n\t\thcDark: transparent('tab.inactiveBackground', 0.5),\n\t\thcLight: transparent('tab.inactiveBackground', 0.5),\n\t\tdark: transparent('tab.inactiveBackground', 0.5),\n\t\tlight: '#5f5f5f18',\n\t},\n\tlocalize('inlineEdit.gutterIndicator.background', 'Background color for the inline edit gutter indicator.')\n);\n\n// ------- BORDER COLORS -------\n\nconst originalBorder = registerColor(\n\t'inlineEdit.originalBorder',\n\t{\n\t\tlight: diffRemoved,\n\t\tdark: diffRemoved,\n\t\thcDark: diffRemoved,\n\t\thcLight: diffRemoved\n\t},\n\tlocalize('inlineEdit.originalBorder', 'Border color for the original text in inline edits.')\n);\n\nconst modifiedBorder = registerColor(\n\t'inlineEdit.modifiedBorder',\n\t{\n\t\tlight: darken(diffInserted, 0.6),\n\t\tdark: diffInserted,\n\t\thcDark: diffInserted,\n\t\thcLight: diffInserted\n\t},\n\tlocalize('inlineEdit.modifiedBorder', 'Border color for the modified text in inline edits.')\n);\n\nconst tabWillAcceptModifiedBorder = registerColor(\n\t'inlineEdit.tabWillAcceptModifiedBorder',\n\t{\n\t\tlight: darken(modifiedBorder, 0),\n\t\tdark: darken(modifiedBorder, 0),\n\t\thcDark: darken(modifiedBorder, 0),\n\t\thcLight: darken(modifiedBorder, 0)\n\t},\n\tlocalize('inlineEdit.tabWillAcceptModifiedBorder', 'Modified border color for the inline edits widget when tab will accept it.')\n);\n\nconst tabWillAcceptOriginalBorder = registerColor(\n\t'inlineEdit.tabWillAcceptOriginalBorder',\n\t{\n\t\tlight: darken(originalBorder, 0),\n\t\tdark: darken(originalBorder, 0),\n\t\thcDark: darken(originalBorder, 0),\n\t\thcLight: darken(originalBorder, 0)\n\t},\n\tlocalize('inlineEdit.tabWillAcceptOriginalBorder', 'Original border color for the inline edits widget over the original text when tab will accept it.')\n);\n\nexport function getModifiedBorderColor(tabAction: IObservable<InlineEditTabAction>): IObservable<string> {\n\treturn tabAction.map(a => a === InlineEditTabAction.Accept ? tabWillAcceptModifiedBorder : modifiedBorder);\n}\n\nexport function getOriginalBorderColor(tabAction: IObservable<InlineEditTabAction>): IObservable<string> {\n\treturn tabAction.map(a => a === InlineEditTabAction.Accept ? tabWillAcceptOriginalBorder : originalBorder);\n}\n\nexport function getEditorBlendedColor(colorIdentifier: ColorIdentifier | IObservable<ColorIdentifier>, themeService: IThemeService): IObservable<Color> {\n\tlet color: IObservable<Color>;\n\tif (typeof colorIdentifier === 'string') {\n\t\tcolor = observeColor(colorIdentifier, themeService);\n\t} else {\n\t\tcolor = colorIdentifier.map((identifier, reader) => observeColor(identifier, themeService).read(reader));\n\t}\n\n\tconst backgroundColor = observeColor(editorBackground, themeService);\n\n\treturn color.map((c, reader) => /** @description makeOpaque */ c.makeOpaque(backgroundColor.read(reader)));\n}\n\nexport function observeColor(colorIdentifier: ColorIdentifier, themeService: IThemeService): IObservable<Color> {\n\treturn observableFromEventOpts(\n\t\t{\n\t\t\towner: { observeColor: colorIdentifier },\n\t\t\tequalsFn: (a: Color, b: Color) => a.equals(b),\n\t\t\tdebugName: () => `observeColor(${colorIdentifier})`\n\t\t},\n\t\tthemeService.onDidColorThemeChange,\n\t\t() => {\n\t\t\tconst color = themeService.getColorTheme().getColor(colorIdentifier);\n\t\t\tif (!color) {\n\t\t\t\tthrow new BugIndicatingError(`Missing color: ${colorIdentifier}`);\n\t\t\t}\n\t\t\treturn color;\n\t\t}\n\t);\n}\n"]}
@@ -187,6 +187,9 @@ let ActionList = class ActionList extends Disposable {
187
187
  getAriaLabel: element => {
188
188
  if (element.kind === "action" /* ActionListItemKind.Action */) {
189
189
  let label = element.label ? stripNewlines(element?.label) : '';
190
+ if (element.description) {
191
+ label = label + ', ' + stripNewlines(element.description);
192
+ }
190
193
  if (element.disabled) {
191
194
  label = localize(1638, "{0}, Disabled Reason: {1}", label, element.disabled);
192
195
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["vs/platform/actionWidget/browser/actionList.ts"],"names":[],"mappings":"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","file":"actionList.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 *--------------------------------------------------------------------------------------------*/\nimport * as dom from '../../../base/browser/dom.js';\nimport { KeybindingLabel } from '../../../base/browser/ui/keybindingLabel/keybindingLabel.js';\nimport { IListEvent, IListMouseEvent, IListRenderer, IListVirtualDelegate } from '../../../base/browser/ui/list/list.js';\nimport { IListAccessibilityProvider, List } from '../../../base/browser/ui/list/listWidget.js';\nimport { CancellationToken, CancellationTokenSource } from '../../../base/common/cancellation.js';\nimport { Codicon } from '../../../base/common/codicons.js';\nimport { ResolvedKeybinding } from '../../../base/common/keybindings.js';\nimport { Disposable } from '../../../base/common/lifecycle.js';\nimport { OS } from '../../../base/common/platform.js';\nimport { ThemeIcon } from '../../../base/common/themables.js';\nimport './actionWidget.css';\nimport { localize } from '../../../nls.js';\nimport { IContextViewService } from '../../contextview/browser/contextView.js';\nimport { IKeybindingService } from '../../keybinding/common/keybinding.js';\nimport { defaultListStyles } from '../../theme/browser/defaultStyles.js';\nimport { asCssVariable } from '../../theme/common/colorRegistry.js';\nimport { ILayoutService } from '../../layout/browser/layoutService.js';\n\nexport const acceptSelectedActionCommand = 'acceptSelectedCodeAction';\nexport const previewSelectedActionCommand = 'previewSelectedCodeAction';\n\nexport interface IActionListDelegate<T> {\n\tonHide(didCancel?: boolean): void;\n\tonSelect(action: T, preview?: boolean): void;\n\tonHover?(action: T, cancellationToken: CancellationToken): Promise<{ canPreview: boolean } | void>;\n\tonFocus?(action: T | undefined): void;\n}\n\nexport interface IActionListItem<T> {\n\treadonly item?: T;\n\treadonly kind: ActionListItemKind;\n\treadonly group?: { kind?: any; icon?: ThemeIcon; title: string };\n\treadonly disabled?: boolean;\n\treadonly label?: string;\n\treadonly description?: string;\n\treadonly keybinding?: ResolvedKeybinding;\n\tcanPreview?: boolean | undefined;\n\treadonly hideIcon?: boolean;\n\treadonly tooltip?: string;\n}\n\ninterface IActionMenuTemplateData {\n\treadonly container: HTMLElement;\n\treadonly icon: HTMLElement;\n\treadonly text: HTMLElement;\n\treadonly description?: HTMLElement;\n\treadonly keybinding: KeybindingLabel;\n}\n\nexport const enum ActionListItemKind {\n\tAction = 'action',\n\tHeader = 'header',\n\tSeparator = 'separator'\n}\n\ninterface IHeaderTemplateData {\n\treadonly container: HTMLElement;\n\treadonly text: HTMLElement;\n}\n\nclass HeaderRenderer<T> implements IListRenderer<IActionListItem<T>, IHeaderTemplateData> {\n\n\tget templateId(): string { return ActionListItemKind.Header; }\n\n\trenderTemplate(container: HTMLElement): IHeaderTemplateData {\n\t\tcontainer.classList.add('group-header');\n\n\t\tconst text = document.createElement('span');\n\t\tcontainer.append(text);\n\n\t\treturn { container, text };\n\t}\n\n\trenderElement(element: IActionListItem<T>, _index: number, templateData: IHeaderTemplateData): void {\n\t\ttemplateData.text.textContent = element.group?.title ?? element.label ?? '';\n\t}\n\n\tdisposeTemplate(_templateData: IHeaderTemplateData): void {\n\t\t// noop\n\t}\n}\n\ninterface ISeparatorTemplateData {\n\treadonly container: HTMLElement;\n\treadonly text: HTMLElement;\n}\n\nclass SeparatorRenderer<T> implements IListRenderer<IActionListItem<T>, ISeparatorTemplateData> {\n\n\tget templateId(): string { return ActionListItemKind.Separator; }\n\n\trenderTemplate(container: HTMLElement): ISeparatorTemplateData {\n\t\tcontainer.classList.add('separator');\n\n\t\tconst text = document.createElement('span');\n\t\tcontainer.append(text);\n\n\t\treturn { container, text };\n\t}\n\n\trenderElement(element: IActionListItem<T>, _index: number, templateData: ISeparatorTemplateData): void {\n\t\ttemplateData.text.textContent = element.label ?? '';\n\t}\n\n\tdisposeTemplate(_templateData: ISeparatorTemplateData): void {\n\t\t// noop\n\t}\n}\n\nclass ActionItemRenderer<T> implements IListRenderer<IActionListItem<T>, IActionMenuTemplateData> {\n\n\tget templateId(): string { return ActionListItemKind.Action; }\n\n\tconstructor(\n\t\tprivate readonly _supportsPreview: boolean,\n\t\t@IKeybindingService private readonly _keybindingService: IKeybindingService\n\t) { }\n\n\trenderTemplate(container: HTMLElement): IActionMenuTemplateData {\n\t\tcontainer.classList.add(this.templateId);\n\n\t\tconst icon = document.createElement('div');\n\t\ticon.className = 'icon';\n\t\tcontainer.append(icon);\n\n\t\tconst text = document.createElement('span');\n\t\ttext.className = 'title';\n\t\tcontainer.append(text);\n\n\t\tconst description = document.createElement('span');\n\t\tdescription.className = 'description';\n\t\tcontainer.append(description);\n\n\t\tconst keybinding = new KeybindingLabel(container, OS);\n\n\t\treturn { container, icon, text, description, keybinding };\n\t}\n\n\trenderElement(element: IActionListItem<T>, _index: number, data: IActionMenuTemplateData): void {\n\t\tif (element.group?.icon) {\n\t\t\tdata.icon.className = ThemeIcon.asClassName(element.group.icon);\n\t\t\tif (element.group.icon.color) {\n\t\t\t\tdata.icon.style.color = asCssVariable(element.group.icon.color.id);\n\t\t\t}\n\t\t} else {\n\t\t\tdata.icon.className = ThemeIcon.asClassName(Codicon.lightBulb);\n\t\t\tdata.icon.style.color = 'var(--vscode-editorLightBulb-foreground)';\n\t\t}\n\n\t\tif (!element.item || !element.label) {\n\t\t\treturn;\n\t\t}\n\n\t\tdom.setVisibility(!element.hideIcon, data.icon);\n\n\t\tdata.text.textContent = stripNewlines(element.label);\n\n\t\t// if there is a keybinding, prioritize over description for now\n\t\tif (element.keybinding) {\n\t\t\tdata.description!.textContent = element.keybinding.getLabel();\n\t\t\tdata.description!.style.display = 'inline';\n\t\t\tdata.description!.style.letterSpacing = '0.5px';\n\t\t} else if (element.description) {\n\t\t\tdata.description!.textContent = stripNewlines(element.description);\n\t\t\tdata.description!.style.display = 'inline';\n\t\t} else {\n\t\t\tdata.description!.textContent = '';\n\t\t\tdata.description!.style.display = 'none';\n\t\t}\n\n\t\tconst actionTitle = this._keybindingService.lookupKeybinding(acceptSelectedActionCommand)?.getLabel();\n\t\tconst previewTitle = this._keybindingService.lookupKeybinding(previewSelectedActionCommand)?.getLabel();\n\t\tdata.container.classList.toggle('option-disabled', element.disabled);\n\t\tif (element.tooltip) {\n\t\t\tdata.container.title = element.tooltip;\n\t\t} else if (element.disabled) {\n\t\t\tdata.container.title = element.label;\n\t\t} else if (actionTitle && previewTitle) {\n\t\t\tif (this._supportsPreview && element.canPreview) {\n\t\t\t\tdata.container.title = localize({ key: 'label-preview', comment: ['placeholders are keybindings, e.g \"F2 to Apply, Shift+F2 to Preview\"'] }, \"{0} to Apply, {1} to Preview\", actionTitle, previewTitle);\n\t\t\t} else {\n\t\t\t\tdata.container.title = localize({ key: 'label', comment: ['placeholder is a keybinding, e.g \"F2 to Apply\"'] }, \"{0} to Apply\", actionTitle);\n\t\t\t}\n\t\t} else {\n\t\t\tdata.container.title = '';\n\t\t}\n\t}\n\n\tdisposeTemplate(templateData: IActionMenuTemplateData): void {\n\t\ttemplateData.keybinding.dispose();\n\t}\n}\n\nclass AcceptSelectedEvent extends UIEvent {\n\tconstructor() { super('acceptSelectedAction'); }\n}\n\nclass PreviewSelectedEvent extends UIEvent {\n\tconstructor() { super('previewSelectedAction'); }\n}\n\nfunction getKeyboardNavigationLabel<T>(item: IActionListItem<T>): string | undefined {\n\t// Filter out header vs. action vs. separator\n\tif (item.kind === 'action') {\n\t\treturn item.label;\n\t}\n\treturn undefined;\n}\n\nexport class ActionList<T> extends Disposable {\n\n\tpublic readonly domNode: HTMLElement;\n\n\tprivate readonly _list: List<IActionListItem<T>>;\n\n\tprivate readonly _actionLineHeight = 28;\n\tprivate readonly _headerLineHeight = 28;\n\tprivate readonly _separatorLineHeight = 8;\n\n\tprivate readonly _allMenuItems: readonly IActionListItem<T>[];\n\n\tprivate readonly cts = this._register(new CancellationTokenSource());\n\n\tconstructor(\n\t\tuser: string,\n\t\tpreview: boolean,\n\t\titems: readonly IActionListItem<T>[],\n\t\tprivate readonly _delegate: IActionListDelegate<T>,\n\t\taccessibilityProvider: Partial<IListAccessibilityProvider<IActionListItem<T>>> | undefined,\n\t\t@IContextViewService private readonly _contextViewService: IContextViewService,\n\t\t@IKeybindingService private readonly _keybindingService: IKeybindingService,\n\t\t@ILayoutService private readonly _layoutService: ILayoutService,\n\t) {\n\t\tsuper();\n\t\tthis.domNode = document.createElement('div');\n\t\tthis.domNode.classList.add('actionList');\n\t\tconst virtualDelegate: IListVirtualDelegate<IActionListItem<T>> = {\n\t\t\tgetHeight: element => {\n\t\t\t\tswitch (element.kind) {\n\t\t\t\t\tcase ActionListItemKind.Header:\n\t\t\t\t\t\treturn this._headerLineHeight;\n\t\t\t\t\tcase ActionListItemKind.Separator:\n\t\t\t\t\t\treturn this._separatorLineHeight;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn this._actionLineHeight;\n\t\t\t\t}\n\t\t\t},\n\t\t\tgetTemplateId: element => element.kind\n\t\t};\n\n\n\t\tthis._list = this._register(new List(user, this.domNode, virtualDelegate, [\n\t\t\tnew ActionItemRenderer<IActionListItem<T>>(preview, this._keybindingService),\n\t\t\tnew HeaderRenderer(),\n\t\t\tnew SeparatorRenderer(),\n\t\t], {\n\t\t\tkeyboardSupport: false,\n\t\t\ttypeNavigationEnabled: true,\n\t\t\tkeyboardNavigationLabelProvider: { getKeyboardNavigationLabel },\n\t\t\taccessibilityProvider: {\n\t\t\t\tgetAriaLabel: element => {\n\t\t\t\t\tif (element.kind === ActionListItemKind.Action) {\n\t\t\t\t\t\tlet label = element.label ? stripNewlines(element?.label) : '';\n\t\t\t\t\t\tif (element.disabled) {\n\t\t\t\t\t\t\tlabel = localize({ key: 'customQuickFixWidget.labels', comment: [`Action widget labels for accessibility.`] }, \"{0}, Disabled Reason: {1}\", label, element.disabled);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn label;\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\tgetWidgetAriaLabel: () => localize({ key: 'customQuickFixWidget', comment: [`An action widget option`] }, \"Action Widget\"),\n\t\t\t\tgetRole: (e) => {\n\t\t\t\t\tswitch (e.kind) {\n\t\t\t\t\t\tcase ActionListItemKind.Action:\n\t\t\t\t\t\t\treturn 'option';\n\t\t\t\t\t\tcase ActionListItemKind.Separator:\n\t\t\t\t\t\t\treturn 'separator';\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn 'separator';\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tgetWidgetRole: () => 'listbox',\n\t\t\t\t...accessibilityProvider\n\t\t\t},\n\t\t}));\n\n\t\tthis._list.style(defaultListStyles);\n\n\t\tthis._register(this._list.onMouseClick(e => this.onListClick(e)));\n\t\tthis._register(this._list.onMouseOver(e => this.onListHover(e)));\n\t\tthis._register(this._list.onDidChangeFocus(() => this.onFocus()));\n\t\tthis._register(this._list.onDidChangeSelection(e => this.onListSelection(e)));\n\n\t\tthis._allMenuItems = items;\n\t\tthis._list.splice(0, this._list.length, this._allMenuItems);\n\n\t\tif (this._list.length) {\n\t\t\tthis.focusNext();\n\t\t}\n\t}\n\n\tprivate focusCondition(element: IActionListItem<unknown>): boolean {\n\t\treturn !element.disabled && element.kind === ActionListItemKind.Action;\n\t}\n\n\thide(didCancel?: boolean): void {\n\t\tthis._delegate.onHide(didCancel);\n\t\tthis.cts.cancel();\n\t\tthis._contextViewService.hideContextView();\n\t}\n\n\tlayout(minWidth: number): number {\n\t\t// Updating list height, depending on how many separators and headers there are.\n\t\tconst numHeaders = this._allMenuItems.filter(item => item.kind === 'header').length;\n\t\tconst numSeparators = this._allMenuItems.filter(item => item.kind === 'separator').length;\n\t\tconst itemsHeight = this._allMenuItems.length * this._actionLineHeight;\n\t\tconst heightWithHeaders = itemsHeight + numHeaders * this._headerLineHeight - numHeaders * this._actionLineHeight;\n\t\tconst heightWithSeparators = heightWithHeaders + numSeparators * this._separatorLineHeight - numSeparators * this._actionLineHeight;\n\t\tthis._list.layout(heightWithSeparators);\n\t\tlet maxWidth = minWidth;\n\n\t\tif (this._allMenuItems.length >= 50) {\n\t\t\tmaxWidth = 380;\n\t\t} else {\n\t\t\t// For finding width dynamically (not using resize observer)\n\t\t\tconst itemWidths: number[] = this._allMenuItems.map((_, index): number => {\n\t\t\t\tconst element = this.domNode.ownerDocument.getElementById(this._list.getElementID(index));\n\t\t\t\tif (element) {\n\t\t\t\t\telement.style.width = 'auto';\n\t\t\t\t\tconst width = element.getBoundingClientRect().width;\n\t\t\t\t\telement.style.width = '';\n\t\t\t\t\treturn width;\n\t\t\t\t}\n\t\t\t\treturn 0;\n\t\t\t});\n\n\t\t\t// resize observer - can be used in the future since list widget supports dynamic height but not width\n\t\t\tmaxWidth = Math.max(...itemWidths, minWidth);\n\t\t}\n\n\t\tconst maxVhPrecentage = 0.7;\n\t\tconst height = Math.min(heightWithSeparators, this._layoutService.getContainer(dom.getWindow(this.domNode)).clientHeight * maxVhPrecentage);\n\t\tthis._list.layout(height, maxWidth);\n\n\t\tthis.domNode.style.height = `${height}px`;\n\n\t\tthis._list.domFocus();\n\t\treturn maxWidth;\n\t}\n\n\tfocusPrevious() {\n\t\tthis._list.focusPrevious(1, true, undefined, this.focusCondition);\n\t}\n\n\tfocusNext() {\n\t\tthis._list.focusNext(1, true, undefined, this.focusCondition);\n\t}\n\n\tacceptSelected(preview?: boolean) {\n\t\tconst focused = this._list.getFocus();\n\t\tif (focused.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst focusIndex = focused[0];\n\t\tconst element = this._list.element(focusIndex);\n\t\tif (!this.focusCondition(element)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst event = preview ? new PreviewSelectedEvent() : new AcceptSelectedEvent();\n\t\tthis._list.setSelection([focusIndex], event);\n\t}\n\n\tprivate onListSelection(e: IListEvent<IActionListItem<T>>): void {\n\t\tif (!e.elements.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst element = e.elements[0];\n\t\tif (element.item && this.focusCondition(element)) {\n\t\t\tthis._delegate.onSelect(element.item, e.browserEvent instanceof PreviewSelectedEvent);\n\t\t} else {\n\t\t\tthis._list.setSelection([]);\n\t\t}\n\t}\n\n\tprivate onFocus() {\n\t\tconst focused = this._list.getFocus();\n\t\tif (focused.length === 0) {\n\t\t\treturn;\n\t\t}\n\t\tconst focusIndex = focused[0];\n\t\tconst element = this._list.element(focusIndex);\n\t\tthis._delegate.onFocus?.(element.item);\n\t}\n\n\tprivate async onListHover(e: IListMouseEvent<IActionListItem<T>>) {\n\t\tconst element = e.element;\n\t\tif (element && element.item && this.focusCondition(element)) {\n\t\t\tif (this._delegate.onHover && !element.disabled && element.kind === ActionListItemKind.Action) {\n\t\t\t\tconst result = await this._delegate.onHover(element.item, this.cts.token);\n\t\t\t\telement.canPreview = result ? result.canPreview : undefined;\n\t\t\t}\n\t\t\tif (e.index) {\n\t\t\t\tthis._list.splice(e.index, 1, [element]);\n\t\t\t}\n\t\t}\n\n\t\tthis._list.setFocus(typeof e.index === 'number' ? [e.index] : []);\n\t}\n\n\tprivate onListClick(e: IListMouseEvent<IActionListItem<T>>): void {\n\t\tif (e.element && this.focusCondition(e.element)) {\n\t\t\tthis._list.setFocus([]);\n\t\t}\n\t}\n}\n\nfunction stripNewlines(str: string): string {\n\treturn str.replace(/\\r\\n|\\r|\\n/g, ' ');\n}\n"]}
1
+ {"version":3,"sources":["vs/platform/actionWidget/browser/actionList.ts"],"names":[],"mappings":"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","file":"actionList.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 *--------------------------------------------------------------------------------------------*/\nimport * as dom from '../../../base/browser/dom.js';\nimport { KeybindingLabel } from '../../../base/browser/ui/keybindingLabel/keybindingLabel.js';\nimport { IListEvent, IListMouseEvent, IListRenderer, IListVirtualDelegate } from '../../../base/browser/ui/list/list.js';\nimport { IListAccessibilityProvider, List } from '../../../base/browser/ui/list/listWidget.js';\nimport { CancellationToken, CancellationTokenSource } from '../../../base/common/cancellation.js';\nimport { Codicon } from '../../../base/common/codicons.js';\nimport { ResolvedKeybinding } from '../../../base/common/keybindings.js';\nimport { Disposable } from '../../../base/common/lifecycle.js';\nimport { OS } from '../../../base/common/platform.js';\nimport { ThemeIcon } from '../../../base/common/themables.js';\nimport './actionWidget.css';\nimport { localize } from '../../../nls.js';\nimport { IContextViewService } from '../../contextview/browser/contextView.js';\nimport { IKeybindingService } from '../../keybinding/common/keybinding.js';\nimport { defaultListStyles } from '../../theme/browser/defaultStyles.js';\nimport { asCssVariable } from '../../theme/common/colorRegistry.js';\nimport { ILayoutService } from '../../layout/browser/layoutService.js';\n\nexport const acceptSelectedActionCommand = 'acceptSelectedCodeAction';\nexport const previewSelectedActionCommand = 'previewSelectedCodeAction';\n\nexport interface IActionListDelegate<T> {\n\tonHide(didCancel?: boolean): void;\n\tonSelect(action: T, preview?: boolean): void;\n\tonHover?(action: T, cancellationToken: CancellationToken): Promise<{ canPreview: boolean } | void>;\n\tonFocus?(action: T | undefined): void;\n}\n\nexport interface IActionListItem<T> {\n\treadonly item?: T;\n\treadonly kind: ActionListItemKind;\n\treadonly group?: { kind?: any; icon?: ThemeIcon; title: string };\n\treadonly disabled?: boolean;\n\treadonly label?: string;\n\treadonly description?: string;\n\treadonly keybinding?: ResolvedKeybinding;\n\tcanPreview?: boolean | undefined;\n\treadonly hideIcon?: boolean;\n\treadonly tooltip?: string;\n}\n\ninterface IActionMenuTemplateData {\n\treadonly container: HTMLElement;\n\treadonly icon: HTMLElement;\n\treadonly text: HTMLElement;\n\treadonly description?: HTMLElement;\n\treadonly keybinding: KeybindingLabel;\n}\n\nexport const enum ActionListItemKind {\n\tAction = 'action',\n\tHeader = 'header',\n\tSeparator = 'separator'\n}\n\ninterface IHeaderTemplateData {\n\treadonly container: HTMLElement;\n\treadonly text: HTMLElement;\n}\n\nclass HeaderRenderer<T> implements IListRenderer<IActionListItem<T>, IHeaderTemplateData> {\n\n\tget templateId(): string { return ActionListItemKind.Header; }\n\n\trenderTemplate(container: HTMLElement): IHeaderTemplateData {\n\t\tcontainer.classList.add('group-header');\n\n\t\tconst text = document.createElement('span');\n\t\tcontainer.append(text);\n\n\t\treturn { container, text };\n\t}\n\n\trenderElement(element: IActionListItem<T>, _index: number, templateData: IHeaderTemplateData): void {\n\t\ttemplateData.text.textContent = element.group?.title ?? element.label ?? '';\n\t}\n\n\tdisposeTemplate(_templateData: IHeaderTemplateData): void {\n\t\t// noop\n\t}\n}\n\ninterface ISeparatorTemplateData {\n\treadonly container: HTMLElement;\n\treadonly text: HTMLElement;\n}\n\nclass SeparatorRenderer<T> implements IListRenderer<IActionListItem<T>, ISeparatorTemplateData> {\n\n\tget templateId(): string { return ActionListItemKind.Separator; }\n\n\trenderTemplate(container: HTMLElement): ISeparatorTemplateData {\n\t\tcontainer.classList.add('separator');\n\n\t\tconst text = document.createElement('span');\n\t\tcontainer.append(text);\n\n\t\treturn { container, text };\n\t}\n\n\trenderElement(element: IActionListItem<T>, _index: number, templateData: ISeparatorTemplateData): void {\n\t\ttemplateData.text.textContent = element.label ?? '';\n\t}\n\n\tdisposeTemplate(_templateData: ISeparatorTemplateData): void {\n\t\t// noop\n\t}\n}\n\nclass ActionItemRenderer<T> implements IListRenderer<IActionListItem<T>, IActionMenuTemplateData> {\n\n\tget templateId(): string { return ActionListItemKind.Action; }\n\n\tconstructor(\n\t\tprivate readonly _supportsPreview: boolean,\n\t\t@IKeybindingService private readonly _keybindingService: IKeybindingService\n\t) { }\n\n\trenderTemplate(container: HTMLElement): IActionMenuTemplateData {\n\t\tcontainer.classList.add(this.templateId);\n\n\t\tconst icon = document.createElement('div');\n\t\ticon.className = 'icon';\n\t\tcontainer.append(icon);\n\n\t\tconst text = document.createElement('span');\n\t\ttext.className = 'title';\n\t\tcontainer.append(text);\n\n\t\tconst description = document.createElement('span');\n\t\tdescription.className = 'description';\n\t\tcontainer.append(description);\n\n\t\tconst keybinding = new KeybindingLabel(container, OS);\n\n\t\treturn { container, icon, text, description, keybinding };\n\t}\n\n\trenderElement(element: IActionListItem<T>, _index: number, data: IActionMenuTemplateData): void {\n\t\tif (element.group?.icon) {\n\t\t\tdata.icon.className = ThemeIcon.asClassName(element.group.icon);\n\t\t\tif (element.group.icon.color) {\n\t\t\t\tdata.icon.style.color = asCssVariable(element.group.icon.color.id);\n\t\t\t}\n\t\t} else {\n\t\t\tdata.icon.className = ThemeIcon.asClassName(Codicon.lightBulb);\n\t\t\tdata.icon.style.color = 'var(--vscode-editorLightBulb-foreground)';\n\t\t}\n\n\t\tif (!element.item || !element.label) {\n\t\t\treturn;\n\t\t}\n\n\t\tdom.setVisibility(!element.hideIcon, data.icon);\n\n\t\tdata.text.textContent = stripNewlines(element.label);\n\n\t\t// if there is a keybinding, prioritize over description for now\n\t\tif (element.keybinding) {\n\t\t\tdata.description!.textContent = element.keybinding.getLabel();\n\t\t\tdata.description!.style.display = 'inline';\n\t\t\tdata.description!.style.letterSpacing = '0.5px';\n\t\t} else if (element.description) {\n\t\t\tdata.description!.textContent = stripNewlines(element.description);\n\t\t\tdata.description!.style.display = 'inline';\n\t\t} else {\n\t\t\tdata.description!.textContent = '';\n\t\t\tdata.description!.style.display = 'none';\n\t\t}\n\n\t\tconst actionTitle = this._keybindingService.lookupKeybinding(acceptSelectedActionCommand)?.getLabel();\n\t\tconst previewTitle = this._keybindingService.lookupKeybinding(previewSelectedActionCommand)?.getLabel();\n\t\tdata.container.classList.toggle('option-disabled', element.disabled);\n\t\tif (element.tooltip) {\n\t\t\tdata.container.title = element.tooltip;\n\t\t} else if (element.disabled) {\n\t\t\tdata.container.title = element.label;\n\t\t} else if (actionTitle && previewTitle) {\n\t\t\tif (this._supportsPreview && element.canPreview) {\n\t\t\t\tdata.container.title = localize({ key: 'label-preview', comment: ['placeholders are keybindings, e.g \"F2 to Apply, Shift+F2 to Preview\"'] }, \"{0} to Apply, {1} to Preview\", actionTitle, previewTitle);\n\t\t\t} else {\n\t\t\t\tdata.container.title = localize({ key: 'label', comment: ['placeholder is a keybinding, e.g \"F2 to Apply\"'] }, \"{0} to Apply\", actionTitle);\n\t\t\t}\n\t\t} else {\n\t\t\tdata.container.title = '';\n\t\t}\n\t}\n\n\tdisposeTemplate(templateData: IActionMenuTemplateData): void {\n\t\ttemplateData.keybinding.dispose();\n\t}\n}\n\nclass AcceptSelectedEvent extends UIEvent {\n\tconstructor() { super('acceptSelectedAction'); }\n}\n\nclass PreviewSelectedEvent extends UIEvent {\n\tconstructor() { super('previewSelectedAction'); }\n}\n\nfunction getKeyboardNavigationLabel<T>(item: IActionListItem<T>): string | undefined {\n\t// Filter out header vs. action vs. separator\n\tif (item.kind === 'action') {\n\t\treturn item.label;\n\t}\n\treturn undefined;\n}\n\nexport class ActionList<T> extends Disposable {\n\n\tpublic readonly domNode: HTMLElement;\n\n\tprivate readonly _list: List<IActionListItem<T>>;\n\n\tprivate readonly _actionLineHeight = 28;\n\tprivate readonly _headerLineHeight = 28;\n\tprivate readonly _separatorLineHeight = 8;\n\n\tprivate readonly _allMenuItems: readonly IActionListItem<T>[];\n\n\tprivate readonly cts = this._register(new CancellationTokenSource());\n\n\tconstructor(\n\t\tuser: string,\n\t\tpreview: boolean,\n\t\titems: readonly IActionListItem<T>[],\n\t\tprivate readonly _delegate: IActionListDelegate<T>,\n\t\taccessibilityProvider: Partial<IListAccessibilityProvider<IActionListItem<T>>> | undefined,\n\t\t@IContextViewService private readonly _contextViewService: IContextViewService,\n\t\t@IKeybindingService private readonly _keybindingService: IKeybindingService,\n\t\t@ILayoutService private readonly _layoutService: ILayoutService,\n\t) {\n\t\tsuper();\n\t\tthis.domNode = document.createElement('div');\n\t\tthis.domNode.classList.add('actionList');\n\t\tconst virtualDelegate: IListVirtualDelegate<IActionListItem<T>> = {\n\t\t\tgetHeight: element => {\n\t\t\t\tswitch (element.kind) {\n\t\t\t\t\tcase ActionListItemKind.Header:\n\t\t\t\t\t\treturn this._headerLineHeight;\n\t\t\t\t\tcase ActionListItemKind.Separator:\n\t\t\t\t\t\treturn this._separatorLineHeight;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn this._actionLineHeight;\n\t\t\t\t}\n\t\t\t},\n\t\t\tgetTemplateId: element => element.kind\n\t\t};\n\n\n\t\tthis._list = this._register(new List(user, this.domNode, virtualDelegate, [\n\t\t\tnew ActionItemRenderer<IActionListItem<T>>(preview, this._keybindingService),\n\t\t\tnew HeaderRenderer(),\n\t\t\tnew SeparatorRenderer(),\n\t\t], {\n\t\t\tkeyboardSupport: false,\n\t\t\ttypeNavigationEnabled: true,\n\t\t\tkeyboardNavigationLabelProvider: { getKeyboardNavigationLabel },\n\t\t\taccessibilityProvider: {\n\t\t\t\tgetAriaLabel: element => {\n\t\t\t\t\tif (element.kind === ActionListItemKind.Action) {\n\t\t\t\t\t\tlet label = element.label ? stripNewlines(element?.label) : '';\n\t\t\t\t\t\tif (element.description) {\n\t\t\t\t\t\t\tlabel = label + ', ' + stripNewlines(element.description);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (element.disabled) {\n\t\t\t\t\t\t\tlabel = localize({ key: 'customQuickFixWidget.labels', comment: [`Action widget labels for accessibility.`] }, \"{0}, Disabled Reason: {1}\", label, element.disabled);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn label;\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\tgetWidgetAriaLabel: () => localize({ key: 'customQuickFixWidget', comment: [`An action widget option`] }, \"Action Widget\"),\n\t\t\t\tgetRole: (e) => {\n\t\t\t\t\tswitch (e.kind) {\n\t\t\t\t\t\tcase ActionListItemKind.Action:\n\t\t\t\t\t\t\treturn 'option';\n\t\t\t\t\t\tcase ActionListItemKind.Separator:\n\t\t\t\t\t\t\treturn 'separator';\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn 'separator';\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tgetWidgetRole: () => 'listbox',\n\t\t\t\t...accessibilityProvider\n\t\t\t},\n\t\t}));\n\n\t\tthis._list.style(defaultListStyles);\n\n\t\tthis._register(this._list.onMouseClick(e => this.onListClick(e)));\n\t\tthis._register(this._list.onMouseOver(e => this.onListHover(e)));\n\t\tthis._register(this._list.onDidChangeFocus(() => this.onFocus()));\n\t\tthis._register(this._list.onDidChangeSelection(e => this.onListSelection(e)));\n\n\t\tthis._allMenuItems = items;\n\t\tthis._list.splice(0, this._list.length, this._allMenuItems);\n\n\t\tif (this._list.length) {\n\t\t\tthis.focusNext();\n\t\t}\n\t}\n\n\tprivate focusCondition(element: IActionListItem<unknown>): boolean {\n\t\treturn !element.disabled && element.kind === ActionListItemKind.Action;\n\t}\n\n\thide(didCancel?: boolean): void {\n\t\tthis._delegate.onHide(didCancel);\n\t\tthis.cts.cancel();\n\t\tthis._contextViewService.hideContextView();\n\t}\n\n\tlayout(minWidth: number): number {\n\t\t// Updating list height, depending on how many separators and headers there are.\n\t\tconst numHeaders = this._allMenuItems.filter(item => item.kind === 'header').length;\n\t\tconst numSeparators = this._allMenuItems.filter(item => item.kind === 'separator').length;\n\t\tconst itemsHeight = this._allMenuItems.length * this._actionLineHeight;\n\t\tconst heightWithHeaders = itemsHeight + numHeaders * this._headerLineHeight - numHeaders * this._actionLineHeight;\n\t\tconst heightWithSeparators = heightWithHeaders + numSeparators * this._separatorLineHeight - numSeparators * this._actionLineHeight;\n\t\tthis._list.layout(heightWithSeparators);\n\t\tlet maxWidth = minWidth;\n\n\t\tif (this._allMenuItems.length >= 50) {\n\t\t\tmaxWidth = 380;\n\t\t} else {\n\t\t\t// For finding width dynamically (not using resize observer)\n\t\t\tconst itemWidths: number[] = this._allMenuItems.map((_, index): number => {\n\t\t\t\tconst element = this.domNode.ownerDocument.getElementById(this._list.getElementID(index));\n\t\t\t\tif (element) {\n\t\t\t\t\telement.style.width = 'auto';\n\t\t\t\t\tconst width = element.getBoundingClientRect().width;\n\t\t\t\t\telement.style.width = '';\n\t\t\t\t\treturn width;\n\t\t\t\t}\n\t\t\t\treturn 0;\n\t\t\t});\n\n\t\t\t// resize observer - can be used in the future since list widget supports dynamic height but not width\n\t\t\tmaxWidth = Math.max(...itemWidths, minWidth);\n\t\t}\n\n\t\tconst maxVhPrecentage = 0.7;\n\t\tconst height = Math.min(heightWithSeparators, this._layoutService.getContainer(dom.getWindow(this.domNode)).clientHeight * maxVhPrecentage);\n\t\tthis._list.layout(height, maxWidth);\n\n\t\tthis.domNode.style.height = `${height}px`;\n\n\t\tthis._list.domFocus();\n\t\treturn maxWidth;\n\t}\n\n\tfocusPrevious() {\n\t\tthis._list.focusPrevious(1, true, undefined, this.focusCondition);\n\t}\n\n\tfocusNext() {\n\t\tthis._list.focusNext(1, true, undefined, this.focusCondition);\n\t}\n\n\tacceptSelected(preview?: boolean) {\n\t\tconst focused = this._list.getFocus();\n\t\tif (focused.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst focusIndex = focused[0];\n\t\tconst element = this._list.element(focusIndex);\n\t\tif (!this.focusCondition(element)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst event = preview ? new PreviewSelectedEvent() : new AcceptSelectedEvent();\n\t\tthis._list.setSelection([focusIndex], event);\n\t}\n\n\tprivate onListSelection(e: IListEvent<IActionListItem<T>>): void {\n\t\tif (!e.elements.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst element = e.elements[0];\n\t\tif (element.item && this.focusCondition(element)) {\n\t\t\tthis._delegate.onSelect(element.item, e.browserEvent instanceof PreviewSelectedEvent);\n\t\t} else {\n\t\t\tthis._list.setSelection([]);\n\t\t}\n\t}\n\n\tprivate onFocus() {\n\t\tconst focused = this._list.getFocus();\n\t\tif (focused.length === 0) {\n\t\t\treturn;\n\t\t}\n\t\tconst focusIndex = focused[0];\n\t\tconst element = this._list.element(focusIndex);\n\t\tthis._delegate.onFocus?.(element.item);\n\t}\n\n\tprivate async onListHover(e: IListMouseEvent<IActionListItem<T>>) {\n\t\tconst element = e.element;\n\t\tif (element && element.item && this.focusCondition(element)) {\n\t\t\tif (this._delegate.onHover && !element.disabled && element.kind === ActionListItemKind.Action) {\n\t\t\t\tconst result = await this._delegate.onHover(element.item, this.cts.token);\n\t\t\t\telement.canPreview = result ? result.canPreview : undefined;\n\t\t\t}\n\t\t\tif (e.index) {\n\t\t\t\tthis._list.splice(e.index, 1, [element]);\n\t\t\t}\n\t\t}\n\n\t\tthis._list.setFocus(typeof e.index === 'number' ? [e.index] : []);\n\t}\n\n\tprivate onListClick(e: IListMouseEvent<IActionListItem<T>>): void {\n\t\tif (e.element && this.focusCondition(e.element)) {\n\t\t\tthis._list.setFocus([]);\n\t\t}\n\t}\n}\n\nfunction stripNewlines(str: string): string {\n\treturn str.replace(/\\r\\n|\\r|\\n/g, ' ');\n}\n"]}
@@ -854,8 +854,8 @@ export class QuickPick extends QuickInput {
854
854
  if (this.activeItems[0]) {
855
855
  this._selectedItems = [this.activeItems[0]];
856
856
  this.onDidChangeSelectionEmitter.fire(this.selectedItems);
857
- this.handleAccept(inBackground ?? false);
858
857
  }
858
+ this.handleAccept(inBackground ?? false);
859
859
  }
860
860
  }
861
861
  export class InputBox extends QuickInput {
@@ -982,7 +982,7 @@ export class InputBox extends QuickInput {
982
982
  }
983
983
  let QuickInputHoverDelegate = class QuickInputHoverDelegate extends WorkbenchHoverDelegate {
984
984
  constructor(configurationService, hoverService) {
985
- super('element', undefined, (options) => this.getOverrideOptions(options), configurationService, hoverService);
985
+ super('mouse', undefined, (options) => this.getOverrideOptions(options), configurationService, hoverService);
986
986
  }
987
987
  getOverrideOptions(options) {
988
988
  // Only show the hover hint if the content is of a decent size