import React, { useEffect } from "react"; import "@/styles/globals.css"; import "bootstrap-icons/font/bootstrap-icons.css"; import { SessionProvider } from "next-auth/react"; import type { AppProps } from "next/app"; import Head from "next/head"; import AuthRedirect from "@/layouts/AuthRedirect"; import toast from "react-hot-toast"; import { Toaster, ToastBar } from "react-hot-toast"; import { Session } from "next-auth"; import { isPWA } from "@/lib/client/utils"; // import useInitialData from "@/hooks/useInitialData"; import { appWithTranslation } from "next-i18next"; import { ReactQueryDevtools } from "@tanstack/react-query-devtools"; import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; const queryClient = new QueryClient({ defaultOptions: { queries: { staleTime: 1000 * 30, }, }, }); function App({ Component, pageProps, }: AppProps<{ session: Session; }>) { useEffect(() => { if (isPWA()) { const meta = document.createElement("meta"); meta.name = "viewport"; meta.content = "width=device-width, initial-scale=1, maximum-scale=1"; document.getElementsByTagName("head")[0].appendChild(meta); } }, []); return ( Linkwarden {/* */} {(t) => ( {({ icon, message }) => (
{icon} {message} {t.type !== "loading" && (
toast.dismiss(t.id)} >
)}
)}
)}
{/*
*/}
); } export default appWithTranslation(App);