import BasicInformationSetting from "./BasicInformationSetting"; import GuideLineSetting from "./guide-line/GuideLineSetting"; import StorySetting from "./story/StorySetting"; import WorldSetting from "@/components/book/settings/world/WorldSetting"; import {faPen, faSave} from "@fortawesome/free-solid-svg-icons"; import {RefObject, useRef} from "react"; import PanelHeader from "@/components/PanelHeader"; import LocationComponent from "@/components/book/settings/locations/LocationComponent"; import CharacterComponent from "@/components/book/settings/characters/CharacterComponent"; import {useTranslations} from "next-intl"; // Ajouté pour la traduction export default function BookSettingOption( { setting, }: { setting: string; }) { const t = useTranslations(); // Ajouté pour la traduction const basicInfoRef: RefObject<{ handleSave: () => Promise } | null> = useRef<{ handleSave: () => Promise }>(null); const guideLineRef: RefObject<{ handleSave: () => Promise } | null> = useRef<{ handleSave: () => Promise }>(null); const storyRef: RefObject<{ handleSave: () => Promise } | null> = useRef<{ handleSave: () => Promise }>(null); const worldRef: RefObject<{ handleSave: () => Promise } | null> = useRef<{ handleSave: () => Promise }>(null); const locationRef: RefObject<{ handleSave: () => Promise } | null> = useRef<{ handleSave: () => Promise }>(null); const characterRef: RefObject<{ handleSave: () => Promise } | null> = useRef<{ handleSave: () => Promise }>(null); function renderTitle(): string { switch (setting) { case 'basic-information': return t("bookSettingOption.basicInformation"); case 'guide-line': return t("bookSettingOption.guideLine"); case 'story': return t("bookSettingOption.storyPlan"); case 'world': return t("bookSettingOption.manageWorlds"); case 'locations': return t("bookSettingOption.yourLocations"); case 'characters': return t("bookSettingOption.characters"); case 'objects': return t("bookSettingOption.objectsList"); case 'goals': return t("bookSettingOption.bookGoals"); default: return ""; } } async function handleSaveClick(): Promise { switch (setting) { case 'basic-information': basicInfoRef.current?.handleSave(); break; case 'guide-line': guideLineRef.current?.handleSave(); break; case 'story': storyRef.current?.handleSave(); break; case 'world': worldRef.current?.handleSave(); break; case 'locations': locationRef.current?.handleSave(); break; case 'characters': characterRef.current?.handleSave(); break; default: break; } } return (
{ setting === 'basic-information' ? ( ) : setting === 'guide-line' ? ( ) : setting === 'story' ? ( ) : setting === 'world' ? ( ) : setting === 'locations' ? ( ) : setting === 'characters' ? ( ) :
{t("bookSettingOption.notAvailable")}
}
) }