🐛 fix(GenericNode/index.tsx): fix double click behavior on GenericNode title to correctly handle nameEditable state and takeSnapshot function

🔧 chore(GenericNode/index.tsx): refactor GenericNode title component to improve readability and maintainability
🔧 chore(GenericNode/index.tsx): refactor GenericNode build status tooltip to improve readability
This commit is contained in:
cristhianzl 2024-02-26 14:15:47 -03:00
commit 28927ddc78

View file

@ -337,28 +337,37 @@ export default function GenericNode({
</div>
) : (
<ShadTooltip content={data.node?.display_name}>
<div
className="flex items-center gap-2"
onDoubleClick={(event) => {
if (nameEditable) {
setInputName(true);
}
takeSnapshot();
event.stopPropagation();
event.preventDefault();
}}
>
<div
data-testid={"title-" + data.node?.display_name}
className="generic-node-tooltip-div text-primary"
>
{data.node?.display_name}
</div>
<div className="group flex items-center gap-2.5">
<ShadTooltip content={data.node?.display_name}>
<div
onDoubleClick={(event) => {
if (nameEditable) {
setInputName(true);
}
takeSnapshot();
event.stopPropagation();
event.preventDefault();
}}
data-testid={"title-" + data.node?.display_name}
className="generic-node-tooltip-div text-primary"
>
{data.node?.display_name}
</div>
</ShadTooltip>
{nameEditable && (
<IconComponent
name="Pencil"
className="h-4 w-4 text-ring"
/>
<div
onClick={(event) => {
setInputName(true);
takeSnapshot();
event.stopPropagation();
event.preventDefault();
}}
>
<IconComponent
name="Pencil"
className="hidden h-4 w-4 animate-pulse text-status-blue group-hover:block"
/>
</div>
)}
</div>
</ShadTooltip>
@ -465,11 +474,7 @@ export default function GenericNode({
}}
>
<div>
<Tooltip
title={
"Build"
}
>
<Tooltip title={"Build"}>
<div className="generic-node-status-position flex items-center justify-center">
{renderIconPlayOrPauseComponents(
data?.buildStatus,