@codingame/monaco-vscode-view-common-service-override 33.0.9 → 34.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/package.json +3 -3
  2. package/service-override/vs/workbench/contrib/webview/browser/pre/index.html +14 -8
  3. package/vscode/src/vs/sessions/common/theme.d.ts +4 -0
  4. package/vscode/src/vs/sessions/common/theme.js +44 -26
  5. package/vscode/src/vs/workbench/api/browser/viewsExtensionPoint.js +65 -57
  6. package/vscode/src/vs/workbench/browser/actions/helpActions.js +20 -20
  7. package/vscode/src/vs/workbench/browser/actions/listCommands.js +3 -3
  8. package/vscode/src/vs/workbench/browser/actions/navigationActions.js +6 -6
  9. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +168 -168
  10. package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +9 -9
  11. package/vscode/src/vs/workbench/browser/parts/titlebar/menubar.contribution.js +8 -8
  12. package/vscode/src/vs/workbench/browser/workbench.zenMode.contribution.js +15 -15
  13. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +12 -12
  14. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +3 -3
  15. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyTree.js +3 -3
  16. package/vscode/src/vs/workbench/contrib/customEditor/common/contributedCustomEditors.js +1 -1
  17. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.js +1 -1
  18. package/vscode/src/vs/workbench/contrib/customEditor/common/extensionPoint.js +13 -13
  19. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.js +7 -7
  20. package/vscode/src/vs/workbench/contrib/limitIndicator/browser/limitIndicator.contribution.js +8 -8
  21. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/commands.js +29 -29
  22. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/devCommands.js +14 -14
  23. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditor.contribution.js +9 -3
  24. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorAccessibilityHelp.js +5 -5
  25. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/colors.js +13 -13
  26. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +20 -20
  27. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/baseCodeEditorView.js +3 -3
  28. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/inputCodeEditorView.js +10 -10
  29. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/resultCodeEditorView.js +3 -3
  30. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/mergeEditor.js +1 -1
  31. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.js +1 -1
  32. package/vscode/src/vs/workbench/contrib/preferences/browser/keyboardLayoutPicker.js +12 -12
  33. package/vscode/src/vs/workbench/contrib/sash/browser/sash.contribution.js +2 -2
  34. package/vscode/src/vs/workbench/contrib/scrollLocking/browser/scrollLocking.js +7 -7
  35. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchy.contribution.js +10 -10
  36. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +3 -3
  37. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyTree.js +3 -3
  38. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.d.ts +2 -0
  39. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +13 -1
  40. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewCommands.js +5 -5
  41. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInputSerializer.js +1 -0
  42. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +1 -1
  43. package/vscode/src/vs/workbench/services/editor/browser/editorResolverService.js +8 -8
  44. package/vscode/src/vs/workbench/services/history/browser/historyService.js +9 -9
  45. package/vscode/src/vs/workbench/services/progress/browser/progressService.js +10 -8
  46. package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.d.ts +0 -1
  47. package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.js +8 -15
  48. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +9 -9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-view-common-service-override",
3
- "version": "33.0.9",
3
+ "version": "34.0.0",
4
4
  "private": false,
5
5
  "description": "VSCode public API plugged on the monaco editor - view-common service-override",
6
6
  "keywords": [],
@@ -15,8 +15,8 @@
15
15
  },
16
16
  "type": "module",
17
17
  "dependencies": {
18
- "@codingame/monaco-vscode-api": "33.0.9",
19
- "@codingame/monaco-vscode-bulk-edit-service-override": "33.0.9"
18
+ "@codingame/monaco-vscode-api": "34.0.0",
19
+ "@codingame/monaco-vscode-bulk-edit-service-override": "34.0.0"
20
20
  },
21
21
  "main": "index.js",
22
22
  "module": "index.js",
@@ -5,7 +5,7 @@
5
5
  <meta charset="UTF-8">
6
6
 
7
7
  <meta http-equiv="Content-Security-Policy"
8
- content="default-src 'none'; script-src 'sha256-2bgY7b4AY+EULl24tUGduYOHUHUBH5EuIHGYqk8TM+k=' 'self'; frame-src 'self'; style-src 'unsafe-inline';">
8
+ content="default-src 'none'; script-src 'sha256-w0KUwxUBD3iVNe1RE1K2jxHs0Cvg8zpd/Yez4nydyvs=' 'self'; frame-src 'self'; style-src 'unsafe-inline';">
9
9
 
10
10
  <!-- Disable pinch zooming -->
