@codingame/monaco-vscode-debug-service-override 4.5.1 → 5.0.0

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 (43) hide show
  1. package/package.json +2 -2
  2. package/vscode/src/vs/platform/debug/common/extensionHostDebugIpc.js +2 -2
  3. package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +140 -177
  4. package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +260 -531
  5. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +34 -52
  6. package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +44 -71
  7. package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +116 -120
  8. package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +8 -11
  9. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +81 -140
  10. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +73 -76
  11. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +30 -30
  12. package/vscode/src/vs/workbench/contrib/debug/browser/debugMemory.js +1 -1
  13. package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +17 -49
  14. package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +143 -135
  15. package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +220 -177
  16. package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +9 -17
  17. package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +70 -111
  18. package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +84 -65
  19. package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +85 -57
  20. package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +50 -75
  21. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +13 -29
  22. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +22 -51
  23. package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +52 -78
  24. package/vscode/src/vs/workbench/contrib/debug/browser/media/debug.contribution.css.js +1 -1
  25. package/vscode/src/vs/workbench/contrib/debug/browser/media/debugViewlet.css.js +1 -1
  26. package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +60 -76
  27. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +29 -54
  28. package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +4 -1
  29. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +42 -55
  30. package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +17 -16
  31. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +84 -110
  32. package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +50 -88
  33. package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +60 -60
  34. package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.js +14 -28
  35. package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.js +12 -15
  36. package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.js +71 -146
  37. package/vscode/src/vs/workbench/contrib/debug/common/debugStorage.js +1 -0
  38. package/vscode/src/vs/workbench/contrib/debug/common/debugger.js +92 -111
  39. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableCommands.js +5 -12
  40. package/vscode/src/vs/workbench/services/configurationResolver/browser/baseConfigurationResolverService.js +42 -22
  41. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +0 -1042
  42. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +0 -116
  43. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +0 -87
@@ -26,7 +26,7 @@ import { InjectedTextCursorStops } from 'vscode/vscode/vs/editor/common/model';
26
26
  import { ILanguageFeatureDebounceService } from 'vscode/vscode/vs/editor/common/services/languageFeatureDebounce';
27
27
  import { ILanguageFeaturesService } from 'vscode/vscode/vs/editor/common/services/languageFeatures';
28
28
  import { IModelService } from 'vscode/vscode/vs/editor/common/services/model';
29
- import { HoverController } from 'vscode/vscode/vs/editor/contrib/hover/browser/hover';
29
+ import { HoverController } from 'vscode/vscode/vs/editor/contrib/hover/browser/hoverController';
30
30
  import { localizeWithPath } from 'vscode/vscode/vs/nls';
31
31
  import { CommandsRegistry } from 'vscode/vscode/vs/platform/commands/common/commands';
32
32
  import { ICommandService } from 'vscode/vscode/vs/platform/commands/common/commands.service';
@@ -52,6 +52,7 @@ import { IDebugService } from 'vscode/vscode/vs/workbench/contrib/debug/common/d
52
52
  import { Expression } from 'vscode/vscode/vs/workbench/contrib/debug/common/debugModel';
53
53
  import { IHostService } from 'vscode/vscode/vs/workbench/services/host/browser/host.service';
54
54
 
55
+ const _moduleId = "vs/workbench/contrib/debug/browser/debugEditorContribution";
55
56
  const MAX_NUM_INLINE_VALUES = 100;
56
57
  const MAX_INLINE_DECORATOR_LENGTH = 150;
57
58
  const MAX_TOKENIZATION_LINE_LEN = 500;
