monaco-editor-core 0.55.0-dev-20251020 → 0.55.0-dev-20251022

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 (210) hide show
  1. package/esm/nls.keys.json +1 -1
  2. package/esm/nls.messages.cs.js +2 -2
  3. package/esm/nls.messages.de.js +2 -2
  4. package/esm/nls.messages.es.js +2 -2
  5. package/esm/nls.messages.fr.js +2 -2
  6. package/esm/nls.messages.it.js +2 -2
  7. package/esm/nls.messages.ja.js +2 -2
  8. package/esm/nls.messages.js +1 -1
  9. package/esm/nls.messages.json +1 -1
  10. package/esm/nls.messages.ko.js +2 -2
  11. package/esm/nls.messages.pl.js +2 -2
  12. package/esm/nls.messages.pt-br.js +2 -2
  13. package/esm/nls.messages.ru.js +2 -2
  14. package/esm/nls.messages.tr.js +2 -2
  15. package/esm/nls.messages.zh-cn.js +2 -2
  16. package/esm/nls.messages.zh-tw.js +2 -2
  17. package/esm/nls.metadata.json +17 -5
  18. package/esm/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  19. package/esm/vs/base/browser/ui/iconLabel/iconlabel.css +2 -3
  20. package/esm/vs/base/common/actions.js +5 -0
  21. package/esm/vs/base/common/actions.js.map +1 -1
  22. package/esm/vs/base/common/async.js +5 -5
  23. package/esm/vs/base/common/async.js.map +1 -1
  24. package/esm/vs/base/common/codiconsLibrary.js +1 -0
  25. package/esm/vs/base/common/codiconsLibrary.js.map +1 -1
  26. package/esm/vs/base/common/policy.js +40 -1
  27. package/esm/vs/base/common/policy.js.map +1 -1
  28. package/esm/vs/editor/browser/controller/editContext/native/nativeEditContext.js +20 -12
  29. package/esm/vs/editor/browser/controller/editContext/native/nativeEditContext.js.map +1 -1
  30. package/esm/vs/editor/browser/controller/editContext/native/screenReaderSupport.js +1 -1
  31. package/esm/vs/editor/browser/controller/editContext/screenReaderUtils.js +4 -4
  32. package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +1 -1
  33. package/esm/vs/editor/browser/coreCommands.js +3 -3
  34. package/esm/vs/editor/browser/editorExtensions.js +9 -9
  35. package/esm/vs/editor/browser/gpu/viewGpuContext.js +1 -1
  36. package/esm/vs/editor/browser/services/hoverService/hoverWidget.js +1 -3
  37. package/esm/vs/editor/browser/services/hoverService/hoverWidget.js.map +1 -1
  38. package/esm/vs/editor/browser/services/hoverService/updatableHoverWidget.js +1 -1
  39. package/esm/vs/editor/browser/services/inlineCompletionsService.js +4 -4
  40. package/esm/vs/editor/browser/services/inlineCompletionsService.js.map +1 -1
  41. package/esm/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +2 -2
  42. package/esm/vs/editor/browser/widget/diffEditor/commands.js +12 -12
  43. package/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +14 -14
  44. package/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js.map +1 -1
  45. package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +1 -1
  46. package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/copySelection.js +1 -1
  47. package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +7 -7
  48. package/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +5 -5
  49. package/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +6 -0
  50. package/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js.map +1 -1
  51. package/esm/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +7 -7
  52. package/esm/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +2 -2
  53. package/esm/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +2 -2
  54. package/esm/vs/editor/browser/widget/diffEditor/registrations.contribution.js +5 -5
  55. package/esm/vs/editor/browser/widget/multiDiffEditor/colors.js +3 -3
  56. package/esm/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +1 -0
  57. package/esm/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js.map +1 -1
  58. package/esm/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +2 -2
  59. package/esm/vs/editor/common/config/editorConfigurationSchema.js +54 -54
  60. package/esm/vs/editor/common/config/editorOptions.js +406 -406
  61. package/esm/vs/editor/common/core/editorColorRegistry.js +68 -68
  62. package/esm/vs/editor/common/editorContextKeys.js +46 -46
  63. package/esm/vs/editor/common/languages/modesRegistry.js +1 -1
  64. package/esm/vs/editor/common/languages.js +56 -56
  65. package/esm/vs/editor/common/model/editStack.js +1 -1
  66. package/esm/vs/editor/common/standaloneStrings.js +10 -10
  67. package/esm/vs/editor/common/viewLayout/viewLineRenderer.js +2 -2
  68. package/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
  69. package/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
  70. package/esm/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
  71. package/esm/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
  72. package/esm/vs/editor/contrib/clipboard/browser/clipboard.js +17 -17
  73. package/esm/vs/editor/contrib/codeAction/browser/codeAction.js +1 -1
  74. package/esm/vs/editor/contrib/codeAction/browser/codeActionCommands.js +29 -29
  75. package/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
  76. package/esm/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
  77. package/esm/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
  78. package/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
  79. package/esm/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
  80. package/esm/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  81. package/esm/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  82. package/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
  83. package/esm/vs/editor/contrib/comment/browser/comment.js +6 -6
  84. package/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js +10 -10
  85. package/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
  86. package/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +4 -4
  87. package/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +9 -9
  88. package/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -8
  89. package/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  90. package/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +2 -2
  91. package/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.js +1 -1
  92. package/esm/vs/editor/contrib/find/browser/findController.js +16 -16
  93. package/esm/vs/editor/contrib/find/browser/findWidget.js +26 -26
  94. package/esm/vs/editor/contrib/folding/browser/folding.js +20 -20
  95. package/esm/vs/editor/contrib/folding/browser/folding.js.map +1 -1
  96. package/esm/vs/editor/contrib/folding/browser/foldingDecorations.js +9 -9
  97. package/esm/vs/editor/contrib/folding/browser/foldingDecorations.js.map +1 -1
  98. package/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
  99. package/esm/vs/editor/contrib/format/browser/formatActions.js +2 -2
  100. package/esm/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
  101. package/esm/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +14 -14
  102. package/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -39
  103. package/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  104. package/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +3 -3
  105. package/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
  106. package/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  107. package/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
  108. package/esm/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
  109. package/esm/vs/editor/contrib/gpu/browser/gpuActions.js +4 -4
  110. package/esm/vs/editor/contrib/hover/browser/glyphHoverWidget.js +22 -2
  111. package/esm/vs/editor/contrib/hover/browser/glyphHoverWidget.js.map +1 -1
  112. package/esm/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
  113. package/esm/vs/editor/contrib/hover/browser/hoverActions.js +24 -24
  114. package/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +9 -9
  115. package/esm/vs/editor/contrib/hover/browser/markerHoverParticipant.js +5 -5
  116. package/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
  117. package/esm/vs/editor/contrib/indentation/browser/indentation.js +20 -20
  118. package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +8 -8
  119. package/esm/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +18 -51
  120. package/esm/vs/editor/contrib/inlineCompletions/browser/controller/commands.js.map +1 -1
  121. package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +12 -12
  122. package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +1 -1
  123. package/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +1 -1
  124. package/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +5 -5
  125. package/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +2 -4
  126. package/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js.map +1 -1
  127. package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +0 -1
  128. package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js.map +1 -1
  129. package/esm/vs/editor/contrib/inlineCompletions/browser/telemetry.js.map +1 -1
  130. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +6 -6
  131. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.js +1 -1
  132. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +20 -20
  133. package/esm/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
  134. package/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  135. package/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js +31 -31
  136. package/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  137. package/esm/vs/editor/contrib/links/browser/links.js +10 -10
  138. package/esm/vs/editor/contrib/message/browser/messageController.js +1 -1
  139. package/esm/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
  140. package/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
  141. package/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +4 -4
  142. package/esm/vs/editor/contrib/peekView/browser/peekView.js +18 -18
  143. package/esm/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  144. package/esm/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +35 -28
  145. package/esm/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js.map +1 -1
  146. package/esm/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +32 -32
  147. package/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
  148. package/esm/vs/editor/contrib/rename/browser/rename.js +11 -11
  149. package/esm/vs/editor/contrib/rename/browser/renameWidget.js +8 -11
  150. package/esm/vs/editor/contrib/rename/browser/renameWidget.js.map +1 -1
  151. package/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
  152. package/esm/vs/editor/contrib/snippet/browser/snippetController2.js +4 -4
  153. package/esm/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  154. package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  155. package/esm/vs/editor/contrib/suggest/browser/suggest.js +8 -8
  156. package/esm/vs/editor/contrib/suggest/browser/suggestController.js +10 -10
  157. package/esm/vs/editor/contrib/suggest/browser/suggestWidget.js +17 -17
  158. package/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  159. package/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  160. package/esm/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
  161. package/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  162. package/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  163. package/esm/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  164. package/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  165. package/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +24 -24
  166. package/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  167. package/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  168. package/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
  169. package/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js +1 -1
  170. package/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +62 -62
  171. package/esm/vs/platform/action/common/actionCommonCategories.js +6 -6
  172. package/esm/vs/platform/actionWidget/browser/actionList.js +4 -4
  173. package/esm/vs/platform/actionWidget/browser/actionWidget.js +7 -7
  174. package/esm/vs/platform/actions/browser/menuEntryActionViewItem.js +5 -5
  175. package/esm/vs/platform/actions/browser/toolbar.js +2 -2
  176. package/esm/vs/platform/actions/common/menuService.js +2 -2
  177. package/esm/vs/platform/configuration/common/configurationRegistry.js +10 -10
  178. package/esm/vs/platform/contextkey/browser/contextKeyService.js +1 -1
  179. package/esm/vs/platform/contextkey/common/contextkey.js +9 -9
  180. package/esm/vs/platform/contextkey/common/contextkeys.js +9 -9
  181. package/esm/vs/platform/contextkey/common/scanner.js +5 -5
  182. package/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  183. package/esm/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
  184. package/esm/vs/platform/list/browser/listService.js +27 -27
  185. package/esm/vs/platform/markers/common/markerService.js +2 -2
  186. package/esm/vs/platform/markers/common/markers.js +6 -6
  187. package/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +7 -7
  188. package/esm/vs/platform/quickinput/browser/helpQuickAccess.js +1 -1
  189. package/esm/vs/platform/quickinput/browser/quickInput.js +10 -10
  190. package/esm/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  191. package/esm/vs/platform/quickinput/browser/quickInputController.js +6 -6
  192. package/esm/vs/platform/quickinput/browser/quickInputList.js +1 -1
  193. package/esm/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  194. package/esm/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
  195. package/esm/vs/platform/theme/common/colorUtils.js +2 -2
  196. package/esm/vs/platform/theme/common/colors/baseColors.js +17 -17
  197. package/esm/vs/platform/theme/common/colors/chartsColors.js +8 -8
  198. package/esm/vs/platform/theme/common/colors/editorColors.js +95 -95
  199. package/esm/vs/platform/theme/common/colors/inputColors.js +47 -47
  200. package/esm/vs/platform/theme/common/colors/listColors.js +36 -36
  201. package/esm/vs/platform/theme/common/colors/menuColors.js +7 -7
  202. package/esm/vs/platform/theme/common/colors/minimapColors.js +11 -11
  203. package/esm/vs/platform/theme/common/colors/miscColors.js +15 -15
  204. package/esm/vs/platform/theme/common/colors/quickpickColors.js +9 -9
  205. package/esm/vs/platform/theme/common/colors/searchColors.js +3 -3
  206. package/esm/vs/platform/theme/common/iconRegistry.js +6 -6
  207. package/esm/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  208. package/esm/vs/platform/workspace/common/workspace.js +1 -1
  209. package/package.json +2 -2
  210. package/version.txt +1 -1
