Instructions
When creating new GPUI components:
Follow existing patterns: Base implementation on components in crates/ui/src (examples: Button, Select) Style consistency: Follow existing component styles and Shadcn UI patterns Component type decision: Use stateless elements for simple components (like Button) Use stateful elements for complex components with data (like Select and SelectState) API consistency: Maintain the same API style as other elements Documentation: Create component documentation Stories: Write component stories in the story folder Component Types Stateless: Pure presentation components without internal state Stateful: Components that manage their own state and data