| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | 
							- 'use client'
 
- import { SWRConfig } from 'swr'
 
- import { useEffect, useState } from 'react'
 
- import type { ReactNode } from 'react'
 
- import { useRouter, useSearchParams } from 'next/navigation'
 
- type SwrInitorProps = {
 
-   children: ReactNode
 
- }
 
- const SwrInitor = ({
 
-   children,
 
- }: SwrInitorProps) => {
 
-   const router = useRouter()
 
-   const searchParams = useSearchParams()
 
-   const consoleToken = searchParams.get('console_token')
 
-   const consoleTokenFromLocalStorage = localStorage?.getItem('console_token')
 
-   const [init, setInit] = useState(false)
 
-   useEffect(() => {
 
-     if (!(consoleToken || consoleTokenFromLocalStorage))
 
-       router.replace('/signin')
 
-     if (consoleToken) {
 
-       localStorage?.setItem('console_token', consoleToken!)
 
-       router.replace('/apps', { forceOptimisticNavigation: false } as any)
 
-     }
 
-     setInit(true)
 
-   }, [])
 
-   return init
 
-     ? (
 
-       <SWRConfig value={{
 
-         shouldRetryOnError: false,
 
-         revalidateOnFocus: false,
 
-       }}>
 
-         {children}
 
-       </SWRConfig>
 
-     )
 
-     : null
 
- }
 
- export default SwrInitor
 
 
  |