OwlcodeAds/js-src/components/router.tsx
2023-08-05 09:22:04 +02:00

35 lines
953 B
TypeScript

import * as React from 'react'
import { BrowserRouter, Route, Routes } from 'react-router-dom'
import { useAppSelector, useAppDispatch } from '@owlads/hooks'
import { set } from '@owlads/slice/is-mobile'
import Index from '@owlads/components/index'
export default function Router (): JSX.Element {
const isMobile = useAppSelector(state => state.isMobile.value)
if (isMobile === null) {
setIsMobile()
return (
<>
<p>Cargando configuración...</p>
</>
)
}
window.addEventListener('resize', () => {
setIsMobile()
})
return (
<BrowserRouter>
<Routes>
<Route path="/" element={<Index/>}/>
</Routes>
</BrowserRouter>
)
}
function setIsMobile (): void {
const dispatch = useAppDispatch()
const isThisAMobile = window.matchMedia('(max-width: 700px)').matches
dispatch(set(isThisAMobile))
}