@@ -202,6 +202,13 @@
202
202
  ]
203
203
  }
204
204
  ],
205
+ "vs/base/common/policy": [
206
+ "extensionsConfigurationTitle",
207
+ "terminalIntegratedConfigurationTitle",
208
+ "interactiveSessionConfigurationTitle",
209
+ "telemetryConfigurationTitle",
210
+ "updateConfigurationTitle"
211
+ ],
205
212
  "vs/editor/browser/controller/editContext/native/screenReaderSupport": [
206
213
  "editor"
207
214
  ],
@@ -1695,7 +1702,6 @@
1695
1702
  "hint.cmd"
1696
1703
  ],
1697
1704
  "vs/editor/contrib/inlineCompletions/browser/controller/commands": [
1698
- "noInlineEditAvailable",
1699
1705
  "acceptWord",
1700
1706
  "acceptLine",
1701
1707
  "accept",
@@ -1707,7 +1713,6 @@
1707
1713
  "action.inlineSuggest.showNext",
1708
1714
  "action.inlineSuggest.showPrevious",
1709
1715
  "action.inlineSuggest.trigger",
1710
- "action.inlineSuggest.trigger.explicitInlineEdit",
1711
1716
  "action.inlineSuggest.acceptNextWord",
1712
1717
  "action.inlineSuggest.acceptNextLine",
1713
1718
  "action.inlineSuggest.accept",
@@ -1958,6 +1963,7 @@
1958
1963
  ],