11
11
  <meta name="viewport"
@@ -507,7 +507,7 @@
507
507
  * @param {MouseEvent} event
508
508
  */
509
509
  const handleInnerClick = (event) => {
510
- if (!event?.view?.document) {
510
+ if (!event.isTrusted || !event?.view?.document) {
511
511
  return;
512
512
  }
513
513
 
@@ -580,7 +580,8 @@
580
580
  e.preventDefault();
581
581
  }
582
582
 
583
- hostMessaging.postMessage('did-keydown', {
583
+ /** @type {import('../webviewMessages').FromWebviewMessage['did-keydown']} */
584
+ const data = {
584
585
  key: e.key,
585
586
  keyCode: e.keyCode,
586
587
  code: e.code,
@@ -588,14 +589,17 @@
588
589
  altKey: e.altKey,
589
590
  ctrlKey: e.ctrlKey,
590
591
  metaKey: e.metaKey,
591
- repeat: e.repeat
592
- });
592
+ repeat: e.repeat,
593
+ isTrusted: e.isTrusted
594
+ };
595
+ hostMessaging.postMessage('did-keydown', data);
593
596
  };
594
597
  /**
595
598
  * @param {KeyboardEvent} e
596
599
  */
597
600
  const handleInnerKeyup = (e) => {
598
- hostMessaging.postMessage('did-keyup', {
601
+ /** @type {import('../webviewMessages').FromWebviewMessage['did-keyup']} */
602
+ const data = {
599
603
  key: e.key,
600
604
  keyCode: e.keyCode,
601
605
  code: e.code,
@@ -603,8 +607,10 @@
603
607
  altKey: e.altKey,
604
608
  ctrlKey: e.ctrlKey,
605
609
  metaKey: e.metaKey,
606
- repeat: e.repeat
607
- });
610
+ repeat: e.repeat,
611
+ isTrusted: e.isTrusted
612
+ };
613
+ hostMessaging.postMessage('did-keyup', data);
608
614
  };
609
615
 
610
616
  /**
@@ -19,3 +19,7 @@ export declare const agentsBadgeBackground: string;
19
19
  export declare const agentsBadgeForeground: string;
20
20
  export declare const agentsUnreadBadgeBackground: string;
21
21
  export declare const agentsUnreadBadgeForeground: string;
22
+ export declare const activeSessionViewBackground: string;
23
+ export declare const inactiveSessionViewBackground: string;
24
+ export declare const activeSessionViewForeground: string;
25
+ export declare const inactiveSessionViewForeground: string;
@@ -4,7 +4,7 @@ import { registerColor, transparent } from '@codingame/monaco-vscode-api/vscode/
4
4
  import { contrastBorder, foreground, focusBorder } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/baseColors';
5
5
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/chartsColors';
6
6
  import { editorBackground, editorWidgetBorder, toolbarHoverBackground } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/editorColors';
7
- import { buttonBackground, inputBackground, inputForeground, inputBorder, inputPlaceholderForeground, buttonBorder } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/inputColors';
7
+ import { buttonBackground, inputBackground, inputForeground, inputBorder, inputPlaceholderForeground, buttonSecondaryBorder } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/inputColors';
8
8
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/listColors';
9
9
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/menuColors';
10
10
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/minimapColors';
@@ -13,26 +13,26 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/quic
13
13
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/searchColors';
14
14
  import { SIDE_BAR_BACKGROUND, SIDE_BAR_FOREGROUND, ACTIVITY_BAR_BADGE_BACKGROUND, ACTIVITY_BAR_BADGE_FOREGROUND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/theme';
15
15
 
16
- registerColor("agents.background", {
16
+ const agentsBackground = registerColor("agents.background", {
17
17
  dark: editorBackground,
18
18
  light: SIDE_BAR_BACKGROUND,
19
19
  hcDark: editorBackground,
20
20
  hcLight: editorBackground
21
21
  }, ( localize(
22
- 2563,
22
+ 2608,
23
23
  "Background color of the agent sessions window shell and gradient base."
24
24
  )));
25
- registerColor("agentsPanel.background", {
25
+ const agentsPanelBackground = registerColor("agentsPanel.background", {
26
26
  dark: SIDE_BAR_BACKGROUND,
27
27
  light: editorBackground,
28
28
  hcDark: SIDE_BAR_BACKGROUND,
29
29
  hcLight: SIDE_BAR_BACKGROUND
30
30
  }, ( localize(
31
- 2564,
31
+ 2609,
32
32
  "Background color of the card panels (chat, files, terminal) in the agent sessions window."
33
33
  )));
34
- registerColor("agentsPanel.foreground", SIDE_BAR_FOREGROUND, ( localize(
35
- 2565,
34
+ const agentsPanelForeground = registerColor("agentsPanel.foreground", SIDE_BAR_FOREGROUND, ( localize(
35
+ 2610,
36
36
  "Foreground color of the card panels (chat, files, terminal) in the agent sessions window."
37
37
  )));
38
38
  registerColor("agentsPanel.border", {
@@ -41,11 +41,11 @@ registerColor("agentsPanel.border", {
41
41
  hcDark: contrastBorder,
42
42
  hcLight: contrastBorder
43
43
  }, ( localize(
44
- 2566,
44
+ 2611,
45
45
  "Border color of the card panels (chat, files, terminal) in the agent sessions window."
46
46
  )));
47
47
  registerColor("agentsGradient.tintColor", buttonBackground, ( localize(
48
- 2567,
48
+ 2612,
49
49
  "Tint color used in the background gradient of the agent sessions window shell."
50
50
  )));
51
51
  registerColor("agentFeedbackInputWidget.border", {
@@ -54,65 +54,65 @@ registerColor("agentFeedbackInputWidget.border", {
54
54
  hcDark: contrastBorder,
55
55
  hcLight: contrastBorder
56
56
  }, ( localize(
57
- 2568,
57
+ 2613,
58
58
  "Border color of the agent feedback input widget shown in the editor."
59
59
  )));
60
60
  registerColor("agentsUpdateButton.downloadingBackground", ( transparent(buttonBackground, 0.4)), ( localize(
61
- 2569,
61
+ 2614,
62
62
  "Background color of the update button to show download progress in the agent sessions window."
63
63
  )));
64
64
  registerColor("agentsUpdateButton.downloadedBackground", ( transparent(buttonBackground, 0.7)), ( localize(
65
- 2570,
65
+ 2615,
66
66
  "Background color of the update button when download is complete in the agent sessions window."
67
67
  )));
68
68
  registerColor("agentsChatInput.background", inputBackground, ( localize(
69
- 2571,
69
+ 2616,
70
70
  "Background color of the chat input field in the agent sessions window."
71
71
  )));
72
72
  registerColor("agentsChatInput.foreground", inputForeground, ( localize(
73
- 2572,
73
+ 2617,
74
74
  "Foreground color of the chat input field in the agent sessions window."
75
75
  )));
76
- registerColor("agentsChatInput.border", inputBorder, ( localize(2573, "Border color of the chat input field in the agent sessions window.")));
76
+ registerColor("agentsChatInput.border", inputBorder, ( localize(2618, "Border color of the chat input field in the agent sessions window.")));
77
77
  registerColor("agentsChatInput.focusBorder", focusBorder, ( localize(
78
- 2574,
78
+ 2619,
79
79
  "Border color of the chat input field when focused in the agent sessions window."
80
80
  )));
81
81
  registerColor(
82
82
  "agentsChatInput.placeholderForeground",
83
83
  inputPlaceholderForeground,
84
84
  ( localize(
85
- 2575,
85
+ 2620,
86
86
  "Placeholder text color in the chat input field in the agent sessions window."
87
87
  ))
88
88
  );
89
89
  registerColor("agentsNewSessionButton.background", "#00000000", ( localize(
90
- 2576,
90
+ 2621,
91
91
  "Background color of the New Session button in the agent sessions sidebar."
92
92
  )));
93
93
  registerColor("agentsNewSessionButton.foreground", SIDE_BAR_FOREGROUND, ( localize(
94
- 2577,
94
+ 2622,
95
95
  "Foreground color of the New Session button in the agent sessions sidebar."
96
96
  )));
97
- registerColor("agentsNewSessionButton.border", buttonBorder, ( localize(
98
- 2578,
97
+ registerColor("agentsNewSessionButton.border", buttonSecondaryBorder, ( localize(
98
+ 2623,
99
99
  "Border color of the New Session button in the agent sessions sidebar."
100
100
  )));
101
101
  registerColor(
102
102
  "agentsNewSessionButton.hoverBackground",
103
103
  toolbarHoverBackground,
104
104
  ( localize(
105
- 2579,
105
+ 2624,
106
106
  "Background color of the New Session button when hovered in the agent sessions sidebar."
107
107
  ))
108
108
  );
109
- registerColor("agentsBadge.background", ACTIVITY_BAR_BADGE_BACKGROUND, ( localize(2580, "Background color of badges in the agent sessions window.")));
110
- registerColor("agentsBadge.foreground", ACTIVITY_BAR_BADGE_FOREGROUND, ( localize(2581, "Foreground color of badges in the agent sessions window.")));
109
+ registerColor("agentsBadge.background", ACTIVITY_BAR_BADGE_BACKGROUND, ( localize(2625, "Background color of badges in the agent sessions window.")));
110
+ registerColor("agentsBadge.foreground", ACTIVITY_BAR_BADGE_FOREGROUND, ( localize(2626, "Foreground color of badges in the agent sessions window.")));
111
111
  registerColor(
112
112
  "agentsUnreadBadge.background",
113
113
  ACTIVITY_BAR_BADGE_BACKGROUND,
114
114
  ( localize(
115
- 2582,
115
+ 2627,
116
116
  "Background color of the unread sessions count badge on the sidebar toggle."
117
117
  ))
118
118
  );
@@ -120,7 +120,25 @@ registerColor(
120
120
  "agentsUnreadBadge.foreground",
121
121
  ACTIVITY_BAR_BADGE_FOREGROUND,
122
122
  ( localize(
123
- 2583,
123
+ 2628,
124
124
  "Foreground color of the unread sessions count badge on the sidebar toggle."
125
125
  ))
126
126
  );
127
+ registerColor("activeSessionView.background", agentsPanelBackground, ( localize(
128
+ 2629,
129
+ "Background color of an active session view in the agent sessions window."
130
+ )));
131
+ registerColor("inactiveSessionView.background", agentsBackground, ( localize(
132
+ 2630,
133
+ "Background color of an inactive session view in the agent sessions window."
134
+ )));
135
+ registerColor("activeSessionView.foreground", agentsPanelForeground, ( localize(
136
+ 2631,
137
+ "Foreground color of an active session view in the agent sessions window."
138
+ )));
139
+ registerColor("inactiveSessionView.foreground", agentsPanelForeground, ( localize(
140
+ 2632,
141
+ "Foreground color of an inactive session view in the agent sessions window."
142
+ )));
143
+
144
+ export { agentsBackground, agentsPanelBackground, agentsPanelForeground };
@@ -31,19 +31,19 @@ const viewsContainerSchema = {
31
31
  properties: {
32
32
  id: {
33
33
  description: ( localize(
34
- 2688,
34
+ 2745,
35
35
  "Unique id used to identify the container in which views can be contributed using 'views' contribution point"
36
36
  )),
37
37
  type: "string",
38
38
  pattern: "^[a-zA-Z0-9_-]+$"
39
39
  },
40
40
  title: {
41
- description: ( localize(2689, "Human readable string used to render the container")),
41
+ description: ( localize(2746, "Human readable string used to render the container")),
42
42
  type: "string"
43
43
  },
44
44
  icon: {
45
45
  description: ( localize(
46
- 2690,
46
+ 2747,
47
47
  "Path to the container icon. Icons are 24x24 centered on a 50x40 block and have a fill color of 'rgb(215, 218, 224)' or '#d7dae0'. It is recommended that icons be in SVG, though any image file type is accepted."
48
48
  )),
49
49
  type: "string"
@@ -52,21 +52,21 @@ const viewsContainerSchema = {
52
52
  required: ["id", "title", "icon"]
53
53
  };
54
54
  const viewsContainersContribution = {
55
- description: ( localize(2691, "Contributes views containers to the editor")),
55
+ description: ( localize(2748, "Contributes views containers to the editor")),
56
56
  type: "object",
57
57
  properties: {
58
58
  "activitybar": {
59
- description: ( localize(2692, "Contribute views containers to Activity Bar")),
59
+ description: ( localize(2749, "Contribute views containers to Activity Bar")),
60
60
  type: "array",
61
61
  items: viewsContainerSchema
62
62
  },
63
63
  "panel": {
64
- description: ( localize(2693, "Contribute views containers to Panel")),
64
+ description: ( localize(2750, "Contribute views containers to Panel")),
65
65
  type: "array",
66
66
  items: viewsContainerSchema
67
67
  },
68
68
  "secondarySidebar": {
69
- description: ( localize(2694, "Contribute views containers to Secondary Side Bar")),
69
+ description: ( localize(2751, "Contribute views containers to Secondary Side Bar")),
70
70
  type: "array",
71
71
  items: viewsContainerSchema
72
72
  }
@@ -97,72 +97,72 @@ const viewDescriptor = {
97
97
  properties: {
98
98
  type: {
99
99
  markdownDescription: ( localize(
100
- 2695,
100
+ 2752,
101
101
  "Type of the view. This can either be `tree` for a tree view based view or `webview` for a webview based view. The default is `tree`."
102
102
  )),
103
103
  type: "string",
104
104
  enum: ["tree", "webview"],
105
- markdownEnumDescriptions: [( localize(2696, "The view is backed by a `TreeView` created by `createTreeView`.")), ( localize(
106
- 2697,
105
+ markdownEnumDescriptions: [( localize(2753, "The view is backed by a `TreeView` created by `createTreeView`.")), ( localize(
106
+ 2754,
107
107
  "The view is backed by a `WebviewView` registered by `registerWebviewViewProvider`."
108
108
  ))]
109
109
  },
110
110
  id: {
111
111
  markdownDescription: ( localize(
112
- 2698,
112
+ 2755,
113
113
  "Identifier of the view. This should be unique across all views. It is recommended to include your extension id as part of the view id. Use this to register a data provider through `vscode.window.registerTreeDataProviderForView` API. Also to trigger activating your extension by registering `onView:${id}` event to `activationEvents`."
114
114
  )),
115
115
  type: "string"
116
116
  },
117
117
  name: {
118
- description: ( localize(2699, "The human-readable name of the view. Will be shown")),
118
+ description: ( localize(2756, "The human-readable name of the view. Will be shown")),
119
119
  type: "string"
120
120
  },
121
121
  when: {
122
- description: ( localize(2700, "Condition which must be true to show this view")),
122
+ description: ( localize(2757, "Condition which must be true to show this view")),
123
123
  type: "string"
124
124
  },
125
125
  icon: {
126
126
  description: ( localize(
127
- 2701,
127
+ 2758,
128
128
  "Path to the view icon. View icons are displayed when the name of the view cannot be shown. It is recommended that icons be in SVG, though any image file type is accepted."
129
129
  )),
130
130
  type: "string"
131
131
  },
132
132
  contextualTitle: {
133
133
  description: ( localize(
134
- 2702,
134
+ 2759,
135
135
  "Human-readable context for when the view is moved out of its original location. By default, the view's container name will be used."
136
136
  )),
137
137
  type: "string"
138
138
  },
139
139
  visibility: {
140
140
  description: ( localize(
141
- 2703,
141
+ 2760,
142
142
  "Initial state of the view when the extension is first installed. Once the user has changed the view state by collapsing, moving, or hiding the view, the initial state will not be used again."
143
143
  )),
144
144
  type: "string",
145
145
  enum: ["visible", "hidden", "collapsed"],
146
146
  default: "visible",
147
147
  enumDescriptions: [( localize(
148
- 2704,
148
+ 2761,
149
149
  "The default initial state for the view. In most containers the view will be expanded, however; some built-in containers (explorer, scm, and debug) show all contributed views collapsed regardless of the `visibility`."
150
150
  )), ( localize(
151
- 2705,
151
+ 2762,
152
152
  "The view will not be shown in the view container, but will be discoverable through the views menu and other view entry points and can be un-hidden by the user."
153
- )), ( localize(2706, "The view will show in the view container, but will be collapsed."))]
153
+ )), ( localize(2763, "The view will show in the view container, but will be collapsed."))]
154
154
  },
155
155
  initialSize: {
156
156
  type: "number",
157
157
  description: ( localize(
158
- 2707,
158
+ 2764,
159
159
  "The initial size of the view. The size will behave like the css 'flex' property, and will set the initial size when the view is first shown. In the side bar, this is the height of the view. This value is only respected when the same extension owns both the view and the view container."
160
160
  ))
161
161
  },
162
162
  accessibilityHelpContent: {
163
163
  type: "string",
164
164
  markdownDescription: ( localize(
165
- 2708,
165
+ 2765,
166
166
  "When the accessibility help dialog is invoked in this view, this content will be presented to the user as a markdown string. Keybindings will be resolved when provided in the format of <keybinding:commandId>. If there is no keybinding, that will be indicated and this command will be included in a quickpick for easy configuration."
167
167
  ))
168
168
  }
@@ -174,25 +174,25 @@ const remoteViewDescriptor = {
174
174
  properties: {
175
175
  id: {
176
176
  description: ( localize(
177
- 2698,
177
+ 2755,
178
178
  "Identifier of the view. This should be unique across all views. It is recommended to include your extension id as part of the view id. Use this to register a data provider through `vscode.window.registerTreeDataProviderForView` API. Also to trigger activating your extension by registering `onView:${id}` event to `activationEvents`."
179
179
  )),
180
180
  type: "string"
181
181
  },
182
182
  name: {
183
- description: ( localize(2699, "The human-readable name of the view. Will be shown")),
183
+ description: ( localize(2756, "The human-readable name of the view. Will be shown")),
184
184
  type: "string"
185
185
  },
186
186
  when: {
187
- description: ( localize(2700, "Condition which must be true to show this view")),
187
+ description: ( localize(2757, "Condition which must be true to show this view")),
188
188
  type: "string"
189
189
  },
190
190
  group: {
191
- description: ( localize(2709, "Nested group in the viewlet")),
191
+ description: ( localize(2766, "Nested group in the viewlet")),
192
192
  type: "string"
193
193
  },
194
194
  remoteName: {
195
- description: ( localize(2710, "The name of the remote type associated with this view")),
195
+ description: ( localize(2767, "The name of the remote type associated with this view")),
196
196
  type: ["string", "array"],
197
197
  items: {
198
198
  type: "string"
@@ -201,36 +201,36 @@ const remoteViewDescriptor = {
201
201
  }
202
202
  };
203
203
  const viewsContribution = {
204
- description: ( localize(2711, "Contributes views to the editor")),
204
+ description: ( localize(2768, "Contributes views to the editor")),
205
205
  type: "object",
206
206
  properties: {
207
207
  "explorer": {
208
- description: ( localize(2712, "Contributes views to Explorer container in the Activity bar")),
208
+ description: ( localize(2769, "Contributes views to Explorer container in the Activity bar")),
209
209
  type: "array",
210
210
  items: viewDescriptor,
211
211
  default: []
212
212
  },
213
213
  "debug": {
214
- description: ( localize(2713, "Contributes views to Debug container in the Activity bar")),
214
+ description: ( localize(2770, "Contributes views to Debug container in the Activity bar")),
215
215
  type: "array",
216
216
  items: viewDescriptor,
217
217
  default: []
218
218
  },
219
219
  "scm": {
220
- description: ( localize(2714, "Contributes views to SCM container in the Activity bar")),
220
+ description: ( localize(2771, "Contributes views to SCM container in the Activity bar")),
221
221
  type: "array",
222
222
  items: viewDescriptor,
223
223
  default: []
224
224
  },
225
225
  "test": {
226
- description: ( localize(2715, "Contributes views to Test container in the Activity bar")),
226
+ description: ( localize(2772, "Contributes views to Test container in the Activity bar")),
227
227
  type: "array",
228
228
  items: viewDescriptor,
229
229
  default: []
230
230
  },
231
231
  "remote": {
232
232
  description: ( localize(
233
- 2716,
233
+ 2773,
234
234
  "Contributes views to Remote container in the Activity bar. To contribute to this container, the 'contribViewsRemote' API proposal must be enabled."
235
235
  )),
236
236
  type: "array",
@@ -239,7 +239,7 @@ const viewsContribution = {
239
239
  }
240
240
  },
241
241
  additionalProperties: {
242
- description: ( localize(2717, "Contributes views to contributed views container")),
242
+ description: ( localize(2774, "Contributes views to contributed views container")),
243
243
  type: "array",
244
244
  items: viewDescriptor,
245
245
  default: []
@@ -364,13 +364,13 @@ let ViewsExtensionHandler = class ViewsExtensionHandler {
364
364
  }
365
365
  isValidViewsContainer(viewsContainersDescriptors, collector) {
366
366
  if (!Array.isArray(viewsContainersDescriptors)) {
367
- collector.error(( localize(2718, "views containers must be an array")));
367
+ collector.error(( localize(2775, "views containers must be an array")));
368
368
  return false;
369
369
  }
370
370
  for (const descriptor of viewsContainersDescriptors) {
371
371
  if (typeof descriptor.id !== "string" && isFalsyOrWhitespace(descriptor.id)) {
372
372
  collector.error(( localize(
373
- 2719,
373
+ 2776,
374
374
  "property `{0}` is mandatory and must be of type `string` with non-empty value. Only alphanumeric characters, '_', and '-' are allowed.",
375
375
  "id"
376
376
  )));
@@ -378,23 +378,23 @@ let ViewsExtensionHandler = class ViewsExtensionHandler {
378
378
  }
379
379
  if (!(/^[a-z0-9_-]+$/i.test(descriptor.id))) {
380
380
  collector.error(( localize(
381
- 2719,
381
+ 2776,
382
382
  "property `{0}` is mandatory and must be of type `string` with non-empty value. Only alphanumeric characters, '_', and '-' are allowed.",
383
383
  "id"
384
384
  )));
385
385
  return false;
386
386
  }
387
387
  if (typeof descriptor.title !== "string") {
388
- collector.error(( localize(2720, "property `{0}` is mandatory and must be of type `string`", "title")));
388
+ collector.error(( localize(2777, "property `{0}` is mandatory and must be of type `string`", "title")));
389
389
  return false;
390
390
  }
391
391
  if (typeof descriptor.icon !== "string") {
392
- collector.error(( localize(2720, "property `{0}` is mandatory and must be of type `string`", "icon")));
392
+ collector.error(( localize(2777, "property `{0}` is mandatory and must be of type `string`", "icon")));
393
393
  return false;
394
394
  }
395
395
  if (isFalsyOrWhitespace(descriptor.title)) {
396
396
  collector.warn(( localize(
397
- 2721,
397
+ 2778,
398
398
  "property `{0}` is mandatory and must be of type `string` with non-empty value",
399
399
  "title"
400
400
  )));
@@ -480,7 +480,7 @@ let ViewsExtensionHandler = class ViewsExtensionHandler {
480
480
  }
481
481
  if (key === "remote" && !isProposedApiEnabled(extension.description)) {
482
482
  collector.warn(( localize(
483
- 2722,
483
+ 2779,
484
484
  "View container '{0}' requires 'enabledApiProposals: [\"contribViewsRemote\"]' to be added to 'Remote'.",
485
485
  key
486
486
  )));
@@ -488,30 +488,38 @@ let ViewsExtensionHandler = class ViewsExtensionHandler {
488
488
  }
489
489
  if (key === "agentSessions" && !isProposedApiEnabled(extension.description)) {
490
490
  collector.warn(( localize(
491
- 2723,
491
+ 2780,
492
492
  "View container '{0}' requires 'enabledApiProposals: [\"chatSessionsProvider\"]'.",
493
493
  key
494
494
  )));
495
495
  return;
496
496
  }
497
497
  const viewContainer = this.getViewContainer(key);
498
+ const container = viewContainer || this.getDefaultViewContainer();
498
499
  if (!viewContainer) {
499
500
  collector.warn(( localize(
500
- 2724,
501
+ 2781,
501
502
  "View container '{0}' does not exist and all views registered to it will be added to 'Explorer'.",
502
503
  key
503
504
  )));
504
505
  }
505
- const container = viewContainer || this.getDefaultViewContainer();
506
+ if (!container) {
507
+ collector.warn(( localize(
508
+ 2782,
509
+ "'Explorer' view container does not exist and all views registered to '{0}' will not be added to the UI.",
510
+ key
511
+ )));
512
+ return;
513
+ }
506
514
  const viewDescriptors = [];
507
515
  for (let index = 0; index < value.length; index++) {
508
516
  const item = value[index];
509
517
  if (( viewIds.has(item.id))) {
510
- collector.error(( localize(2725, "Cannot register multiple views with same id `{0}`", item.id)));
518
+ collector.error(( localize(2783, "Cannot register multiple views with same id `{0}`", item.id)));
511
519
  continue;
512
520
  }
513
521
  if (this.viewsRegistry.getView(item.id) !== null) {
514
- collector.error(( localize(2726, "A view with id `{0}` is already registered.", item.id)));
522
+ collector.error(( localize(2784, "A view with id `{0}` is already registered.", item.id)));
515
523
  continue;
516
524
  }
517
525
  const order = ExtensionIdentifier.equals(extension.description.identifier, container.extensionId) ? index + 1 : container.viewOrderDelegate ? container.viewOrderDelegate.getOrder(item.group) : undefined;
@@ -522,7 +530,7 @@ let ViewsExtensionHandler = class ViewsExtensionHandler {
522
530
  const initialVisibility = this.convertInitialVisibility(item.visibility);
523
531
  const type = this.getViewType(item.type);
524
532
  if (!type) {
525
- collector.error(( localize(2727, "Unknown view type `{0}`.", item.type)));
533
+ collector.error(( localize(2785, "Unknown view type `{0}`.", item.type)));
526
534
  continue;
527
535
  }
528
536
  let weight = undefined;
@@ -614,29 +622,29 @@ let ViewsExtensionHandler = class ViewsExtensionHandler {
614
622
  }
615
623
  isValidViewDescriptors(viewDescriptors, collector) {
616
624
  if (!Array.isArray(viewDescriptors)) {
617
- collector.error(( localize(2728, "views must be an array")));
625
+ collector.error(( localize(2786, "views must be an array")));
618
626
  return false;
619
627
  }
620
628
  for (const descriptor of viewDescriptors) {
621
629
  if (typeof descriptor.id !== "string") {
622
- collector.error(( localize(2720, "property `{0}` is mandatory and must be of type `string`", "id")));
630
+ collector.error(( localize(2777, "property `{0}` is mandatory and must be of type `string`", "id")));
623
631
  return false;
624
632
  }
625
633
  if (typeof descriptor.name !== "string") {
626
- collector.error(( localize(2720, "property `{0}` is mandatory and must be of type `string`", "name")));
634
+ collector.error(( localize(2777, "property `{0}` is mandatory and must be of type `string`", "name")));
627
635
  return false;
628
636
  }
629
637
  if (descriptor.when && typeof descriptor.when !== "string") {
630
- collector.error(( localize(2729, "property `{0}` can be omitted or must be of type `string`", "when")));
638
+ collector.error(( localize(2787, "property `{0}` can be omitted or must be of type `string`", "when")));
631
639
  return false;
632
640
  }
633
641
  if (descriptor.icon && typeof descriptor.icon !== "string") {
634
- collector.error(( localize(2729, "property `{0}` can be omitted or must be of type `string`", "icon")));
642
+ collector.error(( localize(2787, "property `{0}` can be omitted or must be of type `string`", "icon")));
635
643
  return false;
636
644
  }
637
645
  if (descriptor.contextualTitle && typeof descriptor.contextualTitle !== "string") {
638
646
  collector.error(( localize(
639
- 2729,
647
+ 2787,
640
648
  "property `{0}` can be omitted or must be of type `string`",
641
649
  "contextualTitle"
642
650
  )));
@@ -644,7 +652,7 @@ let ViewsExtensionHandler = class ViewsExtensionHandler {
644
652
  }
645
653
  if (descriptor.visibility && !this.convertInitialVisibility(descriptor.visibility)) {
646
654
  collector.error(( localize(
647
- 2730,
655
+ 2788,
648
656
  "property `{0}` can be omitted or must be one of {1}",
649
657
  "visibility",
650
658
  ( Object.values(InitialVisibility)).join(", ")
@@ -706,7 +714,7 @@ class ViewContainersDataRenderer extends Disposable {
706
714
  dispose: () => {}
707
715
  };
708
716
  }
709
- const headers = [( localize(2731, "ID")), ( localize(2732, "Title")), ( localize(2733, "Where"))];
717
+ const headers = [( localize(2789, "ID")), ( localize(2790, "Title")), ( localize(2791, "Where"))];
710
718
  const rows = ( viewContainers.sort((a, b) => a.id.localeCompare(b.id)).map(viewContainer => {
711
719
  return [viewContainer.id, viewContainer.title, viewContainer.location];
712
720
  }));
@@ -746,7 +754,7 @@ class ViewsDataRenderer extends Disposable {
746
754
  dispose: () => {}
747
755
  };
748
756
  }
749
- const headers = [( localize(2734, "ID")), ( localize(2735, "Name")), ( localize(2733, "Where"))];
757
+ const headers = [( localize(2792, "ID")), ( localize(2793, "Name")), ( localize(2791, "Where"))];
750
758
  const rows = ( views.sort((a, b) => a.id.localeCompare(b.id)).map(view => {
751
759
  return [view.id, view.name, view.location];
752
760
  }));
@@ -761,7 +769,7 @@ class ViewsDataRenderer extends Disposable {
761
769
  }
762
770
  ( Registry.as(Extensions$2.ExtensionFeaturesRegistry)).registerExtensionFeature({
763
771
  id: "viewsContainers",
764
- label: ( localize(2736, "View Containers")),
772
+ label: ( localize(2794, "View Containers")),
765
773
  access: {
766
774
  canToggle: false
767
775
  },
@@ -769,7 +777,7 @@ class ViewsDataRenderer extends Disposable {
769
777
  });
770
778
  ( Registry.as(Extensions$2.ExtensionFeaturesRegistry)).registerExtensionFeature({
771
779
  id: "views",
772
- label: ( localize(2737, "Views")),
780
+ label: ( localize(2795, "Views")),
773
781
  access: {
774
782
  canToggle: false
775
783
  },