@codingame/monaco-vscode-api 1.85.1 → 1.85.3

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 (67) hide show
  1. package/README.md +18 -5
  2. package/missing-services.js +324 -64
  3. package/monaco-editor-treemending.patch +946 -946
  4. package/package.json +8 -7
  5. package/service-override/tools/editor.js +1 -1
  6. package/services.js +10 -6
  7. package/vscode/src/vs/base/browser/ui/tree/treeDefaults.js +14 -0
  8. package/vscode/src/vs/platform/extensionManagement/common/extensionEnablementService.js +140 -0
  9. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +1062 -93
  10. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +220 -0
  11. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +102 -0
  12. package/vscode/src/vs/platform/userDataSync/common/content.js +9 -0
  13. package/vscode/src/vs/platform/userDataSync/common/settingsMerge.js +514 -0
  14. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +154 -2
  15. package/vscode/src/vs/platform/userDataSync/common/userDataSyncAccount.js +43 -1
  16. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +177 -0
  17. package/vscode/src/vs/platform/workspace/common/virtualWorkspace.js +4 -1
  18. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +1 -1
  19. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +1 -1
  20. package/vscode/src/vs/workbench/api/common/extHostWebview.js +2 -2
  21. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +105 -0
  22. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +4 -0
  23. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +1614 -0
  24. package/vscode/src/vs/workbench/contrib/codeEditor/browser/languageConfigurationExtensionPoint.js +7 -7
  25. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +73 -2
  26. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +6 -6
  27. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +12 -2
  28. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +712 -0
  29. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy.js +130 -0
  30. package/vscode/src/vs/workbench/contrib/timeline/common/timeline.js +2 -1
  31. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +20 -1
  32. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +205 -0
  33. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +11 -0
  34. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +9 -9
  35. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +1 -1
  36. package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +2 -2
  37. package/vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.js +24 -1
  38. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +41 -0
  39. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +588 -0
  40. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +43 -0
  41. package/vscode/src/vs/workbench/services/search/common/search.js +3 -3
  42. package/vscode/src/vs/workbench/services/terminal/common/embedderTerminalService.js +75 -1
  43. package/vscode/src/vs/workbench/services/timer/browser/timerService.js +240 -1
  44. package/vscode/src/vs/workbench/services/userData/browser/userDataInit.js +31 -1
  45. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +25 -1
  46. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +75 -1
  47. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +74 -4
  48. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +708 -0
  49. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyHistory.js +4 -0
  50. package/vscode/src/vs/base/parts/request/browser/request.js +0 -60
  51. package/vscode/src/vs/platform/request/browser/requestService.js +0 -28
  52. package/vscode/src/vs/platform/request/common/requestIpc.js +0 -17
  53. package/vscode/src/vs/platform/url/common/urlService.js +0 -17
  54. package/vscode/src/vs/workbench/services/configuration/common/jsonEditingService.js +0 -120
  55. package/vscode/src/vs/workbench/services/decorations/browser/decorationsService.js +0 -319
  56. package/vscode/src/vs/workbench/services/files/browser/elevatedFileService.js +0 -9
  57. package/vscode/src/vs/workbench/services/host/browser/browserHostService.js +0 -408
  58. package/vscode/src/vs/workbench/services/request/browser/requestService.js +0 -48
  59. package/vscode/src/vs/workbench/services/textfile/browser/browserTextFileService.js +0 -56
  60. package/vscode/src/vs/workbench/services/textfile/browser/textFileService.js +0 -639
  61. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModelManager.js +0 -402
  62. package/vscode/src/vs/workbench/services/textfile/common/textFileSaveParticipant.js +0 -62
  63. package/vscode/src/vs/workbench/services/themes/browser/browserHostColorSchemeService.js +0 -38
  64. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +0 -295
  65. package/vscode/src/vs/workbench/services/url/browser/urlService.js +0 -47
  66. package/vscode/src/vs/workbench/services/views/common/treeViewsService.js +0 -20
  67. package/vscode/src/vs/workbench/services/workspaces/common/canonicalUriService.js +0 -19
@@ -0,0 +1,130 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { Emitter } from 'monaco-editor/esm/vs/base/common/event.js';
3
+ import { Disposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
4
+ import { ITerminalService } from './terminal.js';
5
+ let TerminalProcessExtHostProxy = class TerminalProcessExtHostProxy extends Disposable {
6
+ get onProcessReady() { return this._onProcessReady.event; }
7
+ constructor(instanceId, _cols, _rows, _terminalService) {
8
+ super();
9
+ this.instanceId = instanceId;
10
+ this._cols = _cols;
11
+ this._rows = _rows;
12
+ this._terminalService = _terminalService;
13
+ this.id = 0;
14
+ this.shouldPersist = false;
15
+ this._onProcessData = this._register(( new Emitter()));
16
+ this.onProcessData = this._onProcessData.event;
17
+ this._onProcessReady = this._register(( new Emitter()));
18
+ this._onStart = this._register(( new Emitter()));
19
+ this.onStart = this._onStart.event;
20
+ this._onInput = this._register(( new Emitter()));
21
+ this.onInput = this._onInput.event;
22
+ this._onBinary = this._register(( new Emitter()));
23
+ this.onBinary = this._onBinary.event;
24
+ this._onResize = this._register(( new Emitter()));
25
+ this.onResize = this._onResize.event;
26
+ this._onAcknowledgeDataEvent = this._register(( new Emitter()));
27
+ this.onAcknowledgeDataEvent = this._onAcknowledgeDataEvent.event;
28
+ this._onShutdown = this._register(( new Emitter()));
29
+ this.onShutdown = this._onShutdown.event;
30
+ this._onRequestInitialCwd = this._register(( new Emitter()));
31
+ this.onRequestInitialCwd = this._onRequestInitialCwd.event;
32
+ this._onRequestCwd = this._register(( new Emitter()));
33
+ this.onRequestCwd = this._onRequestCwd.event;
34
+ this._onDidChangeProperty = this._register(( new Emitter()));
35
+ this.onDidChangeProperty = this._onDidChangeProperty.event;
36
+ this._onProcessExit = this._register(( new Emitter()));
37
+ this.onProcessExit = this._onProcessExit.event;
38
+ this._pendingInitialCwdRequests = [];
39
+ this._pendingCwdRequests = [];
40
+ }
41
+ emitData(data) {
42
+ this._onProcessData.fire(data);
43
+ }
44
+ emitTitle(title) {
45
+ this._onDidChangeProperty.fire({ type: "title" , value: title });
46
+ }
47
+ emitReady(pid, cwd) {
48
+ this._onProcessReady.fire({ pid, cwd, windowsPty: undefined });
49
+ }
50
+ emitProcessProperty({ type, value }) {
51
+ switch (type) {
52
+ case "cwd" :
53
+ this.emitCwd(value);
54
+ break;
55
+ case "initialCwd" :
56
+ this.emitInitialCwd(value);
57
+ break;
58
+ case "title" :
59
+ this.emitTitle(value);
60
+ break;
61
+ case "overrideDimensions" :
62
+ this.emitOverrideDimensions(value);
63
+ break;
64
+ case "resolvedShellLaunchConfig" :
65
+ this.emitResolvedShellLaunchConfig(value);
66
+ break;
67
+ }
68
+ }
69
+ emitExit(exitCode) {
70
+ this._onProcessExit.fire(exitCode);
71
+ this.dispose();
72
+ }
73
+ emitOverrideDimensions(dimensions) {
74
+ this._onDidChangeProperty.fire({ type: "overrideDimensions" , value: dimensions });
75
+ }
76
+ emitResolvedShellLaunchConfig(shellLaunchConfig) {
77
+ this._onDidChangeProperty.fire({ type: "resolvedShellLaunchConfig" , value: shellLaunchConfig });
78
+ }
79
+ emitInitialCwd(initialCwd) {
80
+ while (this._pendingInitialCwdRequests.length > 0) {
81
+ this._pendingInitialCwdRequests.pop()(initialCwd);
82
+ }
83
+ }
84
+ emitCwd(cwd) {
85
+ while (this._pendingCwdRequests.length > 0) {
86
+ this._pendingCwdRequests.pop()(cwd);
87
+ }
88
+ }
89
+ async start() {
90
+ return this._terminalService.requestStartExtensionTerminal(this, this._cols, this._rows);
91
+ }
92
+ shutdown(immediate) {
93
+ this._onShutdown.fire(immediate);
94
+ }
95
+ input(data) {
96
+ this._onInput.fire(data);
97
+ }
98
+ resize(cols, rows) {
99
+ this._onResize.fire({ cols, rows });
100
+ }
101
+ clearBuffer() {
102
+ }
103
+ acknowledgeDataEvent() {
104
+ }
105
+ async setUnicodeVersion(version) {
106
+ }
107
+ async processBinary(data) {
108
+ this._onBinary.fire(data);
109
+ }
110
+ getInitialCwd() {
111
+ return ( new Promise(resolve => {
112
+ this._onRequestInitialCwd.fire();
113
+ this._pendingInitialCwdRequests.push(resolve);
114
+ }));
115
+ }
116
+ getCwd() {
117
+ return ( new Promise(resolve => {
118
+ this._onRequestCwd.fire();
119
+ this._pendingCwdRequests.push(resolve);
120
+ }));
121
+ }
122
+ async refreshProperty(type) {
123
+ }
124
+ async updateProperty(type, value) {
125
+ }
126
+ };
127
+ TerminalProcessExtHostProxy = ( __decorate([
128
+ ( __param(3, ITerminalService))
129
+ ], TerminalProcessExtHostProxy));
130
+ export { TerminalProcessExtHostProxy };
@@ -1,4 +1,5 @@
1
1
  import { createDecorator } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
2
+ const TimelinePaneId = 'timeline';
2
3
  const TIMELINE_SERVICE_ID = 'timeline';
3
4
  const ITimelineService = ( createDecorator(TIMELINE_SERVICE_ID));
4
- export { ITimelineService };
5
+ export { ITimelineService, TimelinePaneId };
@@ -3,6 +3,7 @@ import { flatten } from 'monaco-editor/esm/vs/base/common/arrays.js';
3
3
  import { Emitter } from 'monaco-editor/esm/vs/base/common/event.js';
4
4
  import { Disposable, MutableDisposable, dispose } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
5
5
  import { isFalsyOrWhitespace } from 'monaco-editor/esm/vs/base/common/strings.js';
6
+ import { isString } from 'monaco-editor/esm/vs/base/common/types.js';
6
7
  import * as nls from 'monaco-editor/esm/vs/nls.js';
7
8
  import { MenuRegistry, MenuId } from 'monaco-editor/esm/vs/platform/actions/common/actions.js';
8
9
  import { CommandsRegistry } from 'monaco-editor/esm/vs/platform/commands/common/commands.js';
@@ -56,6 +57,24 @@ function addAccountUsage(storageService, providerId, accountName, extensionId, e
56
57
  }
57
58
  storageService.store(accountKey, JSON.stringify(usages), -1 , 1 );
58
59
  }