1959
1964
  "vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess": [
1960
1965
  "cannotRunGotoLine",
1966
+ "gotoLineQuickAccessDescription",
1961
1967
  "gotoLineToggle",
1962
1968
  "gotoLineColumnLabel",
1963
1969
  "gotoLineLabel",
@@ -3057,6 +3063,13 @@
3057
3063
  "Alt",
3058
3064
  "Super"
3059
3065
  ],
3066
+ "vs/base/common/policy": [
3067
+ "Extensions",
3068
+ "Integrated Terminal",
3069
+ "Chat",
3070
+ "Telemetry",
3071
+ "Update"
3072
+ ],
3060
3073
  "vs/editor/browser/controller/editContext/native/screenReaderSupport": [
3061
3074
  "editor"
3062
3075
  ],
@@ -3096,7 +3109,7 @@
3096
3109
  ],
3097
3110
  "vs/editor/browser/services/inlineCompletionsService": [
3098
3111
  "Whether inline completions are currently snoozed",
3099
- "Select snooze duration for Code completions and NES",
3112
+ "Select snooze duration for Inline Suggestions",
3100
3113
  "Snooze Inline Suggestions",
3101
3114
  "Cancel Snooze Inline Suggestions"
3102
3115
  ],
@@ -4323,7 +4336,6 @@
4323
4336
  "Execute Command"
