'use client' // Removed Next.js Link import for Electron import {FontAwesomeIcon} from "@fortawesome/react-fontawesome"; import { faBook, faDownload, faGlobe, faHatWizard, faListAlt, faMapMarkedAlt, faPencilAlt, faUser, faWandMagicSparkles } from "@fortawesome/free-solid-svg-icons"; import {Dispatch, SetStateAction, useContext} from "react"; import {IconDefinition} from "@fortawesome/fontawesome-svg-core"; import {useTranslations} from "next-intl"; import OfflineContext, {OfflineContextType} from "@/context/OfflineContext"; interface BookSettingOption { id: string; name: string; icon: IconDefinition; } export default function BookSettingSidebar( { selectedSetting, setSelectedSetting }: { selectedSetting: string, setSelectedSetting: Dispatch> }) { const t = useTranslations(); const {isCurrentlyOffline} = useContext(OfflineContext); const settings: BookSettingOption[] = [ { id: 'basic-information', name: 'bookSetting.basicInformation', icon: faPencilAlt }, { id: 'guide-line', name: 'bookSetting.guideLine', icon: faListAlt }, { id: 'story', name: 'bookSetting.story', icon: faBook }, { id: 'world', name: 'bookSetting.world', icon: faGlobe }, { id: 'locations', name: 'bookSetting.locations', icon: faMapMarkedAlt }, { id: 'characters', name: 'bookSetting.characters', icon: faUser }, { id: 'spells', name: 'bookSetting.spells', icon: faHatWizard }, { id: 'quillsense', name: 'bookSetting.quillsense', icon: faWandMagicSparkles }, { id: 'export', name: 'bookSetting.export', icon: faDownload }, // { // id: 'objects', // name: t('bookSetting.objects'), // icon: faLocationArrow // }, // { // id: 'goals', // name: t('bookSetting.goals'), // icon: faCogs // }, ] // Filter out QuillSense when offline (requires server connection) const availableSettings: BookSettingOption[] = isCurrentlyOffline() ? settings.filter((s: BookSettingOption) => s.id !== 'quillsense') : settings; return (
) }