feat(11-01): streamline header UI with visual grouping
- Group file operations (save, open folder) together with subtle separator
- Separate settings button with visual spacing
- Add hover background states to icon buttons for better interactivity
- Improve unsaved indicator with ring outline for better visibility
- Use consistent padding (p-1.5) and rounded corners
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
**Video output handles now only connect to valid targets (generateVideo, output nodes)**
## Accomplishments
- Added "video" as a new handle type alongside "image" and "text"
- Implemented connection validation that restricts video sources to only connect to generateVideo or output nodes
- Updated GenerateVideoNode to use video handle type (id="video", data-handletype="video")
- Updated getSourceOutput to return type "video" for generateVideo nodes
## Files Modified
- `src/components/WorkflowCanvas.tsx` - Added isValidConnection function with video-specific rules, updated getHandleType to recognize video handles, updated getNodeHandles for generateVideo outputs
- `src/components/ConnectionDropMenu.tsx` - Added VIDEO_TARGET_OPTIONS and VIDEO_SOURCE_OPTIONS, updated props and getOptions to support video type
- `src/components/nodes/GenerateVideoNode.tsx` - Changed output handle from id="image" to id="video" with matching data-handletype
- `src/store/workflowStore.ts` - Updated getSourceOutput to return type "video" for generateVideo nodes
## Decisions Made
- Video connections flow to the images array for backward compatibility since:
- generateVideo nodes treat video input similarly to image input (for video-to-video)
- output node handles both image and video in contentSrc