4324
4337
  ],
4325
4338
  "vs/editor/contrib/inlineCompletions/browser/controller/commands": [
4326
- "No inline edit is available.",
4327
4339
  "Accept Word",
4328
4340
  "Accept Line",
4329
4341
  "Accept",
@@ -4335,7 +4347,6 @@
4335
4347
  "Show Next Inline Suggestion",
4336
4348
  "Show Previous Inline Suggestion",
4337
4349
  "Trigger Inline Suggestion",
4338
- "Trigger Next Edit Suggestion",
4339
4350
  "Accept Next Word Of Inline Suggestion",
4340
4351
  "Accept Next Line Of Inline Suggestion",
4341
4352
  "Accept Inline Suggestion",
@@ -4525,6 +4536,7 @@
4525
4536
  ],
4526
4537
  "vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess": [
4527
4538
  "Open a text editor first to go to a line.",
4539
+ "Use :line[:column] or ::offset to go to a position. Negative values are counted from the end.",
4528
4540
  "Use zero-based offset",
4529
4541
  "Go to line {0} and character {1}.",
4530
4542
  "Go to line {0}.",
@@ -33,9 +33,8 @@
33
33
 
34
34
  .monaco-icon-label-iconpath {
35
35
  width: 16px;
36
- height: 16px;
37
- padding-left: 2px;
38
- margin-top: 2px;
36
+ height: 22px;
37
+ margin-right: 6px;
39
38
  display: flex;
40
39
  }
41
40
 
@@ -5,6 +5,11 @@
5
5
  import { Emitter } from './event.js';
6
6
  import { Disposable } from './lifecycle.js';
7
7
  import * as nls from '../../nls.js';
8
+ /**
9
+ * A concrete implementation of {@link IAction}.
10
+ *
11
+ * Note that in most cases you should use the lighter-weight {@linkcode toAction} function instead.
12
+ */
8
13
  export class Action extends Disposable {
9
14
  get onDidChange() { return this._onDidChange.event; }
10
15
  constructor(id, label = '', cssClass = '', enabled = true, actionCallback) {
@@ -1 +1 @@
1
- {"version":3,"sources":["vs/base/common/actions.ts"],"names":[],"mappings":"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","file":"actions.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 { Emitter, Event } from './event.js';\nimport { Disposable, IDisposable } from './lifecycle.js';\nimport * as nls from '../../nls.js';\n\nexport interface ITelemetryData {\n\t[key: string]: unknown;\n}\n\nexport type WorkbenchActionExecutedClassification = {\n\tid: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'The identifier of the action that was run.' };\n\tfrom: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'The name of the component the action was run from.' };\n\tdetail?: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Optional details about how the action was run, e.g which keybinding was used.' };\n\towner: 'isidorn';\n\tcomment: 'Provides insight into actions that are executed within the workbench.';\n};\n\nexport type WorkbenchActionExecutedEvent = {\n\tid: string;\n\tfrom: string;\n\tdetail?: string;\n};\n\nexport interface IAction {\n\treadonly id: string;\n\tlabel: string;\n\ttooltip: string;\n\tclass: string | undefined;\n\tenabled: boolean;\n\tchecked?: boolean;\n\trun(...args: unknown[]): unknown;\n}\n\nexport interface IActionRunner extends IDisposable {\n\treadonly onDidRun: Event<IRunEvent>;\n\treadonly onWillRun: Event<IRunEvent>;\n\n\trun(action: IAction, context?: unknown): unknown;\n}\n\nexport interface IActionChangeEvent {\n\treadonly label?: string;\n\treadonly tooltip?: string;\n\treadonly class?: string;\n\treadonly enabled?: boolean;\n\treadonly checked?: boolean;\n}\n\nexport class Action extends Disposable implements IAction {\n\n\tprotected _onDidChange = this._register(new Emitter<IActionChangeEvent>());\n\tget onDidChange() { return this._onDidChange.event; }\n\n\tprotected readonly _id: string;\n\tprotected _label: string;\n\tprotected _tooltip: string | undefined;\n\tprotected _cssClass: string | undefined;\n\tprotected _enabled: boolean = true;\n\tprotected _checked?: boolean;\n\tprotected readonly _actionCallback?: (event?: unknown) => unknown;\n\n\tconstructor(id: string, label: string = '', cssClass: string = '', enabled: boolean = true, actionCallback?: (event?: unknown) => unknown) {\n\t\tsuper();\n\t\tthis._id = id;\n\t\tthis._label = label;\n\t\tthis._cssClass = cssClass;\n\t\tthis._enabled = enabled;\n\t\tthis._actionCallback = actionCallback;\n\t}\n\n\tget id(): string {\n\t\treturn this._id;\n\t}\n\n\tget label(): string {\n\t\treturn this._label;\n\t}\n\n\tset label(value: string) {\n\t\tthis._setLabel(value);\n\t}\n\n\tprivate _setLabel(value: string): void {\n\t\tif (this._label !== value) {\n\t\t\tthis._label = value;\n\t\t\tthis._onDidChange.fire({ label: value });\n\t\t}\n\t}\n\n\tget tooltip(): string {\n\t\treturn this._tooltip || '';\n\t}\n\n\tset tooltip(value: string) {\n\t\tthis._setTooltip(value);\n\t}\n\n\tprotected _setTooltip(value: string): void {\n\t\tif (this._tooltip !== value) {\n\t\t\tthis._tooltip = value;\n\t\t\tthis._onDidChange.fire({ tooltip: value });\n\t\t}\n\t}\n\n\tget class(): string | undefined {\n\t\treturn this._cssClass;\n\t}\n\n\tset class(value: string | undefined) {\n\t\tthis._setClass(value);\n\t}\n\n\tprotected _setClass(value: string | undefined): void {\n\t\tif (this._cssClass !== value) {\n\t\t\tthis._cssClass = value;\n\t\t\tthis._onDidChange.fire({ class: value });\n\t\t}\n\t}\n\n\tget enabled(): boolean {\n\t\treturn this._enabled;\n\t}\n\n\tset enabled(value: boolean) {\n\t\tthis._setEnabled(value);\n\t}\n\n\tprotected _setEnabled(value: boolean): void {\n\t\tif (this._enabled !== value) {\n\t\t\tthis._enabled = value;\n\t\t\tthis._onDidChange.fire({ enabled: value });\n\t\t}\n\t}\n\n\tget checked(): boolean | undefined {\n\t\treturn this._checked;\n\t}\n\n\tset checked(value: boolean | undefined) {\n\t\tthis._setChecked(value);\n\t}\n\n\tprotected _setChecked(value: boolean | undefined): void {\n\t\tif (this._checked !== value) {\n\t\t\tthis._checked = value;\n\t\t\tthis._onDidChange.fire({ checked: value });\n\t\t}\n\t}\n\n\tasync run(event?: unknown, data?: ITelemetryData): Promise<void> {\n\t\tif (this._actionCallback) {\n\t\t\tawait this._actionCallback(event);\n\t\t}\n\t}\n}\n\nexport interface IRunEvent {\n\treadonly action: IAction;\n\treadonly error?: Error;\n}\n\nexport class ActionRunner extends Disposable implements IActionRunner {\n\n\tprivate readonly _onWillRun = this._register(new Emitter<IRunEvent>());\n\tget onWillRun() { return this._onWillRun.event; }\n\n\tprivate readonly _onDidRun = this._register(new Emitter<IRunEvent>());\n\tget onDidRun() { return this._onDidRun.event; }\n\n\tasync run(action: IAction, context?: unknown): Promise<void> {\n\t\tif (!action.enabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._onWillRun.fire({ action });\n\n\t\tlet error: Error | undefined = undefined;\n\t\ttry {\n\t\t\tawait this.runAction(action, context);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\n\t\tthis._onDidRun.fire({ action, error });\n\t}\n\n\tprotected async runAction(action: IAction, context?: unknown): Promise<void> {\n\t\tawait action.run(context);\n\t}\n}\n\nexport class Separator implements IAction {\n\n\t/**\n\t * Joins all non-empty lists of actions with separators.\n\t */\n\tpublic static join(...actionLists: readonly IAction[][]) {\n\t\tlet out: IAction[] = [];\n\t\tfor (const list of actionLists) {\n\t\t\tif (!list.length) {\n\t\t\t\t// skip\n\t\t\t} else if (out.length) {\n\t\t\t\tout = [...out, new Separator(), ...list];\n\t\t\t} else {\n\t\t\t\tout = list;\n\t\t\t}\n\t\t}\n\n\t\treturn out;\n\t}\n\n\tstatic readonly ID = 'vs.actions.separator';\n\n\treadonly id: string = Separator.ID;\n\n\treadonly label: string = '';\n\treadonly tooltip: string = '';\n\treadonly class: string = 'separator';\n\treadonly enabled: boolean = false;\n\treadonly checked: boolean = false;\n\tasync run() { }\n}\n\nexport class SubmenuAction implements IAction {\n\n\treadonly id: string;\n\treadonly label: string;\n\treadonly class: string | undefined;\n\treadonly tooltip: string = '';\n\treadonly enabled: boolean = true;\n\treadonly checked: undefined = undefined;\n\n\tprivate readonly _actions: readonly IAction[];\n\tget actions(): readonly IAction[] { return this._actions; }\n\n\tconstructor(id: string, label: string, actions: readonly IAction[], cssClass?: string) {\n\t\tthis.id = id;\n\t\tthis.label = label;\n\t\tthis.class = cssClass;\n\t\tthis._actions = actions;\n\t}\n\n\tasync run(): Promise<void> { }\n}\n\nexport class EmptySubmenuAction extends Action {\n\n\tstatic readonly ID = 'vs.actions.empty';\n\n\tconstructor() {\n\t\tsuper(EmptySubmenuAction.ID, nls.localize('submenu.empty', '(empty)'), undefined, false);\n\t}\n}\n\nexport function toAction(props: { id: string; label: string; tooltip?: string; enabled?: boolean; checked?: boolean; class?: string; run: Function }): IAction {\n\treturn {\n\t\tid: props.id,\n\t\tlabel: props.label,\n\t\ttooltip: props.tooltip ?? props.label,\n\t\tclass: props.class,\n\t\tenabled: props.enabled ?? true,\n\t\tchecked: props.checked,\n\t\trun: async (...args: unknown[]) => props.run(...args),\n\t};\n}\n"]}
1
+ {"version":3,"sources":["vs/base/common/actions.ts"],"names":[],"mappings":"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","file":"actions.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 { Emitter, Event } from './event.js';\nimport { Disposable, IDisposable } from './lifecycle.js';\nimport * as nls from '../../nls.js';\n\nexport interface ITelemetryData {\n\t[key: string]: unknown;\n}\n\nexport type WorkbenchActionExecutedClassification = {\n\tid: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'The identifier of the action that was run.' };\n\tfrom: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'The name of the component the action was run from.' };\n\tdetail?: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Optional details about how the action was run, e.g which keybinding was used.' };\n\towner: 'isidorn';\n\tcomment: 'Provides insight into actions that are executed within the workbench.';\n};\n\nexport type WorkbenchActionExecutedEvent = {\n\tid: string;\n\tfrom: string;\n\tdetail?: string;\n};\n\nexport interface IAction {\n\treadonly id: string;\n\tlabel: string;\n\ttooltip: string;\n\tclass: string | undefined;\n\tenabled: boolean;\n\tchecked?: boolean;\n\trun(...args: unknown[]): unknown;\n}\n\nexport interface IActionRunner extends IDisposable {\n\treadonly onDidRun: Event<IRunEvent>;\n\treadonly onWillRun: Event<IRunEvent>;\n\n\trun(action: IAction, context?: unknown): unknown;\n}\n\nexport interface IActionChangeEvent {\n\treadonly label?: string;\n\treadonly tooltip?: string;\n\treadonly class?: string;\n\treadonly enabled?: boolean;\n\treadonly checked?: boolean;\n}\n\n/**\n * A concrete implementation of {@link IAction}.\n *\n * Note that in most cases you should use the lighter-weight {@linkcode toAction} function instead.\n */\nexport class Action extends Disposable implements IAction {\n\n\tprotected _onDidChange = this._register(new Emitter<IActionChangeEvent>());\n\tget onDidChange() { return this._onDidChange.event; }\n\n\tprotected readonly _id: string;\n\tprotected _label: string;\n\tprotected _tooltip: string | undefined;\n\tprotected _cssClass: string | undefined;\n\tprotected _enabled: boolean = true;\n\tprotected _checked?: boolean;\n\tprotected readonly _actionCallback?: (event?: unknown) => unknown;\n\n\tconstructor(id: string, label: string = '', cssClass: string = '', enabled: boolean = true, actionCallback?: (event?: unknown) => unknown) {\n\t\tsuper();\n\t\tthis._id = id;\n\t\tthis._label = label;\n\t\tthis._cssClass = cssClass;\n\t\tthis._enabled = enabled;\n\t\tthis._actionCallback = actionCallback;\n\t}\n\n\tget id(): string {\n\t\treturn this._id;\n\t}\n\n\tget label(): string {\n\t\treturn this._label;\n\t}\n\n\tset label(value: string) {\n\t\tthis._setLabel(value);\n\t}\n\n\tprivate _setLabel(value: string): void {\n\t\tif (this._label !== value) {\n\t\t\tthis._label = value;\n\t\t\tthis._onDidChange.fire({ label: value });\n\t\t}\n\t}\n\n\tget tooltip(): string {\n\t\treturn this._tooltip || '';\n\t}\n\n\tset tooltip(value: string) {\n\t\tthis._setTooltip(value);\n\t}\n\n\tprotected _setTooltip(value: string): void {\n\t\tif (this._tooltip !== value) {\n\t\t\tthis._tooltip = value;\n\t\t\tthis._onDidChange.fire({ tooltip: value });\n\t\t}\n\t}\n\n\tget class(): string | undefined {\n\t\treturn this._cssClass;\n\t}\n\n\tset class(value: string | undefined) {\n\t\tthis._setClass(value);\n\t}\n\n\tprotected _setClass(value: string | undefined): void {\n\t\tif (this._cssClass !== value) {\n\t\t\tthis._cssClass = value;\n\t\t\tthis._onDidChange.fire({ class: value });\n\t\t}\n\t}\n\n\tget enabled(): boolean {\n\t\treturn this._enabled;\n\t}\n\n\tset enabled(value: boolean) {\n\t\tthis._setEnabled(value);\n\t}\n\n\tprotected _setEnabled(value: boolean): void {\n\t\tif (this._enabled !== value) {\n\t\t\tthis._enabled = value;\n\t\t\tthis._onDidChange.fire({ enabled: value });\n\t\t}\n\t}\n\n\tget checked(): boolean | undefined {\n\t\treturn this._checked;\n\t}\n\n\tset checked(value: boolean | undefined) {\n\t\tthis._setChecked(value);\n\t}\n\n\tprotected _setChecked(value: boolean | undefined): void {\n\t\tif (this._checked !== value) {\n\t\t\tthis._checked = value;\n\t\t\tthis._onDidChange.fire({ checked: value });\n\t\t}\n\t}\n\n\tasync run(event?: unknown, data?: ITelemetryData): Promise<void> {\n\t\tif (this._actionCallback) {\n\t\t\tawait this._actionCallback(event);\n\t\t}\n\t}\n}\n\nexport interface IRunEvent {\n\treadonly action: IAction;\n\treadonly error?: Error;\n}\n\nexport class ActionRunner extends Disposable implements IActionRunner {\n\n\tprivate readonly _onWillRun = this._register(new Emitter<IRunEvent>());\n\tget onWillRun() { return this._onWillRun.event; }\n\n\tprivate readonly _onDidRun = this._register(new Emitter<IRunEvent>());\n\tget onDidRun() { return this._onDidRun.event; }\n\n\tasync run(action: IAction, context?: unknown): Promise<void> {\n\t\tif (!action.enabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._onWillRun.fire({ action });\n\n\t\tlet error: Error | undefined = undefined;\n\t\ttry {\n\t\t\tawait this.runAction(action, context);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\n\t\tthis._onDidRun.fire({ action, error });\n\t}\n\n\tprotected async runAction(action: IAction, context?: unknown): Promise<void> {\n\t\tawait action.run(context);\n\t}\n}\n\nexport class Separator implements IAction {\n\n\t/**\n\t * Joins all non-empty lists of actions with separators.\n\t */\n\tpublic static join(...actionLists: readonly IAction[][]) {\n\t\tlet out: IAction[] = [];\n\t\tfor (const list of actionLists) {\n\t\t\tif (!list.length) {\n\t\t\t\t// skip\n\t\t\t} else if (out.length) {\n\t\t\t\tout = [...out, new Separator(), ...list];\n\t\t\t} else {\n\t\t\t\tout = list;\n\t\t\t}\n\t\t}\n\n\t\treturn out;\n\t}\n\n\tstatic readonly ID = 'vs.actions.separator';\n\n\treadonly id: string = Separator.ID;\n\n\treadonly label: string = '';\n\treadonly tooltip: string = '';\n\treadonly class: string = 'separator';\n\treadonly enabled: boolean = false;\n\treadonly checked: boolean = false;\n\tasync run() { }\n}\n\nexport class SubmenuAction implements IAction {\n\n\treadonly id: string;\n\treadonly label: string;\n\treadonly class: string | undefined;\n\treadonly tooltip: string = '';\n\treadonly enabled: boolean = true;\n\treadonly checked: undefined = undefined;\n\n\tprivate readonly _actions: readonly IAction[];\n\tget actions(): readonly IAction[] { return this._actions; }\n\n\tconstructor(id: string, label: string, actions: readonly IAction[], cssClass?: string) {\n\t\tthis.id = id;\n\t\tthis.label = label;\n\t\tthis.class = cssClass;\n\t\tthis._actions = actions;\n\t}\n\n\tasync run(): Promise<void> { }\n}\n\nexport class EmptySubmenuAction extends Action {\n\n\tstatic readonly ID = 'vs.actions.empty';\n\n\tconstructor() {\n\t\tsuper(EmptySubmenuAction.ID, nls.localize('submenu.empty', '(empty)'), undefined, false);\n\t}\n}\n\nexport function toAction(props: { id: string; label: string; tooltip?: string; enabled?: boolean; checked?: boolean; class?: string; run: Function }): IAction {\n\treturn {\n\t\tid: props.id,\n\t\tlabel: props.label,\n\t\ttooltip: props.tooltip ?? props.label,\n\t\tclass: props.class,\n\t\tenabled: props.enabled ?? true,\n\t\tchecked: props.checked,\n\t\trun: async (...args: unknown[]) => props.run(...args),\n\t};\n}\n"]}
@@ -113,13 +113,13 @@ export function raceCancellationError(promise, token) {
113
113
  */
114
114
  export class Throttler {
115
115
  constructor() {
116
- this.isDisposed = false;
117
116
  this.activePromise = null;
118
117
  this.queuedPromise = null;
119
118
  this.queuedPromiseFactory = null;
119
+ this.cancellationTokenSource = new CancellationTokenSource();
120
120
  }
121
121
  queue(promiseFactory) {
122
- if (this.isDisposed) {
122
+ if (this.cancellationTokenSource.token.isCancellationRequested) {
123
123
  return Promise.reject(new Error('Throttler is disposed'));
124
124
  }
125
125
  if (this.activePromise) {
@@ -127,7 +127,7 @@ export class Throttler {
127
127
  if (!this.queuedPromise) {
128
128
  const onComplete = () => {
129
129
  this.queuedPromise = null;
130
- if (this.isDisposed) {
130
+ if (this.cancellationTokenSource.token.isCancellationRequested) {
131
131
  return;
132
132
  }
133
133
  const result = this.queue(this.queuedPromiseFactory);
@@ -142,7 +142,7 @@ export class Throttler {
142
142
  this.queuedPromise.then(resolve, reject);
143
143
  });
144
144
  }
145
- this.activePromise = promiseFactory();
145
+ this.activePromise = promiseFactory(this.cancellationTokenSource.token);
146
146
  return new Promise((resolve, reject) => {
147
147
  this.activePromise.then((result) => {
148
148
  this.activePromise = null;
@@ -154,7 +154,7 @@ export class Throttler {
154
154
  });
155
155
  }
156
156
  dispose() {
157
- this.isDisposed = true;
157
+ this.cancellationTokenSource.cancel();
158
158
  }
159
159
  }
160
160
  const timeoutDeferred = (timeout, fn) => {