@@ -96,7 +96,7 @@ BitBswup.version = window['bit-bswup version'] = '9.9.0-pre-02';
9696
9797 if ( e . data === 'CLIENTS_CLAIMED' ) {
9898 Blazor . start ( ) . then ( ( ) => {
99- blazorStartResolver ( undefined ) ;
99+ blazorStartResolver ?. ( undefined ) ;
100100 e . source . postMessage ( 'BLAZOR_STARTED' ) ;
101101 } ) ;
102102 return ;
@@ -216,17 +216,16 @@ BitBswup.version = window['bit-bswup version'] = '9.9.0-pre-02';
216216 }
217217} ( ) ) ;
218218
219- BitBswup . checkForUpdate = async ( ) => {
219+ BitBswup . checkForUpdate = async ( ) : Promise < void > => {
220220 if ( ! ( 'serviceWorker' in navigator ) ) {
221221 return console . warn ( 'no serviceWorker in navigator' ) ;
222222 }
223223
224224 const reg = await navigator . serviceWorker . getRegistration ( ) ;
225- const result = await reg . update ( ) ;
226- return result ;
225+ await reg . update ( ) ;
227226}
228227
229- BitBswup . forceRefresh = async ( ) => {
228+ BitBswup . forceRefresh = async ( ) : Promise < void > => {
230229 if ( ! ( 'serviceWorker' in navigator ) ) {
231230 return console . warn ( 'no serviceWorker in navigator' ) ;
232231 }
@@ -242,6 +241,22 @@ BitBswup.forceRefresh = async () => {
242241 window . location . reload ( ) ;
243242}
244243
244+ BitBswup . skipWaiting = async ( ) : Promise < boolean > => {
245+ if ( ! ( 'serviceWorker' in navigator ) ) {
246+ console . warn ( 'no serviceWorker in navigator' ) ;
247+ return false ;
248+ }
249+
250+ const reg = await navigator . serviceWorker . getRegistration ( ) ;
251+
252+ if ( reg ?. waiting ) {
253+ reg . waiting . postMessage ( 'SKIP_WAITING' ) ;
254+ return true ;
255+ }
256+
257+ return false ;
258+ }
259+
245260const BswupMessage = {
246261 downloadStarted : 'DOWNLOAD_STARTED' ,
247262 downloadProgress : 'DOWNLOAD_PROGRESS' ,
0 commit comments