import React, { useState } from "react" import { useLocation, NavLink } from "react-router-dom" import { Sidebar } from "./Sidebar" import { Drawer, Layout, Modal, Select, Tooltip } from "antd" import { useQuery } from "@tanstack/react-query" import { fetchChatModels } from "~services/ollama" import { useMessageOption } from "~hooks/useMessageOption" import { Settings } from "./Settings" import { GithubIcon } from "~icons/GithubIcon" import { PanelLeftIcon } from "~icons/PanelLeftIcon" import { BrainCircuit } from "~icons/BrainCircuit" import { SquarePen } from "~icons/SquarePen" import { ChevronLeft } from "~icons/ChevronLeft" import { CogIcon } from "~icons/CogIcon" export default function OptionLayout({ children }: { children: React.ReactNode }) { const [sidebarOpen, setSidebarOpen] = useState(false) const [open, setOpen] = useState(false) const { data: models, isLoading: isModelsLoading, isFetching: isModelsFetching } = useQuery({ queryKey: ["fetchModel"], queryFn: fetchChatModels, refetchInterval: 15000 }) const { pathname } = useLocation() const { selectedModel, setSelectedModel, clearChat } = useMessageOption() return (
{pathname !== "/" && (
)}
{"/"}