diff --git a/frontend/src/components/session/ContinuationModal.tsx b/frontend/src/components/session/ContinuationModal.tsx index b6b4a8f0..3e594890 100644 --- a/frontend/src/components/session/ContinuationModal.tsx +++ b/frontend/src/components/session/ContinuationModal.tsx @@ -21,13 +21,15 @@ interface ContinuationModalProps { const nodeTypeIcons: Record = { decision: , action: , - solution: + solution: , + answer: } const nodeTypeLabels: Record = { decision: 'Decision', action: 'Action', - solution: 'Solution' + solution: 'Solution', + answer: 'Answer' } export function ContinuationModal({ diff --git a/frontend/src/components/tree-editor/NodeList.tsx b/frontend/src/components/tree-editor/NodeList.tsx index bb1ab844..e7dfaad3 100644 --- a/frontend/src/components/tree-editor/NodeList.tsx +++ b/frontend/src/components/tree-editor/NodeList.tsx @@ -91,13 +91,15 @@ function NodeListItem({ const nodeTypeIcons: Record = { decision: , action: , - solution: + solution: , + answer: } const nodeTypeColors: Record = { decision: 'bg-blue-500/20 text-blue-400', action: 'bg-yellow-500/20 text-yellow-400', - solution: 'bg-green-500/20 text-green-400' + solution: 'bg-green-500/20 text-green-400', + answer: 'bg-muted text-muted-foreground border border-dashed border-border' } const getNodeLabel = () => { diff --git a/frontend/src/components/tree-editor/NodePicker.tsx b/frontend/src/components/tree-editor/NodePicker.tsx index 00d081c2..7710120c 100644 --- a/frontend/src/components/tree-editor/NodePicker.tsx +++ b/frontend/src/components/tree-editor/NodePicker.tsx @@ -13,14 +13,16 @@ const CREATE_SOLUTION = `${CREATE_PREFIX}solution__` const NODE_TYPE_SYMBOLS: Record = { decision: '\u24D8', // Information/question symbol action: '\u26A1', // Lightning bolt for action - solution: '\u2713' // Checkmark for solution + solution: '\u2713', // Checkmark for solution + answer: '\u25CC' // Dashed circle for placeholder } // Node type labels for UI const NODE_TYPE_LABELS: Record = { decision: 'Decision', action: 'Action', - solution: 'Solution' + solution: 'Solution', + answer: 'Answer' } interface NodePickerProps { diff --git a/frontend/src/components/tree-preview/TreePreviewNode.tsx b/frontend/src/components/tree-preview/TreePreviewNode.tsx index 05acb78f..0837426d 100644 --- a/frontend/src/components/tree-preview/TreePreviewNode.tsx +++ b/frontend/src/components/tree-preview/TreePreviewNode.tsx @@ -87,25 +87,29 @@ export function TreePreviewNode({ const nodeTypeColors: Record = { decision: 'border-blue-500/50 bg-blue-500/10', action: 'border-yellow-500/50 bg-yellow-500/10', - solution: 'border-green-500/50 bg-green-500/10' + solution: 'border-green-500/50 bg-green-500/10', + answer: 'border-dashed border-border bg-muted/50' } const nodeTypeSelectedColors: Record = { decision: 'border-blue-500 bg-blue-500/20 ring-2 ring-blue-500/50 shadow-lg shadow-blue-500/20', action: 'border-yellow-500 bg-yellow-500/20 ring-2 ring-yellow-500/50 shadow-lg shadow-yellow-500/20', - solution: 'border-green-500 bg-green-500/20 ring-2 ring-green-500/50 shadow-lg shadow-green-500/20' + solution: 'border-green-500 bg-green-500/20 ring-2 ring-green-500/50 shadow-lg shadow-green-500/20', + answer: 'border-border bg-muted/50' } const nodeTypeHoveredColors: Record = { decision: 'border-blue-400 bg-blue-500/15 ring-1 ring-blue-400/50', action: 'border-yellow-400 bg-yellow-500/15 ring-1 ring-yellow-400/50', - solution: 'border-green-400 bg-green-500/15 ring-1 ring-green-400/50' + solution: 'border-green-400 bg-green-500/15 ring-1 ring-green-400/50', + answer: 'border-border bg-muted/50' } const nodeTypeIcons: Record = { decision: , action: , - solution: + solution: , + answer: } const getNodeLabel = () => {