fix(dashboard): unified solid edges, hide FALLBACK labels, conditional cursor (#247 Phase 1)
What: Restore graph visual preferences — all edges solid, FALLBACK labels hidden, inactive nodes not clickable. Why: Visual consistency and cleaner graph appearance per design preferences. Changes: - condition-edge.tsx: remove strokeDasharray, unify stroke color, hide FALLBACK labels - role-node.tsx: cursor-pointer only on non-default state nodes Ref: #247, closes #248
This commit is contained in:
@@ -78,9 +78,8 @@ export function ConditionEdge(props: EdgeProps) {
|
|||||||
defaultLabelY = result[2];
|
defaultLabelY = result[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
const stroke = isFallback ? "var(--color-text-muted)" : "var(--color-accent)";
|
const stroke = "var(--color-accent)";
|
||||||
const strokeDasharray = isFallback ? "5 4" : undefined;
|
const label = isFallback ? "" : (edgeData?.condition ?? "");
|
||||||
const label = edgeData?.condition ?? "";
|
|
||||||
|
|
||||||
// Use pre-computed label position if available, otherwise fall back to default
|
// Use pre-computed label position if available, otherwise fall back to default
|
||||||
const labelX = edgeData?.labelX ?? defaultLabelX;
|
const labelX = edgeData?.labelX ?? defaultLabelX;
|
||||||
@@ -92,7 +91,7 @@ export function ConditionEdge(props: EdgeProps) {
|
|||||||
id={id}
|
id={id}
|
||||||
path={path}
|
path={path}
|
||||||
markerEnd={markerEnd}
|
markerEnd={markerEnd}
|
||||||
style={{ stroke, strokeWidth: 1.5, strokeDasharray }}
|
style={{ stroke, strokeWidth: 1.5 }}
|
||||||
/>
|
/>
|
||||||
{label !== "" && (
|
{label !== "" && (
|
||||||
<EdgeLabelRenderer>
|
<EdgeLabelRenderer>
|
||||||
@@ -102,7 +101,7 @@ export function ConditionEdge(props: EdgeProps) {
|
|||||||
transform: `translate(-50%, -50%) translate(${labelX}px, ${labelY}px)`,
|
transform: `translate(-50%, -50%) translate(${labelX}px, ${labelY}px)`,
|
||||||
background: "var(--color-surface)",
|
background: "var(--color-surface)",
|
||||||
border: "1px solid var(--color-border)",
|
border: "1px solid var(--color-border)",
|
||||||
color: isFallback ? "var(--color-text-muted)" : "var(--color-text)",
|
color: "var(--color-text)",
|
||||||
whiteSpace: "nowrap",
|
whiteSpace: "nowrap",
|
||||||
zIndex: 10,
|
zIndex: 10,
|
||||||
}}
|
}}
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export function RoleNode(props: NodeProps) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={`px-3 py-2 rounded-md border-2 text-xs font-medium cursor-pointer ${isActive ? "wf-node-pulse" : ""}`}
|
className={`px-3 py-2 rounded-md border-2 text-xs font-medium ${t.state !== "default" ? "cursor-pointer" : ""} ${isActive ? "wf-node-pulse" : ""}`}
|
||||||
style={{
|
style={{
|
||||||
width: 180,
|
width: 180,
|
||||||
height: 60,
|
height: 60,
|
||||||
|
|||||||
Reference in New Issue
Block a user