- Add proper dragstart/dragover/drop/dragend handlers to field drag handles
- Visual drop indicator shows between fields during drag
- Reorders activeFields array and re-renders on drop
Closes#36
- Model Preset: checkpoint URL hidden by default, toggle with triangle button
next to Checkpoint label. Blue link icon appears when URL is populated.
- Flake LoRA: replace [...] button with triangle toggle. Header shows LoRA name
and blue link icon when URL is populated. Full URL no longer shown in header.
Closes#33, closes#34
Backend:
- Add LoraEntry dataclass with name, url, path, strength
- Flake dataclass now has loras[] list; legacy lora_path/strength kept for compat
- _flake_from_raw parses both new multi-LoRA and legacy single-LoRA formats
- resolve() applies multi-LoRA strength overrides from grid entries
- full_flake_node.py applies all LoRAs in order
Frontend:
- Flake edit modal: each LoRA gets its own section with name, URL, path picker,
strength slider. +Add LoRA button to add more. [...] button edits name/URL.
- Grid dropdown: shows one strength slider per LoRA, labeled with LoRA name
- Grid entries store loras[] array of strengths for overrides
- Backward compatibility: old entries with single strength auto-converted
Closes#30
- Replace inset box-shadow with absolutely positioned indicator at left:-3px
so the blue line appears in the gap between items rather than on the item
- Add dragover/drop handlers to the Add block for dropping after the last item
- Clear all indicators on drag end
Closes#28
- Update has_lora flag after editing/saving a flake (both defaultUpdated and saved cases)
- Update has_lora after overriding pending changes to disk
- Fix incorrect lora_path field name: raw YAML uses 'path', not 'lora_path'
Closes#27
- Added checkpoint_url to ModelPreset dataclass and load/save
- Added optional URL input field in the preset edit overlay
- Defaults to empty string
Closes#25
- Model Preset initializes filename prefix with <PresetName>/
- New optional 'Output Filename Stem' field in flakes editor
- FlakeStack collects stems from all flakes and builds prefix:
- Folder stems (containing '/') are appended to path
- Date folder <YYYY-MM-DD> inserted after last folder stem
- Filename starts with <HH-MM-SS> followed by _ separated file stems
- FlakesGenerationData converter outputs filename_prefix as 6th pin
Closes#24
- Checkpoint field in preset editor now opens a file picker filtered to .safetensors
- LoRA field in flake editor now opens a file picker filtered to .safetensors
- Load Existing now opens a file picker filtered to .yaml/.yml
- Each picker attempts to map the selected file name back to the backend's full path
- Manual text entry is still available via a small '...' button next to each picker
Note: Browsers do not allow setting the default directory of a file picker for security reasons.
Closes#18, closes#20, closes#22
- Replace inline LoRA slider with a bottom-center triangle button
- Triangle opens a dropdown panel with options and LoRA strength
- LoRA strength slider uses the same comfy styling and allows -10 to 10
- Right-click still opens the same panel
- Changes in the panel do not affect the yaml file
Closes#19
- Use inset box-shadow instead of inserting an indicator element, preventing items from being pushed during drag preview
- Fix insert index calculation when dragging from before to after target
- Clear box-shadow styles properly on drag end and leave
Closes#16
- New flakes no longer auto-add a prompt field (#15)
- LoRA strength sliders now allow -10 to 10 (#14)
- Option choices no longer auto-add positive/negative; use +positive/+negative buttons instead (#21)
Closes#14, closes#15, closes#21