| 
                        123456789101112131415161718192021222324252627 | 
                        - 'use client'
 - import React from 'react'
 - 
 - export enum MediaType {
 -   mobile = 'mobile',
 -   tablet = 'tablet',
 -   pc = 'pc',
 - }
 - 
 - const useBreakpoints = () => {
 -   const [width, setWidth] = React.useState(globalThis.innerWidth);
 -   const media = (() => {
 -     if (width <= 640) return MediaType.mobile;
 -     if (width <= 768) return MediaType.tablet;
 -     return MediaType.pc;
 -   })();
 - 
 -   React.useEffect(() => {
 -     const handleWindowResize = () => setWidth(window.innerWidth);
 -     window.addEventListener("resize", handleWindowResize);
 -     return () => window.removeEventListener("resize", handleWindowResize);
 -   }, []);
 - 
 -   return media;
 - }
 - 
 - export default useBreakpoints
 
 
  |