import { Element } from '../../types/elements'; import { NumericPropertyInput } from '../ui/NumericPropertyInput'; import { ColorPropertyInput } from '../ui/ColorPropertyInput'; interface ElementPropertiesProps { element: Element; onChange: (elementId: string, property: string, value: unknown) => void; } export function ElementProperties({ element, onChange }: ElementPropertiesProps) { return ( <> {/* Propriétés communes à tous les éléments */}
onChange(element.id, 'width', value)} /> Entrer la largeur en pixels
onChange(element.id, 'height', value)} /> Entrer la hauteur en pixels
onChange(element.id, 'x', value)} /> Entrer la position en pixels
onChange(element.id, 'y', value)} /> Entrer la position en pixels
{/* Propriétés spécifiques selon le type d'élément */} {element.type === 'rectangle' && ( <>
onChange(element.id, 'fillColor', value)} /> onChange(element.id, 'strokeColor', value)} />
onChange(element.id, 'strokeWidth', value)} />
onChange(element.id, 'borderRadius', value)} />
)} {element.type === 'circle' && ( <>
onChange(element.id, 'fillColor', e.target.value)} style={{ width: '100%', height: '32px', border: '1px solid #ccc', borderRadius: '3px' }} />
onChange(element.id, 'strokeColor', e.target.value)} style={{ width: '100%', height: '32px', border: '1px solid #ccc', borderRadius: '3px' }} />
onChange(element.id, 'strokeWidth', value)} />
)} {element.type === 'text' && ( <>