"use client"; import { useUserStore } from "./store/auth"; import { usePreferencesStore } from "./store/preferences"; import { Inter } from "next/font/google"; import { useEffect, useState } from "react"; import { Button, Modal, ModalBody, ModalFooter, ModalHeader, } from "flowbite-react"; import { Spinner } from "./components/Spinner/Spinner"; import { ChangelogModal } from "#/components/ChangelogModal/ChangelogModal"; import { Bounce, ToastContainer } from "react-toastify"; import { NavBarPc } from "./components/Navbar/NavBarPc"; import { NavBarMobile } from "./components/Navbar/NavBarMobile"; import { SettingsModal } from "./components/SettingsModal/SettingsModal"; import { ThemeInit } from "../.flowbite-react/init"; const inter = Inter({ subsets: ["latin"] }); export const App = (props) => { const preferencesStore = usePreferencesStore(); const userStore = useUserStore((state) => state); const [showChangelog, setShowChangelog] = useState(false); const [currentVersion, setCurrentVersion] = useState(""); const [previousVersions, setPreviousVersions] = useState([]); const [isSettingModalOpen, setIsSettingModalOpen] = useState(false); useEffect(() => { async function _checkVersion() { const res = await fetch("/api/version"); const data = await res.json(); if (data.version !== preferencesStore.params.version) { setShowChangelog(true); setCurrentVersion(data.version); setPreviousVersions(data.previous); } } if (preferencesStore._hasHydrated) { _checkVersion(); userStore.checkAuth(); } // eslint-disable-next-line react-hooks/exhaustive-deps }, [preferencesStore._hasHydrated]); if (!preferencesStore._hasHydrated && !userStore._hasHydrated) { return (
Данный сайт не связан с разработчиками приложения Anixart, это
неофициальная имплементация веб клиента для этого приложения.
Используя данный веб-сайт вы принимаете что мы не несём
ответственности за ваш аккаунт.
На сайте могут присутствовать ошибки и не доработки, а так-же
отсутствующий функционал.