import type { PropsWithChildren } from 'react'; import { VideoProvider } from '@videojs/react-preview'; import clsx from 'clsx'; import { useEffect, useMemo, useRef } from 'react'; import { Link as LinkPrimitive, Redirect, Route, Switch, useLocation } from 'wouter'; import { VideoElement } from './components'; import { SkinLayout } from './components/SkinLayout'; import { useMediaQuery } from './hooks'; import CustomBaseUISkin from './skins/custom/base-ui/CustomBaseUISkin'; import customBaseUISkinSource from './skins/custom/base-ui/CustomBaseUISkin?raw'; import CustomNativeSkin from './skins/custom/native/CustomNativeSkin'; import customNativeSkinSource from './skins/custom/native/CustomNativeSkin?raw'; import FrostedSkinEjected from './skins/ejected/frosted/FrostedSkin'; import frostedSkinEjectedSource from './skins/ejected/frosted/FrostedSkin?raw'; import MinimalSkinEjected from './skins/ejected/minimal/MinimalSkin'; import minimalSkinEjectedSource from './skins/ejected/minimal/MinimalSkin?raw'; import FrostedSkin from './skins/imported/FrostedSkin'; import frostedSkinSource from './skins/imported/FrostedSkin?raw'; import MinimalSkin from './skins/imported/MinimalSkin'; import minimalSkinSource from './skins/imported/MinimalSkin?raw'; import './globals.css'; type NavigationSectionProps = PropsWithChildren<{ title: string; }>; function NavigationSection(props: NavigationSectionProps): JSX.Element { return (