60
+ async function getCurrentAuthenticationSessionInfo(secretStorageService, productService) {
61
+ const authenticationSessionValue = await secretStorageService.get(`${productService.urlProtocol}.loginAccount`);
62
+ if (authenticationSessionValue) {
63
+ try {
64
+ const authenticationSessionInfo = JSON.parse(authenticationSessionValue);
65
+ if (authenticationSessionInfo
66
+ && isString(authenticationSessionInfo.id)
67
+ && isString(authenticationSessionInfo.accessToken)
68
+ && isString(authenticationSessionInfo.providerId)) {
69
+ return authenticationSessionInfo;
70
+ }
71
+ }
72
+ catch (e) {
73
+ console.error(`Failed parsing current auth session value: ${e}`);
74
+ }
75
+ }
76
+ return undefined;
77
+ }
59
78
  function readAllowedExtensions(storageService, providerId, accountName) {
60
79
  let trustedExtensions = [];
61
80
  try {
@@ -660,4 +679,4 @@ AuthenticationService = ( __decorate([
660
679
  ( __param(4, IQuickInputService)),
661
680
  ( __param(5, IProductService))
662
681
  ], AuthenticationService));
663
- export { AuthenticationService, addAccountUsage, getAuthenticationProviderActivationEvent, readAccountUsages, readAllowedExtensions, removeAccountUsage };
682
+ export { AuthenticationService, addAccountUsage, getAuthenticationProviderActivationEvent, getCurrentAuthenticationSessionInfo, readAccountUsages, readAllowedExtensions, removeAccountUsage };
@@ -0,0 +1,205 @@
1
+ import * as nls from 'monaco-editor/esm/vs/nls.js';
2
+ const idDescription = ( nls.localizeWithPath(
3
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
4
+ 'JsonSchema.input.id',
5
+ "The input's id is used to associate an input with a variable of the form ${input:id}."
6
+ ));
7
+ const typeDescription = ( nls.localizeWithPath(
8
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
9
+ 'JsonSchema.input.type',
10
+ "The type of user input prompt to use."
11
+ ));
12
+ const descriptionDescription = ( nls.localizeWithPath(
13
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
14
+ 'JsonSchema.input.description',
15
+ "The description is shown when the user is prompted for input."
16
+ ));
17
+ const defaultDescription = ( nls.localizeWithPath(
18
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
19
+ 'JsonSchema.input.default',
20
+ "The default value for the input."
21
+ ));
22
+ const inputsSchema = {
23
+ definitions: {
24
+ inputs: {
25
+ type: 'array',
26
+ description: ( nls.localizeWithPath(
27
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
28
+ 'JsonSchema.inputs',
29
+ 'User inputs. Used for defining user input prompts, such as free string input or a choice from several options.'
30
+ )),
31
+ items: {
32
+ oneOf: [
33
+ {
34
+ type: 'object',
35
+ required: ['id', 'type', 'description'],
36
+ additionalProperties: false,
37
+ properties: {
38
+ id: {
39
+ type: 'string',
40
+ description: idDescription
41
+ },
42
+ type: {
43
+ type: 'string',
44
+ description: typeDescription,
45
+ enum: ['promptString'],
46
+ enumDescriptions: [
47
+ ( nls.localizeWithPath(
48
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
49
+ 'JsonSchema.input.type.promptString',
50
+ "The 'promptString' type opens an input box to ask the user for input."
51
+ )),
52
+ ]
53
+ },
54
+ description: {
55
+ type: 'string',
56
+ description: descriptionDescription
57
+ },
58
+ default: {
59
+ type: 'string',
60
+ description: defaultDescription
61
+ },
62
+ password: {
63
+ type: 'boolean',
64
+ description: ( nls.localizeWithPath(
65
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
66
+ 'JsonSchema.input.password',
67
+ "Controls if a password input is shown. Password input hides the typed text."
68
+ )),
69
+ },
70
+ }
71
+ },
72
+ {
73
+ type: 'object',
74
+ required: ['id', 'type', 'description', 'options'],
75
+ additionalProperties: false,
76
+ properties: {
77
+ id: {
78
+ type: 'string',
79
+ description: idDescription
80
+ },
81
+ type: {
82
+ type: 'string',
83
+ description: typeDescription,
84
+ enum: ['pickString'],
85
+ enumDescriptions: [
86
+ ( nls.localizeWithPath(
87
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
88
+ 'JsonSchema.input.type.pickString',
89
+ "The 'pickString' type shows a selection list."
90
+ )),
91
+ ]
92
+ },
93
+ description: {
94
+ type: 'string',
95
+ description: descriptionDescription
96
+ },
97
+ default: {
98
+ type: 'string',
99
+ description: defaultDescription
100
+ },
101
+ options: {
102
+ type: 'array',
103
+ description: ( nls.localizeWithPath(
104
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
105
+ 'JsonSchema.input.options',
106
+ "An array of strings that defines the options for a quick pick."
107
+ )),
108
+ items: {
109
+ oneOf: [
110
+ {
111
+ type: 'string'
112
+ },
113
+ {
114
+ type: 'object',
115
+ required: ['value'],
116
+ additionalProperties: false,
117
+ properties: {
118
+ label: {
119
+ type: 'string',
120
+ description: ( nls.localizeWithPath(
121
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
122
+ 'JsonSchema.input.pickString.optionLabel',
123
+ "Label for the option."
124
+ ))
125
+ },
126
+ value: {
127
+ type: 'string',
128
+ description: ( nls.localizeWithPath(
129
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
130
+ 'JsonSchema.input.pickString.optionValue',
131
+ "Value for the option."
132
+ ))
133
+ }
134
+ }
135
+ }
136
+ ]
137
+ }
138
+ }
139
+ }
140
+ },
141
+ {
142
+ type: 'object',
143
+ required: ['id', 'type', 'command'],
144
+ additionalProperties: false,
145
+ properties: {
146
+ id: {
147
+ type: 'string',
148
+ description: idDescription
149
+ },
150
+ type: {
151
+ type: 'string',
152
+ description: typeDescription,
153
+ enum: ['command'],
154
+ enumDescriptions: [
155
+ ( nls.localizeWithPath(
156
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
157
+ 'JsonSchema.input.type.command',
158
+ "The 'command' type executes a command."
159
+ )),
160
+ ]
161
+ },
162
+ command: {
163
+ type: 'string',
164
+ description: ( nls.localizeWithPath(
165
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
166
+ 'JsonSchema.input.command.command',
167
+ "The command to execute for this input variable."
168
+ ))
169
+ },
170
+ args: {
171
+ oneOf: [
172
+ {
173
+ type: 'object',
174
+ description: ( nls.localizeWithPath(
175
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
176
+ 'JsonSchema.input.command.args',
177
+ "Optional arguments passed to the command."
178
+ ))
179
+ },
180
+ {
181
+ type: 'array',
182
+ description: ( nls.localizeWithPath(
183
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
184
+ 'JsonSchema.input.command.args',
185
+ "Optional arguments passed to the command."
186
+ ))
187
+ },
188
+ {
189
+ type: 'string',
190
+ description: ( nls.localizeWithPath(
191
+ 'vs/workbench/services/configurationResolver/common/configurationResolverSchema',
192
+ 'JsonSchema.input.command.args',
193
+ "Optional arguments passed to the command."
194
+ ))
195
+ }
196
+ ]
197
+ }
198
+ }
199
+ }
200
+ ]
201
+ }
202
+ }
203
+ }
204
+ };
205
+ export { inputsSchema };
@@ -0,0 +1,11 @@
1
+ import * as nls from 'monaco-editor/esm/vs/nls.js';
2
+ function applyDeprecatedVariableMessage(schema) {
3
+ schema.pattern = schema.pattern || '^(?!.*\\$\\{(env|config|command)\\.)';
4
+ schema.patternErrorMessage = schema.patternErrorMessage ||
5
+ ( nls.localizeWithPath(
6
+ 'vs/workbench/services/configurationResolver/common/configurationResolverUtils',
7
+ 'deprecatedVariables',
8
+ "'env.', 'config.' and 'command.' are deprecated, use 'env:', 'config:' and 'command:' instead."
9
+ ));
10
+ }
11
+ export { applyDeprecatedVariableMessage };
@@ -1,7 +1,7 @@
1
1
  import * as path from 'monaco-editor/esm/vs/base/common/path.js';
2
2
  import * as process from 'monaco-editor/esm/vs/base/common/process.js';
3
- import * as types from 'monaco-editor/esm/vs/base/common/types.js';
4
- import * as objects from 'monaco-editor/esm/vs/base/common/objects.js';
3
+ import * as Types from 'monaco-editor/esm/vs/base/common/types.js';
4
+ import * as Objects from 'monaco-editor/esm/vs/base/common/objects.js';
5
5
  import { isWindows, isMacintosh, isLinux } from 'monaco-editor/esm/vs/base/common/platform.js';
6
6
  import { normalizeDriveLetter } from 'monaco-editor/esm/vs/base/common/labels.js';
7
7
  import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
@@ -42,7 +42,7 @@ class AbstractVariableResolverService {
42
42
  return this.recursiveResolve(environment, root ? root.uri : undefined, value);
43
43
  }
44
44
  async resolveAnyBase(workspaceFolder, config, commandValueMapping, resolvedVariables) {
45
- const result = objects.deepClone(config);
45
+ const result = Objects.deepClone(config);
46
46
  if (isWindows && result.windows) {
47
47
  ( Object.keys(result.windows)).forEach(key => result[key] = result.windows[key]);
48
48
  }
@@ -84,7 +84,7 @@ class AbstractVariableResolverService {
84
84
  }
85
85
  }
86
86
  async recursiveResolve(environment, folderUri, value, commandValueMapping, resolvedVariables) {
87
- if (types.isString(value)) {
87
+ if (Types.isString(value)) {
88
88
  return this.resolveString(environment, folderUri, value, commandValueMapping, resolvedVariables);
89
89
  }
90
90
  else if (Array.isArray(value)) {
@@ -92,7 +92,7 @@ class AbstractVariableResolverService {
92
92
  s => this.recursiveResolve(environment, folderUri, s, commandValueMapping, resolvedVariables)
93
93
  )));
94
94
  }
95
- else if (types.isObject(value)) {
95
+ else if (Types.isObject(value)) {
96
96
  const result = Object.create(null);
97
97
  const replaced = await Promise.all(( ( Object.keys(value)).map(async (key) => {
98
98
  const replaced = await this.resolveString(environment, folderUri, key, commandValueMapping, resolvedVariables);
@@ -112,7 +112,7 @@ class AbstractVariableResolverService {
112
112
  }
113
113
  let resolvedValue = await this.evaluateSingleVariable(environment, match, variable, folderUri, commandValueMapping);
114
114
  resolvedVariables?.set(variable, resolvedValue);
115
- if ((resolvedValue !== match) && types.isString(resolvedValue) && resolvedValue.match(AbstractVariableResolverService.VARIABLE_REGEXP)) {
115
+ if ((resolvedValue !== match) && Types.isString(resolvedValue) && resolvedValue.match(AbstractVariableResolverService.VARIABLE_REGEXP)) {
116
116
  resolvedValue = await this.resolveString(environment, folderUri, resolvedValue, commandValueMapping, resolvedVariables);
117
117
  }
118
118
  return resolvedValue;
@@ -166,7 +166,7 @@ class AbstractVariableResolverService {
166
166
  if (argument) {
167
167
  if (environment.env) {
168
168
  const env = environment.env[isWindows ? argument.toLowerCase() : argument];
169
- if (types.isString(env)) {
169
+ if (Types.isString(env)) {
170
170
  return env;
171
171
  }
172
172
  }
@@ -176,10 +176,10 @@ class AbstractVariableResolverService {
176
176
  case 'config':
177
177
  if (argument) {
178
178
  const config = this._context.getConfigurationValue(folderUri, argument);
179
- if (types.isUndefinedOrNull(config)) {
179
+ if (Types.isUndefinedOrNull(config)) {
180
180
  throw new VariableError(VariableKind.Config, localizeWithPath('vs/workbench/services/configurationResolver/common/variableResolver', 'configNotFound', "Variable {0} can not be resolved because setting '{1}' not found.", match, argument));
181
181
  }
182
- if (types.isObject(config)) {
182
+ if (Types.isObject(config)) {
183
183
  throw new VariableError(VariableKind.Config, localizeWithPath('vs/workbench/services/configurationResolver/common/variableResolver', 'configNoString', "Variable {0} can not be resolved because '{1}' is a structured value.", match, argument));
184
184
  }
185
185
  return config;
@@ -393,4 +393,4 @@ registerAction2(class extends Action2 {
393
393
  hostService.reload();
394
394
  }
395
395
  });
396
- export { IExtensionBisectService };
396
+ export { ExtensionBisectService, IExtensionBisectService };
@@ -2,7 +2,7 @@ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.e
2
2
  import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
3
3
  import { Queue } from 'monaco-editor/esm/vs/base/common/async.js';
4
4
  import * as json from 'monaco-editor/esm/vs/base/common/json.js';
5
- import * as objects from 'monaco-editor/esm/vs/base/common/objects.js';
5
+ import * as Objects from 'monaco-editor/esm/vs/base/common/objects.js';
6
6
  import { setProperty } from '../../../../base/common/jsonEdit.js';
7
7
  import { Disposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
8
8
  import { EditOperation } from 'monaco-editor/esm/vs/editor/common/core/editOperation.js';
@@ -181,7 +181,7 @@ let KeybindingsEditingService = class KeybindingsEditingService extends Disposab
181
181
  if (whenA && whenB && !whenA.equals(whenB)) {
182
182
  return false;
183
183
  }
184
- if (!objects.equals(a.args, b.args)) {
184
+ if (!Objects.equals(a.args, b.args)) {
185
185
  return false;
186
186
  }
187
187
  return true;
@@ -1,3 +1,26 @@
1
+ import { compare } from 'monaco-editor/esm/vs/base/common/strings.js';
2
+ import { LanguageFeatureRegistry } from 'monaco-editor/esm/vs/editor/common/languageFeatureRegistry.js';
1
3
  import { createDecorator } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
2
4
  const ILanguageStatusService = ( createDecorator('ILanguageStatusService'));
3
- export { ILanguageStatusService };
5
+ class LanguageStatusServiceImpl {
6
+ constructor() {
7
+ this._provider = ( new LanguageFeatureRegistry());
8
+ this.onDidChange = this._provider.onDidChange;
9
+ }
10
+ addStatus(status) {
11
+ return this._provider.register(status.selector, status);
12
+ }
13
+ getLanguageStatus(model) {
14
+ return this._provider.ordered(model).sort((a, b) => {
15
+ let res = b.severity - a.severity;
16
+ if (res === 0) {
17
+ res = compare(a.source, b.source);
18
+ }
19
+ if (res === 0) {
20
+ res = compare(a.id, b.id);
21
+ }
22
+ return res;
23
+ });
24
+ }
25
+ }
26
+ export { ILanguageStatusService, LanguageStatusServiceImpl };
@@ -0,0 +1,41 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { OS } from 'monaco-editor/esm/vs/base/common/platform.js';
3
+ import * as nls from 'monaco-editor/esm/vs/nls.js';
4
+ import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
5
+ import { EditorInput } from '../../../common/editor/editorInput.js';
6
+ import { KeybindingsEditorModel } from './keybindingsEditorModel.js';
7
+ var KeybindingsEditorInput_1;
8
+ let KeybindingsEditorInput = class KeybindingsEditorInput extends EditorInput {
9
+ static { KeybindingsEditorInput_1 = this; }
10
+ static { this.ID = 'workbench.input.keybindings'; }
11
+ constructor(instantiationService) {
12
+ super();
13
+ this.searchOptions = null;
14
+ this.resource = undefined;
15
+ this.keybindingsModel = instantiationService.createInstance(KeybindingsEditorModel, OS);
16
+ }
17
+ get typeId() {
18
+ return KeybindingsEditorInput_1.ID;
19
+ }
20
+ getName() {
21
+ return ( nls.localizeWithPath(
22
+ 'vs/workbench/services/preferences/browser/keybindingsEditorInput',
23
+ 'keybindingsInputName',
24
+ "Keyboard Shortcuts"
25
+ ));
26
+ }
27
+ async resolve() {
28
+ return this.keybindingsModel;
29
+ }
30
+ matches(otherInput) {
31
+ return otherInput instanceof KeybindingsEditorInput_1;
32
+ }
33
+ dispose() {
34
+ this.keybindingsModel.dispose();
35
+ super.dispose();
36
+ }
37
+ };
38
+ KeybindingsEditorInput = KeybindingsEditorInput_1 = ( __decorate([
39
+ ( __param(0, IInstantiationService))
40
+ ], KeybindingsEditorInput));
41
+ export { KeybindingsEditorInput };