25 lines
		
	
	
		
			573 B
		
	
	
	
		
			TypeScript
		
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			573 B
		
	
	
	
		
			TypeScript
		
	
	
| import * as React from 'react';
 | |
| import { Spinner } from 'react-bootstrap';
 | |
| import { isPolyfillPhaseDone } from 'util/localization';
 | |
| 
 | |
| export default function WrapReactIntl<P>(Component: React.ComponentType<P>) {
 | |
|   return (props: P) => {
 | |
|     if (!isPolyfillPhaseDone()) {
 | |
|       return (
 | |
|         <Spinner
 | |
|           as="span"
 | |
|           size="sm"
 | |
|           animation="border"
 | |
|           role="status"
 | |
|           variant="secondary"
 | |
|         />
 | |
|       );
 | |
|     }
 | |
| 
 | |
|     return (
 | |
|       // eslint-disable-next-line react/jsx-props-no-spreading
 | |
|       <Component {...props} />
 | |
|     );
 | |
|   };
 | |
| }
 |