Commit Graph
182 Commits
Author SHA1 Message Date
Dariusz L c31e724a8f refactor: replace additional hardcoded CSS values with design tokens in resolver stylesheets 2026-08-01 14:22:00 +02:00
Dariusz L 1f6d15da38 refactor: replace hardcoded CSS values with design tokens 2026-08-01 14:15:56 +02:00
Dariusz L 57a5a12aac chore: replace hardcoded CSS values with design tokens in resolver stylesheets 2026-08-01 13:59:10 +02:00
Dariusz L 7ba2a4c28a Increase resolver UI font size to 14px for better readability 2026-08-01 13:53:20 +02:00
Dariusz L d4cccde2c2 refactor: switch resolver UI to custom CSS variables and add dock drag preview 2026-08-01 13:48:02 +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 f8a6e8b626 feat: add HuggingFace model details, variant table, and download context 2026-07-28 17:20:36 +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 f6db340116 Refine download tab route CSS and corresponding expectations 2026-07-27 19:11:42 +02:00
Dariusz L c599a26f55 Implement two-line status card layout for manual model selection in downloads tab
- queue_methods.js: refactor updateSelectedBarForMissing to use a fixed two-line HTML structure with icon, label, code, and action buttons
- resolver-main.css: add .mr-selected-summary/.mr-selected-status-icon/.mr-selected-actions styling and adjust .mr-missing-detail-pane button/link treatments for the new layout
- test_downloads_tab_workflow_route.mjs: assert the new markup, class structure, and CSS selectors for the selected status card
2026-07-27 19:06:51 +02:00
Dariusz L aa2d08d995 Fix Missing Models row virtualization and add regression test 2026-07-27 18:53:39 +02:00
Dariusz L 63ed2b8ca7 feat: support video previews in model downloads, tooltips, and info dialogs 2026-07-26 23:39:09 +02:00
Dariusz L e1c4359dc3 Serve adjacent model previews in tooltips via /model_resolver/model-preview 2026-07-26 21:13:11 +02:00
Dariusz L 2d6be246b4 Extract and display copyable CivitAI ComfyUI workflow metadata in model previews
- Preserve existing image metadata when re-normalizing CivitAI model images
- Add extractComfyWorkflow helper to recover pasteable editor workflows from image metadata, including nested/double-encoded JSON and non-finite number tolerance
- Surface recovered workflows as a copyable button in the model info image preview under Other metadata
- Add focused tests for workflow extraction, metadata preservation, and edge cases
2026-07-26 20:40:41 +02:00
Dariusz L 21e6e4069d frontend: add Model Resolver node context menu icon and spacing 2026-07-24 16:13:44 +02:00
Dariusz L 2dd53222a7 Fix icon sizing in resolver main CSS 2026-07-22 15:02:45 +02:00
Dariusz L 32c744cbd1 Fix missing-detail pane layout alignment and spacing 2026-07-22 14:53:40 +02:00
Dariusz L d1a5288104 style: align custom URL download button with search button picker styling 2026-07-22 13:44:53 +02:00
Dariusz L 7eca1a9c13 increase column header font size for readability
- bump .mr-missing-browser .mr-column-header from 10px to 15px
- bump #model-resolver-modal .mr-missing-detail-pane .mr-column-header from 11px to 15px
2026-07-22 13:39:32 +02:00
Dariusz L d293b0aaf8 Treat model_gguf as diffusion_models and render accepted file formats in missing-model UI 2026-07-20 16:54:28 +02:00
Dariusz L 6f1e6aea34 Show Bad type badge when local match file type is not accepted by node catalog 2026-07-20 12:46:04 +02:00
Dariusz L 23c0f79444 Add paginated show-more behavior to metadata build history 2026-07-06 14:57:44 +02:00
Dariusz L 8f525044e8 feat(options): make metadata panels collapsible and add summary icons 2026-07-06 14:51:15 +02:00
Dariusz L 5a9e81cc70 refactor(options): use visibility-based transitions for metadata build panels and defer history rendering 2026-07-06 13:58:31 +02:00
Dariusz L f3c0024d46 Replace metadata build history select with custom action filter menu 2026-07-05 22:47:07 +02:00
Dariusz L 39943d5e17 Make metadata history filterable and full-length, and stabilize build progress UI 2026-07-05 22:25:01 +02:00
Dariusz L b9f364e3e4 Add Local Metadata Builder UI and backend API
This change introduces a complete Local Metadata Builder feature in the resolver
options panel. It allows users to scan local model files, create or update
.metadata.json sidecars, fill missing SHA256 hashes from safetensors headers or
file hashing, and review run history with cancel/error handling.

Changes include:
- backend API: /model_resolver/metadata-build/{capabilities,start,progress/{id},cancel}
- backend worker: core/metadata_builder.py with parallel metadata generation
- frontend section: Local Metadata Builder tab in Options
- frontend polling UI: progress, worker breakdown, history table, status/notifications
2026-07-05 21:52:57 +02:00
Dariusz L 85bbbef06d Add metadata size audit for model sidecar metadata 2026-07-05 18:03:29 +02:00
Dariusz L e386930936 Improve base model matching and subfolder suggestion UX 2026-07-05 05:57:54 +02:00
Dariusz L f691af6387 annotate active downloads in local matches 2026-07-05 05:16:20 +02:00
Dariusz L f75f6878a2 Add unet_gguf category support and bad-folder warnings 2026-07-04 18:24:44 +02:00
Dariusz L 4c065818e3 feat: add custom URL resolution to missing browser 2026-07-04 00:45:13 +02:00
Dariusz L 4c777e5c50 feat: add local hash match identity tracking and highlights; simplify CivitAI import and hash lookup 2026-07-03 01:30:06 +02:00
Dariusz L 9c0ec8b26b Add progress reporting for loaded model and workflow analysis
- Add server-side loaded models progress tracking in __init__.py
- Report workflow node analysis progress from workflow_analyzer.py
- Add frontend polling, rendering, and UI flow for loaded models progress
2026-07-03 00:06:04 +02:00
Dariusz L f428924ee0 fix: normalize table cell borders in search results
Add border: none reset and restructure border-bottom declarations to
ensure consistent border rendering across search result table cells.
2026-07-02 02:47:12 +02:00
Dariusz L 1128234bbd feat: add local model hash comparison functionality
Implement end-to-end hash comparison for local models and local matches.

Backend:
- Add /model_resolver/local-model-hashes API endpoint
- Add get_local_model_hash_metadata() to read sidecar SHA256 metadata

Frontend:
- Add Compare Hashes context menu item and CSS
- Pass missing_key/missing_search_key through resolveDownloadMethods
- Enhance local match rendering with hash status and context data
- Add hash normalization, formatting, and candidate collection helpers
- Wire compareLocalModelHashesWithCurrentFinding action

Also update HuggingFace author index metadata.
2026-07-02 00:27:59 +02:00
Dariusz L d95c099f5a Improve rendering performance and split drag behavior
- Added CSS content-visibility and contain-intrinsic-size to list row
  containers in resolver-main.css and resolver-shell.css for off-main-thread
  rendering optimization.
- Deferred queue list panel split drag updates to requestAnimationFrame in
  web/resolver/actions/queue_methods.js, reducing redundant DOM writes and
  guarding against duplicate frames during split dragging.
- Deferred missing browser split drag updates to requestAnimationFrame in
  web/resolver/views/missing_browser_methods.js with optional chaining on
  split start values, preventing layout thrashing while dragging.
2026-07-01 22:52:17 +02:00
Dariusz L c9d83f6fe1 Remove scrollbar-gutter: stable from resolver pane
The stable scrollbar-gutter was preventing natural layout behavior
in scrollable container by always reserving space for the scrollbar.
Removing it lets the pane use standard overflow-y behavior.
2026-07-01 21:06:48 +02:00
Dariusz L 21b16389e7 refactor: simplify queue panel open/close logic 2026-07-01 20:29:43 +02:00
Dariusz L 0f62d19490 refactor: simplify queue split drag state management
Remove manual cursor and pointer-event state restoration during queue
resize. The drag now relies on the browser default col-resize behavior
and avoids setting body styles or mr-is-resizing-queue. Guard
applyQueueSplitWidth against redundant style writes and drop unused
parameters from beginQueueEdgeDrag, deferQueueSplitReleaseUi, and
startSplitDrag.
2026-07-01 18:05:16 +02:00
Dariusz L 3c4dfc72e4 feat: refactor queue panel and split layout with deferred reveal and pointer events
- Add PointerEvent support for queue toggle, edge drag, and splitter interactions
- Implement deferred queue panel reveal animation (mr-queue-opening class)
- Make queue panel updates demand-driven; skip refresh when panel is hidden
- Replace per-item remove listeners with event delegation on queue list
- Track queue split container width via ResizeObserver with safe fallbacks
- Centralize split flex application and persist queue width/collapsed state with debounce
- Fix missing browser split pane styles to use helper-track CSS variables
- Add deferred UI cleanup for missing browser split drag end
- Add prewarm frame fallback when ResizeObserver is unavailable
2026-07-01 17:58:05 +02:00
Dariusz L c2b074ce12 fix: improve missing browser split pane resize behavior 2026-07-01 01:23:24 +02:00
Dariusz L 25e20eea8f feat: add frontend and backend log export in options 2026-06-30 23:14:37 +02:00