import { FC, ReactNode } from "react"; import { useEntitiesStore } from "stores/entities.store"; import { shallow } from "zustand/shallow"; import { RectProperties, EllipseProperties, TextProperties, StaggeredTextProperties, } from "./Primitives"; const PropertiesContainer: FC<{ children: ReactNode }> = ({ children }) => { return (
{children}
); }; const Properties = () => { const { selectedEntity, entities, updateEntity } = useEntitiesStore( (store) => ({ updateEntity: store.updateEntity, selectedEntity: store.selectedEntity, entities: store.entities, }), shallow ); const entity = selectedEntity !== undefined && entities[selectedEntity]; if (entity) { switch (entity.type) { case "StaggeredText": return ( updateEntity(selectedEntity, entity)} entity={entity} /> ); case "Text": return ( updateEntity(selectedEntity, entity)} entity={entity} /> ); case "Rect": return ( updateEntity(selectedEntity, entity)} entity={entity} /> ); case "Ellipse": return ( updateEntity(selectedEntity, entity)} entity={entity} /> ); default: return null; } } return (

Wähle ein Element aus

); }; export { PropertiesContainer }; export default Properties;