@@ -61,21 +62,13 @@ registerColor('editor.inlineValuesForeground', {
61
62
  light: '#00000080',
62
63
  hcDark: '#ffffff80',
63
64
  hcLight: '#00000080'
64
- }, ( localizeWithPath(
65
- 'vs/workbench/contrib/debug/browser/debugEditorContribution',
66
- 'editor.inlineValuesForeground',
67
- "Color for the debug inline value text."
68
- )));
65
+ }, ( localizeWithPath(_moduleId, 0, "Color for the debug inline value text.")));
69
66
  registerColor('editor.inlineValuesBackground', {
70
67
  dark: '#ffc80033',
71
68
  light: '#ffc80033',
72
69
  hcDark: '#ffc80033',
73
70
  hcLight: '#ffc80033'
74
- }, ( localizeWithPath(
75
- 'vs/workbench/contrib/debug/browser/debugEditorContribution',
76
- 'editor.inlineValuesBackground',
77
- "Color for the debug inline value background."
78
- )));
71
+ }, ( localizeWithPath(_moduleId, 1, "Color for the debug inline value background.")));
79
72
  class InlineSegment {
80
73
  constructor(column, text) {
81
74
  this.column = column;
@@ -127,20 +120,20 @@ function replaceWsWithNoBreakWs(str) {
127
120
  return str.replace(/[ \t]/g, noBreakWhitespace);
128
121
  }
129
122
  function createInlineValueDecorationsInsideRange(expressions, ranges, model, wordToLineNumbersMap) {
130
- const nameValueMap = ( new Map());
123
+ const nameValueMap = ( (new Map()));
131
124
  for (const expr of expressions) {
132
125
  nameValueMap.set(expr.name, expr.value);
133
126
  if (nameValueMap.size >= MAX_NUM_INLINE_VALUES) {
134
127
  break;
135
128
  }
136
129
  }
137
- const lineToNamesMap = ( new Map());
130
+ const lineToNamesMap = ( (new Map()));
138
131
  nameValueMap.forEach((_value, name) => {
139
132
  const lineNumbers = wordToLineNumbersMap.get(name);
140
133
  if (lineNumbers) {
141
134
  for (const lineNumber of lineNumbers) {
142
- if (( ranges.some(r => lineNumber >= r.startLineNumber && lineNumber <= r.endLineNumber))) {
143
- if (!( lineToNamesMap.has(lineNumber))) {
135
+ if (( (ranges.some(r => lineNumber >= r.startLineNumber && lineNumber <= r.endLineNumber)))) {
136
+ if (!( (lineToNamesMap.has(lineNumber)))) {
144
137
  lineToNamesMap.set(lineNumber, []);
145
138
  }
146
139
  if (lineToNamesMap.get(lineNumber).indexOf(name) === -1) {
@@ -152,10 +145,10 @@ function createInlineValueDecorationsInsideRange(expressions, ranges, model, wor
152
145
  });
153
146
  const decorations = [];
154
147
  lineToNamesMap.forEach((names, line) => {
155
- const contentText = ( names.sort((first, second) => {
148
+ const contentText = ( (names.sort((first, second) => {
156
149
  const content = model.getLineContent(line);
157
150
  return content.indexOf(first) - content.indexOf(second);
158
- }).map(name => `${name} = ${nameValueMap.get(name)}`)).join(', ');
151
+ }).map(name => `${name} = ${nameValueMap.get(name)}`))).join(', ');
159
152
  decorations.push(...createInlineValueDecoration(line, contentText));
160
153
  });
161
154
  return decorations;
@@ -178,7 +171,7 @@ function getWordToLineNumbersMap(model, lineNumber, result) {
178
171
  const wordMatch = DEFAULT_WORD_REGEXP.exec(tokenStr);
179
172
  if (wordMatch) {
180
173
  const word = wordMatch[0];
181
- if (!( result.has(word))) {
174
+ if (!( (result.has(word)))) {
182
175
  result.set(word, []);
183
176
  }
184
177
  result.get(word).push(lineNumber);
@@ -199,11 +192,11 @@ let DebugEditorContribution = class DebugEditorContribution {
199
192
  this.hoverPosition = null;
200
193
  this.mouseDown = false;
201
194
  this.gutterIsHovered = false;
202
- this.altListener = ( new MutableDisposable());
195
+ this.altListener = ( (new MutableDisposable()));
203
196
  this.altPressed = false;
204
197
  this.oldDecorations = this.editor.createDecorationsCollection();
205
- this.displayedStore = ( new DisposableStore());
206
- this.defaultHoverLockout = ( new MutableDisposable());
198
+ this.displayedStore = ( (new DisposableStore()));
199
+ this.defaultHoverLockout = ( (new MutableDisposable()));
207
200
  this.debounceInfo = featureDebounceService.for(languageFeaturesService.inlineValuesProvider, 'InlineValues', { min: DEAFULT_INLINE_DEBOUNCE_DELAY });
208
201
  this.hoverWidget = this.instantiationService.createInstance(DebugHoverWidget, this.editor);
209
202
  this.toDispose = [this.defaultHoverLockout, this.altListener, this.displayedStore];
@@ -244,7 +237,7 @@ let DebugEditorContribution = class DebugEditorContribution {
244
237
  this.toDispose.push(this.editor.onDidScrollChange(() => {
245
238
  this.hideHoverWidget();
246
239
  const model = this.editor.getModel();
247
- if (model && ( this.languageFeaturesService.inlineValuesProvider.has(model))) {
240
+ if (model && ( (this.languageFeaturesService.inlineValuesProvider.has(model)))) {
248
241
  this.updateInlineValuesScheduler.schedule();
249
242
  }
250
243
  }));
@@ -283,7 +276,7 @@ let DebugEditorContribution = class DebugEditorContribution {
283
276
  }
284
277
  const ownerDocument = this.editor.getContainerDomNode().ownerDocument;
285
278
  this.altListener.value = addDisposableListener(ownerDocument, 'keydown', keydownEvent => {
286
- const standardKeyboardEvent = ( new StandardKeyboardEvent(keydownEvent));
279
+ const standardKeyboardEvent = ( (new StandardKeyboardEvent(keydownEvent)));
287
280
  if (standardKeyboardEvent.keyCode === 6 ) {
288
281
  this.altPressed = true;
289
282
  const debugHoverWasVisible = this.hoverWidget.isVisible();
@@ -292,11 +285,11 @@ let DebugEditorContribution = class DebugEditorContribution {
292
285
  if (debugHoverWasVisible && this.hoverPosition) {
293
286
  this.showEditorHover(this.hoverPosition, false);
294
287
  }
295
- const onKeyUp = ( new DomEmitter(ownerDocument, 'keyup'));
288
+ const onKeyUp = ( (new DomEmitter(ownerDocument, 'keyup')));
296
289
  const listener = Event.any(this.hostService.onDidChangeFocus, onKeyUp.event)(keyupEvent => {
297
290
  let standardKeyboardEvent = undefined;
298
291
  if (isKeyboardEvent(keyupEvent)) {
299
- standardKeyboardEvent = ( new StandardKeyboardEvent(keyupEvent));
292
+ standardKeyboardEvent = ( (new StandardKeyboardEvent(keyupEvent)));
300
293
  }
301
294
  if (!standardKeyboardEvent || standardKeyboardEvent.keyCode === 6 ) {
302
295
  this.altPressed = false;
@@ -339,7 +332,7 @@ let DebugEditorContribution = class DebugEditorContribution {
339
332
  }
340
333
  showEditorHover(position, focus) {
341
334
  const hoverController = this.editor.getContribution(HoverController.ID);
342
- const range = ( new Range(position.lineNumber, position.column, position.lineNumber, position.column));
335
+ const range = ( (new Range(position.lineNumber, position.column, position.lineNumber, position.column)));
343
336
  this.defaultHoverLockout.clear();
344
337
  hoverController?.showContentHover(range, 1 , 0 , focus);
345
338
  }
@@ -362,11 +355,11 @@ let DebugEditorContribution = class DebugEditorContribution {
362
355
  return baseDelay * delayFactor;
363
356
  }
364
357
  get showHoverScheduler() {
365
- const scheduler = ( new RunOnceScheduler(() => {
358
+ const scheduler = ( (new RunOnceScheduler(() => {
366
359
  if (this.hoverPosition && !this.altPressed) {
367
360
  this.showHover(this.hoverPosition, false);
368
361
  }
369
- }, this.hoverDelay));
362
+ }, this.hoverDelay)));
370
363
  this.toDispose.push(scheduler);
371
364
  return scheduler;
372
365
  }
@@ -506,12 +499,12 @@ let DebugEditorContribution = class DebugEditorContribution {
506
499
  setProperty(model.getValue(), ['launch'], { 'configurations': [] }, { tabSize, insertSpaces, eol })[0];
507
500
  const startPosition = model.getPositionAt(edit.offset);
508
501
  const lineNumber = startPosition.lineNumber;
509
- const range = ( new Range(
502
+ const range = ( (new Range(
510
503
  lineNumber,
511
504
  startPosition.column,
512
505
  lineNumber,
513
506
  model.getLineMaxColumn(lineNumber)
514
- ));
507
+ )));
515
508
  model.pushEditOperations(null, [EditOperation.replace(range, edit.content)], () => null);
516
509
  getConfigurationPosition();
517
510
  }
@@ -531,24 +524,28 @@ let DebugEditorContribution = class DebugEditorContribution {
531
524
  await this.commandService.executeCommand('editor.action.triggerSuggest');
532
525
  }
533
526
  get removeInlineValuesScheduler() {
534
- return ( new RunOnceScheduler(() => {
535
- this.displayedStore.clear();
536
- }, 100));
527
+ return (
528
+ (new RunOnceScheduler(() => {
529
+ this.displayedStore.clear();
530
+ }, 100))
531
+ );
537
532
  }
538
533
  get updateInlineValuesScheduler() {
539
534
  const model = this.editor.getModel();
540
- return ( new RunOnceScheduler(
541
- async () => await this.updateInlineValueDecorations(this.debugService.getViewModel().focusedStackFrame),
542
- model ? this.debounceInfo.get(model) : DEAFULT_INLINE_DEBOUNCE_DELAY
543
- ));
535
+ return (
536
+ (new RunOnceScheduler(
537
+ async () => await this.updateInlineValueDecorations(this.debugService.getViewModel().focusedStackFrame),
538
+ model ? this.debounceInfo.get(model) : DEAFULT_INLINE_DEBOUNCE_DELAY
539
+ ))
540
+ );
544
541
  }
545
542
  async updateInlineValueDecorations(stackFrame) {
546
543
  const var_value_format = '{0} = {1}';
547
544
  const separator = ', ';
548
545
  const model = this.editor.getModel();
549
546
  const inlineValuesSetting = this.configurationService.getValue('debug').inlineValues;
550
- const inlineValuesTurnedOn = inlineValuesSetting === true || inlineValuesSetting === 'on' || (inlineValuesSetting === 'auto' && model && ( this.languageFeaturesService.inlineValuesProvider.has(model)));
551
- if (!inlineValuesTurnedOn || !model || !stackFrame || ( model.uri.toString()) !== ( stackFrame.source.uri.toString())) {
547
+ const inlineValuesTurnedOn = inlineValuesSetting === true || inlineValuesSetting === 'on' || (inlineValuesSetting === 'auto' && model && ( (this.languageFeaturesService.inlineValuesProvider.has(model))));
548
+ if (!inlineValuesTurnedOn || !model || !stackFrame || ( (model.uri.toString())) !== ( (stackFrame.source.uri.toString()))) {
552
549
  if (!this.removeInlineValuesScheduler.isScheduled()) {
553
550
  this.removeInlineValuesScheduler.schedule();
554
551
  }
@@ -558,9 +555,9 @@ let DebugEditorContribution = class DebugEditorContribution {
558
555
  this.displayedStore.clear();
559
556
  const viewRanges = this.editor.getVisibleRangesPlusViewportAboveBelow();
560
557
  let allDecorations;
561
- const cts = ( new CancellationTokenSource());
558
+ const cts = ( (new CancellationTokenSource()));
562
559
  this.displayedStore.add(toDisposable(() => cts.dispose(true)));
563
- if (( this.languageFeaturesService.inlineValuesProvider.has(model))) {
560
+ if (( (this.languageFeaturesService.inlineValuesProvider.has(model)))) {
564
561
  const findVariable = async (_key, caseSensitiveLookup) => {
565
562
  const scopes = await stackFrame.getMostSpecificScopes(stackFrame.range);
566
563
  const key = caseSensitiveLookup ? _key : _key.toLowerCase();
@@ -575,17 +572,17 @@ let DebugEditorContribution = class DebugEditorContribution {
575
572
  };
576
573
  const ctx = {
577
574
  frameId: stackFrame.frameId,
578
- stoppedLocation: ( new Range(
575
+ stoppedLocation: ( (new Range(
579
576
  stackFrame.range.startLineNumber,
580
577
  stackFrame.range.startColumn + 1,
581
578
  stackFrame.range.endLineNumber,
582
579
  stackFrame.range.endColumn + 1
583
- ))
580
+ )))
584
581
  };
585
582
  const providers = this.languageFeaturesService.inlineValuesProvider.ordered(model).reverse();
586
583
  allDecorations = [];
587
- const lineDecorations = ( new Map());
588
- const promises = providers.flatMap(provider => ( viewRanges.map(
584
+ const lineDecorations = ( (new Map()));
585
+ const promises = providers.flatMap(provider => ( (viewRanges.map(
589
586
  range => Promise.resolve(provider.provideInlineValues(model, range, ctx, cts.token)).then(async (result) => {
590
587
  if (result) {
591
588
  for (const iv of result) {
@@ -613,7 +610,7 @@ let DebugEditorContribution = class DebugEditorContribution {
613
610
  expr = lineContent.substring(iv.range.startColumn - 1, iv.range.endColumn - 1);
614
611
  }
615
612
  if (expr) {
616
- const expression = ( new Expression(expr));
613
+ const expression = ( (new Expression(expr)));
617
614
  await expression.evaluate(stackFrame.thread.session, stackFrame, 'watch', true);
618
615
  if (expression.available) {
619
616
  text = format(var_value_format, expr, expression.value);
@@ -629,8 +626,8 @@ let DebugEditorContribution = class DebugEditorContribution {
629
626
  lineSegments = [];
630
627
  lineDecorations.set(line, lineSegments);
631
628
  }
632
- if (!( lineSegments.some(iv => iv.text === text))) {
633
- lineSegments.push(( new InlineSegment(iv.range.startColumn, text)));
629
+ if (!( (lineSegments.some(iv => iv.text === text)))) {
630
+ lineSegments.push(( (new InlineSegment(iv.range.startColumn, text))));
634
631
  }
635
632
  }
636
633
  }
@@ -638,33 +635,33 @@ let DebugEditorContribution = class DebugEditorContribution {
638
635
  }, err => {
639
636
  onUnexpectedExternalError(err);
640
637
  })
641
- )));
638
+ ))));
642
639
  const startTime = Date.now();
643
640
  await Promise.all(promises);
644
641
  this.updateInlineValuesScheduler.delay = this.debounceInfo.update(model, Date.now() - startTime);
645
642
  lineDecorations.forEach((segments, line) => {
646
643
  if (segments.length > 0) {
647
644
  segments = segments.sort((a, b) => a.column - b.column);
648
- const text = ( segments.map(s => s.text)).join(separator);
645
+ const text = ( (segments.map(s => s.text))).join(separator);
649
646
  allDecorations.push(...createInlineValueDecoration(line, text));
650
647
  }
651
648
  });
652
649
  }
653
650
  else {
654
651
  const scopes = await stackFrame.getMostSpecificScopes(stackFrame.range);
655
- const decorationsPerScope = await Promise.all(( scopes.map(async (scope) => {
652
+ const decorationsPerScope = await Promise.all(( (scopes.map(async (scope) => {
656
653
  const variables = await scope.getChildren();
657
- let scopeRange = ( new Range(0, 0, stackFrame.range.startLineNumber, stackFrame.range.startColumn));
654
+ let scopeRange = ( (new Range(0, 0, stackFrame.range.startLineNumber, stackFrame.range.startColumn)));
658
655
  if (scope.range) {
659
656
  scopeRange = scopeRange.setStartPosition(scope.range.startLineNumber, scope.range.startColumn);
660
657
  }
661
- const ownRanges = ( viewRanges.map(r => r.intersectRanges(scopeRange))).filter(isDefined);
662
- this._wordToLineNumbersMap ??= ( new WordsToLineNumbersCache(model));
658
+ const ownRanges = ( (viewRanges.map(r => r.intersectRanges(scopeRange)))).filter(isDefined);
659
+ this._wordToLineNumbersMap ??= ( (new WordsToLineNumbersCache(model)));
663
660
  for (const range of ownRanges) {
664
661
  this._wordToLineNumbersMap.ensureRangePopulated(range);
665
662
  }
666
663
  return createInlineValueDecorationsInsideRange(variables, ownRanges, model, this._wordToLineNumbersMap.value);
667
- })));
664
+ }))));
668
665
  allDecorations = distinct(decorationsPerScope.flat(),
669
666
  decoration => `${decoration.range.startLineNumber}:${decoration?.options.after?.content}`);
670
667
  }
@@ -683,31 +680,31 @@ let DebugEditorContribution = class DebugEditorContribution {
683
680
  this.toDispose = dispose(this.toDispose);
684
681
  }
685
682
  };
686
- DebugEditorContribution.__decorator = ( __decorate([
683
+ DebugEditorContribution.__decorator = ( (__decorate([
687
684
  memoize
688
- ], DebugEditorContribution.prototype, "showHoverScheduler", null));
689
- DebugEditorContribution.__decorator = ( __decorate([
685
+ ], DebugEditorContribution.prototype, "showHoverScheduler", null)));
686
+ DebugEditorContribution.__decorator = ( (__decorate([
690
687
  memoize
691
- ], DebugEditorContribution.prototype, "removeInlineValuesScheduler", null));
692
- DebugEditorContribution.__decorator = ( __decorate([
688
+ ], DebugEditorContribution.prototype, "removeInlineValuesScheduler", null)));
689
+ DebugEditorContribution.__decorator = ( (__decorate([
693
690
  memoize
694
- ], DebugEditorContribution.prototype, "updateInlineValuesScheduler", null));
695
- DebugEditorContribution = ( __decorate([
696
- ( __param(1, IDebugService)),
697
- ( __param(2, IInstantiationService)),
698
- ( __param(3, ICommandService)),
699
- ( __param(4, IConfigurationService)),
700
- ( __param(5, IHostService)),
701
- ( __param(6, IUriIdentityService)),
702
- ( __param(7, IContextKeyService)),
703
- ( __param(8, ILanguageFeaturesService)),
704
- ( __param(9, ILanguageFeatureDebounceService))
705
- ], DebugEditorContribution));
691
+ ], DebugEditorContribution.prototype, "updateInlineValuesScheduler", null)));
692
+ DebugEditorContribution = ( (__decorate([
693
+ ( (__param(1, IDebugService))),
694
+ ( (__param(2, IInstantiationService))),
695
+ ( (__param(3, ICommandService))),
696
+ ( (__param(4, IConfigurationService))),
697
+ ( (__param(5, IHostService))),
698
+ ( (__param(6, IUriIdentityService))),
699
+ ( (__param(7, IContextKeyService))),
700
+ ( (__param(8, ILanguageFeaturesService))),
701
+ ( (__param(9, ILanguageFeatureDebounceService)))
702
+ ], DebugEditorContribution)));
706
703
  class WordsToLineNumbersCache {
707
704
  constructor(model) {
708
705
  this.model = model;
709
- this.value = ( new Map());
710
- this.intervals = ( new Uint8Array(Math.ceil(model.getLineCount() / 8)));
706
+ this.value = ( (new Map()));
707
+ this.intervals = ( (new Uint8Array(Math.ceil(model.getLineCount() / 8))));
711
708
  }
712
709
  ensureRangePopulated(range) {
713
710
  for (let lineNumber = range.startLineNumber; lineNumber <= range.endLineNumber; lineNumber++) {
@@ -733,9 +730,9 @@ CommandsRegistry.registerCommand('_executeInlineValueProvider', async (accessor,
733
730
  const range = Range.lift(iRange);
734
731
  const { inlineValuesProvider } = accessor.get(ILanguageFeaturesService);
735
732
  const providers = inlineValuesProvider.ordered(model);
736
- const providerResults = await Promise.all(( providers.map(
733
+ const providerResults = await Promise.all(( (providers.map(
737
734
  provider => provider.provideInlineValues(model, range, context, CancellationToken.None)
738
- )));
735
+ ))));
739
736
  return providerResults.flat().filter(isDefined);
740
737
  });
741
738
 
@@ -14,6 +14,7 @@ import { MenuId } from 'vscode/vscode/vs/platform/actions/common/actions';
14
14
  import { IMenuService } from 'vscode/vscode/vs/platform/actions/common/actions.service';
15
15
  import { IContextKeyService } from 'vscode/vscode/vs/platform/contextkey/common/contextkey.service';
16
16
  import { IContextMenuService } from 'vscode/vscode/vs/platform/contextview/browser/contextView.service';
17
+ import { IHoverService } from 'vscode/vscode/vs/platform/hover/browser/hover.service';
17
18
  import { IInstantiationService } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
18
19
  import { WorkbenchAsyncDataTree } from 'vscode/vscode/vs/platform/list/browser/listService';
19
20
  import { ILogService } from 'vscode/vscode/vs/platform/log/common/log.service';
@@ -36,6 +37,7 @@ import { Variable, Expression, VisualizedExpression } from 'vscode/vscode/vs/wor
36
37
  import { getEvaluatableExpressionAtPosition } from 'vscode/vscode/vs/workbench/contrib/debug/common/debugUtils';
37
38
 
38
39
  var DebugHoverWidget_1;
40
+ const _moduleId = "vs/workbench/contrib/debug/browser/debugHover";
39
41
  const $ = $$1;
40
42
  async function doFindExpression(container, namesToFind) {
41
43
  if (!container) {
@@ -56,7 +58,7 @@ async function doFindExpression(container, namesToFind) {
56
58
  async function findExpressionInStackFrame(stackFrame, namesToFind) {
57
59
  const scopes = await stackFrame.getScopes();
58
60
  const nonExpensive = scopes.filter(s => !s.expensive);
59
- const expressions = coalesce(await Promise.all(( nonExpensive.map(scope => doFindExpression(scope, namesToFind)))));
61
+ const expressions = coalesce(await Promise.all(( (nonExpensive.map(scope => doFindExpression(scope, namesToFind))))));
60
62
  return expressions.length > 0 && expressions.every(e => e.value === expressions[0].value) ? expressions[0] : undefined;
61
63
  }
62
64
  let DebugHoverWidget = class DebugHoverWidget {
@@ -65,13 +67,14 @@ let DebugHoverWidget = class DebugHoverWidget {
65
67
  get isShowingComplexValue() {
66
68
  return this.complexValueContainer?.hidden === false;
67
69
  }
68
- constructor(editor, debugService, instantiationService, menuService, contextKeyService, contextMenuService) {
70
+ constructor(editor, debugService, instantiationService, menuService, contextKeyService, contextMenuService, hoverService) {
69
71
  this.editor = editor;
70
72
  this.debugService = debugService;
71
73
  this.instantiationService = instantiationService;
72
74
  this.menuService = menuService;
73
75
  this.contextKeyService = contextKeyService;
74
76
  this.contextMenuService = contextMenuService;
77
+ this.hoverService = hoverService;
75
78
  this.allowEditorOverflow = true;
76
79
  this.highlightDecorations = this.editor.createDecorationsCollection();
77
80
  this.isUpdatingTree = false;
@@ -89,18 +92,18 @@ let DebugHoverWidget = class DebugHoverWidget {
89
92
  this.treeContainer.setAttribute('role', 'tree');
90
93
  const tip = append(this.complexValueContainer, $('.tip'));
91
94
  tip.textContent = ( localizeWithPath(
92
- 'vs/workbench/contrib/debug/browser/debugHover',
93
- { key: 'quickTip', comment: ['"switch to editor language hover" means to show the programming language hover widget instead of the debug hover'] },
95
+ _moduleId,
96
+ 0,
94
97
  'Hold {0} key to switch to editor language hover',
95
98
  isMacintosh ? 'Option' : 'Alt'
96
99
  ));
97
100
  const dataSource = this.instantiationService.createInstance(DebugHoverDataSource);
98
101
  const linkeDetector = this.instantiationService.createInstance(LinkDetector);
99
- this.tree = this.instantiationService.createInstance(WorkbenchAsyncDataTree, 'DebugHover', this.treeContainer, ( new DebugHoverDelegate()), [
102
+ this.tree = this.instantiationService.createInstance(WorkbenchAsyncDataTree, 'DebugHover', this.treeContainer, ( (new DebugHoverDelegate())), [
100
103
  this.instantiationService.createInstance(VariablesRenderer, linkeDetector),
101
104
  this.instantiationService.createInstance(VisualizedVariableRenderer, linkeDetector),
102
105
  ], dataSource, {
103
- accessibilityProvider: ( new DebugHoverAccessibilityProvider()),
106
+ accessibilityProvider: ( (new DebugHoverAccessibilityProvider())),
104
107
  mouseSupport: false,
105
108
  horizontalScrolling: true,
106
109
  useShadows: false,
@@ -113,7 +116,7 @@ let DebugHoverWidget = class DebugHoverWidget {
113
116
  this.valueContainer = $('.value');
114
117
  this.valueContainer.tabIndex = 0;
115
118
  this.valueContainer.setAttribute('role', 'tooltip');
116
- this.scrollbar = ( new DomScrollableElement(this.valueContainer, { horizontal: 2 }));
119
+ this.scrollbar = ( (new DomScrollableElement(this.valueContainer, { horizontal: 2 })));
117
120
  this.domNode.appendChild(this.scrollbar.getDomNode());
118
121
  this.toDispose.push(this.scrollbar);
119
122
  this.editor.applyFontInfo(this.domNode);
@@ -176,7 +179,7 @@ let DebugHoverWidget = class DebugHoverWidget {
176
179
  }
177
180
  async showAt(position, focus) {
178
181
  this.showCancellationSource?.cancel();
179
- const cancellationSource = this.showCancellationSource = ( new CancellationTokenSource());
182
+ const cancellationSource = this.showCancellationSource = ( (new CancellationTokenSource()));
180
183
  const session = this.debugService.getViewModel().focusedSession;
181
184
  if (!session || !this.editor.hasModel()) {
182
185
  this.hide();
@@ -225,7 +228,7 @@ let DebugHoverWidget = class DebugHoverWidget {
225
228
  renderExpressionValue(expression, this.valueContainer, {
226
229
  showChanged: false,
227
230
  colorize: true
228
- });
231
+ }, this.hoverService);
229
232
  this.valueContainer.title = '';
230
233
  this.editor.layoutContentWidget(this);
231
234
  this.scrollbar.scanDomNode();
@@ -312,25 +315,22 @@ let DebugHoverWidget = class DebugHoverWidget {
312
315
  this.toDispose = dispose(this.toDispose);
313
316
  }
314
317
  };
315
- DebugHoverWidget = DebugHoverWidget_1 = ( __decorate([
316
- ( __param(1, IDebugService)),
317
- ( __param(2, IInstantiationService)),
318
- ( __param(3, IMenuService)),
319
- ( __param(4, IContextKeyService)),
320
- ( __param(5, IContextMenuService))
321
- ], DebugHoverWidget));
318
+ DebugHoverWidget = DebugHoverWidget_1 = ( (__decorate([
319
+ ( (__param(1, IDebugService))),
320
+ ( (__param(2, IInstantiationService))),
321
+ ( (__param(3, IMenuService))),
322
+ ( (__param(4, IContextKeyService))),
323
+ ( (__param(5, IContextMenuService))),
324
+ ( (__param(6, IHoverService)))
325
+ ], DebugHoverWidget)));
322
326
  class DebugHoverAccessibilityProvider {
323
327
  getWidgetAriaLabel() {
324
- return ( localizeWithPath(
325
- 'vs/workbench/contrib/debug/browser/debugHover',
326
- 'treeAriaLabel',
327
- "Debug Hover"
328
- ));
328
+ return ( localizeWithPath(_moduleId, 1, "Debug Hover"));
329
329
  }
330
330
  getAriaLabel(element) {
331
331
  return ( localizeWithPath(
332
- 'vs/workbench/contrib/debug/browser/debugHover',
333
- { key: 'variableAriaLabel', comment: ['Do not translate placeholders. Placeholders are name and value of a variable.'] },
332
+ _moduleId,
333
+ 2,
334
334
  "{0}, value {1}, variables, debug",
335
335
  element.name,
336
336
  element.value
@@ -387,23 +387,23 @@ let DebugHoverComputer = class DebugHoverComputer {
387
387
  return;
388
388
  }
389
389
  if (session.capabilities.supportsEvaluateForHovers) {
390
- const expression = ( new Expression(this._currentExpression));
390
+ const expression = ( (new Expression(this._currentExpression)));
391
391
  await expression.evaluate(session, this.debugService.getViewModel().focusedStackFrame, 'hover');
392
392
  return expression;
393
393
  }
394
394
  else {
395
395
  const focusedStackFrame = this.debugService.getViewModel().focusedStackFrame;
396
396
  if (focusedStackFrame) {
397
- return await findExpressionInStackFrame(focusedStackFrame, coalesce(( this._currentExpression.split('.').map(word => word.trim()))));
397
+ return await findExpressionInStackFrame(focusedStackFrame, coalesce(( (this._currentExpression.split('.').map(word => word.trim())))));
398
398
  }
399
399
  }
400
400
  return undefined;
401
401
  }
402
402
  };
403
- DebugHoverComputer = ( __decorate([
404
- ( __param(1, IDebugService)),
405
- ( __param(2, ILanguageFeaturesService)),
406
- ( __param(3, ILogService))
407
- ], DebugHoverComputer));
403
+ DebugHoverComputer = ( (__decorate([
404
+ ( (__param(1, IDebugService))),
405
+ ( (__param(2, ILanguageFeaturesService))),
406
+ ( (__param(3, ILogService)))
407
+ ], DebugHoverComputer)));
408
408
 
409
409
  export { DebugHoverWidget, findExpressionInStackFrame };
@@ -194,7 +194,7 @@ class MemoryRegionView extends Disposable {
194
194
  }
195
195
  read(fromOffset, toOffset) {
196
196
  if (fromOffset < 0) {
197
- throw new RangeError(`Invalid fromOffset: ${fromOffset}`);
197
+ throw ( new RangeError(`Invalid fromOffset: ${fromOffset}`));
198
198
  }
199
199
  return this.parent.read(this.range.fromOffset + fromOffset, this.range.fromOffset + Math.min(toOffset, this.width));
200
200
  }