From 2d005ec9008683631772ab85c4fd58b20c338377 Mon Sep 17 00:00:00 2001 From: Emir Karabeg Date: Tue, 4 Mar 2025 22:46:30 -0800 Subject: [PATCH] feat(long-description): added long description to blocks and info in workflow bloc kheader --- .../workflow-block/workflow-block.tsx | 59 +++++++++++++++++-- blocks/blocks/agent.ts | 2 + blocks/blocks/api.ts | 2 + blocks/blocks/condition.ts | 3 +- blocks/blocks/crewai.ts | 2 + blocks/blocks/evaluator.ts | 2 + blocks/blocks/exa.ts | 2 + blocks/blocks/firecrawl.ts | 2 + blocks/blocks/function.ts | 2 + blocks/blocks/github.ts | 2 + blocks/blocks/gmail.ts | 2 + blocks/blocks/jina.ts | 2 + blocks/blocks/memory.ts | 2 + blocks/blocks/notion.ts | 2 + blocks/blocks/openai.ts | 2 + blocks/blocks/pinecone.ts | 2 + blocks/blocks/router.ts | 2 + blocks/blocks/serper.ts | 2 + blocks/blocks/slack.ts | 2 + blocks/blocks/starter.ts | 2 + blocks/blocks/tavily.ts | 2 + blocks/blocks/translate.ts | 2 + blocks/blocks/x.ts | 2 + blocks/blocks/youtube.ts | 2 + 24 files changed, 99 insertions(+), 7 deletions(-) diff --git a/app/w/[id]/components/workflow-block/workflow-block.tsx b/app/w/[id]/components/workflow-block/workflow-block.tsx index 9990e16cda..150b080e48 100644 --- a/app/w/[id]/components/workflow-block/workflow-block.tsx +++ b/app/w/[id]/components/workflow-block/workflow-block.tsx @@ -1,5 +1,5 @@ import { useEffect, useRef, useState } from 'react' -import { RectangleHorizontal, RectangleVertical } from 'lucide-react' +import { Info, RectangleHorizontal, RectangleVertical } from 'lucide-react' import { Handle, NodeProps, Position, useUpdateNodeInternals } from 'reactflow' import { Badge } from '@/components/ui/badge' import { Button } from '@/components/ui/button' @@ -165,7 +165,7 @@ export function WorkflowBlock({ id, data }: NodeProps) { } const handleNameSubmit = () => { - const trimmedName = editedName.trim() + const trimmedName = editedName.trim().slice(0, 18) if (trimmedName && trimmedName !== name) { updateBlockName(id, trimmedName) } @@ -230,17 +230,21 @@ export function WorkflowBlock({ id, data }: NodeProps) { setEditedName(e.target.value.slice(0, 40))} + onChange={(e) => setEditedName(e.target.value.slice(0, 18))} onBlur={handleNameSubmit} onKeyDown={handleNameKeyDown} autoFocus - className="font-medium text-md bg-transparent border-none outline-none p-0 w-[200px]" - maxLength={40} + className="font-medium text-md bg-transparent border-none outline-none p-0 w-[180px]" + maxLength={18} /> ) : ( {name} @@ -252,6 +256,49 @@ export function WorkflowBlock({ id, data }: NodeProps) { Disabled )} + {config.longDescription && ( + + + + + +
+
+

Description

+

{config.longDescription}

+
+ {config.outputs && ( +
+

Output

+
+ {Object.entries(config.outputs).map(([key, value]) => ( +
+ {key}{' '} + {typeof value.type === 'object' ? ( +
+ {Object.entries(value.type).map(([typeKey, typeValue]) => ( +
+ {typeKey}: + + {typeValue as string} + +
+ ))} +
+ ) : ( + {value.type as string} + )} +
+ ))} +
+
+ )} +
+
+
+ )}