From c36ae33e09de7cb788ad098c6778ac2b8d10249b Mon Sep 17 00:00:00 2001 From: "Mr.doob" Date: Fri, 16 Jan 2026 08:30:33 +0900 Subject: [PATCH] Editor: Improve service worker caching and activation. --- editor/sw.js | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/editor/sw.js b/editor/sw.js index 78b1b590e06f35..ae39be71d4c93c 100644 --- a/editor/sw.js +++ b/editor/sw.js @@ -235,7 +235,7 @@ self.addEventListener( 'install', async function () { const cache = await caches.open( cacheName ); - assets.forEach( async function ( asset ) { + await Promise.all( assets.map( async function ( asset ) { try { @@ -247,7 +247,27 @@ self.addEventListener( 'install', async function () { } - } ); + } ) ); + + self.skipWaiting(); + +} ); + +self.addEventListener( 'activate', async function ( event ) { + + event.waitUntil( + caches.keys().then( function ( names ) { + + return Promise.all( + names.filter( name => name !== cacheName ).map( name => caches.delete( name ) ) + ); + + } ).then( function () { + + self.clients.claim(); + + } ) + ); } );