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

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 +4 -4
  2. package/service-override/vs/workbench/contrib/webview/browser/pre/index.html +37 -75
  3. package/vscode/src/vs/sessions/common/theme.js +25 -25
  4. package/vscode/src/vs/workbench/api/browser/viewsExtensionPoint.js +56 -56
  5. package/vscode/src/vs/workbench/browser/actions/helpActions.js +20 -20
  6. package/vscode/src/vs/workbench/browser/actions/listCommands.js +3 -3
  7. package/vscode/src/vs/workbench/browser/actions/navigationActions.js +6 -6
  8. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +179 -174
  9. package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +18 -15
  10. package/vscode/src/vs/workbench/browser/parts/titlebar/menubar.contribution.js +8 -8
  11. package/vscode/src/vs/workbench/browser/workbench.zenMode.contribution.js +15 -15
  12. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +12 -12
  13. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +3 -3
  14. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyTree.js +3 -3
  15. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditors.js +2 -4
  16. package/vscode/src/vs/workbench/contrib/customEditor/common/contributedCustomEditors.js +37 -7
  17. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.d.ts +4 -7
  18. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.js +4 -6
  19. package/vscode/src/vs/workbench/contrib/customEditor/common/extensionPoint.d.ts +62 -35
  20. package/vscode/src/vs/workbench/contrib/customEditor/common/extensionPoint.js +68 -52
  21. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.js +7 -7
  22. package/vscode/src/vs/workbench/contrib/limitIndicator/browser/limitIndicator.contribution.js +8 -8
  23. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/commands.js +29 -29
  24. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/devCommands.js +14 -14
  25. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditor.contribution.js +2 -2
  26. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorAccessibilityHelp.js +5 -5
  27. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/colors.js +13 -13
  28. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +20 -20
  29. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/baseCodeEditorView.js +3 -3
  30. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/inputCodeEditorView.js +10 -10
  31. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/resultCodeEditorView.js +3 -3
  32. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/mergeEditor.js +1 -1
  33. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.js +1 -1
  34. package/vscode/src/vs/workbench/contrib/preferences/browser/keyboardLayoutPicker.js +12 -12
  35. package/vscode/src/vs/workbench/contrib/sash/browser/sash.contribution.js +2 -2
  36. package/vscode/src/vs/workbench/contrib/scrollLocking/browser/scrollLocking.js +7 -7
  37. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchy.contribution.js +10 -10
  38. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +3 -3
  39. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyTree.js +3 -3
  40. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +1 -1
  41. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewCommands.js +5 -5
  42. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +1 -1
  43. package/vscode/src/vs/workbench/services/editor/browser/editorResolverService.d.ts +2 -2
  44. package/vscode/src/vs/workbench/services/editor/browser/editorResolverService.js +31 -22
  45. package/vscode/src/vs/workbench/services/history/browser/historyService.js +9 -9
  46. package/vscode/src/vs/workbench/services/progress/browser/progressService.js +7 -7
  47. package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.js +5 -5
  48. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +9 -9
package/package.json CHANGED
@@ -1,22 +1,22 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-view-common-service-override",
3
- "version": "32.0.1",
3
+ "version": "33.0.9",
4
4
  "private": false,
5
5
  "description": "VSCode public API plugged on the monaco editor - view-common service-override",
6
6
  "keywords": [],
7
+ "license": "MIT",
7
8
  "author": {
8
9
  "name": "CodinGame",
9
10
  "url": "http://www.codingame.com"
10
11
  },
11
- "license": "MIT",
12
12
  "repository": {
13
13
  "type": "git",
14
14
  "url": "git+ssh://git@github.com/CodinGame/monaco-vscode-api.git"
15
15
  },
16
16
  "type": "module",
17
17
  "dependencies": {
18
- "@codingame/monaco-vscode-api": "32.0.1",
19
- "@codingame/monaco-vscode-bulk-edit-service-override": "32.0.1"
18
+ "@codingame/monaco-vscode-api": "33.0.9",
19
+ "@codingame/monaco-vscode-bulk-edit-service-override": "33.0.9"
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-4iXnHx3puY8EO0djr5yXkmzShogiDoTzrjUeJjTZBmU=' 'self'; frame-src 'self'; style-src 'unsafe-inline';">
8
+ content="default-src 'none'; script-src 'sha256-2bgY7b4AY+EULl24tUGduYOHUHUBH5EuIHGYqk8TM+k=' 'self'; frame-src 'self'; style-src 'unsafe-inline';">
9
9
 
10
10
  <!-- Disable pinch zooming -->
11
11
  <meta name="viewport"
@@ -53,9 +53,6 @@
53
53
 
54
54
  perfMark('scriptStart');
55
55
 
56
- /** @type {MessageChannel | undefined} */
57
- let outerIframeMessageChannel;
58
-
59
56
  /**
60
57
  * Use polling to track focus of main webview and iframes within the webview
61
58
  *
@@ -201,7 +198,7 @@
201
198
  ::highlight(current-find-highlight) {
202
199
  background-color: var(--vscode-editor-findMatchBackground);
203
200
  }
204
- }`;
201
+ }`;
205
202
 
206
203
  /**
207
204
  * @param {boolean} allowMultipleAPIAcquire
@@ -258,65 +255,30 @@
258
255
  }
259
256
 
260
257
  const swPath = encodeURI(`${serviceWorkerUri}?v=${expectedWorkerVersion}&vscode-resource-base-authority=${searchParams.get('vscode-resource-base-authority')}&remoteAuthority=${searchParams.get('remoteAuthority') ?? ''}`);
261
- navigator.serviceWorker.register(swPath, { type: 'module' })
258
+ navigator.serviceWorker.register(swPath, { type: 'module', updateViaCache: 'none' })
262
259
  .then(async registration => {
263
- /**
264
- * @param {MessageEvent} event
265
- */
266
- const versionHandler = async (event) => {
267
- if (event.data.channel !== 'version') {
268
- return;
269
- }
270
-
271
- navigator.serviceWorker.removeEventListener('message', versionHandler);
272
- if (event.data.version === expectedWorkerVersion) {
273
- return resolve();
274
- } else {
275
- console.log(`Found unexpected service worker version. Found: ${event.data.version}. Expected: ${expectedWorkerVersion}`);
276
- console.log(`Attempting to reload service worker`);
277
-
278
- // If we have the wrong version, try once (and only once) to unregister and re-register
279
- // Note that `.update` doesn't seem to work desktop electron at the moment so we use
280
- // `unregister` and `register` here.
281
- return registration.unregister()
282
- .then(() => navigator.serviceWorker.register(swPath))
283
- .finally(() => { resolve(); });
284
- }
285
- };
286
- navigator.serviceWorker.addEventListener('message', versionHandler);
287
-
288
- const postVersionMessage = (/** @type {ServiceWorker} */ controller) => {
289
- outerIframeMessageChannel = new MessageChannel();
290
- controller.postMessage({ channel: 'version' }, [outerIframeMessageChannel.port2]);
291
- };
292
-
293
- // At this point, either the service worker is ready and
294
- // became our controller, or we need to wait for it.
295
- // Note that navigator.serviceWorker.controller could be a
296
- // controller from a previously loaded service worker.
297
- const currentController = navigator.serviceWorker.controller;
298
- if (currentController?.scriptURL.endsWith(swPath)) {
299
- // service worker already loaded & ready to receive messages
300
- postVersionMessage(currentController);
301
- } else {
302
- if (currentController) {
303
- console.log(`Found unexpected service worker controller. Found: ${currentController.scriptURL}. Expected: ${swPath}. Waiting for controllerchange.`);
304
- } else {
305
- console.log(`No service worker controller found. Waiting for controllerchange.`);
306
- }
260
+ if (navigator.serviceWorker.controller) {
261
+ // A previous SW is already controlling. Force an update
262
+ // check so we don't serve stale resources after a VS Code
263
+ // update. register() resolves before the update check
264
+ // completes, so we must call update() explicitly to wait
265
+ // for the download + byte-comparison to finish.
266
+ registration = await registration.update();
267
+ }
307
268
 
308
- // Either there's no controlling service worker, or it's an old one.
309
- // Wait for it to change before posting the message
310
- const onControllerChange = () => {
311
- navigator.serviceWorker.removeEventListener('controllerchange', onControllerChange);
312
- if (navigator.serviceWorker.controller) {
313
- postVersionMessage(navigator.serviceWorker.controller);
314
- } else {
315
- return reject(new Error('No controller found.'));
316
- }
317
- };
318
- navigator.serviceWorker.addEventListener('controllerchange', onControllerChange);
269
+ // If a new worker was found, wait for it to take control via skipWaiting() + clients.claim() in the SW.
270
+ if (
271
+ // New worker
272
+ registration.installing || registration.waiting
273
+ // First ever load
274
+ || !navigator.serviceWorker.controller
275
+ ) {
276
+ await new Promise(r => {
277
+ navigator.serviceWorker.addEventListener('controllerchange', r, { once: true });
278
+ });
319
279
  }
280
+
281
+ return resolve();
320
282
  }).catch(error => {
321
283
  if (!onElectron && error instanceof Error && error.message.includes('user denied permission')) {
322
284
  return reject(new Error(`Could not register service worker. Please make sure third party cookies are enabled: ${error}`));
@@ -460,11 +422,21 @@
460
422
 
461
423
  if (!disableServiceWorker) {
462
424
  hostMessaging.onMessage('did-load-resource', (_event, data) => {
463
- assertIsDefined(navigator.serviceWorker.controller).postMessage({ channel: 'did-load-resource', data }, data.data?.buffer ? [data.data.buffer] : []);
425
+ const transfer = data.stream ? [data.stream] : [];
426
+ assertIsDefined(navigator.serviceWorker.controller).postMessage({ channel: 'did-load-resource', data }, transfer);
464
427
  });
465
428
 
466
- hostMessaging.onMessage('did-load-localhost', (_event, data) => {
467
- assertIsDefined(navigator.serviceWorker.controller).postMessage({ channel: 'did-load-localhost', data });
429
+ for (const channel of [
430
+ 'did-load-resource-end',
431
+ 'did-load-localhost',
432
+ ]) {
433
+ hostMessaging.onMessage(channel, (_event, data) => {
434
+ assertIsDefined(navigator.serviceWorker.controller).postMessage({ channel, data });
435
+ });
436
+ }
437
+
438
+ hostMessaging.onMessage('did-load-resource-chunk', (_event, data) => {
439
+ assertIsDefined(navigator.serviceWorker.controller).postMessage({ channel: 'did-load-resource-chunk', data }, data.data?.buffer ? [data.data.buffer] : []);
468
440
  });
469
441
 
470
442
  navigator.serviceWorker.addEventListener('message', event => {
@@ -711,7 +683,7 @@
711
683
  * @param {KeyboardEvent} e
712
684
  * @return {boolean}
713
685
  */
714
- function isHelp(e) {
686
+ function isHelp(e) {
715
687
  // 112: keyCode of "F1"
716
688
  return e.keyCode === 112;
717
689
  }
@@ -1220,16 +1192,6 @@
1220
1192
  unloadMonitor.onIframeLoaded(newFrame);
1221
1193
  }
1222
1194
 
1223
- if (!disableServiceWorker && outerIframeMessageChannel) {
1224
- outerIframeMessageChannel.port1.onmessage = event => {
1225
- switch (event.data.channel) {
1226
- case 'load-resource':
1227
- case 'load-localhost':
1228
- hostMessaging.postMessage(event.data.channel, event.data);
1229
- return;
1230
- }
1231
- };
1232
- }
1233
1195
  });
1234
1196
 
1235
1197
  // propagate vscode-context-menu-visible class
@@ -1,7 +1,7 @@
1
1
 
2
2
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
3
3
  import { registerColor, transparent } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colorUtils';
4
- import { contrastBorder, focusBorder } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/baseColors';
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
7
  import { buttonBackground, inputBackground, inputForeground, inputBorder, inputPlaceholderForeground, buttonBorder } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/inputColors';
@@ -11,7 +11,7 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/mini
11
11
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/miscColors';
12
12
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/quickpickColors';
13
13
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/searchColors';
14
- import { SIDE_BAR_BACKGROUND, SIDE_BAR_FOREGROUND, PANEL_BORDER, ACTIVITY_BAR_BADGE_BACKGROUND, ACTIVITY_BAR_BADGE_FOREGROUND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/theme';
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
16
  registerColor("agents.background", {
17
17
  dark: editorBackground,
@@ -19,7 +19,7 @@ registerColor("agents.background", {
19
19
  hcDark: editorBackground,
20
20
  hcLight: editorBackground
21
21
  }, ( localize(
22
- 2541,
22
+ 2563,
23
23
  "Background color of the agent sessions window shell and gradient base."
24
24
  )));
25
25
  registerColor("agentsPanel.background", {
@@ -28,24 +28,24 @@ registerColor("agentsPanel.background", {
28
28
  hcDark: SIDE_BAR_BACKGROUND,
29
29
  hcLight: SIDE_BAR_BACKGROUND
30
30
  }, ( localize(
31
- 2542,
31
+ 2564,
32
32
  "Background color of the card panels (chat, files, terminal) in the agent sessions window."
33
33
  )));
34
34
  registerColor("agentsPanel.foreground", SIDE_BAR_FOREGROUND, ( localize(
35
- 2543,
35
+ 2565,
36
36
  "Foreground color of the card panels (chat, files, terminal) in the agent sessions window."
37
37
  )));
38
38
  registerColor("agentsPanel.border", {
39
- dark: PANEL_BORDER,
40
- light: editorWidgetBorder,
39
+ dark: ( transparent(foreground, 0.15)),
40
+ light: ( transparent(foreground, 0.15)),
41
41
  hcDark: contrastBorder,
42
42
  hcLight: contrastBorder
43
43
  }, ( localize(
44
- 2544,
44
+ 2566,
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
- 2545,
48
+ 2567,
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
- 2546,
57
+ 2568,
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
- 2547,
61
+ 2569,
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
- 2548,
65
+ 2570,
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
- 2549,
69
+ 2571,
70
70
  "Background color of the chat input field in the agent sessions window."
71
71
  )));
72
72
  registerColor("agentsChatInput.foreground", inputForeground, ( localize(
73
- 2550,
73
+ 2572,
74
74
  "Foreground color of the chat input field in the agent sessions window."
75
75
  )));
76
- registerColor("agentsChatInput.border", inputBorder, ( localize(2551, "Border color of the chat input field in the agent sessions window.")));
76
+ registerColor("agentsChatInput.border", inputBorder, ( localize(2573, "Border color of the chat input field in the agent sessions window.")));
77
77
  registerColor("agentsChatInput.focusBorder", focusBorder, ( localize(
78
- 2552,
78
+ 2574,
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
- 2553,
85
+ 2575,
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
- 2554,
90
+ 2576,
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
- 2555,
94
+ 2577,
95
95
  "Foreground color of the New Session button in the agent sessions sidebar."
96
96
  )));
97
97
  registerColor("agentsNewSessionButton.border", buttonBorder, ( localize(
98
- 2556,
98
+ 2578,
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
- 2557,
105
+ 2579,
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(2558, "Background color of badges in the agent sessions window.")));
110
- registerColor("agentsBadge.foreground", ACTIVITY_BAR_BADGE_FOREGROUND, ( localize(2559, "Foreground color of badges in the agent sessions window.")));
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.")));
111
111
  registerColor(
112
112
  "agentsUnreadBadge.background",
113
113
  ACTIVITY_BAR_BADGE_BACKGROUND,
114
114
  ( localize(
115
- 2560,
115
+ 2582,
116
116
  "Background color of the unread sessions count badge on the sidebar toggle."
117
117
  ))
118
118
  );
@@ -120,7 +120,7 @@ registerColor(
120
120
  "agentsUnreadBadge.foreground",
121
121
  ACTIVITY_BAR_BADGE_FOREGROUND,
122
122
  ( localize(
123
- 2561,
123
+ 2583,
124
124
  "Foreground color of the unread sessions count badge on the sidebar toggle."
125
125
  ))
126
126
  );