Recipe card: the parameter set count no longer overlaps the specs
The card's height is fixed, so the chip's own line pushed into the specs line. It is now a compact ▤ N first in that line (the full wording in its tooltip). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
53c9b3f777
commit
a0aee2ec38
+1
-1
@@ -398,7 +398,7 @@ covered by the `styles.css` manifest.
|
||||
step with Undo; `param_compare.js` reads and compares the two sides without DOM.
|
||||
`key_params.js` keeps the starred key parameters (node type + widget name, a hidden ComfyUI
|
||||
setting); the window shows them first. `ui_param_set_keys.js` puts parameter sets in view: a
|
||||
recipe card's 参数方案 N chip (`GET /anomalous/parameters/signatures`; sets equal to the recipe not counted) opens its Parameters tab,
|
||||
recipe card's ▤ N chip (first in its specs line) (`GET /anomalous/parameters/signatures`; sets equal to the recipe not counted) opens its Parameters tab,
|
||||
and each set there shows its key values, how many values differ from the recipe, and ⇄.
|
||||
`ui_keep_menu.js` is the star's keep menu (also the workbench's Keep): the whole workflow, the combo or the prompts,
|
||||
each saying where it goes, opening what was kept already or removing it (to the Recycle Bin through the recipe,
|
||||
|
||||
+1
-1
@@ -25,7 +25,7 @@
|
||||
- Against the canvas, tick the values to take from the picture and put them on the canvas in one go (seeds stay); one Ctrl+Z or the toast's Undo takes them back.
|
||||
- **What changed since the last picture (和最新出图对比)**: **⇄ Canvas vs. newest picture** at the top of the Gallery and of Activity compares the canvas with the newest picture in the output folder, edits made by hand on the canvas included, and can put the picture's values back.
|
||||
- **Key parameters (关键参数)**: press ☆ before a value's name (tick **Show equal values too** to star one that matches) and it stays at the top of every comparison, for every workflow, kept with your ComfyUI settings.
|
||||
- **Parameter sets in view (参数方案更好找)**: a workflow card with saved sets shows **参数方案 N**, which opens them directly. Each set there shows its key values (those unlike the workflow's own in colour), how many values differ, and ⇄ to compare it with the workflow.
|
||||
- **Parameter sets in view (参数方案更好找)**: a workflow card with saved sets shows **▤ N** (how many), which opens them directly. Each set there shows its key values (those unlike the workflow's own in colour), how many values differ, and ⇄ to compare it with the workflow.
|
||||
|
||||
### ⚙️ Settings in tabs (设置分组)
|
||||
- The settings page is split into tabs: **Look, Models, Workflows, Prompts, Backup, Help**. "Change where downloads go" opens Models directly.
|
||||
|
||||
@@ -63,17 +63,22 @@ export function showParameterSetCount(owner, card, recipe, signatures) {
|
||||
const own = recipe?.data?.parameter_signature?.value;
|
||||
const sets = Array.isArray(map[recipe?.filename]) ? map[recipe.filename] : [];
|
||||
const count = sets.filter(signature => !own || signature !== own).length;
|
||||
// First in the specs line: the card's height is fixed, so a line of its own would push into it
|
||||
// (a card without specs has that line free).
|
||||
const strip = card.querySelector('.anomalous-recipe-specs-strip');
|
||||
const header = card.querySelector('.anomalous-recipe-card-header');
|
||||
if (!count || !header) return;
|
||||
const chip = el('button', 'anomalous-recipe-set-chip', t('paramSetCount', { count }));
|
||||
if (!count || !(strip || header)) return;
|
||||
const chip = el('button', 'anomalous-recipe-set-chip', `▤ ${count}`);
|
||||
chip.type = 'button';
|
||||
chip.title = t('paramSetCountHint');
|
||||
chip.title = `${t('paramSetCount', { count })} · ${t('paramSetCountHint')}`;
|
||||
chip.setAttribute('aria-label', chip.title);
|
||||
chip.onclick = (event) => {
|
||||
event.stopPropagation();
|
||||
owner.recipeReturnState = { activeTab: 'parameters' };
|
||||
card.click();
|
||||
};
|
||||
header.after(chip);
|
||||
if (strip) strip.prepend(chip);
|
||||
else header.after(chip);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -25,4 +25,4 @@
|
||||
@import url("./styles/24-backup.css?v=20261007-theme-2");
|
||||
@import url("./styles/25-model-import.css?v=20261008-import");
|
||||
@import url("./styles/26-model-tidy.css?v=20261008-tidy");
|
||||
@import url("./styles/27-param-compare.css?v=20261010-compare-4");
|
||||
@import url("./styles/27-param-compare.css?v=20261010-compare-7");
|
||||
|
||||
@@ -507,9 +507,10 @@
|
||||
.anomalous-compare-apply:disabled { opacity: 0.5; cursor: default; }
|
||||
|
||||
.anomalous-recipe-set-chip {
|
||||
flex: 0 0 auto;
|
||||
align-self: flex-start;
|
||||
margin: 2px 0 4px;
|
||||
padding: 2px 9px;
|
||||
padding: 1px 8px;
|
||||
white-space: nowrap;
|
||||
border: 1px solid var(--amb-border-strong);
|
||||
border-radius: 999px;
|
||||
background: var(--amb-bg-sunken);
|
||||
|
||||
Reference in New Issue
Block a user