File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -50,8 +50,6 @@ class ServiceWorker extends Base {
5050
5151 await serviceWorker . ready ;
5252
53- serviceWorker . onmessage = WorkerManager . onWorkerMessage . bind ( WorkerManager ) ;
54-
5553 if ( ! WorkerManager . getWorker ( 'service' ) ) {
5654 /*
5755 * navigator.serviceWorker.controller can be null in case we load a page for the first time
@@ -61,16 +59,6 @@ class ServiceWorker extends Base {
6159 WorkerManager . serviceWorker = registration . active
6260 }
6361
64- let swVersion = await WorkerManager . promiseMessage ( 'service' , {
65- action : 'getVersion'
66- } ) ;
67-
68- if ( swVersion ?. version && swVersion . version !== config . version ) {
69- console . error ( `Version Mismatch! Client: ${ config . version } , SW: ${ swVersion . version } . Reloading.` ) ;
70- location . reload ( true ) ;
71- return
72- }
73-
7462 WorkerManager . sendMessage ( 'service' , {
7563 action : 'registerNeoConfig' ,
7664 data : config
Original file line number Diff line number Diff line change @@ -147,6 +147,11 @@ class Manager extends Base {
147147
148148 ! Neo . insideWorker && me . createWorkers ( ) ;
149149
150+ if ( navigator . serviceWorker ) {
151+ navigator . serviceWorker . onmessage = me . onWorkerMessage . bind ( me ) ;
152+ me . checkServiceWorkerVersion ( )
153+ }
154+
150155 Neo . setGlobalConfig = me . setGlobalConfig . bind ( me ) ;
151156 Neo . workerId = 'main' ;
152157
@@ -177,6 +182,22 @@ class Manager extends Base {
177182 } )
178183 }
179184
185+ /**
186+ * @returns {Promise<void> }
187+ */
188+ async checkServiceWorkerVersion ( ) {
189+ if ( navigator . serviceWorker ?. controller ) {
190+ let swVersion = await this . promiseMessage ( 'service' , {
191+ action : 'getVersion'
192+ } ) ;
193+
194+ if ( swVersion ?. version && swVersion . version !== Neo . config . version ) {
195+ console . error ( `Version Mismatch! Client: ${ Neo . config . version } , SW: ${ swVersion . version } . Reloading.` ) ;
196+ location . reload ( true )
197+ }
198+ }
199+ }
200+
180201 /**
181202 * Creates a web worker using the passed options as well as adding error & message event listeners.
182203 * @param {Object } opts
You can’t perform that action at this time.
0 commit comments