support adding multiple filters in one go
This commit is contained in:
		
							parent
							
								
									fb3d016b5f
								
							
						
					
					
						commit
						81da15d6a8
					
				
					 2 changed files with 16 additions and 7 deletions
				
			
		|  | @ -5,6 +5,7 @@ Manage filters. | ||||||
| import {global} from "./secretariat.js"; | import {global} from "./secretariat.js"; | ||||||
| import net from "/scripts/utils/net.js"; | import net from "/scripts/utils/net.js"; | ||||||
| import texts from "/scripts/mapping/read.js"; | import texts from "/scripts/mapping/read.js"; | ||||||
|  | import {URLs} from "/scripts/utils/URLs.js"; | ||||||
| import {Queue} from "/scripts/utils/common.js"; | import {Queue} from "/scripts/utils/common.js"; | ||||||
| import logging from "/scripts/logging.js" | import logging from "/scripts/logging.js" | ||||||
| // const logging = (await import(chrome.runtime.getURL("/scripts/logging.js"))).default;
 | // const logging = (await import(chrome.runtime.getURL("/scripts/logging.js"))).default;
 | ||||||
|  | @ -51,12 +52,19 @@ export default class filters { | ||||||
| 		// Create a queue of the filters.
 | 		// Create a queue of the filters.
 | ||||||
| 		let filters = new Queue(); | 		let filters = new Queue(); | ||||||
| 
 | 
 | ||||||
| 		if (location) { | 		if (location && location != `*`) { | ||||||
| 			// Check if the URL is in a valid protocol
 | 			let LOCATIONS = []; | ||||||
| 			if (location.includes(`://`)) { | 			(Array.isArray(location))  | ||||||
| 				// Append that to the queue.
 | 				? location.forEach((LOCATION) => { | ||||||
| 				filters.enqueue(new URL(location)); | 					URLs.test(LOCATION) ? LOCATIONS.push(LOCATION) : false; | ||||||
| 			} | 				}) | ||||||
|  | 				: (URLs.test(location)) ? LOCATIONS.push(location) : false; | ||||||
|  | 			 | ||||||
|  | 			(LOCATIONS.length) | ||||||
|  | 				? LOCATIONS.forEach((LOCATION) => { | ||||||
|  | 					filters.enqueue(LOCATION); | ||||||
|  | 				}) | ||||||
|  | 				: false; | ||||||
| 		} else { | 		} else { | ||||||
| 			// Add every item to the queue based on what was loaded first.
 | 			// Add every item to the queue based on what was loaded first.
 | ||||||
| 			let FILTERS_ALL = await global.read(["settings", `filters`]); | 			let FILTERS_ALL = await global.read(["settings", `filters`]); | ||||||
|  |  | ||||||
|  | @ -42,7 +42,8 @@ class Page_Settings extends Page { | ||||||
| 
 | 
 | ||||||
| 				// Update the filter if the source is not empty.
 | 				// Update the filter if the source is not empty.
 | ||||||
| 				if (FILTER_SOURCE ? FILTER_SOURCE.trim() : false) { | 				if (FILTER_SOURCE ? FILTER_SOURCE.trim() : false) { | ||||||
| 					this.data.filters.update(FILTER_SOURCE.trim()); | 					FILTER_SOURCE = FILTER_SOURCE.trim().split(`, `); | ||||||
|  | 					this.data.filters.update(FILTER_SOURCE); | ||||||
| 				}; | 				}; | ||||||
| 			}) | 			}) | ||||||
| 			: false; | 			: false; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue