@codingame/monaco-vscode-api 1.83.15-next.0 → 1.83.16

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 (53) hide show
  1. package/README.md +430 -0
  2. package/contributions.js +3 -0
  3. package/localExtensionHost.js +3 -2
  4. package/missing-services.js +57 -1
  5. package/monaco-editor-treemending.patch +3375 -3375
  6. package/package.json +6 -6
  7. package/vscode/src/vs/base/common/prefixTree.js +130 -0
  8. package/vscode/src/vs/platform/actions/browser/floatingMenu.js +26 -2
  9. package/vscode/src/vs/platform/terminal/common/capabilities/bufferMarkCapability.js +41 -0
  10. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +566 -0
  11. package/vscode/src/vs/platform/terminal/common/capabilities/cwdDetectionCapability.js +29 -0
  12. package/vscode/src/vs/platform/terminal/common/capabilities/partialCommandDetectionCapability.js +48 -0
  13. package/vscode/src/vs/platform/terminal/common/capabilities/terminalCapabilityStore.js +94 -0
  14. package/vscode/src/vs/platform/terminal/common/terminalEnvironment.js +37 -0
  15. package/vscode/src/vs/platform/terminal/common/terminalStrings.js +16 -0
  16. package/vscode/src/vs/platform/terminal/common/xterm/shellIntegrationAddon.js +319 -0
  17. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +91 -1
  18. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +423 -0
  19. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +82 -0
  20. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +564 -11
  21. package/vscode/src/vs/workbench/contrib/scm/common/scm.js +9 -1
  22. package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.js +67 -0
  23. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalExtensions.js +25 -0
  24. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +64 -0
  25. package/vscode/src/vs/workbench/contrib/terminal/browser/widgets/widgetManager.js +36 -0
  26. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +538 -0
  27. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +104 -0
  28. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +416 -0
  29. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +390 -0
  30. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +799 -0
  31. package/vscode/src/vs/workbench/contrib/testing/common/getComputedState.js +101 -0
  32. package/vscode/src/vs/workbench/contrib/testing/common/observableValue.js +30 -0
  33. package/vscode/src/vs/workbench/contrib/testing/common/storedValue.js +36 -0
  34. package/vscode/src/vs/workbench/contrib/testing/common/testExplorerFilterState.js +116 -0
  35. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.js +172 -1
  36. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +384 -0
  37. package/vscode/src/vs/workbench/contrib/testing/common/testResultService.js +156 -1
  38. package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.js +156 -0
  39. package/vscode/src/vs/workbench/contrib/testing/common/testService.js +75 -1
  40. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +9 -1
  41. package/vscode/src/vs/workbench/contrib/testing/common/testingContextKeys.js +179 -0
  42. package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.js +102 -0
  43. package/vscode/src/vs/workbench/contrib/testing/common/testingDecorations.js +29 -0
  44. package/vscode/src/vs/workbench/contrib/testing/common/testingPeekOpener.js +3 -0
  45. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +47 -0
  46. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +594 -2
  47. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +307 -1
  48. package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +4 -0
  49. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +10 -0
  50. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +98 -0
  51. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +428 -0
  52. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +83 -0
  53. package/vscode/src/vs/workbench/services/textfile/common/textfiles.js +6 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-api",
3
- "version": "1.83.15-next.0",
3
+ "version": "1.83.16",
4
4
  "description": "VSCode public API plugged on the monaco editor",
5
5
  "keywords": [],
6
6
  "author": {
@@ -100,10 +100,10 @@
100
100
  "dependencies": {
101
101
  "monaco-editor": "0.44.0",
102
102
  "vscode-semver": "npm:semver@=5.5.0",
103
- "@codingame/monaco-vscode-extensions-service-override": "1.83.15-next.0",
104
- "@codingame/monaco-vscode-files-service-override": "1.83.15-next.0",
105
- "@codingame/monaco-vscode-layout-service-override": "1.83.15-next.0",
106
- "@codingame/monaco-vscode-environment-service-override": "1.83.15-next.0",
107
- "@codingame/monaco-vscode-quickaccess-service-override": "1.83.15-next.0"
103
+ "@codingame/monaco-vscode-files-service-override": "1.83.16",
104
+ "@codingame/monaco-vscode-layout-service-override": "1.83.16",
105
+ "@codingame/monaco-vscode-environment-service-override": "1.83.16",
106
+ "@codingame/monaco-vscode-extensions-service-override": "1.83.16",
107
+ "@codingame/monaco-vscode-quickaccess-service-override": "1.83.16"
108
108
  }
109
109
  }
@@ -0,0 +1,130 @@
1
+ const unset = Symbol('unset');
2
+ class WellDefinedPrefixTree {
3
+ constructor() {
4
+ this.root = ( new Node());
5
+ this._size = 0;
6
+ }
7
+ get size() {
8
+ return this._size;
9
+ }
10
+ insert(key, value) {
11
+ this.opNode(key, n => n.value = value);
12
+ }
13
+ mutate(key, mutate) {
14
+ this.opNode(key, n => n.value = mutate(n.value === unset ? undefined : n.value));
15
+ }
16
+ delete(key) {
17
+ const path = [{ part: '', node: this.root }];
18
+ let i = 0;
19
+ for (const part of key) {
20
+ const node = path[i].node.children?.get(part);
21
+ if (!node) {
22
+ return undefined;
23
+ }
24
+ path.push({ part, node });
25
+ i++;
26
+ }
27
+ const value = path[i].node.value;
28
+ if (value === unset) {
29
+ return;
30
+ }
31
+ this._size--;
32
+ for (; i > 0; i--) {
33
+ const parent = path[i - 1];
34
+ parent.node.children.delete(path[i].part);
35
+ if (parent.node.children.size > 0 || parent.node.value !== unset) {
36
+ break;
37
+ }
38
+ }
39
+ return value;
40
+ }
41
+ find(key) {
42
+ let node = this.root;
43
+ for (const segment of key) {
44
+ const next = node.children?.get(segment);
45
+ if (!next) {
46
+ return undefined;
47
+ }
48
+ node = next;
49
+ }
50
+ return node.value === unset ? undefined : node.value;
51
+ }
52
+ hasKeyOrParent(key) {
53
+ let node = this.root;
54
+ for (const segment of key) {
55
+ const next = node.children?.get(segment);
56
+ if (!next) {
57
+ return false;
58
+ }
59
+ if (next.value !== unset) {
60
+ return true;
61
+ }
62
+ node = next;
63
+ }
64
+ return false;
65
+ }
66
+ hasKeyOrChildren(key) {
67
+ let node = this.root;
68
+ for (const segment of key) {
69
+ const next = node.children?.get(segment);
70
+ if (!next) {
71
+ return false;
72
+ }
73
+ node = next;
74
+ }
75
+ return true;
76
+ }
77
+ hasKey(key) {
78
+ let node = this.root;
79
+ for (const segment of key) {
80
+ const next = node.children?.get(segment);
81
+ if (!next) {
82
+ return false;
83
+ }
84
+ node = next;
85
+ }
86
+ return node.value !== unset;
87
+ }
88
+ opNode(key, fn) {
89
+ let node = this.root;
90
+ for (const part of key) {
91
+ if (!node.children) {
92
+ const next = ( new Node());
93
+ node.children = ( new Map([[part, next]]));
94
+ node = next;
95
+ }
96
+ else if (!( node.children.has(part))) {
97
+ const next = ( new Node());
98
+ node.children.set(part, next);
99
+ node = next;
100
+ }
101
+ else {
102
+ node = node.children.get(part);
103
+ }
104
+ }
105
+ if (node.value === unset) {
106
+ this._size++;
107
+ }
108
+ fn(node);
109
+ }
110
+ *values() {
111
+ const stack = [this.root];
112
+ while (stack.length > 0) {
113
+ const node = stack.pop();
114
+ if (node.value !== unset) {
115
+ yield node.value;
116
+ }
117
+ if (node.children) {
118
+ for (const child of ( node.children.values())) {
119
+ stack.push(child);
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }
125
+ class Node {
126
+ constructor() {
127
+ this.value = unset;
128
+ }
129
+ }
130
+ export { WellDefinedPrefixTree };
@@ -2,10 +2,11 @@ import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.
2
2
  import { $, clearNode, append } from 'monaco-editor/esm/vs/base/browser/dom.js';
3
3
  import { Widget } from 'monaco-editor/esm/vs/base/browser/ui/widget.js';
4
4
  import { Emitter } from 'monaco-editor/esm/vs/base/common/event.js';
5
- import { Disposable, DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
5
+ import { Disposable, DisposableStore, toDisposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
6
6
  import { createAndFillInActionBarActions } from 'monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js';
7
7
  import { IMenuService } from 'monaco-editor/esm/vs/platform/actions/common/actions.js';
8
8
  import { IContextKeyService } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
9
+ import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
9
10
  import { asCssVariableWithDefault, buttonBackground, asCssVariable, editorBackground, buttonForeground, editorForeground, contrastBorder } from 'monaco-editor/esm/vs/platform/theme/common/colorRegistry.js';
10
11
  class FloatingClickWidget extends Widget {
11
12
  constructor(label) {
@@ -70,4 +71,27 @@ AbstractFloatingClickMenu = ( __decorate([
70
71
  ( __param(1, IMenuService)),
71
72
  ( __param(2, IContextKeyService))
72
73
  ], AbstractFloatingClickMenu));
73
- export { AbstractFloatingClickMenu, FloatingClickWidget };
74
+ let FloatingClickMenu = class FloatingClickMenu extends AbstractFloatingClickMenu {
75
+ constructor(options, instantiationService, menuService, contextKeyService) {
76
+ super(options.menuId, menuService, contextKeyService);
77
+ this.options = options;
78
+ this.instantiationService = instantiationService;
79
+ this.render();
80
+ }
81
+ createWidget(action, disposable) {
82
+ const w = this.instantiationService.createInstance(FloatingClickWidget, action.label);
83
+ const node = w.getDomNode();
84
+ this.options.container.appendChild(node);
85
+ disposable.add(toDisposable(() => this.options.container.removeChild(node)));
86
+ return w;
87
+ }
88
+ getActionArg() {
89
+ return this.options.getActionArg();
90
+ }
91
+ };
92
+ FloatingClickMenu = ( __decorate([
93
+ ( __param(1, IInstantiationService)),
94
+ ( __param(2, IMenuService)),
95
+ ( __param(3, IContextKeyService))
96
+ ], FloatingClickMenu));
97
+ export { AbstractFloatingClickMenu, FloatingClickMenu, FloatingClickWidget };
@@ -0,0 +1,41 @@
1
+ import { Emitter } from 'monaco-editor/esm/vs/base/common/event.js';
2
+ import { Disposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
3
+ class BufferMarkCapability extends Disposable {
4
+ constructor(_terminal) {
5
+ super();
6
+ this._terminal = _terminal;
7
+ this.type = 4 ;
8
+ this._idToMarkerMap = ( new Map());
9
+ this._anonymousMarkers = ( new Map());
10
+ this._onMarkAdded = this._register(( new Emitter()));
11
+ this.onMarkAdded = this._onMarkAdded.event;
12
+ }
13
+ *markers() {
14
+ for (const m of ( this._idToMarkerMap.values())) {
15
+ yield m;
16
+ }
17
+ for (const m of ( this._anonymousMarkers.values())) {
18
+ yield m;
19
+ }
20
+ }
21
+ addMark(properties) {
22
+ const marker = properties?.marker || this._terminal.registerMarker();
23
+ const id = properties?.id;
24
+ if (!marker) {
25
+ return;
26
+ }
27
+ if (id) {
28
+ this._idToMarkerMap.set(id, marker);
29
+ marker.onDispose(() => this._idToMarkerMap.delete(id));
30
+ }
31
+ else {
32
+ this._anonymousMarkers.set(marker.id, marker);
33
+ marker.onDispose(() => this._anonymousMarkers.delete(marker.id));
34
+ }
35
+ this._onMarkAdded.fire({ marker, id, hidden: properties?.hidden, hoverMessage: properties?.hoverMessage });
36
+ }
37
+ getMark(id) {
38
+ return this._idToMarkerMap.get(id);
39
+ }
40
+ }
41
+ export { BufferMarkCapability };