monaco-editor 0.55.0-dev-20251019 → 0.55.0-dev-20251021

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 (98) hide show
  1. package/dev/vs/basic-languages/monaco.contribution.js +18 -18
  2. package/dev/vs/{cssMode-Q1Lf-3sI.js → cssMode-Bwd5iTwO.js} +1 -1
  3. package/dev/vs/editor/editor.main.js +1 -1
  4. package/dev/vs/{editor.api-802iF3VW.js → editor.api-DtdJriTE.js} +104 -53
  5. package/dev/vs/{freemarker2-DBz8kSoY.js → freemarker2-vzq7IT1V.js} +1 -1
  6. package/dev/vs/{handlebars-Dn6mhN_R.js → handlebars-voSBoDYq.js} +1 -1
  7. package/dev/vs/{html-D431O42K.js → html-DgBvMxaw.js} +1 -1
  8. package/dev/vs/{htmlMode-DFM8DXNV.js → htmlMode-B73e0LQu.js} +1 -1
  9. package/dev/vs/{javascript-CXLQs4Fj.js → javascript-B456O1TJ.js} +1 -1
  10. package/dev/vs/{jsonMode-BoZClQyy.js → jsonMode-0j9Sufcy.js} +1 -1
  11. package/dev/vs/language/css/monaco.contribution.js +1 -1
  12. package/dev/vs/language/html/monaco.contribution.js +1 -1
  13. package/dev/vs/language/json/monaco.contribution.js +1 -1
  14. package/dev/vs/language/typescript/monaco.contribution.js +1 -1
  15. package/dev/vs/{liquid-BeJl_4KB.js → liquid-DtsObjyU.js} +1 -1
  16. package/dev/vs/{lspLanguageFeatures-7D3Okm4p.js → lspLanguageFeatures-BOGx43ac.js} +1 -1
  17. package/dev/vs/{mdx-DcGH0HYw.js → mdx-CpdAOlbp.js} +1 -1
  18. package/dev/vs/{monaco.contribution-9FgKzO6Y.js → monaco.contribution-96LxvCLa.js} +2 -2
  19. package/dev/vs/{monaco.contribution-Cn9EpORE.js → monaco.contribution-BNV_Bhhz.js} +2 -2
  20. package/dev/vs/{monaco.contribution-Jg8nMxDq.js → monaco.contribution-CLECD6oi.js} +2 -2
  21. package/dev/vs/{monaco.contribution-D2sTuDLD.js → monaco.contribution-DgD6w475.js} +2 -2
  22. package/dev/vs/nls.messages.cs.js +1 -1
  23. package/dev/vs/nls.messages.de.js +1 -1
  24. package/dev/vs/nls.messages.es.js +1 -1
  25. package/dev/vs/nls.messages.fr.js +1 -1
  26. package/dev/vs/nls.messages.it.js +1 -1
  27. package/dev/vs/nls.messages.ja.js +1 -1
  28. package/dev/vs/nls.messages.ko.js +1 -1
  29. package/dev/vs/nls.messages.pl.js +1 -1
  30. package/dev/vs/nls.messages.pt-br.js +1 -1
  31. package/dev/vs/nls.messages.ru.js +1 -1
  32. package/dev/vs/nls.messages.tr.js +1 -1
  33. package/dev/vs/nls.messages.zh-cn.js +1 -1
  34. package/dev/vs/nls.messages.zh-tw.js +1 -1
  35. package/dev/vs/{python-PUDP_Uaz.js → python-Bdcmm8So.js} +1 -1
  36. package/dev/vs/{razor-DPnf-zqt.js → razor-C2m7Vs0-.js} +1 -1
  37. package/dev/vs/{tsMode-C4zHvxDV.js → tsMode-qQDYDzQT.js} +1 -1
  38. package/dev/vs/{typescript-A2hDCSxV.js → typescript-BoBnM-0b.js} +1 -1
  39. package/dev/vs/{workers-BTQeXau-.js → workers-B1DA8fIt.js} +1 -1
  40. package/dev/vs/{xml-DZuYLO-A.js → xml-DmpITxBR.js} +1 -1
  41. package/dev/vs/{yaml-CTCtYDFA.js → yaml-Pd4qqIOC.js} +1 -1
  42. package/esm/vs/base/browser/ui/findinput/findInput.js +4 -5
  43. package/esm/vs/base/browser/ui/findinput/findInputToggles.js +3 -4
  44. package/esm/vs/base/browser/ui/findinput/replaceInput.js +2 -2
  45. package/esm/vs/base/browser/ui/toggle/toggle.js +9 -6
  46. package/esm/vs/base/common/actions.js +5 -0
  47. package/esm/vs/base/common/async.js +5 -5
  48. package/esm/vs/editor/browser/controller/editContext/native/nativeEditContext.js +20 -12
  49. package/esm/vs/editor/browser/services/hoverService/hoverWidget.js +15 -0
  50. package/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +6 -0
  51. package/esm/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +1 -0
  52. package/esm/vs/editor/contrib/find/browser/findOptionsWidget.js +4 -5
  53. package/esm/vs/editor/contrib/find/browser/findWidget.js +12 -12
  54. package/esm/vs/editor/contrib/hover/browser/glyphHoverWidget.js +23 -3
  55. package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +0 -1
  56. package/esm/vs/editor/contrib/rename/browser/renameWidget.js +1 -4
  57. package/min/vs/basic-languages/monaco.contribution.js +1 -1
  58. package/min/vs/{cssMode-D4NzqbQS.js → cssMode-CvaUVk1W.js} +1 -1
  59. package/min/vs/editor/editor.main.js +1 -1
  60. package/min/vs/{editor.api-Qm4MPvis.js → editor.api-DGkWFOQA.js} +145 -145
  61. package/min/vs/{freemarker2-B0JPdtFy.js → freemarker2-B_vQOikd.js} +1 -1
  62. package/min/vs/{handlebars-BT6GvC7i.js → handlebars-DqjIuZnJ.js} +1 -1
  63. package/min/vs/{html-gBDMmvQV.js → html-DAxAlcjQ.js} +1 -1
  64. package/min/vs/{htmlMode-NilE83Fe.js → htmlMode-C37mDTXf.js} +1 -1
  65. package/min/vs/{javascript-BLHmi43m.js → javascript-CmHtjIt-.js} +1 -1
  66. package/min/vs/{jsonMode-DLRr2_0Z.js → jsonMode-D1uvcOsy.js} +1 -1
  67. package/min/vs/language/css/monaco.contribution.js +1 -1
  68. package/min/vs/language/html/monaco.contribution.js +1 -1
  69. package/min/vs/language/json/monaco.contribution.js +1 -1
  70. package/min/vs/language/typescript/monaco.contribution.js +1 -1
  71. package/min/vs/{liquid-Dm5uaeWH.js → liquid-CQBeFlV7.js} +1 -1
  72. package/min/vs/{lspLanguageFeatures-CGripwyp.js → lspLanguageFeatures-DTAub2tJ.js} +1 -1
  73. package/min/vs/{mdx-CK01dX6F.js → mdx-BFnE9qyd.js} +1 -1
  74. package/min/vs/{monaco.contribution-CGOd8_rh.js → monaco.contribution-Ba-90VRW.js} +1 -1
  75. package/min/vs/{monaco.contribution-BTx9le88.js → monaco.contribution-D4gtmCUd.js} +1 -1
  76. package/min/vs/{monaco.contribution-r30Wl92q.js → monaco.contribution-DBV8hY3j.js} +1 -1
  77. package/min/vs/{monaco.contribution-CAud1ylG.js → monaco.contribution-bCyc25XC.js} +1 -1
  78. package/min/vs/nls.messages.cs.js +1 -1
  79. package/min/vs/nls.messages.de.js +1 -1
  80. package/min/vs/nls.messages.es.js +1 -1
  81. package/min/vs/nls.messages.fr.js +1 -1
  82. package/min/vs/nls.messages.it.js +1 -1
  83. package/min/vs/nls.messages.ja.js +1 -1
  84. package/min/vs/nls.messages.ko.js +1 -1
  85. package/min/vs/nls.messages.pl.js +1 -1
  86. package/min/vs/nls.messages.pt-br.js +1 -1
  87. package/min/vs/nls.messages.ru.js +1 -1
  88. package/min/vs/nls.messages.tr.js +1 -1
  89. package/min/vs/nls.messages.zh-cn.js +1 -1
  90. package/min/vs/nls.messages.zh-tw.js +1 -1
  91. package/min/vs/{python-Cwb03RGD.js → python-BX875IYK.js} +1 -1
  92. package/min/vs/{razor-B-kFuuSi.js → razor-BBB6Wn5s.js} +1 -1
  93. package/min/vs/{tsMode-B6EN8tpu.js → tsMode-DYyNPclY.js} +1 -1
  94. package/min/vs/{typescript-DSAwa49_.js → typescript-AvfgkAyn.js} +1 -1
  95. package/min/vs/{workers-CjCUpHZK.js → workers-DnTKLxL6.js} +1 -1
  96. package/min/vs/{xml-D5baDVnS.js → xml-BVhc_vbm.js} +1 -1
  97. package/min/vs/{yaml-WDKVYKIX.js → yaml-a9dM1cQx.js} +1 -1
  98. package/package.json +5 -5
@@ -54,6 +54,7 @@ let NativeEditContext = class NativeEditContext extends AbstractEditContext {
54
54
  this._targetWindowId = -1;
55
55
  this._scrollTop = 0;
56
56
  this._scrollLeft = 0;
57
+ this._linesVisibleRanges = null;
57
58
  this.domNode = new FastDomNode(document.createElement('div'));
58
59
  this.domNode.setClassName(`native-edit-context`);
59
60
  this._imeTextArea = new FastDomNode(document.createElement('textarea'));
@@ -202,7 +203,10 @@ let NativeEditContext = class NativeEditContext extends AbstractEditContext {
202
203
  }
203
204
  prepareRender(ctx) {
204
205
  this._screenReaderSupport.prepareRender(ctx);
205
- this._updateSelectionAndControlBounds(ctx);
206
+ this._updateSelectionAndControlBoundsData(ctx);
207
+ }
208
+ onDidRender() {
209
+ this._updateSelectionAndControlBoundsAfterRender();
206
210
  }
207
211
  render(ctx) {
208
212
  this._screenReaderSupport.render(ctx);
@@ -411,24 +415,31 @@ let NativeEditContext = class NativeEditContext extends AbstractEditContext {
411
415
  });
412
416
  this._decorations = this._context.viewModel.model.deltaDecorations(this._decorations, decorations);
413
417
  }
414
- _updateSelectionAndControlBounds(ctx) {
415
- if (!this._parent) {
416
- return;
418
+ _updateSelectionAndControlBoundsData(ctx) {
419
+ const viewSelection = this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(this._primarySelection);
420
+ if (this._primarySelection.isEmpty()) {
421
+ const linesVisibleRanges = ctx.visibleRangeForPosition(viewSelection.getStartPosition());
422
+ this._linesVisibleRanges = linesVisibleRanges;
423
+ }
424
+ else {
425
+ this._linesVisibleRanges = null;
417
426
  }
427
+ }
428
+ _updateSelectionAndControlBoundsAfterRender() {
418
429
  const options = this._context.configuration.options;
419
430
  const contentLeft = options.get(165 /* EditorOption.layoutInfo */).contentLeft;
420
- const parentBounds = this._parent.getBoundingClientRect();
421
431
  const viewSelection = this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(this._primarySelection);
422
432
  const verticalOffsetStart = this._context.viewLayout.getVerticalOffsetForLineNumber(viewSelection.startLineNumber);
423
- const top = parentBounds.top + verticalOffsetStart - this._scrollTop;
424
433
  const verticalOffsetEnd = this._context.viewLayout.getVerticalOffsetAfterLineNumber(viewSelection.endLineNumber);
434
+ // Make sure this doesn't force an extra layout (i.e. don't call it before rendering finished)
435
+ const parentBounds = this._parent.getBoundingClientRect();
436
+ const top = parentBounds.top + verticalOffsetStart - this._scrollTop;
425
437
  const height = verticalOffsetEnd - verticalOffsetStart;
426
438
  let left = parentBounds.left + contentLeft - this._scrollLeft;
427
439
  let width;
428
440
  if (this._primarySelection.isEmpty()) {
429
- const linesVisibleRanges = ctx.visibleRangeForPosition(viewSelection.getStartPosition());
430
- if (linesVisibleRanges) {
431
- left += linesVisibleRanges.left;
441
+ if (this._linesVisibleRanges) {
442
+ left += this._linesVisibleRanges.left;
432
443
  }
433
444
  width = 0;
434
445
  }
@@ -440,9 +451,6 @@ let NativeEditContext = class NativeEditContext extends AbstractEditContext {
440
451
  this._editContext.updateControlBounds(selectionBounds);
441
452
  }
442
453
  _updateCharacterBounds(e) {
443
- if (!this._parent) {
444
- return;
445
- }
446
454
  const options = this._context.configuration.options;
447
455
  const typicalHalfWidthCharacterWidth = options.get(59 /* EditorOption.fontInfo */).typicalHalfwidthCharacterWidth;
448
456
  const contentLeft = options.get(165 /* EditorOption.layoutInfo */).contentLeft;
@@ -75,6 +75,21 @@ let HoverWidget = class HoverWidget extends Widget {
75
75
  this._onRequestLayout = this._register(new Emitter());
76
76
  this._linkHandler = options.linkHandler;
77
77
  this._target = 'targetElements' in options.target ? options.target : new ElementHoverTarget(options.target);
78
+ if (options.style) {
79
+ switch (options.style) {
80
+ case 1 /* HoverStyle.Pointer */: {
81
+ options.appearance ??= {};
82
+ options.appearance.compact ??= true;
83
+ options.appearance.showPointer ??= true;
84
+ break;
85
+ }
86
+ case 2 /* HoverStyle.Mouse */: {
87
+ options.appearance ??= {};
88
+ options.appearance.compact ??= true;
89
+ break;
90
+ }
91
+ }
92
+ }
78
93
  this._hoverPointer = options.appearance?.showPointer ? $('div.workbench-hover-pointer') : undefined;
79
94
  this._hover = this._register(new HoverWidget$1(!options.appearance?.skipFadeInAnimation));
80
95
  this._hover.containerDomNode.classList.add('workbench-hover');
@@ -349,12 +349,14 @@ let DiffEditorWidget = class DiffEditorWidget extends DelegatingEditor {
349
349
  if (!model || !model.isDiffUpToDate.get()) {
350
350
  return;
351
351
  }
352
+ this._editors.modified.pushUndoStop();
352
353
  this._editors.modified.executeEdits('diffEditor', [
353
354
  {
354
355
  range: diff.modified.toExclusiveRange(),
355
356
  text: model.model.original.getValueInRange(diff.original.toExclusiveRange())
356
357
  }
357
358
  ]);
359
+ this._editors.modified.pushUndoStop();
358
360
  }
359
361
  revertRangeMappings(diffs) {
360
362
  const model = this._diffModel.get();
@@ -365,7 +367,9 @@ let DiffEditorWidget = class DiffEditorWidget extends DelegatingEditor {
365
367
  range: c.modifiedRange,
366
368
  text: model.model.original.getValueInRange(c.originalRange)
367
369
  }));
370
+ this._editors.modified.pushUndoStop();
368
371
  this._editors.modified.executeEdits('diffEditor', changes);
372
+ this._editors.modified.pushUndoStop();
369
373
  }
370
374
  revertFocusedRangeMappings() {
371
375
  const model = this._diffModel.get();
@@ -386,10 +390,12 @@ let DiffEditorWidget = class DiffEditorWidget extends DelegatingEditor {
386
390
  const diffsToRevert = diffs.filter(d => {
387
391
  return d.lineRangeMapping.modified.intersect(selectedRange);
388
392
  });
393
+ modifiedEditor.pushUndoStop();
389
394
  modifiedEditor.executeEdits('diffEditor', diffsToRevert.map(d => ({
390
395
  range: d.lineRangeMapping.modified.toExclusiveRange(),
391
396
  text: model.model.original.getValueInRange(d.lineRangeMapping.original.toExclusiveRange())
392
397
  })));
398
+ modifiedEditor.pushUndoStop();
393
399
  }
394
400
  _goTo(diff) {
395
401
  this._editors.modified.setPosition(new Position(diff.lineRangeMapping.modified.startLineNumber, 1));
@@ -83,6 +83,7 @@ let DiffEditorItemTemplate = class DiffEditorItemTemplate extends Disposable {
83
83
  ]);
84
84
  this.editor = this._register(this._instantiationService.createInstance(DiffEditorWidget, this._elements.editor, {
85
85
  overflowWidgetsDomNode: this._overflowWidgetsDomNode,
86
+ fixedOverflowWidgets: true
86
87
  }, {}));
87
88
  this.isModifedFocused = observableCodeEditor(this.editor.getModifiedEditor()).isFocused;
88
89
  this.isOriginalFocused = observableCodeEditor(this.editor.getOriginalEditor()).isFocused;
@@ -15,7 +15,6 @@ import '../../../../platform/theme/common/colors/minimapColors.js';
15
15
  import '../../../../platform/theme/common/colors/miscColors.js';
16
16
  import '../../../../platform/theme/common/colors/quickpickColors.js';
17
17
  import '../../../../platform/theme/common/colors/searchColors.js';
18
- import { createInstantHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js';
19
18
 
20
19
  /*---------------------------------------------------------------------------------------------
21
20
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -42,11 +41,11 @@ class FindOptionsWidget extends Widget {
42
41
  inputActiveOptionForeground: asCssVariable(inputActiveOptionForeground),
43
42
  inputActiveOptionBackground: asCssVariable(inputActiveOptionBackground),
44
43
  };
45
- const hoverDelegate = this._register(createInstantHoverDelegate());
44
+ const hoverLifecycleOptions = { groupId: 'find-options-widget' };
46
45
  this.caseSensitive = this._register(new CaseSensitiveToggle({
47
46
  appendTitle: this._keybindingLabelFor(FIND_IDS.ToggleCaseSensitiveCommand),
48
47
  isChecked: this._state.matchCase,
49
- hoverDelegate,
48
+ hoverLifecycleOptions,
50
49
  ...toggleStyles
51
50
  }));
52
51
  this._domNode.appendChild(this.caseSensitive.domNode);
@@ -58,7 +57,7 @@ class FindOptionsWidget extends Widget {
58
57
  this.wholeWords = this._register(new WholeWordsToggle({
59
58
  appendTitle: this._keybindingLabelFor(FIND_IDS.ToggleWholeWordCommand),
60
59
  isChecked: this._state.wholeWord,
61
- hoverDelegate,
60
+ hoverLifecycleOptions,
62
61
  ...toggleStyles
63
62
  }));
64
63
  this._domNode.appendChild(this.wholeWords.domNode);
@@ -70,7 +69,7 @@ class FindOptionsWidget extends Widget {
70
69
  this.regex = this._register(new RegexToggle({
71
70
  appendTitle: this._keybindingLabelFor(FIND_IDS.ToggleRegexCommand),
72
71
  isChecked: this._state.isRegex,
73
- hoverDelegate,
72
+ hoverLifecycleOptions,
74
73
  ...toggleStyles
75
74
  }));
76
75
  this._domNode.appendChild(this.regex.domNode);
@@ -32,7 +32,6 @@ import { ThemeIcon } from '../../../../base/common/themables.js';
32
32
  import { isHighContrast } from '../../../../platform/theme/common/theme.js';
33
33
  import { assertReturnsDefined } from '../../../../base/common/types.js';
34
34
  import { defaultToggleStyles, defaultInputBoxStyles } from '../../../../platform/theme/browser/defaultStyles.js';
35
- import { createInstantHoverDelegate, getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js';
36
35
 
37
36
  /*---------------------------------------------------------------------------------------------
38
37
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -822,13 +821,12 @@ class FindWidget extends Widget {
822
821
  this._matchesCount = document.createElement('div');
823
822
  this._matchesCount.className = 'matchesCount';
824
823
  this._updateMatchesCount();
825
- // Create a scoped hover delegate for all find related buttons
826
- const hoverDelegate = this._register(createInstantHoverDelegate());
824
+ const hoverLifecycleOptions = { groupId: 'find-widget' };
827
825
  // Previous button
828
826
  this._prevBtn = this._register(new SimpleButton({
829
827
  label: NLS_PREVIOUS_MATCH_BTN_LABEL + this._keybindingLabelFor(FIND_IDS.PreviousMatchFindAction),
830
828
  icon: findPreviousMatchIcon,
831
- hoverDelegate,
829
+ hoverLifecycleOptions,
832
830
  onTrigger: () => {
833
831
  assertReturnsDefined(this._codeEditor.getAction(FIND_IDS.PreviousMatchFindAction)).run().then(undefined, onUnexpectedError);
834
832
  }
@@ -837,7 +835,7 @@ class FindWidget extends Widget {
837
835
  this._nextBtn = this._register(new SimpleButton({
838
836
  label: NLS_NEXT_MATCH_BTN_LABEL + this._keybindingLabelFor(FIND_IDS.NextMatchFindAction),
839
837
  icon: findNextMatchIcon,
840
- hoverDelegate,
838
+ hoverLifecycleOptions,
841
839
  onTrigger: () => {
842
840
  assertReturnsDefined(this._codeEditor.getAction(FIND_IDS.NextMatchFindAction)).run().then(undefined, onUnexpectedError);
843
841
  }
@@ -856,7 +854,7 @@ class FindWidget extends Widget {
856
854
  icon: findSelectionIcon,
857
855
  title: NLS_TOGGLE_SELECTION_FIND_TITLE + this._keybindingLabelFor(FIND_IDS.ToggleSearchScopeCommand),
858
856
  isChecked: false,
859
- hoverDelegate: hoverDelegate,
857
+ hoverLifecycleOptions,
860
858
  inputActiveOptionBackground: asCssVariable(inputActiveOptionBackground),
861
859
  inputActiveOptionBorder: asCssVariable(inputActiveOptionBorder),
862
860
  inputActiveOptionForeground: asCssVariable(inputActiveOptionForeground),
@@ -888,7 +886,7 @@ class FindWidget extends Widget {
888
886
  this._closeBtn = this._register(new SimpleButton({
889
887
  label: NLS_CLOSE_BTN_LABEL + this._keybindingLabelFor(FIND_IDS.CloseFindWidgetCommand),
890
888
  icon: widgetClose,
891
- hoverDelegate,
889
+ hoverLifecycleOptions,
892
890
  onTrigger: () => {
893
891
  this._state.change({ isRevealed: false, searchScope: null }, false);
894
892
  },
@@ -918,6 +916,7 @@ class FindWidget extends Widget {
918
916
  showHistoryHint: () => showHistoryKeybindingHint(this._keybindingService),
919
917
  inputBoxStyles: defaultInputBoxStyles,
920
918
  toggleStyles: defaultToggleStyles,
919
+ hoverLifecycleOptions,
921
920
  }, this._contextKeyService, true));
922
921
  this._replaceInput.setPreserveCase(!!this._state.preserveCase);
923
922
  this._register(this._replaceInput.onKeyDown((e) => this._onReplaceInputKeyDown(e)));
@@ -951,13 +950,11 @@ class FindWidget extends Widget {
951
950
  e.preventDefault();
952
951
  }
953
952
  }));
954
- // Create scoped hover delegate for replace actions
955
- const replaceHoverDelegate = this._register(createInstantHoverDelegate());
956
953
  // Replace one button
957
954
  this._replaceBtn = this._register(new SimpleButton({
958
955
  label: NLS_REPLACE_BTN_LABEL + this._keybindingLabelFor(FIND_IDS.ReplaceOneAction),
959
956
  icon: findReplaceIcon,
960
- hoverDelegate: replaceHoverDelegate,
957
+ hoverLifecycleOptions,
961
958
  onTrigger: () => {
962
959
  this._controller.replace();
963
960
  },
@@ -972,7 +969,7 @@ class FindWidget extends Widget {
972
969
  this._replaceAllBtn = this._register(new SimpleButton({
973
970
  label: NLS_REPLACE_ALL_BTN_LABEL + this._keybindingLabelFor(FIND_IDS.ReplaceAllAction),
974
971
  icon: findReplaceAllIcon,
975
- hoverDelegate: replaceHoverDelegate,
972
+ hoverLifecycleOptions,
976
973
  onTrigger: () => {
977
974
  this._controller.replaceAll();
978
975
  }
@@ -1097,7 +1094,10 @@ class SimpleButton extends Widget {
1097
1094
  this._domNode.className = className;
1098
1095
  this._domNode.setAttribute('role', 'button');
1099
1096
  this._domNode.setAttribute('aria-label', this._opts.label);
1100
- this._register(hoverService.setupManagedHover(opts.hoverDelegate ?? getDefaultHoverDelegate('element'), this._domNode, this._opts.label));
1097
+ this._register(hoverService.setupDelayedHover(this._domNode, {
1098
+ content: this._opts.label,
1099
+ style: 1 /* HoverStyle.Pointer */,
1100
+ }, opts.hoverLifecycleOptions));
1101
1101
  this.onclick(this._domNode, (e) => {
1102
1102
  this._opts.onTrigger();
1103
1103
  e.preventDefault();
@@ -1,4 +1,4 @@
1
- import { addStandardDisposableListener, $ as $$1, append } from '../../../../base/browser/dom.js';
1
+ import { addStandardDisposableListener, $ as $$1, append, getDomNodePagePosition } from '../../../../base/browser/dom.js';
2
2
  import { Disposable, DisposableStore } from '../../../../base/common/lifecycle.js';
3
3
  import { IMarkdownRendererService } from '../../../../platform/markdown/browser/markdownRenderer.js';
4
4
  import { HoverOperation } from './hoverOperation.js';
@@ -27,6 +27,7 @@ let GlyphHoverWidget = class GlyphHoverWidget extends Disposable {
27
27
  constructor(editor, _markdownRendererService) {
28
28
  super();
29
29
  this._markdownRendererService = _markdownRendererService;
30
+ this.allowEditorOverflow = true;
30
31
  this._renderDisposeables = this._register(new DisposableStore());
31
32
  this._editor = editor;
32
33
  this._isVisible = false;
@@ -144,8 +145,27 @@ let GlyphHoverWidget = class GlyphHoverWidget extends Disposable {
144
145
  const nodeHeight = this._hover.containerDomNode.clientHeight;
145
146
  const top = topForLineNumber - editorScrollTop - ((nodeHeight - lineHeight) / 2);
146
147
  const left = editorLayout.glyphMarginLeft + editorLayout.glyphMarginWidth + (laneOrLine === 'lineNo' ? editorLayout.lineNumbersWidth : 0);
147
- this._hover.containerDomNode.style.left = `${left}px`;
148
- this._hover.containerDomNode.style.top = `${Math.max(Math.round(top), 0)}px`;
148
+ // Constrain the hover widget to stay within the editor bounds
149
+ const editorHeight = editorLayout.height;
150
+ const maxTop = editorHeight - nodeHeight;
151
+ const constrainedTop = Math.max(0, Math.min(Math.round(top), maxTop));
152
+ const fixedOverflowWidgets = this._editor.getOption(51 /* EditorOption.fixedOverflowWidgets */);
153
+ if (fixedOverflowWidgets) {
154
+ // Use fixed positioning relative to the viewport
155
+ const editorDomNode = this._editor.getDomNode();
156
+ if (editorDomNode) {
157
+ const editorRect = getDomNodePagePosition(editorDomNode);
158
+ this._hover.containerDomNode.style.position = 'fixed';
159
+ this._hover.containerDomNode.style.left = `${editorRect.left + left}px`;
160
+ this._hover.containerDomNode.style.top = `${editorRect.top + constrainedTop}px`;
161
+ }
162
+ }
163
+ else {
164
+ // Use absolute positioning relative to the editor
165
+ this._hover.containerDomNode.style.position = 'absolute';
166
+ this._hover.containerDomNode.style.left = `${left}px`;
167
+ this._hover.containerDomNode.style.top = `${constrainedTop}px`;
168
+ }
149
169
  this._hover.containerDomNode.style.zIndex = '11'; // 1 more than the zone widget at 10 (#233819)
150
170
  }
151
171
  _onMouseLeave(e) {
@@ -334,7 +334,6 @@ let InlineCompletionsSource = class InlineCompletionsSource extends Disposable {
334
334
  return;
335
335
  }
336
336
  const emptyEndOfLifeEvent = {
337
- id: requestResponseInfo.requestUuid,
338
337
  opportunityId: requestResponseInfo.requestUuid,
339
338
  noSuggestionReason: requestResponseInfo.noSuggestionReason ?? 'unknown',
340
339
  extensionId: 'vscode-core',
@@ -637,10 +637,7 @@ class InputWithButton {
637
637
  this._buttonHoverContent = this._buttonGenHoverText;
638
638
  this._disposables.add(getBaseLayerHoverDelegate().setupDelayedHover(this._buttonNode, () => ({
639
639
  content: this._buttonHoverContent,
640
- appearance: {
641
- showPointer: true,
642
- compact: true,
643
- }
640
+ style: 1 /* HoverStyle.Pointer */,
644
641
  })));
645
642
  this._domNode.appendChild(this._buttonNode);
646
643
  // notify if selection changes to cancel request to rename-suggestion providers
@@ -1 +1 @@
1
- define("vs/basic-languages/monaco.contribution",["require","../editor.api-Qm4MPvis"],(function(a,t){"use strict";const d={},n={};class r{static getOrCreate(s){return n[s]||(n[s]=new r(s)),n[s]}constructor(s){this._languageId=s,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((o,l)=>{this._lazyLoadPromiseResolve=o,this._lazyLoadPromiseReject=l})}load(){return this._loadingTriggered||(this._loadingTriggered=!0,d[this._languageId].loader().then(s=>this._lazyLoadPromiseResolve(s),s=>this._lazyLoadPromiseReject(s))),this._lazyLoadPromise}}function i(e){const s=e.id;d[s]=e,t.languages.register(e);const o=r.getOrCreate(s);t.languages.registerTokensProviderFactory(s,{create:async()=>(await o.load()).language}),t.languages.onLanguageEncountered(s,async()=>{const l=await o.load();t.languages.setLanguageConfiguration(s,l.conf)})}i({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:()=>new Promise((e,s)=>a(["../abap-D-t0cyap"],e,s))}),i({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:()=>new Promise((e,s)=>a(["../apex-CcIm7xu6"],e,s))}),i({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:()=>new Promise((e,s)=>a(["../azcli-BA0tQDCg"],e,s))}),i({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:()=>new Promise((e,s)=>a(["../bat-C397hTD6"],e,s))}),i({id:"bicep",extensions:[".bicep"],aliases:["Bicep"],loader:()=>new Promise((e,s)=>a(["../bicep-DF5aW17k"],e,s))}),i({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:()=>new Promise((e,s)=>a(["../cameligo-plsz8qhj"],e,s))}),i({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:()=>new Promise((e,s)=>a(["../clojure-Y2auQMzK"],e,s))}),i({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>new Promise((e,s)=>a(["../coffee-Bu45yuWE"],e,s))}),i({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:()=>new Promise((e,s)=>a(["../cpp-CkKPQIni"],e,s))}),i({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:()=>new Promise((e,s)=>a(["../cpp-CkKPQIni"],e,s))}),i({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:()=>new Promise((e,s)=>a(["../csharp-CX28MZyh"],e,s))}),i({id:"csp",extensions:[".csp"],aliases:["CSP","csp"],loader:()=>new Promise((e,s)=>a(["../csp-D8uWnyxW"],e,s))}),i({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:()=>new Promise((e,s)=>a(["../css-CaeNmE3S"],e,s))}),i({id:"cypher",extensions:[".cypher",".cyp"],aliases:["Cypher","OpenCypher"],loader:()=>new Promise((e,s)=>a(["../cypher-DVThT8BS"],e,s))}),i({id:"dart",extensions:[".dart"],aliases:["Dart","dart"],mimetypes:["text/x-dart-source","text/x-dart"],loader:()=>new Promise((e,s)=>a(["../dart-CmGfCvrO"],e,s))}),i({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:()=>new Promise((e,s)=>a(["../dockerfile-CZqqYdch"],e,s))}),i({id:"ecl",extensions:[".ecl"],aliases:["ECL","Ecl","ecl"],loader:()=>new Promise((e,s)=>a(["../ecl-30fUercY"],e,s))}),i({id:"elixir",extensions:[".ex",".exs"],aliases:["Elixir","elixir","ex"],loader:()=>new Promise((e,s)=>a(["../elixir-xjPaIfzF"],e,s))}),i({id:"flow9",extensions:[".flow"],aliases:["Flow9","Flow","flow9","flow"],loader:()=>new Promise((e,s)=>a(["../flow9-DqtmStfK"],e,s))}),i({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>new Promise((e,s)=>a(["../fsharp-BOMdg4U1"],e,s))}),i({id:"freemarker2",extensions:[".ftl",".ftlh",".ftlx"],aliases:["FreeMarker2","Apache FreeMarker2"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B0JPdtFy"],e,s)).then(e=>e.TagAutoInterpolationDollar)}),i({id:"freemarker2.tag-angle.interpolation-dollar",aliases:["FreeMarker2 (Angle/Dollar)","Apache FreeMarker2 (Angle/Dollar)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B0JPdtFy"],e,s)).then(e=>e.TagAngleInterpolationDollar)}),i({id:"freemarker2.tag-bracket.interpolation-dollar",aliases:["FreeMarker2 (Bracket/Dollar)","Apache FreeMarker2 (Bracket/Dollar)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B0JPdtFy"],e,s)).then(e=>e.TagBracketInterpolationDollar)}),i({id:"freemarker2.tag-angle.interpolation-bracket",aliases:["FreeMarker2 (Angle/Bracket)","Apache FreeMarker2 (Angle/Bracket)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B0JPdtFy"],e,s)).then(e=>e.TagAngleInterpolationBracket)}),i({id:"freemarker2.tag-bracket.interpolation-bracket",aliases:["FreeMarker2 (Bracket/Bracket)","Apache FreeMarker2 (Bracket/Bracket)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B0JPdtFy"],e,s)).then(e=>e.TagBracketInterpolationBracket)}),i({id:"freemarker2.tag-auto.interpolation-dollar",aliases:["FreeMarker2 (Auto/Dollar)","Apache FreeMarker2 (Auto/Dollar)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B0JPdtFy"],e,s)).then(e=>e.TagAutoInterpolationDollar)}),i({id:"freemarker2.tag-auto.interpolation-bracket",aliases:["FreeMarker2 (Auto/Bracket)","Apache FreeMarker2 (Auto/Bracket)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B0JPdtFy"],e,s)).then(e=>e.TagAutoInterpolationBracket)}),i({id:"go",extensions:[".go"],aliases:["Go"],loader:()=>new Promise((e,s)=>a(["../go-D_hbi-Jt"],e,s))}),i({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:()=>new Promise((e,s)=>a(["../graphql-CKUU4kLG"],e,s))}),i({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars","hbs"],mimetypes:["text/x-handlebars-template"],loader:()=>new Promise((e,s)=>a(["../handlebars-BT6GvC7i"],e,s))}),i({id:"hcl",extensions:[".tf",".tfvars",".hcl"],aliases:["Terraform","tf","HCL","hcl"],loader:()=>new Promise((e,s)=>a(["../hcl-DTaboeZW"],e,s))}),i({id:"html",extensions:[".html",".htm",".shtml",".xhtml",".mdoc",".jsp",".asp",".aspx",".jshtm"],aliases:["HTML","htm","html","xhtml"],mimetypes:["text/html","text/x-jshtm","text/template","text/ng-template"],loader:()=>new Promise((e,s)=>a(["../html-gBDMmvQV"],e,s))}),i({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:()=>new Promise((e,s)=>a(["../ini-CsNwO04R"],e,s))}),i({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:()=>new Promise((e,s)=>a(["../java-CI4ZMsH9"],e,s))}),i({id:"javascript",extensions:[".js",".es6",".jsx",".mjs",".cjs"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:()=>new Promise((e,s)=>a(["../javascript-BLHmi43m"],e,s))}),i({id:"julia",extensions:[".jl"],aliases:["julia","Julia"],loader:()=>new Promise((e,s)=>a(["../julia-BwzEvaQw"],e,s))}),i({id:"kotlin",extensions:[".kt",".kts"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:()=>new Promise((e,s)=>a(["../kotlin-IUYPiTV8"],e,s))}),i({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:()=>new Promise((e,s)=>a(["../less-C0eDYdqa"],e,s))}),i({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>new Promise((e,s)=>a(["../lexon-iON-Kj97"],e,s))}),i({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:()=>new Promise((e,s)=>a(["../lua-DtygF91M"],e,s))}),i({id:"liquid",extensions:[".liquid",".html.liquid"],aliases:["Liquid","liquid"],mimetypes:["application/liquid"],loader:()=>new Promise((e,s)=>a(["../liquid-Dm5uaeWH"],e,s))}),i({id:"m3",extensions:[".m3",".i3",".mg",".ig"],aliases:["Modula-3","Modula3","modula3","m3"],loader:()=>new Promise((e,s)=>a(["../m3-CsR4AuFi"],e,s))}),i({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:()=>new Promise((e,s)=>a(["../markdown-C_rD0bIw"],e,s))}),i({id:"mdx",extensions:[".mdx"],aliases:["MDX","mdx"],loader:()=>new Promise((e,s)=>a(["../mdx-CK01dX6F"],e,s))}),i({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:()=>new Promise((e,s)=>a(["../mips-CiYP61RB"],e,s))}),i({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:()=>new Promise((e,s)=>a(["../msdax-C38-sJlp"],e,s))}),i({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:()=>new Promise((e,s)=>a(["../mysql-CdtbpvbG"],e,s))}),i({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:()=>new Promise((e,s)=>a(["../objective-c-CntZFaHX"],e,s))}),i({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>new Promise((e,s)=>a(["../pascal-r6kuqfl_"],e,s))}),i({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:()=>new Promise((e,s)=>a(["../pascaligo-BiXoTmXh"],e,s))}),i({id:"perl",extensions:[".pl",".pm"],aliases:["Perl","pl"],loader:()=>new Promise((e,s)=>a(["../perl-DABw_TcH"],e,s))}),i({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:()=>new Promise((e,s)=>a(["../pgsql-me_jFXeX"],e,s))}),i({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:()=>new Promise((e,s)=>a(["../php-D_kh-9LK"],e,s))}),i({id:"pla",extensions:[".pla"],loader:()=>new Promise((e,s)=>a(["../pla-VfZjczW0"],e,s))}),i({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:()=>new Promise((e,s)=>a(["../postiats-BBSzz8Pk"],e,s))}),i({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:()=>new Promise((e,s)=>a(["../powerquery-Dt-g_2cc"],e,s))}),i({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:()=>new Promise((e,s)=>a(["../powershell-B-7ap1zc"],e,s))}),i({id:"proto",extensions:[".proto"],aliases:["protobuf","Protocol Buffers"],loader:()=>new Promise((e,s)=>a(["../protobuf-BmtuEB1A"],e,s))}),i({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:()=>new Promise((e,s)=>a(["../pug-BRpRNeEb"],e,s))}),i({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:()=>new Promise((e,s)=>a(["../python-Cwb03RGD"],e,s))}),i({id:"qsharp",extensions:[".qs"],aliases:["Q#","qsharp"],loader:()=>new Promise((e,s)=>a(["../qsharp-BzsFaUU9"],e,s))}),i({id:"r",extensions:[".r",".rhistory",".rmd",".rprofile",".rt"],aliases:["R","r"],loader:()=>new Promise((e,s)=>a(["../r-f8dDdrp4"],e,s))}),i({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:()=>new Promise((e,s)=>a(["../razor-B-kFuuSi"],e,s))}),i({id:"redis",extensions:[".redis"],aliases:["redis"],loader:()=>new Promise((e,s)=>a(["../redis-fvZQY4PI"],e,s))}),i({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:()=>new Promise((e,s)=>a(["../redshift-45Et0LQi"],e,s))}),i({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:()=>new Promise((e,s)=>a(["../restructuredtext-C7UUFKFD"],e,s))}),i({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile","Gemfile"],aliases:["Ruby","rb"],loader:()=>new Promise((e,s)=>a(["../ruby-CZO8zYTz"],e,s))}),i({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:()=>new Promise((e,s)=>a(["../rust-Bfetafyc"],e,s))}),i({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:()=>new Promise((e,s)=>a(["../sb-3GYllVck"],e,s))}),i({id:"scala",extensions:[".scala",".sc",".sbt"],aliases:["Scala","scala","SBT","Sbt","sbt","Dotty","dotty"],mimetypes:["text/x-scala-source","text/x-scala","text/x-sbt","text/x-dotty"],loader:()=>new Promise((e,s)=>a(["../scala-foMgrKo1"],e,s))}),i({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:()=>new Promise((e,s)=>a(["../scheme-CHdMtr7p"],e,s))}),i({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>new Promise((e,s)=>a(["../scss-C1cmLt9V"],e,s))}),i({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:()=>new Promise((e,s)=>a(["../shell-ClXCKCEW"],e,s))}),i({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:()=>new Promise((e,s)=>a(["../solidity-MZ6ExpPy"],e,s))}),i({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:()=>new Promise((e,s)=>a(["../sophia-DWkuSsPQ"],e,s))}),i({id:"sparql",extensions:[".rq"],aliases:["sparql","SPARQL"],loader:()=>new Promise((e,s)=>a(["../sparql-AUGFYSyk"],e,s))}),i({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:()=>new Promise((e,s)=>a(["../sql-32GpJSV2"],e,s))}),i({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib",".TcPOU",".TcDUT",".TcGVL",".TcIO"],aliases:["StructuredText","scl","stl"],loader:()=>new Promise((e,s)=>a(["../st-CuDFIVZ_"],e,s))}),i({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:()=>new Promise((e,s)=>a(["../swift-n-2HociN"],e,s))}),i({id:"systemverilog",extensions:[".sv",".svh"],aliases:["SV","sv","SystemVerilog","systemverilog"],loader:()=>new Promise((e,s)=>a(["../systemverilog-Ch4vA8Yt"],e,s))}),i({id:"verilog",extensions:[".v",".vh"],aliases:["V","v","Verilog","verilog"],loader:()=>new Promise((e,s)=>a(["../systemverilog-Ch4vA8Yt"],e,s))}),i({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:()=>new Promise((e,s)=>a(["../tcl-D74tq1nH"],e,s))}),i({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:()=>new Promise((e,s)=>a(["../twig-C6taOxMV"],e,s))}),i({id:"typescript",extensions:[".ts",".tsx",".cts",".mts"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:()=>new Promise((e,s)=>a(["../typescript-DSAwa49_"],e,s))}),i({id:"typespec",extensions:[".tsp"],aliases:["TypeSpec"],loader:()=>new Promise((e,s)=>a(["../typespec-D-PIh9Xw"],e,s))}),i({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:()=>new Promise((e,s)=>a(["../vb-Dyb2648j"],e,s))}),i({id:"wgsl",extensions:[".wgsl"],aliases:["WebGPU Shading Language","WGSL","wgsl"],loader:()=>new Promise((e,s)=>a(["../wgsl-BhLXMOR0"],e,s))}),i({id:"xml",extensions:[".xml",".xsd",".dtd",".ascx",".csproj",".config",".props",".targets",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xslt",".xsl"],firstLine:"(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",aliases:["XML","xml"],mimetypes:["text/xml","application/xml","application/xaml+xml","application/xml-dtd"],loader:()=>new Promise((e,s)=>a(["../xml-D5baDVnS"],e,s))}),i({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml","text/x-yaml"],loader:()=>new Promise((e,s)=>a(["../yaml-WDKVYKIX"],e,s))})}));
1
+ define("vs/basic-languages/monaco.contribution",["require","../editor.api-DGkWFOQA"],(function(a,t){"use strict";const d={},n={};class r{static getOrCreate(s){return n[s]||(n[s]=new r(s)),n[s]}constructor(s){this._languageId=s,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((o,l)=>{this._lazyLoadPromiseResolve=o,this._lazyLoadPromiseReject=l})}load(){return this._loadingTriggered||(this._loadingTriggered=!0,d[this._languageId].loader().then(s=>this._lazyLoadPromiseResolve(s),s=>this._lazyLoadPromiseReject(s))),this._lazyLoadPromise}}function i(e){const s=e.id;d[s]=e,t.languages.register(e);const o=r.getOrCreate(s);t.languages.registerTokensProviderFactory(s,{create:async()=>(await o.load()).language}),t.languages.onLanguageEncountered(s,async()=>{const l=await o.load();t.languages.setLanguageConfiguration(s,l.conf)})}i({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:()=>new Promise((e,s)=>a(["../abap-D-t0cyap"],e,s))}),i({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:()=>new Promise((e,s)=>a(["../apex-CcIm7xu6"],e,s))}),i({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:()=>new Promise((e,s)=>a(["../azcli-BA0tQDCg"],e,s))}),i({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:()=>new Promise((e,s)=>a(["../bat-C397hTD6"],e,s))}),i({id:"bicep",extensions:[".bicep"],aliases:["Bicep"],loader:()=>new Promise((e,s)=>a(["../bicep-DF5aW17k"],e,s))}),i({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:()=>new Promise((e,s)=>a(["../cameligo-plsz8qhj"],e,s))}),i({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:()=>new Promise((e,s)=>a(["../clojure-Y2auQMzK"],e,s))}),i({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>new Promise((e,s)=>a(["../coffee-Bu45yuWE"],e,s))}),i({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:()=>new Promise((e,s)=>a(["../cpp-CkKPQIni"],e,s))}),i({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:()=>new Promise((e,s)=>a(["../cpp-CkKPQIni"],e,s))}),i({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:()=>new Promise((e,s)=>a(["../csharp-CX28MZyh"],e,s))}),i({id:"csp",extensions:[".csp"],aliases:["CSP","csp"],loader:()=>new Promise((e,s)=>a(["../csp-D8uWnyxW"],e,s))}),i({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:()=>new Promise((e,s)=>a(["../css-CaeNmE3S"],e,s))}),i({id:"cypher",extensions:[".cypher",".cyp"],aliases:["Cypher","OpenCypher"],loader:()=>new Promise((e,s)=>a(["../cypher-DVThT8BS"],e,s))}),i({id:"dart",extensions:[".dart"],aliases:["Dart","dart"],mimetypes:["text/x-dart-source","text/x-dart"],loader:()=>new Promise((e,s)=>a(["../dart-CmGfCvrO"],e,s))}),i({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:()=>new Promise((e,s)=>a(["../dockerfile-CZqqYdch"],e,s))}),i({id:"ecl",extensions:[".ecl"],aliases:["ECL","Ecl","ecl"],loader:()=>new Promise((e,s)=>a(["../ecl-30fUercY"],e,s))}),i({id:"elixir",extensions:[".ex",".exs"],aliases:["Elixir","elixir","ex"],loader:()=>new Promise((e,s)=>a(["../elixir-xjPaIfzF"],e,s))}),i({id:"flow9",extensions:[".flow"],aliases:["Flow9","Flow","flow9","flow"],loader:()=>new Promise((e,s)=>a(["../flow9-DqtmStfK"],e,s))}),i({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>new Promise((e,s)=>a(["../fsharp-BOMdg4U1"],e,s))}),i({id:"freemarker2",extensions:[".ftl",".ftlh",".ftlx"],aliases:["FreeMarker2","Apache FreeMarker2"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B_vQOikd"],e,s)).then(e=>e.TagAutoInterpolationDollar)}),i({id:"freemarker2.tag-angle.interpolation-dollar",aliases:["FreeMarker2 (Angle/Dollar)","Apache FreeMarker2 (Angle/Dollar)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B_vQOikd"],e,s)).then(e=>e.TagAngleInterpolationDollar)}),i({id:"freemarker2.tag-bracket.interpolation-dollar",aliases:["FreeMarker2 (Bracket/Dollar)","Apache FreeMarker2 (Bracket/Dollar)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B_vQOikd"],e,s)).then(e=>e.TagBracketInterpolationDollar)}),i({id:"freemarker2.tag-angle.interpolation-bracket",aliases:["FreeMarker2 (Angle/Bracket)","Apache FreeMarker2 (Angle/Bracket)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B_vQOikd"],e,s)).then(e=>e.TagAngleInterpolationBracket)}),i({id:"freemarker2.tag-bracket.interpolation-bracket",aliases:["FreeMarker2 (Bracket/Bracket)","Apache FreeMarker2 (Bracket/Bracket)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B_vQOikd"],e,s)).then(e=>e.TagBracketInterpolationBracket)}),i({id:"freemarker2.tag-auto.interpolation-dollar",aliases:["FreeMarker2 (Auto/Dollar)","Apache FreeMarker2 (Auto/Dollar)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B_vQOikd"],e,s)).then(e=>e.TagAutoInterpolationDollar)}),i({id:"freemarker2.tag-auto.interpolation-bracket",aliases:["FreeMarker2 (Auto/Bracket)","Apache FreeMarker2 (Auto/Bracket)"],loader:()=>new Promise((e,s)=>a(["../freemarker2-B_vQOikd"],e,s)).then(e=>e.TagAutoInterpolationBracket)}),i({id:"go",extensions:[".go"],aliases:["Go"],loader:()=>new Promise((e,s)=>a(["../go-D_hbi-Jt"],e,s))}),i({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:()=>new Promise((e,s)=>a(["../graphql-CKUU4kLG"],e,s))}),i({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars","hbs"],mimetypes:["text/x-handlebars-template"],loader:()=>new Promise((e,s)=>a(["../handlebars-DqjIuZnJ"],e,s))}),i({id:"hcl",extensions:[".tf",".tfvars",".hcl"],aliases:["Terraform","tf","HCL","hcl"],loader:()=>new Promise((e,s)=>a(["../hcl-DTaboeZW"],e,s))}),i({id:"html",extensions:[".html",".htm",".shtml",".xhtml",".mdoc",".jsp",".asp",".aspx",".jshtm"],aliases:["HTML","htm","html","xhtml"],mimetypes:["text/html","text/x-jshtm","text/template","text/ng-template"],loader:()=>new Promise((e,s)=>a(["../html-DAxAlcjQ"],e,s))}),i({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:()=>new Promise((e,s)=>a(["../ini-CsNwO04R"],e,s))}),i({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:()=>new Promise((e,s)=>a(["../java-CI4ZMsH9"],e,s))}),i({id:"javascript",extensions:[".js",".es6",".jsx",".mjs",".cjs"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:()=>new Promise((e,s)=>a(["../javascript-CmHtjIt-"],e,s))}),i({id:"julia",extensions:[".jl"],aliases:["julia","Julia"],loader:()=>new Promise((e,s)=>a(["../julia-BwzEvaQw"],e,s))}),i({id:"kotlin",extensions:[".kt",".kts"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:()=>new Promise((e,s)=>a(["../kotlin-IUYPiTV8"],e,s))}),i({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:()=>new Promise((e,s)=>a(["../less-C0eDYdqa"],e,s))}),i({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>new Promise((e,s)=>a(["../lexon-iON-Kj97"],e,s))}),i({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:()=>new Promise((e,s)=>a(["../lua-DtygF91M"],e,s))}),i({id:"liquid",extensions:[".liquid",".html.liquid"],aliases:["Liquid","liquid"],mimetypes:["application/liquid"],loader:()=>new Promise((e,s)=>a(["../liquid-CQBeFlV7"],e,s))}),i({id:"m3",extensions:[".m3",".i3",".mg",".ig"],aliases:["Modula-3","Modula3","modula3","m3"],loader:()=>new Promise((e,s)=>a(["../m3-CsR4AuFi"],e,s))}),i({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:()=>new Promise((e,s)=>a(["../markdown-C_rD0bIw"],e,s))}),i({id:"mdx",extensions:[".mdx"],aliases:["MDX","mdx"],loader:()=>new Promise((e,s)=>a(["../mdx-BFnE9qyd"],e,s))}),i({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:()=>new Promise((e,s)=>a(["../mips-CiYP61RB"],e,s))}),i({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:()=>new Promise((e,s)=>a(["../msdax-C38-sJlp"],e,s))}),i({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:()=>new Promise((e,s)=>a(["../mysql-CdtbpvbG"],e,s))}),i({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:()=>new Promise((e,s)=>a(["../objective-c-CntZFaHX"],e,s))}),i({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>new Promise((e,s)=>a(["../pascal-r6kuqfl_"],e,s))}),i({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:()=>new Promise((e,s)=>a(["../pascaligo-BiXoTmXh"],e,s))}),i({id:"perl",extensions:[".pl",".pm"],aliases:["Perl","pl"],loader:()=>new Promise((e,s)=>a(["../perl-DABw_TcH"],e,s))}),i({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:()=>new Promise((e,s)=>a(["../pgsql-me_jFXeX"],e,s))}),i({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:()=>new Promise((e,s)=>a(["../php-D_kh-9LK"],e,s))}),i({id:"pla",extensions:[".pla"],loader:()=>new Promise((e,s)=>a(["../pla-VfZjczW0"],e,s))}),i({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:()=>new Promise((e,s)=>a(["../postiats-BBSzz8Pk"],e,s))}),i({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:()=>new Promise((e,s)=>a(["../powerquery-Dt-g_2cc"],e,s))}),i({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:()=>new Promise((e,s)=>a(["../powershell-B-7ap1zc"],e,s))}),i({id:"proto",extensions:[".proto"],aliases:["protobuf","Protocol Buffers"],loader:()=>new Promise((e,s)=>a(["../protobuf-BmtuEB1A"],e,s))}),i({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:()=>new Promise((e,s)=>a(["../pug-BRpRNeEb"],e,s))}),i({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:()=>new Promise((e,s)=>a(["../python-BX875IYK"],e,s))}),i({id:"qsharp",extensions:[".qs"],aliases:["Q#","qsharp"],loader:()=>new Promise((e,s)=>a(["../qsharp-BzsFaUU9"],e,s))}),i({id:"r",extensions:[".r",".rhistory",".rmd",".rprofile",".rt"],aliases:["R","r"],loader:()=>new Promise((e,s)=>a(["../r-f8dDdrp4"],e,s))}),i({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:()=>new Promise((e,s)=>a(["../razor-BBB6Wn5s"],e,s))}),i({id:"redis",extensions:[".redis"],aliases:["redis"],loader:()=>new Promise((e,s)=>a(["../redis-fvZQY4PI"],e,s))}),i({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:()=>new Promise((e,s)=>a(["../redshift-45Et0LQi"],e,s))}),i({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:()=>new Promise((e,s)=>a(["../restructuredtext-C7UUFKFD"],e,s))}),i({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile","Gemfile"],aliases:["Ruby","rb"],loader:()=>new Promise((e,s)=>a(["../ruby-CZO8zYTz"],e,s))}),i({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:()=>new Promise((e,s)=>a(["../rust-Bfetafyc"],e,s))}),i({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:()=>new Promise((e,s)=>a(["../sb-3GYllVck"],e,s))}),i({id:"scala",extensions:[".scala",".sc",".sbt"],aliases:["Scala","scala","SBT","Sbt","sbt","Dotty","dotty"],mimetypes:["text/x-scala-source","text/x-scala","text/x-sbt","text/x-dotty"],loader:()=>new Promise((e,s)=>a(["../scala-foMgrKo1"],e,s))}),i({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:()=>new Promise((e,s)=>a(["../scheme-CHdMtr7p"],e,s))}),i({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>new Promise((e,s)=>a(["../scss-C1cmLt9V"],e,s))}),i({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:()=>new Promise((e,s)=>a(["../shell-ClXCKCEW"],e,s))}),i({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:()=>new Promise((e,s)=>a(["../solidity-MZ6ExpPy"],e,s))}),i({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:()=>new Promise((e,s)=>a(["../sophia-DWkuSsPQ"],e,s))}),i({id:"sparql",extensions:[".rq"],aliases:["sparql","SPARQL"],loader:()=>new Promise((e,s)=>a(["../sparql-AUGFYSyk"],e,s))}),i({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:()=>new Promise((e,s)=>a(["../sql-32GpJSV2"],e,s))}),i({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib",".TcPOU",".TcDUT",".TcGVL",".TcIO"],aliases:["StructuredText","scl","stl"],loader:()=>new Promise((e,s)=>a(["../st-CuDFIVZ_"],e,s))}),i({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:()=>new Promise((e,s)=>a(["../swift-n-2HociN"],e,s))}),i({id:"systemverilog",extensions:[".sv",".svh"],aliases:["SV","sv","SystemVerilog","systemverilog"],loader:()=>new Promise((e,s)=>a(["../systemverilog-Ch4vA8Yt"],e,s))}),i({id:"verilog",extensions:[".v",".vh"],aliases:["V","v","Verilog","verilog"],loader:()=>new Promise((e,s)=>a(["../systemverilog-Ch4vA8Yt"],e,s))}),i({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:()=>new Promise((e,s)=>a(["../tcl-D74tq1nH"],e,s))}),i({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:()=>new Promise((e,s)=>a(["../twig-C6taOxMV"],e,s))}),i({id:"typescript",extensions:[".ts",".tsx",".cts",".mts"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:()=>new Promise((e,s)=>a(["../typescript-AvfgkAyn"],e,s))}),i({id:"typespec",extensions:[".tsp"],aliases:["TypeSpec"],loader:()=>new Promise((e,s)=>a(["../typespec-D-PIh9Xw"],e,s))}),i({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:()=>new Promise((e,s)=>a(["../vb-Dyb2648j"],e,s))}),i({id:"wgsl",extensions:[".wgsl"],aliases:["WebGPU Shading Language","WGSL","wgsl"],loader:()=>new Promise((e,s)=>a(["../wgsl-BhLXMOR0"],e,s))}),i({id:"xml",extensions:[".xml",".xsd",".dtd",".ascx",".csproj",".config",".props",".targets",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xslt",".xsl"],firstLine:"(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",aliases:["XML","xml"],mimetypes:["text/xml","application/xml","application/xaml+xml","application/xml-dtd"],loader:()=>new Promise((e,s)=>a(["../xml-BVhc_vbm"],e,s))}),i({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml","text/x-yaml"],loader:()=>new Promise((e,s)=>a(["../yaml-a9dM1cQx"],e,s))})}));
@@ -1 +1 @@
1
- define("vs/cssMode-D4NzqbQS",["module","exports","./workers-CjCUpHZK","./lspLanguageFeatures-CGripwyp","./editor.api-Qm4MPvis"],(function(a,t,f,e,d){"use strict";class m{constructor(c){this._defaults=c,this._worker=null,this._client=null,this._idleCheckInterval=window.setInterval(()=>this._checkIfIdle(),30*1e3),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker())}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}dispose(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()}_checkIfIdle(){if(!this._worker)return;Date.now()-this._lastUsedTime>12e4&&this._stopWorker()}_getClient(){return this._lastUsedTime=Date.now(),this._client||(this._worker=f.createWebWorker({moduleId:"vs/language/css/cssWorker",createWorker:()=>new Worker(new URL(""+new URL(require.toUrl("./assets/css.worker-DpW7RrDt.js"),document.baseURI).href,new URL(a.uri,document.baseURI).href),{type:"module"}),label:this._defaults.languageId,createData:{options:this._defaults.options,languageId:this._defaults.languageId}}),this._client=this._worker.getProxy()),this._client}getLanguageServiceWorker(...c){let i;return this._getClient().then(h=>{i=h}).then(h=>{if(this._worker)return this._worker.withSyncedResources(c)}).then(h=>i)}}function D(s){const c=[],i=[],h=new m(s);c.push(h);const r=(...n)=>h.getLanguageServiceWorker(...n);function w(){const{languageId:n,modeConfiguration:o}=s;g(i),o.completionItems&&i.push(d.languages.registerCompletionItemProvider(n,new e.CompletionAdapter(r,["/","-",":"]))),o.hovers&&i.push(d.languages.registerHoverProvider(n,new e.HoverAdapter(r))),o.documentHighlights&&i.push(d.languages.registerDocumentHighlightProvider(n,new e.DocumentHighlightAdapter(r))),o.definitions&&i.push(d.languages.registerDefinitionProvider(n,new e.DefinitionAdapter(r))),o.references&&i.push(d.languages.registerReferenceProvider(n,new e.ReferenceAdapter(r))),o.documentSymbols&&i.push(d.languages.registerDocumentSymbolProvider(n,new e.DocumentSymbolAdapter(r))),o.rename&&i.push(d.languages.registerRenameProvider(n,new e.RenameAdapter(r))),o.colors&&i.push(d.languages.registerColorProvider(n,new e.DocumentColorAdapter(r))),o.foldingRanges&&i.push(d.languages.registerFoldingRangeProvider(n,new e.FoldingRangeAdapter(r))),o.diagnostics&&i.push(new e.DiagnosticsAdapter(n,r,s.onDidChange)),o.selectionRanges&&i.push(d.languages.registerSelectionRangeProvider(n,new e.SelectionRangeAdapter(r))),o.documentFormattingEdits&&i.push(d.languages.registerDocumentFormattingEditProvider(n,new e.DocumentFormattingEditProvider(r))),o.documentRangeFormattingEdits&&i.push(d.languages.registerDocumentRangeFormattingEditProvider(n,new e.DocumentRangeFormattingEditProvider(r)))}return w(),c.push(l(i)),l(c)}function l(s){return{dispose:()=>g(s)}}function g(s){for(;s.length;)s.pop().dispose()}t.CompletionAdapter=e.CompletionAdapter,t.DefinitionAdapter=e.DefinitionAdapter,t.DiagnosticsAdapter=e.DiagnosticsAdapter,t.DocumentColorAdapter=e.DocumentColorAdapter,t.DocumentFormattingEditProvider=e.DocumentFormattingEditProvider,t.DocumentHighlightAdapter=e.DocumentHighlightAdapter,t.DocumentLinkAdapter=e.DocumentLinkAdapter,t.DocumentRangeFormattingEditProvider=e.DocumentRangeFormattingEditProvider,t.DocumentSymbolAdapter=e.DocumentSymbolAdapter,t.FoldingRangeAdapter=e.FoldingRangeAdapter,t.HoverAdapter=e.HoverAdapter,t.ReferenceAdapter=e.ReferenceAdapter,t.RenameAdapter=e.RenameAdapter,t.SelectionRangeAdapter=e.SelectionRangeAdapter,t.fromPosition=e.fromPosition,t.fromRange=e.fromRange,t.toRange=e.toRange,t.toTextEdit=e.toTextEdit,t.WorkerManager=m,t.setupMode=D,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})}));
1
+ define("vs/cssMode-CvaUVk1W",["module","exports","./workers-DnTKLxL6","./lspLanguageFeatures-DTAub2tJ","./editor.api-DGkWFOQA"],(function(a,t,f,e,d){"use strict";class m{constructor(c){this._defaults=c,this._worker=null,this._client=null,this._idleCheckInterval=window.setInterval(()=>this._checkIfIdle(),30*1e3),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker())}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}dispose(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()}_checkIfIdle(){if(!this._worker)return;Date.now()-this._lastUsedTime>12e4&&this._stopWorker()}_getClient(){return this._lastUsedTime=Date.now(),this._client||(this._worker=f.createWebWorker({moduleId:"vs/language/css/cssWorker",createWorker:()=>new Worker(new URL(""+new URL(require.toUrl("./assets/css.worker-DpW7RrDt.js"),document.baseURI).href,new URL(a.uri,document.baseURI).href),{type:"module"}),label:this._defaults.languageId,createData:{options:this._defaults.options,languageId:this._defaults.languageId}}),this._client=this._worker.getProxy()),this._client}getLanguageServiceWorker(...c){let i;return this._getClient().then(h=>{i=h}).then(h=>{if(this._worker)return this._worker.withSyncedResources(c)}).then(h=>i)}}function D(s){const c=[],i=[],h=new m(s);c.push(h);const r=(...n)=>h.getLanguageServiceWorker(...n);function w(){const{languageId:n,modeConfiguration:o}=s;g(i),o.completionItems&&i.push(d.languages.registerCompletionItemProvider(n,new e.CompletionAdapter(r,["/","-",":"]))),o.hovers&&i.push(d.languages.registerHoverProvider(n,new e.HoverAdapter(r))),o.documentHighlights&&i.push(d.languages.registerDocumentHighlightProvider(n,new e.DocumentHighlightAdapter(r))),o.definitions&&i.push(d.languages.registerDefinitionProvider(n,new e.DefinitionAdapter(r))),o.references&&i.push(d.languages.registerReferenceProvider(n,new e.ReferenceAdapter(r))),o.documentSymbols&&i.push(d.languages.registerDocumentSymbolProvider(n,new e.DocumentSymbolAdapter(r))),o.rename&&i.push(d.languages.registerRenameProvider(n,new e.RenameAdapter(r))),o.colors&&i.push(d.languages.registerColorProvider(n,new e.DocumentColorAdapter(r))),o.foldingRanges&&i.push(d.languages.registerFoldingRangeProvider(n,new e.FoldingRangeAdapter(r))),o.diagnostics&&i.push(new e.DiagnosticsAdapter(n,r,s.onDidChange)),o.selectionRanges&&i.push(d.languages.registerSelectionRangeProvider(n,new e.SelectionRangeAdapter(r))),o.documentFormattingEdits&&i.push(d.languages.registerDocumentFormattingEditProvider(n,new e.DocumentFormattingEditProvider(r))),o.documentRangeFormattingEdits&&i.push(d.languages.registerDocumentRangeFormattingEditProvider(n,new e.DocumentRangeFormattingEditProvider(r)))}return w(),c.push(l(i)),l(c)}function l(s){return{dispose:()=>g(s)}}function g(s){for(;s.length;)s.pop().dispose()}t.CompletionAdapter=e.CompletionAdapter,t.DefinitionAdapter=e.DefinitionAdapter,t.DiagnosticsAdapter=e.DiagnosticsAdapter,t.DocumentColorAdapter=e.DocumentColorAdapter,t.DocumentFormattingEditProvider=e.DocumentFormattingEditProvider,t.DocumentHighlightAdapter=e.DocumentHighlightAdapter,t.DocumentLinkAdapter=e.DocumentLinkAdapter,t.DocumentRangeFormattingEditProvider=e.DocumentRangeFormattingEditProvider,t.DocumentSymbolAdapter=e.DocumentSymbolAdapter,t.FoldingRangeAdapter=e.FoldingRangeAdapter,t.HoverAdapter=e.HoverAdapter,t.ReferenceAdapter=e.ReferenceAdapter,t.RenameAdapter=e.RenameAdapter,t.SelectionRangeAdapter=e.SelectionRangeAdapter,t.fromPosition=e.fromPosition,t.fromRange=e.fromRange,t.toRange=e.toRange,t.toTextEdit=e.toTextEdit,t.WorkerManager=m,t.setupMode=D,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})}));
@@ -1,4 +1,4 @@
1
- define("vs/editor/editor.main",["exports","require","vs/nls.messages-loader!","../monaco.contribution-CGOd8_rh","../monaco.contribution-BTx9le88","../monaco.contribution-r30Wl92q","../monaco.contribution-CAud1ylG","../basic-languages/monaco.contribution","../editor.api-Qm4MPvis","../workers-CjCUpHZK"],(function(D,S,Yn,O,A,N,W,Xn,s,Z){"use strict";function Ne(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const We=Ne(S),ze=""+new URL(S.toUrl("../assets/json.worker-BCgqF_m2.js"),document.baseURI).href,qe=""+new URL(S.toUrl("../assets/css.worker-DpW7RrDt.js"),document.baseURI).href,je=""+new URL(S.toUrl("../assets/html.worker-zYFVFHK_.js"),document.baseURI).href,Ue=""+new URL(S.toUrl("../assets/ts.worker-CQxe4KB6.js"),document.baseURI).href,Be=""+new URL(S.toUrl("../assets/editor.worker-BvjSTWxN.js"),document.baseURI).href;function Ve(e){return e.method!==void 0}var K;(function(e){function t(n){return n}e.create=t})(K||(K={}));var w;(function(e){e.parseError=-32700,e.invalidRequest=-32600,e.methodNotFound=-32601,e.invalidParams=-32602,e.internalError=-32603;function t(o){return-32099<=o&&o<=-32e3}e.isServerError=t;function n(o){if(!t(o))throw new Error("Invalid range for a server error.");return o}e.serverError=n,e.unexpectedServerError=-32e3;function r(o){return!0}e.isApplicationError=r;function i(o){return o}e.applicationError=i,e.genericApplicationError=-320100})(w||(w={}));var z=class{listeners=new Set;event=e=>(this.listeners.add(e),{dispose:()=>{this.listeners.delete(e)}});fire(e){this.listeners.forEach(t=>t(e))}},Je=class{_value;eventEmitter;constructor(e){this._value=e,this.eventEmitter=new z}get value(){return this._value}set value(e){this._value!==e&&(this._value=e,this.eventEmitter.fire(e))}get onChange(){return this.eventEmitter.event}};function Ge(e,t){const n=setTimeout(t,e);return{dispose:()=>clearTimeout(n)}}function q(e,t,n){return e instanceof Set?(e.add(t),{dispose:()=>e.delete(t)}):(e.set(t,n),{dispose:()=>e.delete(t)})}var Qe=class{_state="none";promise;resolve=()=>{};reject=()=>{};constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}get state(){return this._state}},$=class Me{static id=0;_unprocessedMessages=[];_messageListener;id=Me.id++;_state=new Je({state:"open"});state=this._state;setListener(t){if(this._messageListener=t,!!t)for(;this._unprocessedMessages.length>0&&this._messageListener!==void 0;){const n=this._unprocessedMessages.shift();this._messageListener(n)}}send(t){return this._sendImpl(t)}_dispatchReceivedMessage(t){this._unprocessedMessages.length===0&&this._messageListener?this._messageListener(t):this._unprocessedMessages.push(t)}_onConnectionClosed(){this._state.value={state:"closed",error:void 0}}log(t){return new Ye(this,t??new Xe)}},Ye=class{baseStream;logger;constructor(e,t){this.baseStream=e,this.logger=t}get state(){return this.baseStream.state}setListener(e){if(e===void 0){this.baseStream.setListener(void 0);return}this.baseStream.setListener(t=>{this.logger.log(this.baseStream,"incoming",t),e(t)})}send(e){return this.logger.log(this.baseStream,"outgoing",e),this.baseStream.send(e)}toString(){return`StreamLogger/${this.baseStream.toString()}`}},Xe=class{log(e,t,n){console.log(`${t==="incoming"?"<-":"->"} [${e.toString()}] ${JSON.stringify(n)}`)}},Ze=class Fe{connect;constructor(t){this.connect=t}mapContext(t){return new Fe(n=>this.connect(n?Ke(n,t):void 0))}};function Ke(e,t){return{handleNotification:(n,r)=>e.handleNotification(n,t(r)),handleRequest:(n,r,i)=>e.handleRequest(n,r,t(i))}}var $e=class Ee{_stream;_listener;_logger;static createChannel(t,n){let r=!1;return new Ze(i=>{if(r)throw new Error(`A channel to the stream ${t} was already constructed!`);return r=!0,new Ee(t,i,n)})}_unprocessedResponses=new Map;_lastUsedRequestId=0;constructor(t,n,r){this._stream=t,this._listener=n,this._logger=r,this._stream.setListener(i=>{Ve(i)?i.id===void 0?this._processNotification(i):this._processRequest(i):this._processResponse(i)})}get state(){return this._stream.state}async _processNotification(t){if(t.id!==void 0)throw new Error;if(!this._listener){this._logger&&this._logger.debug({text:"Notification ignored",message:t});return}try{await this._listener.handleNotification({method:t.method,params:t.params||null})}catch(n){this._logger&&this._logger.warn({text:`Exception was thrown while handling notification: ${n}`,exception:n,message:t})}}async _processRequest(t){if(t.id===void 0)throw new Error;let n;if(this._listener)try{n=await this._listener.handleRequest({method:t.method,params:t.params||null},t.id)}catch(i){this._logger&&this._logger.warn({text:`Exception was thrown while handling request: ${i}`,message:t,exception:i}),n={error:{code:w.internalError,message:"An unexpected exception was thrown.",data:void 0}}}else this._logger&&this._logger.debug({text:"Received request even though not listening for requests",message:t}),n={error:{code:w.methodNotFound,message:"This endpoint does not listen for requests or notifications.",data:void 0}};let r;"result"in n?r={jsonrpc:"2.0",id:t.id,result:n.result}:r={jsonrpc:"2.0",id:t.id,error:n.error},await this._stream.send(r)}_processResponse(t){const n=""+t.id,r=this._unprocessedResponses.get(n);if(!r){this._logger&&this._logger.debug({text:"Got an unexpected response message",message:t});return}this._unprocessedResponses.delete(n),r(t)}_newRequestId(){return this._lastUsedRequestId++}sendRequest(t,n,r){const i={jsonrpc:"2.0",id:this._newRequestId(),method:t.method,params:t.params||void 0};return r&&r(i.id),new Promise((o,a)=>{const l=""+i.id;this._unprocessedResponses.set(l,g=>{"result"in g?o({result:g.result}):(g.error||a(new Error("Response had neither 'result' nor 'error' field set.")),o({error:g.error}))}),this._stream.send(i).then(void 0,g=>{this._unprocessedResponses.delete(l),a(g)})})}sendNotification(t,n){const r={jsonrpc:"2.0",id:void 0,method:t.method,params:t.params||void 0};return this._stream.send(r)}toString(){return"StreamChannel/"+this._stream.toString()}},C;(function(e){function t(){return{deserializeFromJson:i=>({hasErrors:!1,value:i}),serializeToJson:i=>i}}e.sAny=t;function n(){return{deserializeFromJson:i=>({hasErrors:!1,value:{}}),serializeToJson:i=>({})}}e.sEmptyObject=n;function r(){return{deserializeFromJson:i=>({hasErrors:!1,value:void 0}),serializeToJson:i=>null}}e.sVoidFromNull=r})(C||(C={}));const ee=Symbol("OptionalMethodNotFound");var te=class{contextualize(e){return new et(this,e)}},et=class extends te{underylingTypedChannel;converters;constructor(e,t){super(),this.underylingTypedChannel=e,this.converters=t}async request(e,t,n){const r=await this.converters.getSendContext(n);return this.underylingTypedChannel.request(e,t,r)}async notify(e,t,n){const r=await this.converters.getSendContext(n);return this.underylingTypedChannel.notify(e,t,r)}registerNotificationHandler(e,t){return this.underylingTypedChannel.registerNotificationHandler(e,async(n,r)=>await t(n,await this.converters.getNewContext(r)))}registerRequestHandler(e,t){return this.underylingTypedChannel.registerRequestHandler(e,async(n,r,i)=>await t(n,r,await this.converters.getNewContext(i)))}},j=class Pe extends te{channelCtor;static fromTransport(t,n={}){return new Pe($e.createChannel(t,n.logger),n)}_requestSender=void 0;_handler=new Map;_unknownNotificationHandler=new Set;_timeout;sendExceptionDetails=!1;_logger;constructor(t,n={}){super(),this.channelCtor=t,this._logger=n.logger,this.sendExceptionDetails=!!n.sendExceptionDetails,this._timeout=Ge(1e3,()=>{this._requestSender||console.warn(`"${this.startListen.name}" has not been called within 1 second after construction of this channel. Did you forget to call it?`,this)})}listeningDeferred=new Qe;onListening=this.listeningDeferred.promise;_requestDidErrorEventEmitter=new z;onRequestDidError=this._requestDidErrorEventEmitter.event;startListen(){if(this._requestSender)throw new Error(`"${this.startListen.name}" can be called only once, but it already has been called.`);this._timeout&&(this._timeout.dispose(),this._timeout=void 0),this._requestSender=this.channelCtor.connect({handleRequest:(t,n,r)=>this.handleRequest(t,n,r),handleNotification:(t,n)=>this.handleNotification(t,n)}),this.listeningDeferred.resolve()}checkChannel(t){if(!t)throw new Error(`"${this.startListen.name}" must be called before any messages can be sent or received.`);return!0}async handleRequest(t,n,r){const i=this._handler.get(t.method);if(!i)return this._logger&&this._logger.debug({text:`No request handler for "${t.method}".`,data:{requestObject:t}}),{error:{code:w.methodNotFound,message:`No request handler for "${t.method}".`,data:{method:t.method}}};if(i.kind!="request"){const a=`"${t.method}" is registered as notification, but was sent as request.`;return this._logger&&this._logger.debug({text:a,data:{requestObject:t}}),{error:{code:w.invalidRequest,message:a,data:{method:t.method}}}}const o=i.requestType.paramsSerializer.deserializeFromJson(t.params);if(o.hasErrors){const a=`Got invalid params: ${o.errorMessage}`;return this._logger&&this._logger.debug({text:a,data:{requestObject:t,errorMessage:o.errorMessage}}),{error:{code:w.invalidParams,message:a,data:{errors:o.errorMessage}}}}else{const a=o.value;let l;try{const g=await i.handler(a,n,r);if("error"in g||"errorMessage"in g){const y=g.error?i.requestType.errorSerializer.serializeToJson(g.error):void 0;l={error:{code:g.errorCode||w.genericApplicationError,message:g.errorMessage||"An error was returned",data:y}}}else l={result:i.requestType.resultSerializer.serializeToJson(g.ok)}}catch(g){g instanceof re?l={error:{code:g.code,message:g.message}}:(this._logger&&this._logger.warn({text:`An exception was thrown while handling a request: ${g}.`,exception:g,data:{requestObject:t}}),l={error:{code:w.unexpectedServerError,message:this.sendExceptionDetails?`An exception was thrown while handling a request: ${g}.`:"Server has thrown an unexpected exception"}})}return l}}async handleNotification(t,n){const r=this._handler.get(t.method);if(!r){for(const a of this._unknownNotificationHandler)a(t);this._unknownNotificationHandler.size===0&&this._logger&&this._logger.debug({text:`Unhandled notification "${t.method}"`,data:{requestObject:t}});return}if(r.kind!="notification"){this._logger&&this._logger.debug({text:`"${t.method}" is registered as request, but was sent as notification.`,data:{requestObject:t}});return}const i=r.notificationType.paramsSerializer.deserializeFromJson(t.params);if(i.hasErrors){this._logger&&this._logger.debug({text:`Got invalid params: ${i}`,data:{requestObject:t,errorMessage:i.errorMessage}});return}const o=i.value;for(const a of r.handlers)try{a(o,n)}catch(l){this._logger&&this._logger.warn({text:`An exception was thrown while handling a notification: ${l}.`,exception:l,data:{requestObject:t}})}}registerUnknownNotificationHandler(t){return q(this._unknownNotificationHandler,t)}registerRequestHandler(t,n){if(this._handler.get(t.method))throw new Error(`Handler with method "${t.method}" already registered.`);return q(this._handler,t.method,{kind:"request",requestType:t,handler:n})}registerNotificationHandler(t,n){let r=this._handler.get(t.method);if(!r)r={kind:"notification",notificationType:t,handlers:new Set},this._handler.set(t.method,r);else{if(r.kind!=="notification")throw new Error(`Method "${t.method}" was already registered as request handler.`);if(r.notificationType!==t)throw new Error(`Method "${t.method}" was registered for a different type.`)}return q(r.handlers,n)}getRegisteredTypes(){const t=[];for(const n of this._handler.values())n.kind==="notification"?t.push(n.notificationType):n.kind==="request"&&t.push(n.requestType);return t}async request(t,n,r){if(!this.checkChannel(this._requestSender))throw new Error("Impossible");const i=t.paramsSerializer.serializeToJson(n);ne(i);const o=await this._requestSender.sendRequest({method:t.method,params:i},r);if("error"in o){if(t.isOptional&&o.error.code===w.methodNotFound)return ee;let a;if(o.error.data!==void 0){const g=t.errorSerializer.deserializeFromJson(o.error.data);if(g.hasErrors)throw new Error(g.errorMessage);a=g.value}else a=void 0;const l=new re(o.error.message,a,o.error.code);throw this._requestDidErrorEventEmitter.fire({error:l}),l}else{const a=t.resultSerializer.deserializeFromJson(o.result);if(a.hasErrors)throw new Error("Could not deserialize response: "+a.errorMessage+`
1
+ define("vs/editor/editor.main",["exports","require","vs/nls.messages-loader!","../monaco.contribution-Ba-90VRW","../monaco.contribution-D4gtmCUd","../monaco.contribution-DBV8hY3j","../monaco.contribution-bCyc25XC","../basic-languages/monaco.contribution","../editor.api-DGkWFOQA","../workers-DnTKLxL6"],(function(D,S,Yn,O,A,N,W,Xn,s,Z){"use strict";function Ne(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const We=Ne(S),ze=""+new URL(S.toUrl("../assets/json.worker-BCgqF_m2.js"),document.baseURI).href,qe=""+new URL(S.toUrl("../assets/css.worker-DpW7RrDt.js"),document.baseURI).href,je=""+new URL(S.toUrl("../assets/html.worker-zYFVFHK_.js"),document.baseURI).href,Ue=""+new URL(S.toUrl("../assets/ts.worker-CQxe4KB6.js"),document.baseURI).href,Be=""+new URL(S.toUrl("../assets/editor.worker-BvjSTWxN.js"),document.baseURI).href;function Ve(e){return e.method!==void 0}var K;(function(e){function t(n){return n}e.create=t})(K||(K={}));var w;(function(e){e.parseError=-32700,e.invalidRequest=-32600,e.methodNotFound=-32601,e.invalidParams=-32602,e.internalError=-32603;function t(o){return-32099<=o&&o<=-32e3}e.isServerError=t;function n(o){if(!t(o))throw new Error("Invalid range for a server error.");return o}e.serverError=n,e.unexpectedServerError=-32e3;function r(o){return!0}e.isApplicationError=r;function i(o){return o}e.applicationError=i,e.genericApplicationError=-320100})(w||(w={}));var z=class{listeners=new Set;event=e=>(this.listeners.add(e),{dispose:()=>{this.listeners.delete(e)}});fire(e){this.listeners.forEach(t=>t(e))}},Je=class{_value;eventEmitter;constructor(e){this._value=e,this.eventEmitter=new z}get value(){return this._value}set value(e){this._value!==e&&(this._value=e,this.eventEmitter.fire(e))}get onChange(){return this.eventEmitter.event}};function Ge(e,t){const n=setTimeout(t,e);return{dispose:()=>clearTimeout(n)}}function q(e,t,n){return e instanceof Set?(e.add(t),{dispose:()=>e.delete(t)}):(e.set(t,n),{dispose:()=>e.delete(t)})}var Qe=class{_state="none";promise;resolve=()=>{};reject=()=>{};constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}get state(){return this._state}},$=class Me{static id=0;_unprocessedMessages=[];_messageListener;id=Me.id++;_state=new Je({state:"open"});state=this._state;setListener(t){if(this._messageListener=t,!!t)for(;this._unprocessedMessages.length>0&&this._messageListener!==void 0;){const n=this._unprocessedMessages.shift();this._messageListener(n)}}send(t){return this._sendImpl(t)}_dispatchReceivedMessage(t){this._unprocessedMessages.length===0&&this._messageListener?this._messageListener(t):this._unprocessedMessages.push(t)}_onConnectionClosed(){this._state.value={state:"closed",error:void 0}}log(t){return new Ye(this,t??new Xe)}},Ye=class{baseStream;logger;constructor(e,t){this.baseStream=e,this.logger=t}get state(){return this.baseStream.state}setListener(e){if(e===void 0){this.baseStream.setListener(void 0);return}this.baseStream.setListener(t=>{this.logger.log(this.baseStream,"incoming",t),e(t)})}send(e){return this.logger.log(this.baseStream,"outgoing",e),this.baseStream.send(e)}toString(){return`StreamLogger/${this.baseStream.toString()}`}},Xe=class{log(e,t,n){console.log(`${t==="incoming"?"<-":"->"} [${e.toString()}] ${JSON.stringify(n)}`)}},Ze=class Fe{connect;constructor(t){this.connect=t}mapContext(t){return new Fe(n=>this.connect(n?Ke(n,t):void 0))}};function Ke(e,t){return{handleNotification:(n,r)=>e.handleNotification(n,t(r)),handleRequest:(n,r,i)=>e.handleRequest(n,r,t(i))}}var $e=class Ee{_stream;_listener;_logger;static createChannel(t,n){let r=!1;return new Ze(i=>{if(r)throw new Error(`A channel to the stream ${t} was already constructed!`);return r=!0,new Ee(t,i,n)})}_unprocessedResponses=new Map;_lastUsedRequestId=0;constructor(t,n,r){this._stream=t,this._listener=n,this._logger=r,this._stream.setListener(i=>{Ve(i)?i.id===void 0?this._processNotification(i):this._processRequest(i):this._processResponse(i)})}get state(){return this._stream.state}async _processNotification(t){if(t.id!==void 0)throw new Error;if(!this._listener){this._logger&&this._logger.debug({text:"Notification ignored",message:t});return}try{await this._listener.handleNotification({method:t.method,params:t.params||null})}catch(n){this._logger&&this._logger.warn({text:`Exception was thrown while handling notification: ${n}`,exception:n,message:t})}}async _processRequest(t){if(t.id===void 0)throw new Error;let n;if(this._listener)try{n=await this._listener.handleRequest({method:t.method,params:t.params||null},t.id)}catch(i){this._logger&&this._logger.warn({text:`Exception was thrown while handling request: ${i}`,message:t,exception:i}),n={error:{code:w.internalError,message:"An unexpected exception was thrown.",data:void 0}}}else this._logger&&this._logger.debug({text:"Received request even though not listening for requests",message:t}),n={error:{code:w.methodNotFound,message:"This endpoint does not listen for requests or notifications.",data:void 0}};let r;"result"in n?r={jsonrpc:"2.0",id:t.id,result:n.result}:r={jsonrpc:"2.0",id:t.id,error:n.error},await this._stream.send(r)}_processResponse(t){const n=""+t.id,r=this._unprocessedResponses.get(n);if(!r){this._logger&&this._logger.debug({text:"Got an unexpected response message",message:t});return}this._unprocessedResponses.delete(n),r(t)}_newRequestId(){return this._lastUsedRequestId++}sendRequest(t,n,r){const i={jsonrpc:"2.0",id:this._newRequestId(),method:t.method,params:t.params||void 0};return r&&r(i.id),new Promise((o,a)=>{const l=""+i.id;this._unprocessedResponses.set(l,g=>{"result"in g?o({result:g.result}):(g.error||a(new Error("Response had neither 'result' nor 'error' field set.")),o({error:g.error}))}),this._stream.send(i).then(void 0,g=>{this._unprocessedResponses.delete(l),a(g)})})}sendNotification(t,n){const r={jsonrpc:"2.0",id:void 0,method:t.method,params:t.params||void 0};return this._stream.send(r)}toString(){return"StreamChannel/"+this._stream.toString()}},C;(function(e){function t(){return{deserializeFromJson:i=>({hasErrors:!1,value:i}),serializeToJson:i=>i}}e.sAny=t;function n(){return{deserializeFromJson:i=>({hasErrors:!1,value:{}}),serializeToJson:i=>({})}}e.sEmptyObject=n;function r(){return{deserializeFromJson:i=>({hasErrors:!1,value:void 0}),serializeToJson:i=>null}}e.sVoidFromNull=r})(C||(C={}));const ee=Symbol("OptionalMethodNotFound");var te=class{contextualize(e){return new et(this,e)}},et=class extends te{underylingTypedChannel;converters;constructor(e,t){super(),this.underylingTypedChannel=e,this.converters=t}async request(e,t,n){const r=await this.converters.getSendContext(n);return this.underylingTypedChannel.request(e,t,r)}async notify(e,t,n){const r=await this.converters.getSendContext(n);return this.underylingTypedChannel.notify(e,t,r)}registerNotificationHandler(e,t){return this.underylingTypedChannel.registerNotificationHandler(e,async(n,r)=>await t(n,await this.converters.getNewContext(r)))}registerRequestHandler(e,t){return this.underylingTypedChannel.registerRequestHandler(e,async(n,r,i)=>await t(n,r,await this.converters.getNewContext(i)))}},j=class Pe extends te{channelCtor;static fromTransport(t,n={}){return new Pe($e.createChannel(t,n.logger),n)}_requestSender=void 0;_handler=new Map;_unknownNotificationHandler=new Set;_timeout;sendExceptionDetails=!1;_logger;constructor(t,n={}){super(),this.channelCtor=t,this._logger=n.logger,this.sendExceptionDetails=!!n.sendExceptionDetails,this._timeout=Ge(1e3,()=>{this._requestSender||console.warn(`"${this.startListen.name}" has not been called within 1 second after construction of this channel. Did you forget to call it?`,this)})}listeningDeferred=new Qe;onListening=this.listeningDeferred.promise;_requestDidErrorEventEmitter=new z;onRequestDidError=this._requestDidErrorEventEmitter.event;startListen(){if(this._requestSender)throw new Error(`"${this.startListen.name}" can be called only once, but it already has been called.`);this._timeout&&(this._timeout.dispose(),this._timeout=void 0),this._requestSender=this.channelCtor.connect({handleRequest:(t,n,r)=>this.handleRequest(t,n,r),handleNotification:(t,n)=>this.handleNotification(t,n)}),this.listeningDeferred.resolve()}checkChannel(t){if(!t)throw new Error(`"${this.startListen.name}" must be called before any messages can be sent or received.`);return!0}async handleRequest(t,n,r){const i=this._handler.get(t.method);if(!i)return this._logger&&this._logger.debug({text:`No request handler for "${t.method}".`,data:{requestObject:t}}),{error:{code:w.methodNotFound,message:`No request handler for "${t.method}".`,data:{method:t.method}}};if(i.kind!="request"){const a=`"${t.method}" is registered as notification, but was sent as request.`;return this._logger&&this._logger.debug({text:a,data:{requestObject:t}}),{error:{code:w.invalidRequest,message:a,data:{method:t.method}}}}const o=i.requestType.paramsSerializer.deserializeFromJson(t.params);if(o.hasErrors){const a=`Got invalid params: ${o.errorMessage}`;return this._logger&&this._logger.debug({text:a,data:{requestObject:t,errorMessage:o.errorMessage}}),{error:{code:w.invalidParams,message:a,data:{errors:o.errorMessage}}}}else{const a=o.value;let l;try{const g=await i.handler(a,n,r);if("error"in g||"errorMessage"in g){const y=g.error?i.requestType.errorSerializer.serializeToJson(g.error):void 0;l={error:{code:g.errorCode||w.genericApplicationError,message:g.errorMessage||"An error was returned",data:y}}}else l={result:i.requestType.resultSerializer.serializeToJson(g.ok)}}catch(g){g instanceof re?l={error:{code:g.code,message:g.message}}:(this._logger&&this._logger.warn({text:`An exception was thrown while handling a request: ${g}.`,exception:g,data:{requestObject:t}}),l={error:{code:w.unexpectedServerError,message:this.sendExceptionDetails?`An exception was thrown while handling a request: ${g}.`:"Server has thrown an unexpected exception"}})}return l}}async handleNotification(t,n){const r=this._handler.get(t.method);if(!r){for(const a of this._unknownNotificationHandler)a(t);this._unknownNotificationHandler.size===0&&this._logger&&this._logger.debug({text:`Unhandled notification "${t.method}"`,data:{requestObject:t}});return}if(r.kind!="notification"){this._logger&&this._logger.debug({text:`"${t.method}" is registered as request, but was sent as notification.`,data:{requestObject:t}});return}const i=r.notificationType.paramsSerializer.deserializeFromJson(t.params);if(i.hasErrors){this._logger&&this._logger.debug({text:`Got invalid params: ${i}`,data:{requestObject:t,errorMessage:i.errorMessage}});return}const o=i.value;for(const a of r.handlers)try{a(o,n)}catch(l){this._logger&&this._logger.warn({text:`An exception was thrown while handling a notification: ${l}.`,exception:l,data:{requestObject:t}})}}registerUnknownNotificationHandler(t){return q(this._unknownNotificationHandler,t)}registerRequestHandler(t,n){if(this._handler.get(t.method))throw new Error(`Handler with method "${t.method}" already registered.`);return q(this._handler,t.method,{kind:"request",requestType:t,handler:n})}registerNotificationHandler(t,n){let r=this._handler.get(t.method);if(!r)r={kind:"notification",notificationType:t,handlers:new Set},this._handler.set(t.method,r);else{if(r.kind!=="notification")throw new Error(`Method "${t.method}" was already registered as request handler.`);if(r.notificationType!==t)throw new Error(`Method "${t.method}" was registered for a different type.`)}return q(r.handlers,n)}getRegisteredTypes(){const t=[];for(const n of this._handler.values())n.kind==="notification"?t.push(n.notificationType):n.kind==="request"&&t.push(n.requestType);return t}async request(t,n,r){if(!this.checkChannel(this._requestSender))throw new Error("Impossible");const i=t.paramsSerializer.serializeToJson(n);ne(i);const o=await this._requestSender.sendRequest({method:t.method,params:i},r);if("error"in o){if(t.isOptional&&o.error.code===w.methodNotFound)return ee;let a;if(o.error.data!==void 0){const g=t.errorSerializer.deserializeFromJson(o.error.data);if(g.hasErrors)throw new Error(g.errorMessage);a=g.value}else a=void 0;const l=new re(o.error.message,a,o.error.code);throw this._requestDidErrorEventEmitter.fire({error:l}),l}else{const a=t.resultSerializer.deserializeFromJson(o.result);if(a.hasErrors)throw new Error("Could not deserialize response: "+a.errorMessage+`
2
2
 
3
3
  ${JSON.stringify(o,null,2)}`);return a.value}}async notify(t,n,r){if(!this.checkChannel(this._requestSender))throw new Error;const i=t.paramsSerializer.serializeToJson(n);ne(i),this._requestSender.sendNotification({method:t.method,params:i},r)}};function ne(e){if(e!==null&&Array.isArray(e)&&typeof e!="object")throw new Error("Invalid value! Only null, array and object is allowed.")}var re=class Le extends Error{data;code;constructor(t,n,r=w.genericApplicationError){super(t),this.data=n,this.code=r,Object.setPrototypeOf(this,Le.prototype)}},tt=class Y{method;paramsSerializer;resultSerializer;errorSerializer;isOptional;kind="request";constructor(t,n,r,i,o=!1){this.method=t,this.paramsSerializer=n,this.resultSerializer=r,this.errorSerializer=i,this.isOptional=o}withMethod(t){return new Y(t,this.paramsSerializer,this.resultSerializer,this.errorSerializer)}optional(){return new Y(this.method,this.paramsSerializer,this.resultSerializer,this.errorSerializer,!0)}},nt=class He{method;paramsSerializer;kind="notification";constructor(t,n){this.method=t,this.paramsSerializer=n}withMethod(t){return new He(t,this.paramsSerializer)}};function c(e){return new tt((e||{}).method,C.sAny(),C.sAny(),C.sAny())}function h(e){return new nt((e||{}).method,C.sAny())}const rt=Symbol();var ie=class Ie{error;static factory=t=>new Ie(t);[rt];constructor(t){this.error=t}};function it(e){const t=oe(e.server),n=oe(e.client);return new ot(e.tags||[],t,n)}function oe(e){const t={};for(const[n,r]of Object.entries(e)){const i=r.method?r.method:n;t[n]=r.withMethod(i)}return t}var ot=class Oe{tags;server;client;_onlyDesignTime(){return new Error("This property is not meant to be accessed at runtime")}get TContractObject(){throw this._onlyDesignTime()}get TClientInterface(){throw this._onlyDesignTime()}get TServerInterface(){throw this._onlyDesignTime()}get TClientHandler(){throw this._onlyDesignTime()}get TServerHandler(){throw this._onlyDesignTime()}get TTags(){throw this._onlyDesignTime()}constructor(t=[],n,r){this.tags=t,this.server=n,this.client=r}getInterface(t,n,r,i){const o=this.buildCounterpart(t,r),a=this.registerHandlers(t,n,i,o);return{counterpart:o,dispose:()=>a.dispose()}}buildCounterpart(t,n){const r={};for(const[i,o]of Object.entries(n)){let a;o.kind==="request"?o.isOptional?a=async(l,g)=>{l===void 0&&(l={});try{return await t.request(o,l,g)}catch(y){if(y&&y.code===w.methodNotFound)return ee;throw y}}:a=(l,g)=>(l===void 0&&(l={}),t.request(o,l,g)):a=(l,g)=>(l===void 0&&(l={}),t.notify(o,l,g)),r[i]=a}return r}registerHandlers(t,n,r,i){const o=[];for(const[a,l]of Object.entries(n))if(l.kind==="request"){let g=r[a];if(!g)continue;const y=this.createRequestHandler(i,g);o.push(t.registerRequestHandler(l,y))}else{const g=r[a];g&&o.push(t.registerNotificationHandler(l,(y,Qn)=>{g(y,{context:Qn,counterpart:i})}))}return{dispose:()=>o.forEach(a=>a.dispose())}}createRequestHandler(t,n){return async(r,i,o)=>{const a=await n(r,{context:o,counterpart:t,newErr:ie.factory,requestId:i});return a instanceof ie?a.error:{ok:a}}}static getServerFromStream(t,n,r,i){const o=j.fromTransport(n,r),{server:a}=t.getServer(o,i);return o.startListen(),{channel:o,server:a}}static registerServerToStream(t,n,r,i){const o=j.fromTransport(n,r),{client:a}=t.registerServer(o,i);return o.startListen(),{channel:o,client:a}}getServer(t,n){const{counterpart:r,dispose:i}=this.getInterface(t,this.client,this.server,n);return{server:r,dispose:i}}registerServer(t,n){const{counterpart:r,dispose:i}=this.getInterface(t,this.server,this.client,n);return{client:r,dispose:i}}withContext(){return new Oe(this.tags,this.server,this.client)}};let R=(function(e){return e.Comment="comment",e.Imports="imports",e.Region="region",e})({}),m=(function(e){return e[e.File=1]="File",e[e.Module=2]="Module",e[e.Namespace=3]="Namespace",e[e.Package=4]="Package",e[e.Class=5]="Class",e[e.Method=6]="Method",e[e.Property=7]="Property",e[e.Field=8]="Field",e[e.Constructor=9]="Constructor",e[e.Enum=10]="Enum",e[e.Interface=11]="Interface",e[e.Function=12]="Function",e[e.Variable=13]="Variable",e[e.Constant=14]="Constant",e[e.String=15]="String",e[e.Number=16]="Number",e[e.Boolean=17]="Boolean",e[e.Array=18]="Array",e[e.Object=19]="Object",e[e.Key=20]="Key",e[e.Null=21]="Null",e[e.EnumMember=22]="EnumMember",e[e.Struct=23]="Struct",e[e.Event=24]="Event",e[e.Operator=25]="Operator",e[e.TypeParameter=26]="TypeParameter",e})({}),se=(function(e){return e[e.Deprecated=1]="Deprecated",e})({}),ae=(function(e){return e[e.Type=1]="Type",e[e.Parameter=2]="Parameter",e})({}),st=(function(e){return e[e.None=0]="None",e[e.Full=1]="Full",e[e.Incremental=2]="Incremental",e})({}),f=(function(e){return e[e.Text=1]="Text",e[e.Method=2]="Method",e[e.Function=3]="Function",e[e.Constructor=4]="Constructor",e[e.Field=5]="Field",e[e.Variable=6]="Variable",e[e.Class=7]="Class",e[e.Interface=8]="Interface",e[e.Module=9]="Module",e[e.Property=10]="Property",e[e.Unit=11]="Unit",e[e.Value=12]="Value",e[e.Enum=13]="Enum",e[e.Keyword=14]="Keyword",e[e.Snippet=15]="Snippet",e[e.Color=16]="Color",e[e.File=17]="File",e[e.Reference=18]="Reference",e[e.Folder=19]="Folder",e[e.EnumMember=20]="EnumMember",e[e.Constant=21]="Constant",e[e.Struct=22]="Struct",e[e.Event=23]="Event",e[e.Operator=24]="Operator",e[e.TypeParameter=25]="TypeParameter",e})({}),at=(function(e){return e[e.Deprecated=1]="Deprecated",e})({}),ct=(function(e){return e[e.PlainText=1]="PlainText",e[e.Snippet=2]="Snippet",e})({}),U=(function(e){return e[e.Text=1]="Text",e[e.Read=2]="Read",e[e.Write=3]="Write",e})({}),x=(function(e){return e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll",e})({}),P=(function(e){return e.PlainText="plaintext",e.Markdown="markdown",e})({}),_=(function(e){return e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Information=3]="Information",e[e.Hint=4]="Hint",e})({}),ce=(function(e){return e[e.Unnecessary=1]="Unnecessary",e[e.Deprecated=2]="Deprecated",e})({}),L=(function(e){return e[e.Invoked=1]="Invoked",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",e})({}),H=(function(e){return e[e.Invoked=1]="Invoked",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange",e})({}),B=(function(e){return e[e.Invoked=1]="Invoked",e[e.Automatic=2]="Automatic",e})({}),lt=(function(e){return e.Relative="relative",e})({});var d=class{constructor(e){this.method=e}};const u={textDocumentImplementation:new d("textDocument/implementation"),textDocumentTypeDefinition:new d("textDocument/typeDefinition"),textDocumentDocumentColor:new d("textDocument/documentColor"),textDocumentColorPresentation:new d("textDocument/colorPresentation"),textDocumentFoldingRange:new d("textDocument/foldingRange"),textDocumentDeclaration:new d("textDocument/declaration"),textDocumentSelectionRange:new d("textDocument/selectionRange"),textDocumentPrepareCallHierarchy:new d("textDocument/prepareCallHierarchy"),textDocumentSemanticTokensFull:new d("textDocument/semanticTokens/full"),textDocumentSemanticTokensFullDelta:new d("textDocument/semanticTokens/full/delta"),textDocumentLinkedEditingRange:new d("textDocument/linkedEditingRange"),workspaceWillCreateFiles:new d("workspace/willCreateFiles"),workspaceWillRenameFiles:new d("workspace/willRenameFiles"),workspaceWillDeleteFiles:new d("workspace/willDeleteFiles"),textDocumentMoniker:new d("textDocument/moniker"),textDocumentPrepareTypeHierarchy:new d("textDocument/prepareTypeHierarchy"),textDocumentInlineValue:new d("textDocument/inlineValue"),textDocumentInlayHint:new d("textDocument/inlayHint"),textDocumentDiagnostic:new d("textDocument/diagnostic"),textDocumentInlineCompletion:new d("textDocument/inlineCompletion"),textDocumentWillSaveWaitUntil:new d("textDocument/willSaveWaitUntil"),textDocumentCompletion:new d("textDocument/completion"),textDocumentHover:new d("textDocument/hover"),textDocumentSignatureHelp:new d("textDocument/signatureHelp"),textDocumentDefinition:new d("textDocument/definition"),textDocumentReferences:new d("textDocument/references"),textDocumentDocumentHighlight:new d("textDocument/documentHighlight"),textDocumentDocumentSymbol:new d("textDocument/documentSymbol"),textDocumentCodeAction:new d("textDocument/codeAction"),workspaceSymbol:new d("workspace/symbol"),textDocumentCodeLens:new d("textDocument/codeLens"),textDocumentDocumentLink:new d("textDocument/documentLink"),textDocumentFormatting:new d("textDocument/formatting"),textDocumentRangeFormatting:new d("textDocument/rangeFormatting"),textDocumentRangesFormatting:new d("textDocument/rangesFormatting"),textDocumentOnTypeFormatting:new d("textDocument/onTypeFormatting"),textDocumentRename:new d("textDocument/rename"),workspaceExecuteCommand:new d("workspace/executeCommand"),workspaceDidCreateFiles:new d("workspace/didCreateFiles"),workspaceDidRenameFiles:new d("workspace/didRenameFiles"),workspaceDidDeleteFiles:new d("workspace/didDeleteFiles"),workspaceDidChangeConfiguration:new d("workspace/didChangeConfiguration"),textDocumentDidOpen:new d("textDocument/didOpen"),textDocumentDidChange:new d("textDocument/didChange"),textDocumentDidClose:new d("textDocument/didClose"),textDocumentDidSave:new d("textDocument/didSave"),textDocumentWillSave:new d("textDocument/willSave"),workspaceDidChangeWatchedFiles:new d("workspace/didChangeWatchedFiles")},F=it({server:{textDocumentImplementation:c({method:"textDocument/implementation"}),textDocumentTypeDefinition:c({method:"textDocument/typeDefinition"}),textDocumentDocumentColor:c({method:"textDocument/documentColor"}),textDocumentColorPresentation:c({method:"textDocument/colorPresentation"}),textDocumentFoldingRange:c({method:"textDocument/foldingRange"}),textDocumentDeclaration:c({method:"textDocument/declaration"}),textDocumentSelectionRange:c({method:"textDocument/selectionRange"}),textDocumentPrepareCallHierarchy:c({method:"textDocument/prepareCallHierarchy"}),callHierarchyIncomingCalls:c({method:"callHierarchy/incomingCalls"}),callHierarchyOutgoingCalls:c({method:"callHierarchy/outgoingCalls"}),textDocumentSemanticTokensFull:c({method:"textDocument/semanticTokens/full"}),textDocumentSemanticTokensFullDelta:c({method:"textDocument/semanticTokens/full/delta"}),textDocumentSemanticTokensRange:c({method:"textDocument/semanticTokens/range"}),textDocumentLinkedEditingRange:c({method:"textDocument/linkedEditingRange"}),workspaceWillCreateFiles:c({method:"workspace/willCreateFiles"}),workspaceWillRenameFiles:c({method:"workspace/willRenameFiles"}),workspaceWillDeleteFiles:c({method:"workspace/willDeleteFiles"}),textDocumentMoniker:c({method:"textDocument/moniker"}),textDocumentPrepareTypeHierarchy:c({method:"textDocument/prepareTypeHierarchy"}),typeHierarchySupertypes:c({method:"typeHierarchy/supertypes"}),typeHierarchySubtypes:c({method:"typeHierarchy/subtypes"}),textDocumentInlineValue:c({method:"textDocument/inlineValue"}),textDocumentInlayHint:c({method:"textDocument/inlayHint"}),inlayHintResolve:c({method:"inlayHint/resolve"}),textDocumentDiagnostic:c({method:"textDocument/diagnostic"}),workspaceDiagnostic:c({method:"workspace/diagnostic"}),textDocumentInlineCompletion:c({method:"textDocument/inlineCompletion"}),initialize:c({method:"initialize"}),shutdown:c({method:"shutdown"}),textDocumentWillSaveWaitUntil:c({method:"textDocument/willSaveWaitUntil"}),textDocumentCompletion:c({method:"textDocument/completion"}),completionItemResolve:c({method:"completionItem/resolve"}),textDocumentHover:c({method:"textDocument/hover"}),textDocumentSignatureHelp:c({method:"textDocument/signatureHelp"}),textDocumentDefinition:c({method:"textDocument/definition"}),textDocumentReferences:c({method:"textDocument/references"}),textDocumentDocumentHighlight:c({method:"textDocument/documentHighlight"}),textDocumentDocumentSymbol:c({method:"textDocument/documentSymbol"}),textDocumentCodeAction:c({method:"textDocument/codeAction"}),codeActionResolve:c({method:"codeAction/resolve"}),workspaceSymbol:c({method:"workspace/symbol"}),workspaceSymbolResolve:c({method:"workspaceSymbol/resolve"}),textDocumentCodeLens:c({method:"textDocument/codeLens"}),codeLensResolve:c({method:"codeLens/resolve"}),textDocumentDocumentLink:c({method:"textDocument/documentLink"}),documentLinkResolve:c({method:"documentLink/resolve"}),textDocumentFormatting:c({method:"textDocument/formatting"}),textDocumentRangeFormatting:c({method:"textDocument/rangeFormatting"}),textDocumentRangesFormatting:c({method:"textDocument/rangesFormatting"}),textDocumentOnTypeFormatting:c({method:"textDocument/onTypeFormatting"}),textDocumentRename:c({method:"textDocument/rename"}),textDocumentPrepareRename:c({method:"textDocument/prepareRename"}),workspaceExecuteCommand:c({method:"workspace/executeCommand"}),workspaceDidChangeWorkspaceFolders:h({method:"workspace/didChangeWorkspaceFolders"}),windowWorkDoneProgressCancel:h({method:"window/workDoneProgress/cancel"}),workspaceDidCreateFiles:h({method:"workspace/didCreateFiles"}),workspaceDidRenameFiles:h({method:"workspace/didRenameFiles"}),workspaceDidDeleteFiles:h({method:"workspace/didDeleteFiles"}),notebookDocumentDidOpen:h({method:"notebookDocument/didOpen"}),notebookDocumentDidChange:h({method:"notebookDocument/didChange"}),notebookDocumentDidSave:h({method:"notebookDocument/didSave"}),notebookDocumentDidClose:h({method:"notebookDocument/didClose"}),initialized:h({method:"initialized"}),exit:h({method:"exit"}),workspaceDidChangeConfiguration:h({method:"workspace/didChangeConfiguration"}),textDocumentDidOpen:h({method:"textDocument/didOpen"}),textDocumentDidChange:h({method:"textDocument/didChange"}),textDocumentDidClose:h({method:"textDocument/didClose"}),textDocumentDidSave:h({method:"textDocument/didSave"}),textDocumentWillSave:h({method:"textDocument/willSave"}),workspaceDidChangeWatchedFiles:h({method:"workspace/didChangeWatchedFiles"}),setTrace:h({method:"$/setTrace"}),cancelRequest:h({method:"$/cancelRequest"}),progress:h({method:"$/progress"})},client:{workspaceWorkspaceFolders:c({method:"workspace/workspaceFolders"}).optional(),workspaceConfiguration:c({method:"workspace/configuration"}).optional(),workspaceFoldingRangeRefresh:c({method:"workspace/foldingRange/refresh"}).optional(),windowWorkDoneProgressCreate:c({method:"window/workDoneProgress/create"}).optional(),workspaceSemanticTokensRefresh:c({method:"workspace/semanticTokens/refresh"}).optional(),windowShowDocument:c({method:"window/showDocument"}).optional(),workspaceInlineValueRefresh:c({method:"workspace/inlineValue/refresh"}).optional(),workspaceInlayHintRefresh:c({method:"workspace/inlayHint/refresh"}).optional(),workspaceDiagnosticRefresh:c({method:"workspace/diagnostic/refresh"}).optional(),clientRegisterCapability:c({method:"client/registerCapability"}).optional(),clientUnregisterCapability:c({method:"client/unregisterCapability"}).optional(),windowShowMessageRequest:c({method:"window/showMessageRequest"}).optional(),workspaceCodeLensRefresh:c({method:"workspace/codeLens/refresh"}).optional(),workspaceApplyEdit:c({method:"workspace/applyEdit"}).optional(),windowShowMessage:h({method:"window/showMessage"}),windowLogMessage:h({method:"window/logMessage"}),telemetryEvent:h({method:"telemetry/event"}),textDocumentPublishDiagnostics:h({method:"textDocument/publishDiagnostics"}),logTrace:h({method:"$/logTrace"}),cancelRequest:h({method:"$/cancelRequest"}),progress:h({method:"$/progress"})}});function k(e,t){if(e.textModel!==t)throw new Error(`Expected text model to be ${t}, but got ${e.textModel}`);return e}var p=class{static None=Object.freeze({dispose(){}});_store=new V;constructor(){}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}},V=class{static DISABLE_DISPOSED_WARNING=!1;_toDispose=new Set;_isDisposed=!1;dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}clear(){if(this._toDispose.size!==0)try{for(const t of this._toDispose)t.dispose()}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}};const le=new Map([[x.Empty,""],[x.QuickFix,"quickfix"],[x.Refactor,"refactor"],[x.RefactorExtract,"refactor.extract"],[x.RefactorInline,"refactor.inline"],[x.RefactorRewrite,"refactor.rewrite"],[x.Source,"source"],[x.SourceOrganizeImports,"source.organizeImports"],[x.SourceFixAll,"source.fixAll"]]);function ut(e){if(e)return le.get(e)??e}const dt=new Map([[s.languages.CodeActionTriggerType.Invoke,B.Invoked],[s.languages.CodeActionTriggerType.Auto,B.Automatic]]);function gt(e){return dt.get(e)??B.Invoked}const ue=new Map([[f.Text,s.languages.CompletionItemKind.Text],[f.Method,s.languages.CompletionItemKind.Method],[f.Function,s.languages.CompletionItemKind.Function],[f.Constructor,s.languages.CompletionItemKind.Constructor],[f.Field,s.languages.CompletionItemKind.Field],[f.Variable,s.languages.CompletionItemKind.Variable],[f.Class,s.languages.CompletionItemKind.Class],[f.Interface,s.languages.CompletionItemKind.Interface],[f.Module,s.languages.CompletionItemKind.Module],[f.Property,s.languages.CompletionItemKind.Property],[f.Unit,s.languages.CompletionItemKind.Unit],[f.Value,s.languages.CompletionItemKind.Value],[f.Enum,s.languages.CompletionItemKind.Enum],[f.Keyword,s.languages.CompletionItemKind.Keyword],[f.Snippet,s.languages.CompletionItemKind.Snippet],[f.Color,s.languages.CompletionItemKind.Color],[f.File,s.languages.CompletionItemKind.File],[f.Reference,s.languages.CompletionItemKind.Reference],[f.Folder,s.languages.CompletionItemKind.Folder],[f.EnumMember,s.languages.CompletionItemKind.EnumMember],[f.Constant,s.languages.CompletionItemKind.Constant],[f.Struct,s.languages.CompletionItemKind.Struct],[f.Event,s.languages.CompletionItemKind.Event],[f.Operator,s.languages.CompletionItemKind.Operator],[f.TypeParameter,s.languages.CompletionItemKind.TypeParameter]]);function ht(e){return e?ue.get(e)??s.languages.CompletionItemKind.Text:s.languages.CompletionItemKind.Text}const de=new Map([[at.Deprecated,s.languages.CompletionItemTag.Deprecated]]);function mt(e){return de.get(e)}const pt=new Map([[s.languages.CompletionTriggerKind.Invoke,L.Invoked],[s.languages.CompletionTriggerKind.TriggerCharacter,L.TriggerCharacter],[s.languages.CompletionTriggerKind.TriggerForIncompleteCompletions,L.TriggerForIncompleteCompletions]]);function ft(e){return pt.get(e)??L.Invoked}const Dt=new Map([[ct.Snippet,s.languages.CompletionItemInsertTextRule.InsertAsSnippet]]);function vt(e){if(e)return Dt.get(e)}const ge=new Map([[m.File,s.languages.SymbolKind.File],[m.Module,s.languages.SymbolKind.Module],[m.Namespace,s.languages.SymbolKind.Namespace],[m.Package,s.languages.SymbolKind.Package],[m.Class,s.languages.SymbolKind.Class],[m.Method,s.languages.SymbolKind.Method],[m.Property,s.languages.SymbolKind.Property],[m.Field,s.languages.SymbolKind.Field],[m.Constructor,s.languages.SymbolKind.Constructor],[m.Enum,s.languages.SymbolKind.Enum],[m.Interface,s.languages.SymbolKind.Interface],[m.Function,s.languages.SymbolKind.Function],[m.Variable,s.languages.SymbolKind.Variable],[m.Constant,s.languages.SymbolKind.Constant],[m.String,s.languages.SymbolKind.String],[m.Number,s.languages.SymbolKind.Number],[m.Boolean,s.languages.SymbolKind.Boolean],[m.Array,s.languages.SymbolKind.Array],[m.Object,s.languages.SymbolKind.Object],[m.Key,s.languages.SymbolKind.Key],[m.Null,s.languages.SymbolKind.Null],[m.EnumMember,s.languages.SymbolKind.EnumMember],[m.Struct,s.languages.SymbolKind.Struct],[m.Event,s.languages.SymbolKind.Event],[m.Operator,s.languages.SymbolKind.Operator],[m.TypeParameter,s.languages.SymbolKind.TypeParameter]]);function he(e){return ge.get(e)??s.languages.SymbolKind.File}const wt=new Map([[se.Deprecated,s.languages.SymbolTag.Deprecated]]);function me(e){return wt.get(e)}const xt=new Map([[U.Text,s.languages.DocumentHighlightKind.Text],[U.Read,s.languages.DocumentHighlightKind.Read],[U.Write,s.languages.DocumentHighlightKind.Write]]);function _t(e){return e?xt.get(e)??s.languages.DocumentHighlightKind.Text:s.languages.DocumentHighlightKind.Text}const yt=new Map([[R.Comment,s.languages.FoldingRangeKind.Comment],[R.Imports,s.languages.FoldingRangeKind.Imports],[R.Region,s.languages.FoldingRangeKind.Region]]);function bt(e){if(e)return yt.get(e)}const kt=new Map([[s.MarkerSeverity.Error,_.Error],[s.MarkerSeverity.Warning,_.Warning],[s.MarkerSeverity.Info,_.Information],[s.MarkerSeverity.Hint,_.Hint]]);function St(e){return kt.get(e)??_.Error}const Ct=new Map([[_.Error,s.MarkerSeverity.Error],[_.Warning,s.MarkerSeverity.Warning],[_.Information,s.MarkerSeverity.Info],[_.Hint,s.MarkerSeverity.Hint]]);function Rt(e){return e?Ct.get(e)??s.MarkerSeverity.Error:s.MarkerSeverity.Error}const pe=new Map([[ce.Unnecessary,s.MarkerTag.Unnecessary],[ce.Deprecated,s.MarkerTag.Deprecated]]);function Tt(e){return pe.get(e)}const Mt=new Map([[s.languages.SignatureHelpTriggerKind.Invoke,H.Invoked],[s.languages.SignatureHelpTriggerKind.TriggerCharacter,H.TriggerCharacter],[s.languages.SignatureHelpTriggerKind.ContentChange,H.ContentChange]]);function Ft(e){return Mt.get(e)??H.Invoked}function T(e){if(e)return{id:e.command,title:e.title,arguments:e.arguments}}const Et=new Map([[ae.Type,s.languages.InlayHintKind.Type],[ae.Parameter,s.languages.InlayHintKind.Parameter]]);function Pt(e){return e?Et.get(e)??s.languages.InlayHintKind.Type:s.languages.InlayHintKind.Type}function b(e,t){if("targetUri"in e){const n=t.bridge.translateBackRange({uri:e.targetUri},e.targetRange);return{uri:n.textModel.uri,range:n.range,originSelectionRange:e.originSelectionRange?t.bridge.translateBackRange({uri:e.targetUri},e.originSelectionRange).range:void 0,targetSelectionRange:e.targetSelectionRange?t.bridge.translateBackRange({uri:e.targetUri},e.targetSelectionRange).range:void 0}}else{const n=t.bridge.translateBackRange({uri:e.uri},e.range);return{uri:n.textModel.uri,range:n.range}}}function v(e){return!e||e.length===0?{language:"*"}:e.map(t=>"notebook"in t?typeof t.notebook=="string"?{notebookType:t.notebook,language:t.language}:{notebookType:t.notebook.notebookType,language:t.language,pattern:t.notebook.pattern,scheme:t.notebook.scheme}:{language:t.language,pattern:t.pattern,scheme:t.scheme})}function Lt(e,t){if(!t)return!0;const n=e.getLanguageId();if(e.uri.toString(!0),!t||t.length===0)return!0;for(const r of t)if(!(r.language&&r.language!=="*"&&r.language!==n))return!0;return!1}function J(e){const t={severity:Rt(e.severity),startLineNumber:e.range.start.line+1,startColumn:e.range.start.character+1,endLineNumber:e.range.end.line+1,endColumn:e.range.end.character+1,message:e.message,source:e.source,code:typeof e.code=="string"?e.code:e.code?.toString()};return e.tags&&(t.tags=e.tags.map(n=>Tt(n)).filter(n=>n!==void 0)),e.relatedInformation&&(t.relatedInformation=e.relatedInformation.map(n=>({resource:s.Uri.parse(n.location.uri),startLineNumber:n.location.range.start.line+1,startColumn:n.location.range.start.character+1,endLineNumber:n.location.range.end.line+1,endColumn:n.location.range.end.character+1,message:n.message}))),t}var Ht=class extends p{constructor(e){super(),this._connection=e,this._register(this._connection.capabilities.addStaticClientCapabilities({textDocument:{completion:{dynamicRegistration:!0,contextSupport:!0,completionItemKind:{valueSet:Array.from(ue.keys())},completionItem:{tagSupport:{valueSet:Array.from(de.keys())},commitCharactersSupport:!0,deprecatedSupport:!0,preselectSupport:!0}}}})),this._register(this._connection.capabilities.registerCapabilityHandler(u.textDocumentCompletion,!0,t=>s.languages.registerCompletionItemProvider(v(t.documentSelector),new It(this._connection,t))))}},It=class{resolveCompletionItem;constructor(e,t){this._client=e,this._capabilities=t,t.resolveProvider&&(this.resolveCompletionItem=async(n,r)=>(fe(n,await this._client.server.completionItemResolve(n._lspItem),this._client.bridge,n._translated,n._model),n))}get triggerCharacters(){return this._capabilities.triggerCharacters}async provideCompletionItems(e,t,n,r){const i=this._client.bridge.translate(e,t),o=await this._client.server.textDocumentCompletion({textDocument:i.textDocument,position:i.position,context:n.triggerCharacter?{triggerKind:ft(n.triggerKind),triggerCharacter:n.triggerCharacter}:void 0});return o?{suggestions:(Array.isArray(o)?o:o.items).map(a=>({...Ot(a,this._client.bridge,i,e,t),_lspItem:a,_translated:i,_model:e}))}:{suggestions:[]}}};function Ot(e,t,n,r,i){let o=e.insertText||e.label,a;e.textEdit&&("range"in e.textEdit?(o=e.textEdit.newText,a=k(t.translateBackRange(n.textDocument,e.textEdit.range),r).range):(o=e.textEdit.newText,a={insert:k(t.translateBackRange(n.textDocument,e.textEdit.insert),r).range,replace:k(t.translateBackRange(n.textDocument,e.textEdit.replace),r).range})),a||(a=s.Range.fromPositions(i,i));const l={label:e.label,kind:ht(e.kind),insertText:o,sortText:e.sortText,filterText:e.filterText,preselect:e.preselect,commitCharacters:e.commitCharacters,range:a};return fe(l,e,t,n,r),l}function fe(e,t,n,r,i){t.detail!==void 0&&(e.detail=t.detail),t.documentation!==void 0&&(e.documentation=At(t.documentation)),t.insertTextFormat!==void 0&&(e.insertTextRules=vt(t.insertTextFormat)),t.tags&&t.tags.length>0&&(e.tags=t.tags.map(mt).filter(o=>o!==void 0)),t.additionalTextEdits&&t.additionalTextEdits.length>0&&(e.additionalTextEdits=t.additionalTextEdits.map(o=>({range:k(n.translateBackRange(r.textDocument,o.range),i).range,text:o.newText}))),t.command&&(e.command=T(t.command))}function At(e){if(e)return typeof e=="string"?e:{value:e.value,isTrusted:!0}}var Nt=class extends p{constructor(e){super(),this._connection=e,this._register(this._connection.capabilities.addStaticClientCapabilities({textDocument:{hover:{dynamicRegistration:!0,contentFormat:[P.Markdown,P.PlainText]}}})),this._register(this._connection.capabilities.registerCapabilityHandler(u.textDocumentHover,!0,t=>s.languages.registerHoverProvider(v(t.documentSelector),new Wt(this._connection,t))))}},Wt=class{constructor(e,t){this._client=e,this._capabilities=t}async provideHover(e,t,n){const r=this._client.bridge.translate(e,t),i=await this._client.server.textDocumentHover({textDocument:r.textDocument,position:r.position});return!i||!i.contents?null:{contents:zt(i.contents),range:i.range?this._client.bridge.translateBackRange(r.textDocument,i.range).range:void 0}}};function zt(e){return Array.isArray(e)?e.map(t=>De(t)):[De(e)]}function De(e){return typeof e=="string"?{value:e,isTrusted:!0}:"kind"in e?{value:e.value,isTrusted:!0}:{value:`\`\`\`${e.language}
4
4
  ${e.value}