This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | import Head from 'next/head'; | |
| export const pageTitleSuffix = ' / hoseokchoi.com'; | |
| export default function PageTitle({ children }: { children: string }) { | |
| return ( | |
| <Head> | |
| <title>{children.concat(pageTitleSuffix)}</title> | |
| </Head> | |
| ); | 
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | import escapeRegExp from 'lodash/escapeRegExp'; | |
| import { useRouter } from 'next/router'; | |
| import Script from 'next/script'; | |
| import { useEffect } from 'react'; | |
| import { pageTitleSuffix } from '~/components/PageTitle'; | |
| function removeSuffixFromTitle(title: string) { | |
| return title.replace(new RegExp(`${escapeRegExp(pageTitleSuffix)}$`), ''); | |
| } | 
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | import { useCallback } from 'react'; | |
| import { useNavigation, NavigationProp, useFocusEffect } from '@react-navigation/native'; | |
| function delay(ms: number) { | |
| return new Promise((resolve) => setTimeout(resolve, ms)); | |
| } | |
| function ScreenA() { | |
| const navigation = useNavigation<NavigationProp<any>>(); |