ui: portfolio actions row + AI analysis regenerate
Two small UX changes to the portfolio panel: 1. "Forget this pie" is destructive enough to belong in edit-mode only. The button now hides by default and only surfaces when the #portfolio-panel.pf-editing class is on the panel (same surface that already shows per-row × and the add-position form). The element stays in the DOM so the existing click handler keeps working without re-mount. 2. "Generate AI analysis" disappears once an analysis exists. In its place a small "Regenerate" button is rendered inside the collapsible analysis box — in the summary header, right-aligned next to the timestamp. The button stops the summary's default toggle action so a click regenerates without collapsing the panel. runAnalysis() now tolerates either pf-analyze or pf-regen as the trigger, and showAnalysis() takes an optional onRegenerate callback so callers can wire the button to the current pie/enriched closure context. Re-hydration after the 60s portfolio refresh passes the same callback so the button survives a refresh cycle. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
652995feea
commit
736d161990
2 changed files with 80 additions and 12 deletions
|
|
@ -86,6 +86,13 @@
|
|||
.pf-actions button:disabled { opacity: 0.5; cursor: not-allowed; }
|
||||
.pf-secondary { color: var(--muted); }
|
||||
.pf-secondary:hover { color: var(--negative); border-color: var(--negative); }
|
||||
/* "Forget this pie" is destructive — only show it while the user is
|
||||
in edit mode (the same mode that surfaces the per-row delete × and
|
||||
the add-position form). Outside of edit mode the row stays in the
|
||||
DOM so existing handlers and any future surface that wants to
|
||||
toggle it can do so without re-rendering. */
|
||||
#pf-forget { display: none; }
|
||||
#portfolio-panel.pf-editing #pf-forget { display: inline-block; }
|
||||
|
||||
.pf-analysis {
|
||||
margin-top: 14px;
|
||||
|
|
@ -107,6 +114,24 @@
|
|||
list-style: none; /* hide native marker in Firefox */
|
||||
}
|
||||
.pf-analysis__head::-webkit-details-marker { display: none; }
|
||||
.pf-analysis__head-right {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 12px;
|
||||
}
|
||||
.pf-regen {
|
||||
background: transparent;
|
||||
border: 1px solid var(--border);
|
||||
color: var(--muted);
|
||||
padding: 3px 9px;
|
||||
font: inherit;
|
||||
font-size: 10.5px;
|
||||
letter-spacing: inherit;
|
||||
cursor: pointer;
|
||||
text-transform: inherit;
|
||||
}
|
||||
.pf-regen:hover { color: var(--accent); border-color: var(--accent); }
|
||||
.pf-regen:disabled { opacity: 0.5; cursor: not-allowed; }
|
||||
.pf-analysis__head-left::before {
|
||||
content: "▸ ";
|
||||
display: inline-block;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue