Commit Graph
296 Commits
Author SHA1 Message Date
Dariusz L 415bcb93f4 feat: improve aria2 download resilience and queue presentation 2026-08-03 15:55:08 +02:00
Dariusz L c28184aca3 Refactor download queue item rendering and actions 2026-08-03 15:01:07 +02:00
Dariusz L 8e7d14be6d Unify download progress presentation 2026-08-03 14:08:00 +02:00
Dariusz L 8d9ca189fc Remove obsolete compatibility aliases 2026-08-03 13:11:59 +02:00
Dariusz L 0ff8057576 Unify frontend SHA-256 normalization 2026-08-03 12:56:24 +02:00
Dariusz L 2559145fc1 Unify model category aliases across backend and UI 2026-08-03 12:52:20 +02:00
Dariusz L 413e7cc0ab Promote subgraph widget contexts to top-level model references
When a subgraph exposes a promoted widget and the instance value or connected
inner widget contains a usable model path, create a top-level model reference
on the subgraph node instead of only pointing to the inner definition node.
This lets resolution, location, and queue updates target the instance widget
directly.

Also handle serialized subgraph instances that omit proxyWidgets by
reconstructing the same promotion from subgraph input/link metadata, and
extend widget values for promoted inputs in the workflow updater.
2026-08-03 04:17:49 +02:00
Dariusz L 5f1a933ae5 feat: add provider-specific search retry 2026-08-02 22:12:52 +02:00
Dariusz L bb3ccdd47f feat: improve CivArchive status feedback 2026-08-02 22:06:38 +02:00
Dariusz L 4ea3f7d50f fix(frontend): clarify CivArchive error tooltips 2026-08-02 15:42:15 +02:00
Dariusz L ce52d957f9 feat(frontend): explain CivArchive availability errors 2026-08-02 15:28:52 +02:00
Dariusz L b9cc47cd00 chore(frontend): organize missing type filter styles 2026-08-02 15:08:36 +02:00
Dariusz L 678bcb460a refactor(frontend): extract workflow identity state 2026-08-02 13:58:30 +02:00
Dariusz L 25bde5f58b refactor(frontend): extract keybinding utilities 2026-08-02 13:52:46 +02:00
Dariusz L 6034b9adbf refactor(frontend): extract model hash comparison 2026-08-02 13:50:21 +02:00
Dariusz L c025f9bdba refactor(frontend): extract missing model state 2026-08-02 13:46:38 +02:00
Dariusz L d198b489da refactor(frontend): extract search state management 2026-08-02 13:42:53 +02:00
Dariusz L 3551a601c8 refactor(frontend): extract search hash policies 2026-08-02 13:38:30 +02:00
Dariusz L 9d0321bb81 refactor(frontend): extract base model aliases 2026-08-02 13:36:12 +02:00
Dariusz L 57e6f8c61d refactor(frontend): extract search source policies 2026-08-02 13:34:02 +02:00
Dariusz L 10ef9504dd test(frontend): cover download progress states 2026-08-02 13:28:17 +02:00
Dariusz L 396a28ba4f refactor(frontend): extract download progress policy 2026-08-02 13:27:21 +02:00
Dariusz L f2d11bd477 refactor(frontend): extract queue storage methods 2026-08-02 13:26:21 +02:00
Dariusz L 922a30fdd4 refactor(frontend): extract shared API client 2026-08-02 13:20:20 +02:00
Dariusz L f9a03a65a9 Add footer version check failure retry interval
Use a separate shorter refresh interval when footer version checks fail,
track the failure state, and schedule retries via a dedicated timer.
On success, clear any pending retry timer so recovery is immediate.
2026-08-02 13:10:40 +02:00
Dariusz L abb92b2138 refactor(frontend): clean unused catches and regex escapes 2026-08-02 04:20:44 +02:00
Dariusz L 4e0d11e7cc refactor(frontend): remove unused imports and locals 2026-08-02 04:14:54 +02:00
Dariusz L c7a0f2f78c fix: prefer selected-file hash over inherited workflow or source hash 2026-08-01 22:50:13 +02:00
Dariusz L 422899e91b feat(resolver): keep model description separate from version notes 2026-08-01 21:12:53 +02:00
Dariusz L e3affba329 Add Model Resolver version status feature 2026-08-01 20:56:02 +02:00
Dariusz L 9cbc3098c6 Preserve missing browser detail width across rerenders 2026-08-01 15:15:18 +02:00
Dariusz L 25b09799fb Simplify Missing Models browser splitter resize behavior 2026-07-31 21:24:11 +02:00
Dariusz L df4d4a36ac Improve Missing Models browser resize behavior 2026-07-31 20:54:33 +02:00
Dariusz L a8ba99800c Expand HuggingFace author fallback to multiple known publishers
Support both Comfy-Org and Kijai author indexes as known HuggingFace fallbacks, aggregate their status in the backend, refresh the cached author index, and update the frontend UI and tests.
2026-07-29 16:18:25 +02:00
Dariusz L cb032c7c3d feat: track missing models for LoRA loader workflow signatures 2026-07-29 15:53:26 +02:00
Dariusz L 8822bb0064 Preserve Missing Models browser geometry during refresh 2026-07-28 19:05:43 +02:00
Dariusz L 10a0327328 feat: preserve Missing Models browser geometry during cached refresh 2026-07-28 19:03:08 +02:00
Dariusz L 48cc5c9050 Fix progress polling hover state regression in downloads tab 2026-07-28 18:59:45 +02:00
Dariusz L f8a6e8b626 feat: add HuggingFace model details, variant table, and download context 2026-07-28 17:20:36 +02:00
Dariusz L 9aa7077a33 feat: preserve Missing Models browser during refresh instead of replacing it 2026-07-28 15:18:12 +02:00
Dariusz L df01b17148 Reuse visible missing model browser when navigating from resolved model
When the resolver dialog is already visible on the Missing Models tab,
showResolvedNodeModelInResolver now reuses the existing browser instead
of forcing a reload or requeuing the selection. This avoids unnecessary
UI refreshes and keeps the current view stable.

Changes:
- web/resolver/model_resolver.js: skip reopen/queue when the dialog is
  already visible on the missing tab; prefer existing browser selection
- web/resolver/views/missing_browser_methods.js: support
  preferExistingBrowser in selectWorkflowModelReference and center the
  selected row instead of scrolling to nearest
- tests/test_downloads_tab_workflow_route.mjs: cover reuse behavior and
  row-patching/centering
2026-07-28 14:50:53 +02:00
Dariusz L 1e7cad595c refactor: extract custom-node model adapters from inline handlers 2026-07-28 14:43:37 +02:00
Dariusz L 67a0fc27e7 feat: add callback-driven LoRA widget handling for Loaded Models refresh
- Configure callback-driven model widgets for LoRA Manager, LoraLoaderV2,
  Lora Stacker, and Power Lora Loader nodes in graph and loaded graph hooks
- Track callback-driven widget states to trigger context analysis and
  dialog refresh when LoRA lists or strengths change via widget callbacks
- Add signature helpers for callback-driven model list and strength changes,
  including Power Lora Loader dynamic lora_N widgets
- Extend Loaded Models tab with model DOM keys, identity normalization,
  copy-value updates with active/inactive grouping, and targeted strength
  updates from node widgets without full re-render
- Add tests verifying callback-driven refresh behavior, suppression respect,
  Power Lora Loader strength chip updates, and LoRA Manager list membership
  signature tracking
2026-07-28 14:23:11 +02:00
Dariusz L 3d513f6587 Fix docked dialog drag snap threshold and add queue splitter resize feedback 2026-07-28 13:30:04 +02:00
Dariusz L fee001829b Pin missing browser list when saved detail width exceeds max 2026-07-28 13:17:31 +02:00
Dariusz L c0b7469b4d fix(missing-browser): keep detail pane available and table-preserving across widths
Remove the brittle is-detail-collapsed responsive behavior from the missing
browser. Replace the timeout-based width handler with requestAnimationFrame
split restoration, clamp the list min width to 340px, and drop the
collapsed-state guards so the detail pane, compositor preview, and Type
column remain usable regardless of container width.
2026-07-28 13:08:26 +02:00
Dariusz L e6c6de1c6f fix: show resize overlay during dialog shell gutter resize
Apply the is-resizing class at resize start and remove it on end,
and raise the related resize overlay z-index so sibling content stays
visible underneath the resize indicator.
2026-07-28 12:35:56 +02:00
Dariusz L 37d31b6782 Improve resolver docked-splitter responsiveness and external resize behavior 2026-07-28 12:12:09 +02:00
Dariusz L 8b2f9e81cb refactor: improve missing browser splitter drag with compositor preview and threshold
- Add drag threshold and layout frame stride to splitter drag utility
- Use onPreview callback to animate splitter offset via translate3d during drag
- Simplify resize class and cleanup logic in missing browser methods
- Replace deferred release UI cleanup with direct activation/cleanup calls
- Update CSS to add resizing overlay and remove transition during resize
- Add test covering compositor preview behavior and CSS constraints
2026-07-28 01:25:07 +02:00
Dariusz L 643e198737 feat: add docked drag-to-undock behavior for Model Resolver
Allow dragging the docked Model Resolver dialog from its drag handle to
undock it into a floating window, with a live undock drop preview.

- Remember the dock container width and reuse it for the undock preview
- Restore the pre-dock floating size instead of falling back to defaults
- Restrict topbar drag while docked to the dedicated drag handle
- Update tests to cover the new docked drag lifecycle and preview markup
2026-07-27 19:45:30 +02:00