Get all data and set a blank value if it doesn't exist yet.
This commit is contained in:
		
							parent
							
								
									7cc22f8b11
								
							
						
					
					
						commit
						ec72d1bc01
					
				
					 1 changed files with 23 additions and 12 deletions
				
			
		|  | @ -117,8 +117,21 @@ class global { | ||||||
| 		}; | 		}; | ||||||
| 
 | 
 | ||||||
| 		// Get all data and set a blank value if it doesn't exist yet.
 | 		// Get all data and set a blank value if it doesn't exist yet.
 | ||||||
| 		DATA_ALL = await global.read(null, CLOUD); | 		if (CLOUD == 0  || CLOUD == null) { | ||||||
| 		DATA_ALL = ((DATA_ALL != null && DATA_ALL != undefined && (typeof DATA_ALL).includes(`obj`)) ? Object.keys(DATA_ALL).length <= 0 : true) | 			const ORIGINS = {}; | ||||||
|  | 			ORIGINS[-1] = `local`; | ||||||
|  | 			ORIGINS[1] = `global`; | ||||||
|  | 			 | ||||||
|  | 			for (let SOURCE = -1; SOURCE != 0 && SOURCE < 2; SOURCE = SOURCE + 2) { | ||||||
|  | 				DATA_ALL[ORIGINS[SOURCE]] = await global.read(null, CLOUD); | ||||||
|  | 			}; | ||||||
|  | 			 | ||||||
|  | 			CLOUD = (DATA_ALL[`local`] != null) ? -1 : 1;  | ||||||
|  | 		} else { | ||||||
|  | 			DATA_ALL = await global.read(null, CLOUD); | ||||||
|  | 		}; | ||||||
|  | 		 | ||||||
|  | 		DATA_ALL = ((!(typeof DATA_ALL).includes(`undef`)) ? ((DATA_ALL != null && (typeof DATA_ALL).includes(`obj`)) ? Object.keys(DATA_ALL).length <= 0 : true) : false) | ||||||
| 			? {} | 			? {} | ||||||
| 			: DATA_ALL; | 			: DATA_ALL; | ||||||
| 		 | 		 | ||||||
|  | @ -130,15 +143,14 @@ class global { | ||||||
| 		// Merge!
 | 		// Merge!
 | ||||||
| 		DATA_INJECTED = nested.dictionary.set(DATA_ALL, (DATA_NAME != null) ? [...DATA_NAME] : DATA_NAME, data, OPTIONS); | 		DATA_INJECTED = nested.dictionary.set(DATA_ALL, (DATA_NAME != null) ? [...DATA_NAME] : DATA_NAME, data, OPTIONS); | ||||||
| 
 | 
 | ||||||
| 		// If cloud is not selected, get where the data is already existent.
 |  | ||||||
| 		(CLOUD == 0 || CLOUD == null) |  | ||||||
| 			? (CLOUD = (DATA_ALL[`local`] != null) ? -1 : 1) |  | ||||||
| 			: false; |  | ||||||
| 
 |  | ||||||
| 		// Write!
 | 		// Write!
 | ||||||
| 		await chrome.storage[(CLOUD > 0) ? `sync` : `local`].set(DATA_INJECTED); | 		return(chrome.storage[(CLOUD > 0) ? `sync` : `local`].set(DATA_INJECTED).then(async () => { | ||||||
| 		GUI_INFO[`log`] ? GUI_INFO[`log`].clear() : false; | 			GUI_INFO[`log`] ? GUI_INFO[`log`].clear() : false; | ||||||
| 		return ((OPTIONS[`verify`] != null ? (OPTIONS[`verify`]) : true) ? await verify(DATA_NAME, data) : true); | 			return (((OPTIONS[`verify`] != null ? (OPTIONS[`verify`]) : true) ? await verify(DATA_NAME, data, OPTIONS) : true)); | ||||||
|  | 		}).catch((err) => { | ||||||
|  | 			logging.error((new texts(`error_msg_save_failed`)).localized, DATA_NAME.join(` → `), JSON.stringify(data)) | ||||||
|  | 			return (false); | ||||||
|  | 		})); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	/* | 	/* | ||||||
|  | @ -257,7 +269,6 @@ export async function compare(PATH, DATA) { | ||||||
| 		return (RESULT); | 		return (RESULT); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
| 	let COMPARISON = {}; | 	let COMPARISON = {}; | ||||||
| 	COMPARISON[`test`] = (PATH) ? DATA : DATA[1]; | 	COMPARISON[`test`] = (PATH) ? DATA : DATA[1]; | ||||||
| 	COMPARISON[`against`] = (PATH) ? (await global.read((Array.isArray(PATH)) ? [...PATH] : PATH)) : DATA[0]; | 	COMPARISON[`against`] = (PATH) ? (await global.read((Array.isArray(PATH)) ? [...PATH] : PATH)) : DATA[0]; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue