From c609c19a75bcac385bc47d9e8a7946edd61922dc Mon Sep 17 00:00:00 2001 From: Ikko Eltociear Ashimine Date: Thu, 6 Jul 2023 22:28:37 +0900 Subject: [PATCH 001/135] =?UTF-8?q?=F0=9F=90=9B=20fix(utils.ts):=20fix=20t?= =?UTF-8?q?ypo=20in=20utils.ts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/frontend/src/utils.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/frontend/src/utils.ts b/src/frontend/src/utils.ts index 2ce076783..321aa9514 100644 --- a/src/frontend/src/utils.ts +++ b/src/frontend/src/utils.ts @@ -12,7 +12,7 @@ import { FBIcon } from "./icons/FacebookMessenger"; import { GitBookIcon } from "./icons/GitBook"; import { GoogleIcon } from "./icons/Google"; import { HackerNewsIcon } from "./icons/hackerNews"; -import { HugginFaceIcon } from "./icons/HuggingFace"; +import { HuggingFaceIcon } from "./icons/HuggingFace"; import { IFixIcon } from "./icons/IFixIt"; import { MetaIcon } from "./icons/Meta"; import { MidjourneyIcon } from "./icons/Midjorney"; @@ -197,10 +197,10 @@ export const nodeIconsLucide: { HNLoader: HackerNewsIcon as React.ForwardRefExoticComponent< ComponentType> >, - HuggingFaceHub: HugginFaceIcon as React.ForwardRefExoticComponent< + HuggingFaceHub: HuggingFaceIcon as React.ForwardRefExoticComponent< ComponentType> >, - HuggingFaceEmbeddings: HugginFaceIcon as React.ForwardRefExoticComponent< + HuggingFaceEmbeddings: HuggingFaceIcon as React.ForwardRefExoticComponent< ComponentType> >, IFixitLoader: IFixIcon as React.ForwardRefExoticComponent< From c21f7a55453628149c3a6b93b9a766408a42cd9c Mon Sep 17 00:00:00 2001 From: Igor Carvalho Date: Fri, 7 Jul 2023 15:23:25 -0300 Subject: [PATCH 002/135] refactor(formModal): Add formModal tailwind constants classes --- src/frontend/src/index.css | 133 ++++++++++++++++++ .../src/modals/formModal/chatInput/index.tsx | 14 +- .../modals/formModal/chatMessage/index.tsx | 27 ++-- src/frontend/src/modals/formModal/index.tsx | 44 +++--- 4 files changed, 175 insertions(+), 43 deletions(-) diff --git a/src/frontend/src/index.css b/src/frontend/src/index.css index b95a930da..437358e11 100644 --- a/src/frontend/src/index.css +++ b/src/frontend/src/index.css @@ -913,5 +913,138 @@ The cursor: default; property value restores the browser's default cursor style @apply ml-3 h-6 w-6 } + .form-modal-lock-true { + @apply bg-input text-black dark:bg-gray-700 dark:text-gray-300 + } + .form-modal-lock-false { + @apply bg-white text-black dark:bg-gray-900 dark:text-gray-300 + } + .form-modal-lockchat { + @apply form-input block w-full rounded-md border-gray-300 p-4 pr-16 custom-scroll dark:border-gray-600 sm:text-sm + } + .form-modal-send-icon-position { + @apply absolute bottom-2 right-4 + } + .form-modal-send-button { + @apply rounded-md p-2 px-1 transition-all duration-300 + } + .form-modal-lock-icon { + @apply ml-1 mr-1 h-5 w-5 animate-pulse + } + .form-modal-send-icon { + @apply mr-2 h-5 w-5 rotate-[44deg] + } + .form-modal-chat-position { + @apply flex-max-width px-2 py-6 pl-4 pr-9 + } + .form-modal-chatbot-icon { + @apply mb-3 mr-3 mt-1 w-20 + } + .form-modal-chat-image { + @apply flex flex-col items-center gap-1 + } + .form-modal-chat-img-box { + @apply flex h-8 w-8 items-center justify-center overflow-hidden rounded-md p-5 text-2xl + } + .form-modal-chat-bot-icon { + @apply form-modal-chat-img-box bg-[#afe6ef] + } + .form-modal-chat-user-icon { + @apply form-modal-chat-img-box bg-[#aface9] + } + .form-modal-chat-text-position { + @apply flex w-full flex-1 items-center text-start + } + .form-modal-chat-text { + @apply relative inline-block w-full text-start text-sm font-normal text-muted-foreground + } + .form-modal-chat-icon-div { + @apply absolute -left-8 -top-5 cursor-pointer + } + .form-modal-chat-icon { + @apply h-5 w-5 animate-bounce dark:text-white + } + .form-modal-chat-thought-border { + @apply rounded-md border border-gray-300 + } + .form-modal-chat-thought-size { + @apply inline-block h-full w-[95%] + } + .form-modal-chat-thought { + @apply ml-3 cursor-pointer overflow-scroll bg-muted px-2 text-start text-primary scrollbar-hide dark:border-gray-500 dark:bg-gray-800 form-modal-chat-thought-border form-modal-chat-thought-size + } + .form-modal-markdown-span { + @apply mt-1 animate-pulse cursor-default + } + .form-modal-initial-prompt-btn { + @apply mb-2 flex items-center gap-4 rounded-md border border-ring/60 bg-background px-4 py-3 text-base font-semibold + } + .form-modal-iv-box { + @apply mt-2 flex-max-width h-[80vh] + } + .form-modal-iv-size { + @apply mr-6 flex h-full w-2/6 flex-col justify-start overflow-auto scrollbar-hide + } + .file-component-arrangement { + @apply flex items-center py-2 + } + .file-component-variable { + @apply -ml-px mr-1 h-4 w-4 text-primary + } + .file-component-variables-span { + @apply font-semibold text-primary + } + .file-component-variables-title { + @apply flex items-center justify-between pt-2 + } + .file-component-variables-div { + @apply mr-2.5 flex items-center + } + .file-component-variables-title-txt { + @apply text-sm font-medium text-primary + } + .file-component-accordion-div { + @apply flex items-start gap-3 + } + .file-component-badge-div { + @apply flex-max-width items-center justify-between + } + .file-component-tab-column { + @apply flex flex-col gap-2 p-1 + } + .tab-accordion-badge-div { + @apply flex flex-1 items-center justify-between py-4 text-sm font-normal text-muted-foreground transition-all + } + .eraser-column-arrangement { + @apply flex-max-width flex-1 flex-col + } + .eraser-size { + @apply relative flex h-full w-full flex-col rounded-md border bg-muted + } + .eraser-position { + @apply absolute right-3 top-3 z-50 + } + .chat-message-div { + @apply flex-max-width h-full flex-col items-center overflow-scroll scrollbar-hide + } + .chat-alert-box { + @apply flex-max-width h-full flex-col items-center justify-center text-center align-middle + } + .langflow-chat-span { + @apply text-lg text-gray-600 dark:text-gray-300 + } + .langflow-chat-desc { + @apply w-2/4 rounded-md border border-gray-200 bg-muted px-6 py-8 dark:border-gray-700 dark:bg-gray-900 + } + .langflow-chat-desc-span { + @apply text-base text-gray-500 + } + .langflow-chat-input-div { + @apply flex-max-width flex-col items-center justify-between px-8 pb-6 + } + .langflow-chat-input { + @apply relative w-full rounded-md shadow-sm + } + } \ No newline at end of file diff --git a/src/frontend/src/modals/formModal/chatInput/index.tsx b/src/frontend/src/modals/formModal/chatInput/index.tsx index f5eeed885..5bc694fa6 100644 --- a/src/frontend/src/modals/formModal/chatInput/index.tsx +++ b/src/frontend/src/modals/formModal/chatInput/index.tsx @@ -50,16 +50,16 @@ export default function ChatInput({ }} className={classNames( lockChat - ? " bg-input text-black dark:bg-gray-700 dark:text-gray-300" - : " bg-white-200 text-black dark:bg-gray-900 dark:text-gray-300", - "form-input block w-full rounded-md border-gray-300 p-4 pr-16 custom-scroll dark:border-gray-600 sm:text-sm" + ? " form-modal-lock-true" + : " form-modal-lock-false", + "form-modal-lockchat" )} placeholder={"Send a message..."} /> -
+
+
- - - - - - + + ); } From 1294efc5dbd57cd39f3f944bea4aee035c5cb5a4 Mon Sep 17 00:00:00 2001 From: Cristhian Zanforlin Lousa Date: Fri, 7 Jul 2023 20:05:29 -0300 Subject: [PATCH 009/135] =?UTF-8?q?=F0=9F=90=9B=20fix(inputComponent):=20f?= =?UTF-8?q?ix=20padding=20issue=20in=20password=20input=20field?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The padding issue in the password input field was causing the text to be clipped. The issue was resolved by adjusting the padding classes based on the editNode and password conditions. --- src/frontend/src/components/inputComponent/index.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/frontend/src/components/inputComponent/index.tsx b/src/frontend/src/components/inputComponent/index.tsx index 8fab85c74..a925db54b 100644 --- a/src/frontend/src/components/inputComponent/index.tsx +++ b/src/frontend/src/components/inputComponent/index.tsx @@ -42,7 +42,8 @@ export default function InputComponent({ disabled ? " input-disable " : "", password && !pwdVisible && myValue !== "" ? " password text-clip " : "", editNode ? " input-edit-node " : " input-primary ", - password && editNode ? "pr-8" : "pr-10" + password && editNode ? "pr-8" : "", + password && !editNode ? "pr-10" : "" )} placeholder={password && editNode ? "Key" : "Type something..."} onChange={(e) => { From 4045d233c7006378f8d35495d96e28607fa53123 Mon Sep 17 00:00:00 2001 From: Cristhian Zanforlin Lousa Date: Fri, 7 Jul 2023 20:55:56 -0300 Subject: [PATCH 010/135] =?UTF-8?q?=F0=9F=90=9B=20fix(parameterComponent/i?= =?UTF-8?q?ndex.tsx):=20remove=20unused=20useState=20and=20useEffect=20dep?= =?UTF-8?q?endencies=20to=20improve=20code=20readability=20=F0=9F=90=9B=20?= =?UTF-8?q?fix(EditNodeModal/index.tsx):=20remove=20unused=20useState=20an?= =?UTF-8?q?d=20useEffect=20dependencies=20to=20improve=20code=20readabilit?= =?UTF-8?q?y?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/parameterComponent/index.tsx | 13 ++++++------- src/frontend/src/modals/EditNodeModal/index.tsx | 4 +--- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx index 40015024d..2e6d694f7 100644 --- a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx +++ b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx @@ -47,6 +47,7 @@ export default function ParameterComponent({ const { closePopUp } = useContext(PopUpContext); const { setTabsState, tabId, save } = useContext(TabsContext); + useEffect(() => { if (ref.current && ref.current.offsetTop && ref.current.clientHeight) { setPosition(ref.current.offsetTop + ref.current.clientHeight / 2); @@ -58,11 +59,11 @@ export default function ParameterComponent({ updateNodeInternals(data.id); }, [data.id, position, updateNodeInternals]); - const [enabled, setEnabled] = useState( - data.node.template[name]?.value ?? false - ); - useEffect(() => {}, [closePopUp, data.node.template]); + useEffect(() => { + + }, [closePopUp, data.node.template]); + const { reactFlowInstance } = useContext(typesContext); let disabled = @@ -239,12 +240,10 @@ export default function ParameterComponent({
{ handleOnNewValue(t); - setEnabled(t); }} - size="large" />
diff --git a/src/frontend/src/modals/EditNodeModal/index.tsx b/src/frontend/src/modals/EditNodeModal/index.tsx index 7bf8f54df..47e0db079 100644 --- a/src/frontend/src/modals/EditNodeModal/index.tsx +++ b/src/frontend/src/modals/EditNodeModal/index.tsx @@ -55,7 +55,6 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) { const { closePopUp } = useContext(PopUpContext); const { types } = useContext(typesContext); const ref = useRef(); - const [enabled, setEnabled] = useState(null); const { setTabsState, tabId, save } = useContext(TabsContext); const { reactFlowInstance } = useContext(typesContext); @@ -202,10 +201,9 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) { {" "} { handleOnNewValue(t, n); - setEnabled(t); }} size="small" /> From 224fd4fef784f5c3840fdc6677c8fc49531b71bd Mon Sep 17 00:00:00 2001 From: anovazzi1 Date: Fri, 7 Jul 2023 21:23:49 -0300 Subject: [PATCH 011/135] bug fix text overlay --- src/frontend/src/modals/chatModal/chatMessage/index.tsx | 4 ++-- src/frontend/src/modals/formModal/chatMessage/index.tsx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/frontend/src/modals/chatModal/chatMessage/index.tsx b/src/frontend/src/modals/chatModal/chatMessage/index.tsx index 5e130015a..f90396198 100644 --- a/src/frontend/src/modals/chatModal/chatMessage/index.tsx +++ b/src/frontend/src/modals/chatModal/chatMessage/index.tsx @@ -10,8 +10,8 @@ import AiIcon from "../../../assets/Gooey Ring-5s-271px.svg"; import AiIconStill from "../../../assets/froze-flow.png"; import { ChatMessageType } from "../../../types/chat"; import { classNames } from "../../../utils"; -import FileCard from "../fileComponent"; -import { CodeBlock } from "./codeBlock"; +import { CodeBlock } from "../../formModal/chatMessage/codeBlock"; +import FileCard from "../../formModal/fileComponent"; export default function ChatMessage({ chat, lockChat, diff --git a/src/frontend/src/modals/formModal/chatMessage/index.tsx b/src/frontend/src/modals/formModal/chatMessage/index.tsx index af3388596..2b0adb1e7 100644 --- a/src/frontend/src/modals/formModal/chatMessage/index.tsx +++ b/src/frontend/src/modals/formModal/chatMessage/index.tsx @@ -50,7 +50,7 @@ export default function ChatMessage({ {!chat.isSend ? (
-
+
{hidden && chat.thought && chat.thought !== "" && (
setHidden((prev) => !prev)} From 8cca9ce495069149d0d67e3afb3127b71dbd2935 Mon Sep 17 00:00:00 2001 From: anovazzi1 Date: Fri, 7 Jul 2023 21:26:14 -0300 Subject: [PATCH 012/135] refactor(parameterComponent): remove unnecessary empty line in ParameterComponent refactor(parameterComponent): remove unused useEffect dependency in ParameterComponent refactor(inputComponent): reformat classNames in InputComponent for better readability refactor(EditNodeModal): remove unused imports in EditNodeModal refactor(EditNodeModal): reformat disabled variable assignment in EditNodeModal for better readability refactor(EditNodeModal): remove unnecessary empty lines in EditNodeModal refactor(EditNodeModal): reformat handleOnNewValue function call in EditNodeModal for better readability refactor(chatMessage): remove unnecessary empty line in ChatMessage component refactor(chatMessage): remove unnecessary inline-block class in ChatMessage component --- .../components/parameterComponent/index.tsx | 7 +------ src/frontend/src/components/inputComponent/index.tsx | 4 +++- src/frontend/src/modals/EditNodeModal/index.tsx | 11 +++++------ .../src/modals/formModal/chatMessage/index.tsx | 2 +- 4 files changed, 10 insertions(+), 14 deletions(-) diff --git a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx index 2e6d694f7..caa14975f 100644 --- a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx +++ b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx @@ -47,7 +47,6 @@ export default function ParameterComponent({ const { closePopUp } = useContext(PopUpContext); const { setTabsState, tabId, save } = useContext(TabsContext); - useEffect(() => { if (ref.current && ref.current.offsetTop && ref.current.clientHeight) { setPosition(ref.current.offsetTop + ref.current.clientHeight / 2); @@ -59,11 +58,7 @@ export default function ParameterComponent({ updateNodeInternals(data.id); }, [data.id, position, updateNodeInternals]); - - useEffect(() => { - - }, [closePopUp, data.node.template]); - + useEffect(() => {}, [closePopUp, data.node.template]); const { reactFlowInstance } = useContext(typesContext); let disabled = diff --git a/src/frontend/src/components/inputComponent/index.tsx b/src/frontend/src/components/inputComponent/index.tsx index a925db54b..8da5c428e 100644 --- a/src/frontend/src/components/inputComponent/index.tsx +++ b/src/frontend/src/components/inputComponent/index.tsx @@ -40,7 +40,9 @@ export default function InputComponent({ }} className={classNames( disabled ? " input-disable " : "", - password && !pwdVisible && myValue !== "" ? " password text-clip " : "", + password && !pwdVisible && myValue !== "" + ? " text-clip password " + : "", editNode ? " input-edit-node " : " input-primary ", password && editNode ? "pr-8" : "", password && !editNode ? "pr-10" : "" diff --git a/src/frontend/src/modals/EditNodeModal/index.tsx b/src/frontend/src/modals/EditNodeModal/index.tsx index 47e0db079..940196552 100644 --- a/src/frontend/src/modals/EditNodeModal/index.tsx +++ b/src/frontend/src/modals/EditNodeModal/index.tsx @@ -1,5 +1,5 @@ import { Variable } from "lucide-react"; -import { useContext, useEffect, useRef, useState } from "react"; +import { useContext, useRef, useState } from "react"; import CodeAreaComponent from "../../components/codeAreaComponent"; import Dropdown from "../../components/dropdownComponent"; import FloatComponent from "../../components/floatComponent"; @@ -21,7 +21,6 @@ import { DialogTitle, DialogTrigger, } from "../../components/ui/dialog"; -import { TabsContext } from "../../contexts/tabsContext"; import { Table, TableBody, @@ -31,6 +30,7 @@ import { TableRow, } from "../../components/ui/table"; import { PopUpContext } from "../../contexts/popUpContext"; +import { TabsContext } from "../../contexts/tabsContext"; import { typesContext } from "../../contexts/typesContext"; import { NodeDataType } from "../../types/flow"; import { classNames, limitScrollFieldsModal } from "../../utils"; @@ -59,7 +59,8 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) { const { reactFlowInstance } = useContext(typesContext); let disabled = - reactFlowInstance?.getEdges().some((e) => e.targetHandle === data.id) ?? false; + reactFlowInstance?.getEdges().some((e) => e.targetHandle === data.id) ?? + false; if (nodeLength == 0) { closePopUp(); } @@ -226,9 +227,7 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) { numberOfOptions={nodeLength} editNode={true} options={data.node.template[n].options} - onSelect={(t) => - (handleOnNewValue(t, n)) - } + onSelect={(t) => handleOnNewValue(t, n)} value={ data.node.template[n].value ?? "Choose an option" diff --git a/src/frontend/src/modals/formModal/chatMessage/index.tsx b/src/frontend/src/modals/formModal/chatMessage/index.tsx index 2b0adb1e7..c02124445 100644 --- a/src/frontend/src/modals/formModal/chatMessage/index.tsx +++ b/src/frontend/src/modals/formModal/chatMessage/index.tsx @@ -50,7 +50,7 @@ export default function ChatMessage({
{!chat.isSend ? (
-
+
{hidden && chat.thought && chat.thought !== "" && (
setHidden((prev) => !prev)} From 2a34f725fc0c579ddb2a08baef8036bb0a10dff6 Mon Sep 17 00:00:00 2001 From: Lucas Oliveira Date: Fri, 7 Jul 2023 23:48:21 -0300 Subject: [PATCH 013/135] Added Tooltip Wrapper inside context wrappers to show tooltip on top of every node --- .../components/ShadTooltipComponent/index.tsx | 31 ++++++---------- src/frontend/src/contexts/index.tsx | 37 ++++++++++--------- .../modals/formModal/chatMessage/index.tsx | 2 +- 3 files changed, 33 insertions(+), 37 deletions(-) diff --git a/src/frontend/src/components/ShadTooltipComponent/index.tsx b/src/frontend/src/components/ShadTooltipComponent/index.tsx index 3fe82afd7..58aec630b 100644 --- a/src/frontend/src/components/ShadTooltipComponent/index.tsx +++ b/src/frontend/src/components/ShadTooltipComponent/index.tsx @@ -1,10 +1,5 @@ import { ShadToolTipType } from "../../types/components"; -import { - Tooltip, - TooltipContent, - TooltipProvider, - TooltipTrigger, -} from "../ui/tooltip"; +import { Tooltip, TooltipContent, TooltipTrigger } from "../ui/tooltip"; export default function ShadTooltip({ content, @@ -15,19 +10,17 @@ export default function ShadTooltip({ delayDuration = 500, }: ShadToolTipType) { return ( - - - {children} + + {children} - - {content} - - - + + {content} + + ); } diff --git a/src/frontend/src/contexts/index.tsx b/src/frontend/src/contexts/index.tsx index 13771673c..70b7da07c 100644 --- a/src/frontend/src/contexts/index.tsx +++ b/src/frontend/src/contexts/index.tsx @@ -1,5 +1,6 @@ import { ReactNode } from "react"; import { ReactFlowProvider } from "reactflow"; +import { TooltipProvider } from "../components/ui/tooltip"; import { SSEProvider } from "./SSEContext"; import { AlertProvider } from "./alertContext"; import { DarkProvider } from "./darkContext"; @@ -13,23 +14,25 @@ export default function ContextWrapper({ children }: { children: ReactNode }) { //element to wrap all context return ( <> - - - - - - - - - {children} - - - - - - - - + + + + + + + + + + {children} + + + + + + + + + ); } diff --git a/src/frontend/src/modals/formModal/chatMessage/index.tsx b/src/frontend/src/modals/formModal/chatMessage/index.tsx index c02124445..6cc42cac4 100644 --- a/src/frontend/src/modals/formModal/chatMessage/index.tsx +++ b/src/frontend/src/modals/formModal/chatMessage/index.tsx @@ -54,7 +54,7 @@ export default function ChatMessage({ {hidden && chat.thought && chat.thought !== "" && (
setHidden((prev) => !prev)} - className="absolute -left-8 -top-3 cursor-pointer" + className="absolute -left-6 -top-3 cursor-pointer" >
From eb5a315b078e8c023b4261b8767790f3035a8253 Mon Sep 17 00:00:00 2001 From: Lucas Oliveira Date: Sat, 8 Jul 2023 00:06:30 -0300 Subject: [PATCH 014/135] Fixed bug of DOM nesting showing on console.log --- .../headerComponent/components/menuBar/index.tsx | 15 ++++++--------- src/frontend/src/index.css | 2 +- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/frontend/src/components/headerComponent/components/menuBar/index.tsx b/src/frontend/src/components/headerComponent/components/menuBar/index.tsx index a1536f13d..b362307e7 100644 --- a/src/frontend/src/components/headerComponent/components/menuBar/index.tsx +++ b/src/frontend/src/components/headerComponent/components/menuBar/index.tsx @@ -14,7 +14,6 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, - DropdownMenuSeparator, DropdownMenuTrigger, } from "../../../ui/dropdown-menu"; @@ -52,13 +51,11 @@ export const MenuBar = ({ flows, tabId }) => {
- @@ -99,7 +96,7 @@ export const MenuBar = ({ flows, tabId }) => { Redo - + {/* */} {/* Projects */} {/* Date: Sat, 8 Jul 2023 00:10:44 -0300 Subject: [PATCH 015/135] Fixed bugfix for ace --- src/frontend/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/frontend/index.html b/src/frontend/index.html index 426983565..8c21f0124 100644 --- a/src/frontend/index.html +++ b/src/frontend/index.html @@ -5,7 +5,7 @@ - + Langflow From db990f2472d73f19f9e6de80a0ef0d69eeba24f9 Mon Sep 17 00:00:00 2001 From: Lucas Oliveira Date: Sat, 8 Jul 2023 00:12:04 -0300 Subject: [PATCH 016/135] Assertion on onMove function on reactflow --- .../pages/FlowPage/components/PageComponent/index.tsx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/frontend/src/pages/FlowPage/components/PageComponent/index.tsx b/src/frontend/src/pages/FlowPage/components/PageComponent/index.tsx index 51c84580e..65ae72178 100644 --- a/src/frontend/src/pages/FlowPage/components/PageComponent/index.tsx +++ b/src/frontend/src/pages/FlowPage/components/PageComponent/index.tsx @@ -371,10 +371,11 @@ export default function Page({ flow }: { flow: FlowType }) { { - updateFlow({ - ...flow, - data: reactFlowInstance.toObject(), - }); + if (reactFlowInstance) + updateFlow({ + ...flow, + data: reactFlowInstance.toObject(), + }); }} edges={edges} onPaneClick={() => { From 6a04fabced516f7cd5a57f6d295c08cf9163e9fd Mon Sep 17 00:00:00 2001 From: Lucas Oliveira Date: Sat, 8 Jul 2023 00:16:22 -0300 Subject: [PATCH 017/135] Fixed DOM Nesting error on EditNodeModal --- src/frontend/src/modals/EditNodeModal/index.tsx | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/frontend/src/modals/EditNodeModal/index.tsx b/src/frontend/src/modals/EditNodeModal/index.tsx index 940196552..2c2191ed4 100644 --- a/src/frontend/src/modals/EditNodeModal/index.tsx +++ b/src/frontend/src/modals/EditNodeModal/index.tsx @@ -105,11 +105,13 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) { {data.type} ID: {data.id} - - {data.node?.description} -
- - Parameters + +
+ {data.node?.description} +
+ + Parameters +
From bdd39a506a2f7e37fddb315c46b9d66d8be56bd7 Mon Sep 17 00:00:00 2001 From: Rodrigo Nader Date: Sat, 8 Jul 2023 01:33:12 -0300 Subject: [PATCH 018/135] feat(css): Update styles for chat thought and initial prompt This commit updates the styles for the chat thought and initial prompt components in the frontend. The changes include modifying the border color to use a custom ring color, adjusting the padding and margin, and updating the text size and color. Additionally, the label for the "Initial Prompt" button has been changed to "Display Prompt" for clarity. --- src/frontend/src/index.css | 6 +++--- src/frontend/src/modals/formModal/chatMessage/index.tsx | 2 +- src/frontend/src/modals/formModal/index.tsx | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/frontend/src/index.css b/src/frontend/src/index.css index 428bd6d7c..261e783bf 100644 --- a/src/frontend/src/index.css +++ b/src/frontend/src/index.css @@ -968,19 +968,19 @@ The cursor: default; property value restores the browser's default cursor style @apply h-4 w-4 animate-bounce dark:text-white } .form-modal-chat-thought-border { - @apply rounded-md border border-gray-300 + @apply rounded-md border border-ring/60 } .form-modal-chat-thought-size { @apply inline-block h-full w-[95%] } .form-modal-chat-thought { - @apply ml-3 cursor-pointer overflow-scroll bg-muted px-2 text-start text-primary scrollbar-hide dark:border-gray-500 dark:bg-gray-800 form-modal-chat-thought-border form-modal-chat-thought-size + @apply cursor-pointer overflow-scroll bg-background text-start text-primary scrollbar-hide form-modal-chat-thought-border form-modal-chat-thought-size py-2 px-2 } .form-modal-markdown-span { @apply mt-1 animate-pulse cursor-default } .form-modal-initial-prompt-btn { - @apply mb-2 flex items-center gap-4 rounded-md border border-ring/60 bg-background px-4 py-2 text-base font-semibold + @apply mb-2 flex items-center gap-2 rounded-md border border-border bg-background shadow-sm px-4 py-2 text-sm font-semibold } .form-modal-iv-box { @apply mt-2 flex-max-width h-[80vh] diff --git a/src/frontend/src/modals/formModal/chatMessage/index.tsx b/src/frontend/src/modals/formModal/chatMessage/index.tsx index ccaaa2227..091dacfe5 100644 --- a/src/frontend/src/modals/formModal/chatMessage/index.tsx +++ b/src/frontend/src/modals/formModal/chatMessage/index.tsx @@ -138,7 +138,7 @@ export default function ChatMessage({ setPromptOpen((old) => !old); }} > - Initial Prompt + Display Prompt
- Used as Memory Key + Used as memory key
))} From b1a58a76b88c9b7dc1bd3faddfafe2e74c674158 Mon Sep 17 00:00:00 2001 From: Lucas Oliveira Date: Sat, 8 Jul 2023 06:44:03 -0300 Subject: [PATCH 019/135] Fixed chat thought always showing --- src/frontend/src/modals/formModal/chatMessage/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/frontend/src/modals/formModal/chatMessage/index.tsx b/src/frontend/src/modals/formModal/chatMessage/index.tsx index 091dacfe5..48aaf635b 100644 --- a/src/frontend/src/modals/formModal/chatMessage/index.tsx +++ b/src/frontend/src/modals/formModal/chatMessage/index.tsx @@ -48,7 +48,7 @@ export default function ChatMessage({ {!chat.isSend ? (
- {hidden && ( + {hidden && chat.thought && chat.thought !== "" && (
setHidden((prev) => !prev)} className="form-modal-chat-icon-div" From 7dcaf709da90ebde5778511416c8a9225cf81d25 Mon Sep 17 00:00:00 2001 From: Cristhian Zanforlin Lousa Date: Sat, 8 Jul 2023 08:38:08 -0300 Subject: [PATCH 020/135] =?UTF-8?q?=F0=9F=90=9B=20fix(chatMessage/index.ts?= =?UTF-8?q?x):=20add=20optional=20chaining=20to=20template.split()=20to=20?= =?UTF-8?q?handle=20cases=20where=20template=20is=20null=20or=20undefined?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/frontend/src/modals/formModal/chatMessage/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/frontend/src/modals/formModal/chatMessage/index.tsx b/src/frontend/src/modals/formModal/chatMessage/index.tsx index 48aaf635b..881395338 100644 --- a/src/frontend/src/modals/formModal/chatMessage/index.tsx +++ b/src/frontend/src/modals/formModal/chatMessage/index.tsx @@ -147,7 +147,7 @@ export default function ChatMessage({ {promptOpen - ? template.split("\n").map((line, index) => { + ? template?.split("\n")?.map((line, index) => { const regex = /{([^}]+)}/g; let match; let parts = []; From 4883064e84c23c0e5cd524cfb66f5fd40cd3d9c3 Mon Sep 17 00:00:00 2001 From: Cristhian Zanforlin Lousa Date: Sat, 8 Jul 2023 09:12:24 -0300 Subject: [PATCH 021/135] =?UTF-8?q?=F0=9F=90=9B=20fix(alerts/error):=20rem?= =?UTF-8?q?ove=20unnecessary=20line=20break=20in=20ErrorAlert=20component?= =?UTF-8?q?=20=E2=9C=A8=20feat(modals/EditNodeModal):=20add=20ability=20to?= =?UTF-8?q?=20set=20nodeClass=20in=20EditNodeModal=20component=20?= =?UTF-8?q?=F0=9F=90=9B=20fix(modals/genericModal):=20handle=20optional=20?= =?UTF-8?q?chaining=20for=20error=20response=20data=20in=20GenericModal=20?= =?UTF-8?q?component=20=F0=9F=94=A5=20chore(modals/promptModal):=20remove?= =?UTF-8?q?=20unused=20import=20and=20checkPrompt=20function=20in=20Prompt?= =?UTF-8?q?AreaModal=20component?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/frontend/src/alerts/error/index.tsx | 3 +- .../src/modals/EditNodeModal/index.tsx | 4 +++ .../src/modals/genericModal/index.tsx | 2 +- src/frontend/src/modals/promptModal/index.tsx | 31 ------------------- 4 files changed, 7 insertions(+), 33 deletions(-) diff --git a/src/frontend/src/alerts/error/index.tsx b/src/frontend/src/alerts/error/index.tsx index ed395018e..dd3f4bba7 100644 --- a/src/frontend/src/alerts/error/index.tsx +++ b/src/frontend/src/alerts/error/index.tsx @@ -20,6 +20,7 @@ export default function ErrorAlert({ }, 5000); } }, [id, removeAlert, show]); + return (

{title}

- {list.length !== 0 ? ( + {list?.length !== 0 && list?.some(item => item !== null && item !== undefined) ? (
    {list.map((item, index) => ( diff --git a/src/frontend/src/modals/EditNodeModal/index.tsx b/src/frontend/src/modals/EditNodeModal/index.tsx index 2c2191ed4..130241ad2 100644 --- a/src/frontend/src/modals/EditNodeModal/index.tsx +++ b/src/frontend/src/modals/EditNodeModal/index.tsx @@ -269,6 +269,10 @@ export default function EditNodeModal({ data }: { data: NodeDataType }) { field_name={n} editNode={true} disabled={false} + nodeClass={data.node} + setNodeClass={(nodeClass) => { + data.node = nodeClass; + }} value={data.node.template[n].value ?? ""} onChange={(t: string) => { handleOnNewValue(t, n); diff --git a/src/frontend/src/modals/genericModal/index.tsx b/src/frontend/src/modals/genericModal/index.tsx index ba3fb672f..9eb714c9b 100644 --- a/src/frontend/src/modals/genericModal/index.tsx +++ b/src/frontend/src/modals/genericModal/index.tsx @@ -162,7 +162,7 @@ export default function GenericModal({ setIsEdit(true); return setErrorData({ title: "There is something wrong with this prompt, please review it", - list: [error.response.data.detail], + list: [error?.response?.data?.detail], }); }); } diff --git a/src/frontend/src/modals/promptModal/index.tsx b/src/frontend/src/modals/promptModal/index.tsx index 54fd46528..a1b3aa4ba 100644 --- a/src/frontend/src/modals/promptModal/index.tsx +++ b/src/frontend/src/modals/promptModal/index.tsx @@ -4,7 +4,6 @@ import { Fragment, useContext, useRef, useState } from "react"; import { alertContext } from "../../contexts/alertContext"; import { darkContext } from "../../contexts/darkContext"; import { PopUpContext } from "../../contexts/popUpContext"; -import { checkPrompt } from "../../controllers/API"; export default function PromptAreaModal({ value, setValue, @@ -105,36 +104,6 @@ export default function PromptAreaModal({ type="button" className="node-modal-button" onClick={() => { - checkPrompt(myValue) - .then((apiReturn) => { - if (apiReturn.data) { - let inputVariables = - apiReturn.data.input_variables; - if (inputVariables.length === 0) { - setErrorData({ - title: - "The template you are attempting to use does not contain any variables for data entry.", - }); - } else { - setSuccessData({ - title: "Prompt is ready", - }); - setModalOpen(false); - setValue(myValue); - } - } else { - setErrorData({ - title: "Something went wrong, please try again", - }); - } - }) - .catch((error) => { - return setErrorData({ - title: - "There is something wrong with this prompt, please review it", - list: [error.response.data.detail], - }); - }); }} > Check & Save From df7b3bb6537bfa65e4e97802064ae819f4cd442b Mon Sep 17 00:00:00 2001 From: Cristhian Zanforlin Lousa Date: Sat, 8 Jul 2023 09:13:35 -0300 Subject: [PATCH 022/135] =?UTF-8?q?=F0=9F=94=A5=20refactor(promptModal):?= =?UTF-8?q?=20remove=20unused=20code=20and=20dependencies=20to=20improve?= =?UTF-8?q?=20code=20cleanliness=20and=20reduce=20bundle=20size=20?= =?UTF-8?q?=F0=9F=94=A5=20refactor(textAreaModal):=20remove=20unused=20cod?= =?UTF-8?q?e=20and=20dependencies=20to=20improve=20code=20cleanliness=20an?= =?UTF-8?q?d=20reduce=20bundle=20size?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/frontend/src/modals/promptModal/index.tsx | 120 ----------------- .../src/modals/textAreaModal/index.tsx | 121 ------------------ 2 files changed, 241 deletions(-) delete mode 100644 src/frontend/src/modals/promptModal/index.tsx delete mode 100644 src/frontend/src/modals/textAreaModal/index.tsx diff --git a/src/frontend/src/modals/promptModal/index.tsx b/src/frontend/src/modals/promptModal/index.tsx deleted file mode 100644 index a1b3aa4ba..000000000 --- a/src/frontend/src/modals/promptModal/index.tsx +++ /dev/null @@ -1,120 +0,0 @@ -import { Dialog, Transition } from "@headlessui/react"; -import { DocumentTextIcon, XMarkIcon } from "@heroicons/react/24/outline"; -import { Fragment, useContext, useRef, useState } from "react"; -import { alertContext } from "../../contexts/alertContext"; -import { darkContext } from "../../contexts/darkContext"; -import { PopUpContext } from "../../contexts/popUpContext"; -export default function PromptAreaModal({ - value, - setValue, -}: { - setValue: (value: string) => void; - value: string; -}) { - const [open, setOpen] = useState(true); - const [myValue, setMyValue] = useState(value); - const { dark } = useContext(darkContext); - const { setErrorData, setSuccessData } = useContext(alertContext); - const { closePopUp, setCloseEdit } = useContext(PopUpContext); - const ref = useRef(); - function setModalOpen(x: boolean) { - setOpen(x); - if (x === false) { - setTimeout(() => { - setCloseEdit("prompt"); - closePopUp(); - }, 300); - } - } - return ( - - - -
    - - -
    -
    - - -
    - -
    -
    -
    -
    -
    -
    - - Edit Prompt - -
    -
    -
    -
    -
    -