mirror of
				https://codeberg.org/ashley/poke
				synced 2025-07-17 16:52:11 +00:00 
			
		
		
		
	Refactor code :3
This commit is contained in:
		
							parent
							
								
									5b6355438f
								
							
						
					
					
						commit
						d19407156e
					
				| @ -10,7 +10,7 @@ | ||||
|      | ||||
|     please dont remove this comment while sharing this code  | ||||
|      | ||||
|   */ | ||||
| */ | ||||
| 
 | ||||
| const { | ||||
|   fetcher, | ||||
| @ -34,44 +34,42 @@ const { | ||||
| } = require("./ptutils/libpt-coreutils.js"); | ||||
| 
 | ||||
| module.exports = async function (video_id) { | ||||
|   var url; | ||||
|   | ||||
|   // function to convert an array to an object, ignoring undefined values
 | ||||
|   function toObject(arr) { | ||||
|     var rv = {}; | ||||
|     for (var i = 0; i < arr.length; ++i) | ||||
|       if (arr[i] !== undefined) rv[i] = arr[i]; | ||||
|     return rv; | ||||
|     return arr.reduce((acc, cur, i) => { | ||||
|       if (cur !== undefined) { | ||||
|         acc[i] = cur; | ||||
|       } | ||||
|       return acc; | ||||
|     }, {}); | ||||
|   } | ||||
| 
 | ||||
|   try { | ||||
|   // gets invidious instances
 | ||||
|   let inv_url = "https://api.invidious.io/instances.json?sort_by=type,health"; | ||||
|     // gets invidious instances
 | ||||
|     const invUrl = "https://api.invidious.io/instances.json?sort_by=type,health"; | ||||
|     const invInstanceList = await modules | ||||
|       .fetch(invUrl) | ||||
|       .then((res) => res.text()) | ||||
|       .then((json) => JSON.parse(json)); | ||||
| 
 | ||||
|   let inv_instance_list = await modules | ||||
|     .fetch(inv_url) | ||||
|     .then((res) => res.text()) | ||||
|     .then((json) => JSON.parse(json)); | ||||
|     // gets random instances from the list
 | ||||
|     const instance = invInstanceList[Math.floor(Math.random() * invInstanceList.length)]; | ||||
| 
 | ||||
|   // gets random instances from the list
 | ||||
|   const instance = await inv_instance_list[ | ||||
|     Math.floor(Math.random() * inv_instance_list.length) | ||||
|   ]; | ||||
|     let url; | ||||
|     if (instance[1].type != "https") { | ||||
|       url = "https://invidious.weblibre.org"; | ||||
|     } else { | ||||
|       url = instance[1].uri | ||||
|         .replace("invidious.tiekoetter.com", "invidious.weblibre.org") | ||||
|         .replace("yewtu.be", "invidious.sethforprivacy.com") | ||||
|         .replace("invidious.slipfox.xyz", "invidious.weblibre.org") | ||||
|         .replace("vid.priv.au", "inv.vern.cc") | ||||
|         .replace("invidious.snopyta.org", "invidious.sethforprivacy.com"); | ||||
|     } | ||||
| 
 | ||||
|   const stringed = toObject(instance); | ||||
| 
 | ||||
|   if (stringed[1].type != "https") { | ||||
|     url = "https://invidious.weblibre.org"; | ||||
|   } else { | ||||
|     url = stringed[1].uri | ||||
|       .replace("invidious.tiekoetter.com", "invidious.weblibre.org") | ||||
|       .replace("yewtu.be", "invidious.sethforprivacy.com") | ||||
|       .replace("invidious.slipfox.xyz", "invidious.weblibre.org") | ||||
|       .replace("vid.priv.au", "inv.vern.cc") | ||||
|       .replace("invidious.snopyta.org", "invidious.sethforprivacy.com"); | ||||
|   } | ||||
| 
 | ||||
|   return url; | ||||
|   } catch { | ||||
|     return " " | ||||
|     return url; | ||||
|   } catch (error) { | ||||
|     console.error("Failed to get Invidious instance:", error); | ||||
|     return " "; | ||||
|   } | ||||
| }; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Ashley
						Ashley