|
|
|
@ -6,31 +6,68 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). |
|
|
|
|
|
|
|
## [Unreleased] |
|
|
|
|
|
|
|
## [1.1.0] - 2026-03-12 |
|
|
|
|
|
|
|
### Added |
|
|
|
|
|
|
|
- **AI Quickstart Feature** - Generate complete workflows from natural language descriptions |
|
|
|
- Welcome screen appears on empty canvas with preset templates and custom description input |
|
|
|
- 6 preset workflow templates: Product Shot, Model + Product, Color Variations, Background Swap, Style Transfer, Scene Composite |
|
|
|
- Content level selector (empty/minimal/full) to control how much detail is pre-filled |
|
|
|
- Uses Gemini LLM to generate custom workflows from descriptions |
|
|
|
- JSON validation and repair for generated workflows |
|
|
|
- Sample images included in `/public/sample-images/` for templates |
|
|
|
- **Router, Switch & ConditionalSwitch Nodes** - Three new flow-control node types with toggle UI, rule editing, dynamic handles, and dimming integration |
|
|
|
- **Gemini Veo Video Generation** - Veo 3.1 video models with full parameter support and error handling |
|
|
|
- **Anthropic Claude LLM Provider** - Claude models available in LLM node alongside Gemini and OpenAI |
|
|
|
- **Floating Node Headers** - Headers rendered via ViewportPortal with drag-to-move, hover controls, and Browse button |
|
|
|
- **ControlPanel** - Centralized parameter editing panel with node-type routing and Run/Apply buttons |
|
|
|
- **Full-Bleed Node Layouts** - All major nodes converted to edge-to-edge content with overlay controls |
|
|
|
- **Inline Parameters** - Toggle to show model parameters directly on nodes with reactive sync |
|
|
|
- **Video Autoplay** - useVideoAutoplay hook integrated into all 5 video node types |
|
|
|
- **Inline Variable Highlights** - PromptConstructor highlights template variables inline |
|
|
|
- **Minimap Navigation** - Click-to-navigate and scroll-to-zoom on minimap |
|
|
|
- **Node Dimming System** - CSS-based visual dimming for disabled Switch/ConditionalSwitch paths |
|
|
|
- **Unsaved Changes Warning** - Browser warns before closing tab with unsaved workflow |
|
|
|
- **All Nodes Menu** - Floating action bar with All Nodes dropdown and All Models button |
|
|
|
- **Provider Filter Icons** - ModelSearchDialog filters by available providers |
|
|
|
|
|
|
|
- **Test Suite** - Comprehensive testing with Vitest |
|
|
|
- 108 tests covering quickstart templates, validation, and prompts |
|
|
|
- 90%+ code coverage for quickstart module |
|
|
|
- Run tests with `npm test` or `npm run test:coverage` |
|
|
|
### Fixed |
|
|
|
|
|
|
|
- **Node Expansion & Run** - Expand nodes to full-screen modal and run individual nodes |
|
|
|
- **Group Locking** - Lock node groups to skip them during workflow execution |
|
|
|
- **Image Carousel** - Browse through image history on generation nodes |
|
|
|
- Ease curve outputDuration passthrough through parent-child connections |
|
|
|
- Canvas hover state suppressed during panning to prevent re-render cascading |
|
|
|
- Node click-to-select failures caused by d3-drag dead zone |
|
|
|
- Aspect-fit resize after manual resize aligns with React Flow dimension priority |
|
|
|
- Settings panel seamless selection ring, background matching, and z-index layering |
|
|
|
- ConditionalSwitch stale input, handle alignment, and text routing |
|
|
|
- Veo negative prompt connectable as text handle, error handling, image validation |
|
|
|
- API headers scoped to active provider, temperature falsy bug fixed |
|
|
|
- Image flicker on settings toggle, presets popup dismiss, modal overlay click-through |
|
|
|
- Node paste height compounding, group label anchoring, file input backdrop issues |
|
|
|
- Handle visibility on full-bleed and OutputNode, clipped handle resolution |
|
|
|
- FloatingNodeHeader width tracking, right-alignment, and Windows drag interception |
|
|
|
- Smart cascade made type-aware so text inputs don't rescue dimmed image paths |
|
|
|
- RouterNode auto-resize, handle colors, and placeholder styling |
|
|
|
|
|
|
|
### Fixed |
|
|
|
### Changed |
|
|
|
|
|
|
|
- EaseCurveNode, SplitGridNode, Generate3DControls, GenerateVideoControls refactored to full-bleed patterns |
|
|
|
- ConditionalSwitch execution logic deduplicated with shared evaluateRule utility |
|
|
|
- ModelParameters collapsible toggle removed |
|
|
|
|
|
|
|
### Performance |
|
|
|
|
|
|
|
- Selective Zustand subscriptions replace bare useWorkflowStore() calls |
|
|
|
- RAF-debounced setHoveredNodeId and BaseNode ResizeObserver |
|
|
|
- Edge rendering optimized for large canvases |
|
|
|
- FloatingNodeHeader, InlineParameterPanel, ModelParameters wrapped in React.memo |
|
|
|
- useShallow for WorkflowCanvas store subscription |
|
|
|
- Narrow selectors for ControlPanel and GroupControlsOverlay |
|
|
|
|
|
|
|
### Tests |
|
|
|
|
|
|
|
- Removed redundant and brittle component tests (-1,958 lines) |
|
|
|
- Updated assertions for full-bleed nodes, floating action bar, and Gemini video |
|
|
|
|
|
|
|
### Other |
|
|
|
|
|
|
|
- Run button and global modal state issues |
|
|
|
- Carousel image inversion |
|
|
|
- Two-finger pan behavior on Mac |
|
|
|
- Comment tooltip z-index issues |
|
|
|
- Added MIT license |
|
|
|
- Handle diameter increased from 10px to 14px |
|
|
|
- Settings redesigned with pill tabs, segmented controls, and toggles |
|
|
|
- Multi-layer box-shadow for smooth settings panel shadow |
|
|
|
|
|
|
|
## [1.0.0] - Initial Release |
|
|
|
|
|
|
|
|