play safe in *Safe() as BG gets defined only in .then
This commit is contained in:
		
							parent
							
								
									0440073853
								
							
						
					
					
						commit
						26f84c5852
					
				
							
								
								
									
										17
									
								
								messaging.js
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								messaging.js
									
									
									
									
									
								
							|  | @ -272,13 +272,13 @@ function sessionStorageHash(name) { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| function onBackgroundReady(...dataPassthru) { | function onBackgroundReady() { | ||||||
|   return BG ? Promise.resolve(...dataPassthru) : new Promise(ping); |   return BG ? Promise.resolve() : new Promise(ping); | ||||||
|   function ping(resolve) { |   function ping(resolve) { | ||||||
|     chrome.runtime.sendMessage({method: 'healthCheck'}, health => { |     chrome.runtime.sendMessage({method: 'healthCheck'}, health => { | ||||||
|       if (health !== undefined) { |       if (health !== undefined) { | ||||||
|         BG = chrome.extension.getBackgroundPage(); |         BG = chrome.extension.getBackgroundPage(); | ||||||
|         resolve(...dataPassthru); |         resolve(); | ||||||
|       } else { |       } else { | ||||||
|         ping(resolve); |         ping(resolve); | ||||||
|       } |       } | ||||||
|  | @ -289,13 +289,14 @@ function onBackgroundReady(...dataPassthru) { | ||||||
| 
 | 
 | ||||||
| // in case Chrome haven't yet loaded the bg page and displays our page like edit/manage
 | // in case Chrome haven't yet loaded the bg page and displays our page like edit/manage
 | ||||||
| function getStylesSafe(options) { | function getStylesSafe(options) { | ||||||
|   return onBackgroundReady(options).then(BG.getStyles); |   return onBackgroundReady() | ||||||
|  |     .then(() => BG.getStyles(options)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| function saveStyleSafe(style) { | function saveStyleSafe(style) { | ||||||
|   return onBackgroundReady(BG.deepCopy(style)) |   return onBackgroundReady() | ||||||
|     .then(BG.saveStyle) |     .then(() => BG.saveStyle(BG.deepCopy(style))) | ||||||
|     .then(savedStyle => { |     .then(savedStyle => { | ||||||
|       if (style.notify === false) { |       if (style.notify === false) { | ||||||
|         handleUpdate(savedStyle, style); |         handleUpdate(savedStyle, style); | ||||||
|  | @ -306,8 +307,8 @@ function saveStyleSafe(style) { | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| function deleteStyleSafe({id, notify = true} = {}) { | function deleteStyleSafe({id, notify = true} = {}) { | ||||||
|   return onBackgroundReady({id, notify}) |   return onBackgroundReady() | ||||||
|     .then(BG.deleteStyle) |     .then(() => BG.deleteStyle({id, notify})) | ||||||
|     .then(() => { |     .then(() => { | ||||||
|       if (!notify) { |       if (!notify) { | ||||||
|         handleDelete(id); |         handleDelete(id); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user