mirror of
				https://github.com/hydralauncher/hydra.git
				synced 2025-03-09 15:40:26 +00:00 
			
		
		
		
	fix possibility of 404 on home if getRandomGame has no validy elements to return
this can happen when user has no internet connection when opening hydra
This commit is contained in:
		
							parent
							
								
									588dc5bb54
								
							
						
					
					
						commit
						2839d65526
					
				
					 2 changed files with 21 additions and 20 deletions
				
			
		|  | @ -7,22 +7,25 @@ export interface Steam250Game { | |||
| } | ||||
| 
 | ||||
| export const requestSteam250 = async (path: string) => { | ||||
|   return axios.get(`https://steam250.com${path}`).then((response) => { | ||||
|     const { window } = new JSDOM(response.data); | ||||
|     const { document } = window; | ||||
|   return axios | ||||
|     .get(`https://steam250.com${path}`) | ||||
|     .then((response) => { | ||||
|       const { window } = new JSDOM(response.data); | ||||
|       const { document } = window; | ||||
| 
 | ||||
|     return Array.from(document.querySelectorAll(".appline .title a")) | ||||
|       .map(($title: HTMLAnchorElement) => { | ||||
|         const steamGameUrl = $title.href; | ||||
|         if (!steamGameUrl) return null; | ||||
|       return Array.from(document.querySelectorAll(".appline .title a")) | ||||
|         .map(($title: HTMLAnchorElement) => { | ||||
|           const steamGameUrl = $title.href; | ||||
|           if (!steamGameUrl) return null; | ||||
| 
 | ||||
|         return { | ||||
|           title: $title.textContent, | ||||
|           objectID: steamGameUrl.split("/").pop(), | ||||
|         } as Steam250Game; | ||||
|       }) | ||||
|       .filter((game) => game != null); | ||||
|   }); | ||||
|           return { | ||||
|             title: $title.textContent, | ||||
|             objectID: steamGameUrl.split("/").pop(), | ||||
|           } as Steam250Game; | ||||
|         }) | ||||
|         .filter((game) => game != null); | ||||
|     }) | ||||
|     .catch((_) => []); | ||||
| }; | ||||
| 
 | ||||
| const steam250Paths = [ | ||||
|  |  | |||
|  | @ -58,14 +58,12 @@ export function Home() { | |||
|   const getRandomGame = useCallback(() => { | ||||
|     setIsLoadingRandomGame(true); | ||||
| 
 | ||||
|     window.electron | ||||
|       .getRandomGame() | ||||
|       .then((objectID) => { | ||||
|     window.electron.getRandomGame().then((objectID) => { | ||||
|       if (objectID) { | ||||
|         randomGameObjectID.current = objectID; | ||||
|       }) | ||||
|       .finally(() => { | ||||
|         setIsLoadingRandomGame(false); | ||||
|       }); | ||||
|       } | ||||
|     }); | ||||
|   }, []); | ||||
| 
 | ||||
|   const handleRandomizerClick = () => { | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue