@codingame/monaco-vscode-view-common-service-override 32.0.1 → 32.0.2
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.
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-view-common-service-override",
|
|
3
|
-
"version": "32.0.
|
|
3
|
+
"version": "32.0.2",
|
|
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": "32.0.
|
|
19
|
-
"@codingame/monaco-vscode-bulk-edit-service-override": "32.0.
|
|
18
|
+
"@codingame/monaco-vscode-api": "32.0.2",
|
|
19
|
+
"@codingame/monaco-vscode-bulk-edit-service-override": "32.0.2"
|
|
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-
|
|
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
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
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
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
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
|
-
|
|
425
|
+
const transfer = data.stream ? [data.stream] : [];
|
|
426
|
+
assertIsDefined(navigator.serviceWorker.controller).postMessage({ channel: 'did-load-resource', data }, transfer);
|
|
464
427
|
});
|
|
465
428
|
|
|
466
|
-
|
|
467
|
-
|
|
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
|
-
|
|
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
|