Commit Graph

  • 8e8fb60935 version 0.2.0: Add AlertModal and ConfirmModal components for user notifications - Implemented AlertModal for displaying simple alerts with a title and message. - Implemented ConfirmModal for user confirmations with customizable confirm and cancel buttons. - Both modals feature a dark overlay and responsive design for better user experience. master Immac 2026-03-09 22:40:46 -06:00
  • 1b1f16d4a3 refactor: replace emoji with ComfyUI icon font classes in import/export buttons Immac 2026-03-09 21:28:10 -06:00
  • f1b90e424b feat: add import/export toolbar with conflict resolution to Style Mixer panel Immac 2026-03-09 21:24:34 -06:00
  • f8f4633785 feat: single-item ZIP export/import with per-item collision prompts Immac 2026-03-09 20:54:42 -06:00
  • aa6df97c89 feat: add GitHub workflows for CI build, publishing, and validation Immac 2026-03-09 16:38:18 -06:00
  • 7df06a47fa refactor: update project plan to reflect implementation status and detailed steps for Style Mixer development Immac 2026-03-09 16:21:49 -06:00
  • 2638d4aa39 feat: add style mixer data example JSON file and remove outdated notes Immac 2026-03-09 15:53:53 -06:00
  • 4566c70035 feat: add optional negative prompts to styles and mixes Immac 2026-03-05 09:59:46 -06:00
  • 9bcda82f7c feat: move example workflow to examples/ (ComfyUI template discovery) Immac 2026-03-05 08:20:57 -06:00
  • f5f4e050c9 refactor: rename Style Pick \u2192 Pick Style, Style Blend \u2192 Blend Style (verb-first node names) Immac 2026-03-04 23:52:50 -06:00
  • 1552484f65 fix: style_blend accepts raw style_id (no weight node) with default weight 1.0 Immac 2026-03-04 21:13:33 -06:00
  • 5a21c43acc feat: skip zero-weight styles from prompt mix instead of including (value:0.00) Immac 2026-03-04 20:40:20 -06:00
  • d30fc50443 refactor: remove StyleCreateNode and StyleModifyNode, replaced by SaveStyleNode Immac 2026-03-04 12:10:00 -06:00
  • 10170fd427 feat: add SaveStyleNode + unify Create/Update/Save matrix across Save Mix and Save Style Immac 2026-03-04 12:08:44 -06:00
  • a50d06ee8b feat: re-fetch panel data on execution_success so sidebar images update automatically Immac 2026-03-04 09:12:09 -06:00
  • dc4104a488 fix: import api directly from /scripts/api.js, listen on execution_success for preview refresh Immac 2026-03-04 09:06:28 -06:00
  • 402ad238ee feat: auto-refresh node previews when image-writing nodes execute Immac 2026-03-04 08:56:40 -06:00
  • 2f6a697830 feat: Save Mix adds optional example_image + id inputs; Style Mix → Pick Mix with mix_id output Immac 2026-03-04 08:45:39 -06:00
  • 9c89ea1137 chore: update immac_tools.json and pyproject.toml metadata for Style Mixer Immac 2026-03-04 08:31:59 -06:00
  • a2f97b44c3 docs: rewrite README, update PLAN, fix LICENSE year (2026) Immac 2026-03-04 08:30:50 -06:00
  • fdedf7fc04 chore: remove diagnostic logs, simplify to single setDirtyCanvas (no rAF retry needed) Immac 2026-03-04 08:25:37 -06:00
  • 830c19ea3a fix: import app directly from /scripts/app.js instead of polling window.app (root cause of timeout) Immac 2026-03-04 08:14:58 -06:00
  • 809e6dad48 fix: import app directly from /scripts/app.js instead of polling window.app (root cause of timeout) Immac 2026-03-04 08:13:16 -06:00
  • 9f3787dafe fix: import app directly from /scripts/app.js instead of polling window.app (timeout root cause) Immac 2026-03-04 08:12:42 -06:00
  • acc25c5717 debug: add diagnostic logs for preview blank-on-reload Immac 2026-03-04 08:05:50 -06:00
  • 44fed83de9 fix: dual-path dirty + rAF retry after image load to guarantee canvas redraw Immac 2026-03-04 08:01:34 -06:00
  • 7214bdcb49 fix: use getMinHeight/getHeight callbacks + node.onResize for DOM widget sizing Immac 2026-03-04 07:53:56 -06:00
  • 435c9d7724 debug: revert onAfterGraphConfigured, add console.log to trace reload failure Immac 2026-03-04 07:47:18 -06:00
  • c490b11205 fix: use onAfterGraphConfigured for preview restore (fires after all widget values applied) Immac 2026-03-04 07:42:22 -06:00
  • b9e8b274ce fix: align node preview with ComfyUI pattern (rAF + node.graph.setDirtyCanvas) Immac 2026-03-04 07:38:40 -06:00
  • 8436718ca6 fix: replace broken waitForCanvasReady with scheduleCanvasDirty (10 rAF frames) Immac 2026-03-04 07:32:57 -06:00
  • c2475566db fix: replace 500ms timeout with rAF-based waitForCanvasReady (LiteGraph frame counter) Immac 2026-03-04 07:23:55 -06:00
  • 9c3cbf2351 fix: delay node preview 500ms on reload so canvas loop is ready, double setDirtyCanvas Immac 2026-03-04 07:19:26 -06:00
  • c828b6195a fix: node previews blank on page reload (stale closure + race condition) Immac 2026-03-04 07:12:35 -06:00
  • 003811cd87 feat: object-fit contain (padded) for all card and mix thumbnails Immac 2026-03-03 11:30:04 -06:00
  • bac0580877 fix: only refresh node combos on mix/style create or delete, never on weight changes Immac 2026-03-03 11:18:48 -06:00
  • 2cde2b2e2d fix: drag clamped 0-1, text input allows -10 to 10 (separate dragMin/dragMax) Immac 2026-03-03 11:06:38 -06:00
  • daf2aec27b fix: align weight range -10/10/0.01 across BarInput defaults, MixCard and StyleMixerPanel Immac 2026-03-03 11:04:07 -06:00
  • 0d72f37ac3 feat: weight range -10 to 10 (allow negative weights) Immac 2026-03-03 11:02:43 -06:00
  • b2941d093e feat: redesign StyleBlend/WeightStyle to use style_id; add SaveMix node Immac 2026-03-03 10:52:58 -06:00
  • f5d00a29d2 chore: remove __pycache__ from tracking (already in .gitignore) Immac 2026-03-03 10:43:29 -06:00
  • 7dbf01a3d9 feat: migrate all nodes to V3 API, StyleBlendNode with io.Autogrow growing slots Immac 2026-03-03 10:30:53 -06:00
  • 267d8d38f7 feat: add Weight Style and Style Blend nodes (style_value + float weight → mixed prompt) Immac 2026-03-03 09:52:39 -06:00
  • 3ca72a6a00 fix: skip refreshComboInNodes when adding/removing styles from a mix Immac 2026-03-03 09:27:54 -06:00
  • 9293233e4f fix: use elementFromPoint to skip node creation when dropped on panel (not canvas) Immac 2026-03-02 23:40:03 -06:00
  • c71aa4ddd2 fix: move style card drag to dedicated handle (⠿ icon) so card content is interactive Immac 2026-03-02 22:23:21 -06:00
  • d12bba871b fix: move mix card drag to dedicated handle (⠿ icon) so weights can be dragged freely Immac 2026-03-02 22:22:07 -06:00
  • 2fde80ee8d fix: stop mousedown propagation in BarInput to prevent card drag Immac 2026-03-02 22:19:52 -06:00
  • fbc9d7ea42 fix: prevent card drag when interacting with BarInput weight slider Immac 2026-03-02 22:17:13 -06:00
  • afe9973d1b fix: horizontal scroll on Current Mix (not Mixes); Mixes wraps Immac 2026-03-02 22:13:01 -06:00
  • b661da0201 fix: silent weight/enabled changes skip refreshComboInNodes Immac 2026-03-02 22:10:33 -06:00
  • 27664a7b5a fix: enabled/disabled toggle in current mix also silent Immac 2026-03-02 22:10:13 -06:00
  • 59b3801c48 fix: weight changes do not trigger pending-refresh badge Immac 2026-03-02 22:08:25 -06:00
  • 2d3d317ece fix: weight changes do not trigger pending-refresh badge Immac 2026-03-02 22:04:27 -06:00
  • 5fc9d5d56f feat: mixes section scrolls horizontally when cards overflow Immac 2026-03-02 21:55:46 -06:00
  • 3b8f7bcbd9 fix: restore visible drag ghost for style and mix cards Immac 2026-03-02 21:44:15 -06:00
  • dc83cd73b3 fix: use onDragEnd pattern for style-to-canvas drop (ComfyUI intercepts drop event) Immac 2026-03-02 21:36:55 -06:00
  • 2ccf5d6ca8 fix: attach canvas drop listener to document (avoids setup timing issue) Immac 2026-03-02 21:32:34 -06:00
  • 3cd2a6c2e0 feat: drag style card onto canvas creates a StylePickImmacStyleMixer node Immac 2026-03-02 21:28:46 -06:00
  • 39fa99a9de fix: style refresh badge, empty→first update, image_updated_at cache-bust, loadedGraphNode placeholder upgrade Immac 2026-03-02 20:16:16 -06:00
  • cdaf2a2040 fix: show real server error on ZIP restore failure (not JSON parse error) Immac 2026-03-02 19:52:27 -06:00
  • 944ce29f26 feat: unified restore auto-detects JSON vs ZIP, ZIP restore extracts images server-side Immac 2026-03-02 19:48:52 -06:00
  • 08781c0260 feat: download ZIP with images via server-side endpoint Immac 2026-03-02 19:45:41 -06:00
  • 0789a8683a fix: register backup/restore via settings[] in registerExtension (not deprecated addSetting) Immac 2026-03-02 19:41:47 -06:00
  • 213d82b365 feat: move backup/restore to ComfyUI Settings panel Immac 2026-03-02 19:13:42 -06:00
  • 4be8a73ca6 feat: backup/restore toolbar — download and upload JSON snapshot of styles+mixes Immac 2026-03-02 19:07:33 -06:00
  • 32a12197df fix: use loadedGraphNode hook to restore correct preview on workflow reload Immac 2026-03-02 18:34:13 -06:00
  • 6338025dd0 refactor: migrate style_pick_node to use shared _style_utils Immac 2026-03-02 18:31:58 -06:00
  • 7b31574e19 refactor: split Create/Modify Style into separate Create Style and Modify Style nodes Immac 2026-03-02 18:31:27 -06:00
  • cf3a63a71a fix: skip updating style value/prompt when input is empty Immac 2026-03-02 18:16:26 -06:00
  • d798263c87 chore: rename Style Create display name to Create/Modify Style Immac 2026-03-02 16:37:27 -06:00
  • 65671fe327 fix: style_id is forceInput (socket-only, no text widget) Immac 2026-03-02 16:30:55 -06:00
  • 14f6b2ba44 feat: optional style_id input on StyleCreate; lookup by ID first, update name if changed Immac 2026-03-02 16:29:29 -06:00
  • 6852a9e36d feat: Style Pick node with image preview widget Immac 2026-03-02 16:26:20 -06:00
  • 6d5c27deb6 fix: bust image cache via image_updated_at timestamp when StyleCreate overwrites a style image Immac 2026-03-02 15:49:56 -06:00
  • 81928dc288 fix: overwrite image file in place using existing filename (no orphaned files) Immac 2026-03-02 15:45:58 -06:00
  • dc5bf10449 fix: Create or Update now replaces image when example_image is connected Immac 2026-03-02 15:41:50 -06:00
  • c31758bca1 fix: set OUTPUT_NODE=True on StyleCreate so ComfyUI always executes it Immac 2026-03-02 15:36:10 -06:00
  • 9132ad0e52 feat: optional example_image input on StyleCreate node, saved to input/immac_style_mixer/styles/ Immac 2026-03-02 15:33:45 -06:00
  • 8deb382822 feat: add StyleCreate node (Create / Create or Skip / Create or Update / Overwrite) Immac 2026-03-02 15:29:30 -06:00
  • 5f429d303a fix: use dragend instead of canvas drop to create node (matches ComfyUI node library pattern) Immac 2026-03-02 15:18:53 -06:00
  • fa8b197c3b feat: drag mix card to canvas creates StyleMixImmacStyleMixer node Immac 2026-03-02 15:12:15 -06:00
  • 3ecaa149db feat: double-click current mix chip to toggle on/off Immac 2026-03-02 15:03:46 -06:00
  • 4aab45fe30 feat: remove button on current mix style chips Immac 2026-03-02 13:32:11 -06:00
  • f3c3d31820 feat: drag style cards onto mix cards or current mix to add them Immac 2026-03-02 13:29:05 -06:00
  • 9bd75a8730 feat: toggle add/remove from mix button on style cards Immac 2026-03-02 12:42:31 -06:00
  • a62ab11400 feat: add to current mix button on style cards Immac 2026-03-02 12:40:05 -06:00
  • 16b74f5000 feat: copy prompt button on style and mix cards Immac 2026-03-02 12:04:59 -06:00
  • 59d7a2370d feat: on/off toggle and weight bar in Current Mix section Immac 2026-03-02 12:02:51 -06:00
  • 32cbc2dddc feat: toast warning on delete, badge on add, auto-refresh on delete Immac 2026-03-02 11:57:57 -06:00
  • c9496279ab refactor: simplify dirty badge to boolean, only fires on add/delete not content edits Immac 2026-03-02 11:47:23 -06:00
  • 31d74f9557 feat: dirty badge on mix cards, click to reload node cache Immac 2026-03-02 11:43:04 -06:00
  • b31d5ec2a1 fix: skip refreshComboInNodes when only current_mix_id changes Immac 2026-03-02 11:30:41 -06:00
  • c2c5d8a42e fix: clamp drag to 0-1, allow typed input outside range Immac 2026-03-02 11:28:04 -06:00
  • e8735b3a2e feat: replace weight number spinner with draggable bar input (ComfyUI style) Immac 2026-03-02 11:23:15 -06:00
  • fbd18e864b feat: replace sidebar spinner with fill-bars loading animation Immac 2026-03-02 11:18:04 -06:00
  • 634957cf16 fix: IS_CHANGED uses data file mtime to bust node cache on sidebar saves Immac 2026-03-02 11:01:46 -06:00
  • bba0755e36 feat: refresh ComfyUI node definitions 1500ms after sidebar saves Immac 2026-03-02 10:50:36 -06:00
  • df03ce8996 fix: proper node resize behavior via --comfy-widget-min-height CSS vars on image load Immac 2026-03-02 10:03:17 -06:00
  • 6c7948eeca docs: add dev note on Style Mix node preview implementation and pitfalls Immac 2026-03-02 10:01:19 -06:00