"use client"; import { AppContext } from "@/app/providers"; import { Popover, PopoverTrigger, PopoverContent, } from "@/ui/primitives/popover"; // import { useContext } from "react"; // import { AppContext } from "../app/providers"; // import { FontDefault, FontSerif, FontMono } from "@/ui/icons"; import { Check, FileJson, FileText, Menu as MenuIcon, Monitor, Moon, SunDim, } from "lucide-react"; import { useTheme } from "next-themes"; import { useContext, useState } from "react"; import { FontDefault, FontMono, FontSerif } from "./shared/icons"; import ImageDown from "./shared/icons/image-down"; const fonts = [ { font: "Default", icon: , }, { font: "Serif", icon: , }, { font: "Mono", icon: , }, ]; const appearances = [ { theme: "System", icon: , }, { theme: "Light", icon: , }, { theme: "Dark", icon: , }, ]; export default function Menu({ onExportImage, onExportJson, onExportTxT, onExportPDF, }: { onExportImage: () => void; onExportJson: () => void; onExportTxT: () => void; onExportPDF: () => void; }) { // const { font: currentFont, setFont } = useContext(AppContext); const { theme: currentTheme, setTheme } = useTheme(); return ( Exports file { onExportImage(); }} > Export as Image Export as Markdown Export as JSON Export as PDF Themes {appearances.map(({ theme, icon }) => ( { setTheme(theme.toLowerCase()); }} > {icon} {theme} {currentTheme === theme.toLowerCase() && ( )} ))} ); }
Exports file