Fix tooltips missing for editable properties

This commit is contained in:
yangdx
2025-04-14 14:45:37 +08:00
parent 819cfeffa0
commit 5ce334d807
3 changed files with 12 additions and 3 deletions

View File

@@ -19,6 +19,7 @@ interface EditablePropertyRowProps {
targetId?: string // Target node ID (for edge type)
onValueChange?: (newValue: any) => void // Optional callback when value changes
isEditable?: boolean // Whether this property can be edited
tooltip?: string // Optional tooltip to display on hover
}
/**
@@ -34,7 +35,8 @@ const EditablePropertyRow = ({
sourceId,
targetId,
onValueChange,
isEditable = false
isEditable = false,
tooltip
}: EditablePropertyRowProps) => {
const { t } = useTranslation()
const [isEditing, setIsEditing] = useState(false)
@@ -101,7 +103,11 @@ const EditablePropertyRow = ({
<div className="flex items-center gap-1">
<PropertyName name={name} />
<EditIcon onClick={handleEditClick} />:
<PropertyValue value={currentValue} onClick={onClick} />
<PropertyValue
value={currentValue}
onClick={onClick}
tooltip={tooltip || (typeof currentValue === 'string' ? currentValue : JSON.stringify(currentValue, null, 2))}
/>
<PropertyEditDialog
isOpen={isEditing}
onClose={handleCancel}

View File

@@ -207,6 +207,7 @@ const PropertyRow = ({
sourceId={sourceId}
targetId={targetId}
isEditable={true}
tooltip={tooltip || (typeof value === 'string' ? value : JSON.stringify(value, null, 2))}
/>
)
}

View File

@@ -38,14 +38,16 @@ export const EditIcon = ({ onClick }: EditIconProps) => (
interface PropertyValueProps {
value: any
onClick?: () => void
tooltip?: string
}
export const PropertyValue = ({ value, onClick }: PropertyValueProps) => (
export const PropertyValue = ({ value, onClick, tooltip }: PropertyValueProps) => (
<div className="flex items-center gap-1">
<Text
className="hover:bg-primary/20 rounded p-1 overflow-hidden text-ellipsis"
tooltipClassName="max-w-80"
text={value}
tooltip={tooltip || (typeof value === 'string' ? value : JSON.stringify(value, null, 2))}
side="left"
onClick={onClick}
/>