import { translationAtom } from "@/atoms/translations-atom"; import { lensSizeAtom, userStatsAtom, viewTypeAtom, } from "@/atoms/user-settings-atom"; import { cn } from "@/lib/utils"; import { useAtom, useAtomValue } from "jotai"; import { EllipsisIcon, WrenchIcon } from "lucide-react"; import { useEffect, useMemo, useState } from "react"; import useSystemInfo from "../hooks/use-system-info"; const formatDuration = (seconds: number): string => { if (seconds < 60) return `${seconds.toFixed(1)}s`; if (seconds < 3600) { const minutes = Math.floor(seconds / 60); const remainingSeconds = seconds % 60; return `${minutes}m ${remainingSeconds.toFixed(0)}s`; } const hours = Math.floor(seconds / 3600); const minutes = Math.floor((seconds % 3600) / 60); return `${hours}h ${minutes}m`; }; const MoreOptionsDrawer = ({ zoomAmount, setZoomAmount, resetImagePaths, }: { zoomAmount: string; setZoomAmount: (arg: any) => void; resetImagePaths: () => void; }) => { const [openSidebar, setOpenSidebar] = useState(false); const [viewType, setViewType] = useAtom(viewTypeAtom); const [lensSize, setLensSize] = useAtom(lensSizeAtom); const t = useAtomValue(translationAtom); const userStats = useAtomValue(userStatsAtom); const { systemInfo } = useSystemInfo(); console.log("🚀 => systemInfo:", systemInfo); useEffect(() => { if (!localStorage.getItem("zoomAmount")) { localStorage.setItem("zoomAmount", zoomAmount); } else { setZoomAmount(localStorage.getItem("zoomAmount")); } }, []); return (
{t("APP.MORE_OPTIONS_DRAWER.LENS_VIEW_TITLE")}
{ setViewType(e.target.checked ? "slider" : "lens"); }} />{t("APP.MORE_OPTIONS_DRAWER.SLIDER_VIEW_TITLE")}
{t("APP.MORE_OPTIONS_DRAWER.ZOOM_AMOUNT_TITLE")} ({zoomAmount} %)
{ setZoomAmount(e.target.value); localStorage.setItem("zoomAmount", e.target.value); }} />Stats