import React, { useEffect, useState } from 'react'; import { BookProject, BookSettings } from '../types'; import { GENRES, TONES, POV_OPTIONS, TENSE_OPTIONS } from '../constants'; import { Settings, Book, Feather, Users, Clock, Target, Hash } from 'lucide-react'; interface BookSettingsProps { project: BookProject; onUpdate: (project: BookProject) => void; } const DEFAULT_SETTINGS: BookSettings = { genre: '', subGenre: '', targetAudience: '', tone: '', pov: '', tense: '', synopsis: '', themes: '' }; const BookSettingsComponent: React.FC = ({ project, onUpdate }) => { const [settings, setSettings] = useState(project.settings || DEFAULT_SETTINGS); useEffect(() => { if (project.settings) { setSettings(project.settings); } }, [project.settings]); const handleChange = (key: keyof BookSettings, value: string) => { const newSettings = { ...settings, [key]: value }; setSettings(newSettings); onUpdate({ ...project, settings: newSettings }); }; const handleStyleGuideChange = (value: string) => { onUpdate({ ...project, styleGuide: value }); }; return (

Paramètres Généraux du Roman

Définissez l'identité, le ton et les règles de votre œuvre pour guider l'IA.

Informations de Base

onUpdate({ ...project, title: e.target.value })} className="w-full p-2.5 bg-[#eef2ff] border border-slate-300 rounded-lg focus:ring-2 focus:ring-blue-500 outline-none font-serif font-bold text-lg" />
onUpdate({ ...project, author: e.target.value })} className="w-full p-2.5 bg-[#eef2ff] border border-slate-300 rounded-lg focus:ring-2 focus:ring-blue-500 outline-none" />