22 lines
		
	
	
		
			480 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			480 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { useEffect, useState } from 'react';
 | |
| import { useColorScheme as useRNColorScheme } from 'react-native';
 | |
| 
 | |
| /**
 | |
|  * To support static rendering, this value needs to be re-calculated on the client side for web
 | |
|  */
 | |
| export function useColorScheme() {
 | |
|   const [hasHydrated, setHasHydrated] = useState(false);
 | |
| 
 | |
|   useEffect(() => {
 | |
|     setHasHydrated(true);
 | |
|   }, []);
 | |
| 
 | |
|   const colorScheme = useRNColorScheme();
 | |
| 
 | |
|   if (hasHydrated) {
 | |
|     return colorScheme;
 | |
|   }
 | |
| 
 | |
|   return 'light';
 | |
| }
 |