This pull request addresses a bug related to WebSocket functionality
that was causing an empty error to be displayed. The bug resulted in
incorrect error-handling behavior within the WebSocket implementation,
leading to confusion and difficulties in identifying and resolving
issues.
By addressing this bug and improving the WebSocket error handling
mechanism, this pull request significantly enhances the overall
stability and reliability of the application.
The VertexAIIcon component is added to the icons directory, allowing the usage of the Vertex AI icon in the application. The nodeIconsLucide object in the utils.ts file is updated to include the VertexAI and ChatVertexAI icons, enabling their usage in the application. This addition enhances the visual representation of the application by providing new icons related to Vertex AI functionality.
fix(alertContext.tsx): set the error, notice, and success data states before opening the respective alerts
feat(chatModal/index.tsx): add error handling for websocket connection and check backend health before reconnecting
🐛 fix(codeAreaComponent): fix formatting and add missing semicolons to improve code readability and maintainability
🐛 fix(dropdownComponent): fix formatting and add missing semicolons to improve code readability and maintainability
🐛 fix(floatComponent): fix formatting and add missing semicolons to improve code readability and maintainability
🐛 fix(inputFileComponent): fix formatting and add missing semicolons to improve code readability and maintainability
🐛 fix(inputListComponent): fix formatting and add missing semicolons to improve code readability and maintainability
🐛 fix(intComponent): fix formatting and add missing semicolons to improve code readability and maintainability
🐛 fix(promptComponent): fix formatting and add missing semicolons to improve code readability and maintainability
🐛 fix(textAreaComponent): fix formatting and add missing semicolons to improve code readability and maintainability
🐛 fix(ui/accordion.tsx): fix formatting and add missing semicolons to improve code readability and maintainability
The changes were made to fix formatting issues and add missing semicolons in the code. This improves code readability and maintainability, making it easier for developers to understand and work with the code.
🐛 fix(constants.tsx): fix formatting and indentation issues in the buildTweakObject function
🐛 fix(popUpContext.tsx): remove unnecessary empty line
🐛 fix(tabsContext.tsx): remove unnecessary empty line
🐛 fix(ApiModal/index.tsx): fix formatting and indentation issues
🐛 fix(codeAreaModal/index.tsx): fix formatting and indentation issues
🐛 fix(types/components/index.ts): remove unnecessary empty line
The changes in constants.tsx fix formatting and indentation issues in the buildTweakObject function to improve code readability. The changes in popUpContext.tsx, tabsContext.tsx, ApiModal/index.tsx, codeAreaModal/index.tsx, and types/components/index.ts fix formatting and indentation issues to ensure consistent code style.
The color code for the "retrievers" category in the nodeColors object has been updated from "#F5B85A" to "#e6b25a". This change was made to ensure consistency and improve the visual representation of the "retrievers" category.
🐛 fix(constants.tsx): refactor getCurlCode and getPythonCode to use buildTweakObject function for generating tweak object
🐛 fix(ApiModal): update logic for opening accordions based on tweak.current length and closeEdit value
✨ feat(AccordionComponent): add support for multiple open accordions by changing the open prop from boolean to string array
🐛 fix(constants.tsx): remove escape characters from the JSON stringified tweaks to fix parsing issues
✨ feat(constants.tsx): add support for tweaks dictionary in the getCurlCode and getPythonCode functions
🐛 fix(ApiModal): fix the logic to set the initial value of the openAccordion state based on the getTweak array
✨ feat(ApiModal): add support for opening accordions based on the getTweak array when switching to the Tweak tab
🐛 fix(ApiModal): fix the logic to filter and remove empty tweaks from the tweak.current array
✨ feat(ApiModal): add support for adding new tweaks to the tweak.current array and generating Python API code
🐛 fix(ApiModal): fix the logic to get the value of a specific tweak template based on the node id and template name
✨ feat(ApiModal): add support for opening accordions based on the tweak.current array when switching to the Tweak tab
🐛 fix(types): add missing newline at the end of the file
✨ feat(chatMessage): improve rendering of multi-line messages
The `convert` variable is now imported before being used to convert ANSI to HTML. Additionally, the `DOMPurify` library is imported and used to sanitize the HTML content before rendering it, preventing potential XSS attacks. The rendering of multi-line messages has been improved by splitting the message by newline characters and rendering each line separately with a line break.
The dompurify package is added as a dependency to the frontend package.json file. This package is needed for sanitizing HTML to prevent cross-site scripting (XSS) attacks.
The Search icon has been renamed to FileSearch to provide a more accurate representation of its purpose. This change improves clarity and ensures that the icon name aligns with its actual functionality.
💄 style(NodeModal): remove unused import and variable to clean up code
The import and variable name for `nodeIconsLucide` has been updated to improve code readability. The unused import and variable `nodeIcons` and `toNormalCase` have been removed to clean up the code.
🎨 style(utils.ts): reorganize nodeColors and nodeNames objects to improve readability and maintainability
The changes in this commit remove unused imports and icons from the `utils.ts` file, which helps improve code cleanliness and reduces the bundle size. Additionally, the `nodeColors` and `nodeNames` objects have been reorganized to improve readability and maintainability.
The unnecessary imports have been removed from the chat.py file to improve code cleanliness and readability. The init_build endpoint in the chat.py file has been updated to include the flow_id as a path parameter instead of extracting it from the graph_data dictionary. This change allows for a more explicit and consistent API design.
🔧 chore(chat.py): remove unnecessary imports and reformat code for better readability
✨ feat(ApiModal/index.tsx): add functionality to filter nodes and display only nodes with certain types in the tweaks list
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the tweaks list not updating when the flow changes
🐛 fix(ApiModal/index.tsx): fix issue with the
🐛 fix(codeAreaModal): fix closePopUp function call placement to ensure proper functionality
🐛 fix(genericModal): set closeEdit value to "generic" to fix issue with closing the modal
✨ feat(AccordionComponent/index.tsx): add support for opening and closing accordion items on click
🔧 fix(popUpContext.tsx): add missing semicolon and fix formatting
✨ feat(popUpContext.tsx): add closeEdit state and setCloseEdit function to manage closing edit pop-up
🐛 fix(ApiModal/index.tsx): add missing dependencies to useEffect to prevent stale data
✨ feat(ApiModal/index.tsx): add support for opening and closing accordion when there are tweaks present
🔧 chore(ApiModal/index.tsx): refactor getValue function to improve readability and maintainability
🔧 chore(ApiModal/index.tsx): refactor buildContent function to improve readability and maintainability
🔧 chore(ApiModal/index.tsx): refactor buildTweakObject function to improve readability and maintainability
🔧 chore(ApiModal/index.tsx): refactor onChange functions to improve readability and maintainability
🔧 chore(ApiModal/index.tsx): refactor value props to improve readability and maintainability
🔧 fix(codeAreaModal): add setCloseEdit function to PopUpContext to handle closing editcode
🔧 fix(promptModal): add setCloseEdit function to PopUpContext to handle closing prompt
🔧 fix(textAreaModal): add setCloseEdit function to PopUpContext to handle closing textarea
🔧 fix(components): change value prop to open prop in AccordionComponentType for better semantics
✨ feat(tabsContext): add setTweak and getTweak functions to TabsContext to manage tweak state
🐛 fix(ApiModal): remove unused imports and console.log statements
✨ feat(ApiModal): add functionality to get and set tweak state in TabsContext
🐛 fix(ApiModal): fix key prop warning in map function
🐛 fix(ApiModal): fix unused variable warning
✨ feat(ApiModal): add getValue function to get the value from tweak state or default value
🐛 fix(ApiModal): remove unused onChange functions
🐛 fix(ApiModal): fix key prop warning in map function
🐛 fix(ApiModal): fix unused variable warning
✨ feat(ApiModal): add functionality to get and set tweak state in TabsContext
🐛 fix(ApiModal): remove unused imports and console.log statements
✨ feat(tabsContext): add setTweak and getTweak functions to TabsContext to manage tweak state
The noopener and noreferrer attributes were added to the documentation link to improve security by preventing the linked page from having access to the window.opener object and to prevent the referrer header from being sent to the linked page, respectively.
✨ feat(ApiModal): pass the tweak.current value to the getPythonApiCode, getCurlCode and getPythonCode functions to allow tweaking of the flow. Update the tabs with the new code after a tweak is added.
🐛 fix(nodeToolbarComponent): fix documentation link not working when no documentation is provided
The button colors and icons have been updated to improve visibility and consistency. The delete and copy buttons now have a darker background color when hovered over. The edit button now has a rounded right corner and a lighter background color when there are no nodes present. The documentation button now shows a "Coming Soon" tooltip when no documentation is provided and has a muted color. The documentation link now works correctly even when no documentation is provided.
The delayDuration prop was removed from all ShadTooltip components in the ExtraSidebar component. This improves the user experience by removing the delay before the tooltip is displayed.
The required indicator is now next to the title, which improves readability and makes it easier to see which parameters are required. The documentation tooltip has been simplified to only show the documentation link, which improves the user experience by reducing clutter. Unused imports have been removed to improve code quality.
🔨 refactor(parameterComponent): move required indicator next to title
The ShadTooltipComponent has been refactored to destructure the props and add types to improve readability and maintainability. The ShadTooltipProps type has been added to the types/components/index.ts file to define the expected props for the ShadTooltipComponent. The delayDuration, side, content, and children props are now destructured from the props object and have their respective types defined.
The ParameterComponent now has an info icon and tooltip to show additional information about the parameter. The GenericNode component now passes the info prop to the ParameterComponent to show the additional information. The ParameterComponentType has been refactored to include the info property.
🎨 style(parameterComponent): add info icon and tooltip to show additional information
🚀 feat(GenericNode): pass info prop to ParameterComponent to show additional information
🔧 refactor(tabsContext.tsx): add missing type annotations and improve code readability
🔧 refactor(ApiModal): improve code readability by adding a new line to a JSX element
🔧 refactor(EditNodeModal): remove unnecessary blank line in a JSX element
The tooltip now includes a link to the documentation of the node, which makes it more accessible and user-friendly. The link is now wrapped in the tooltip title, which improves the semantics of the code.
The import statement for the MidjourneyIcon was misspelled as MidjorneyIcon, which caused a runtime error. This commit fixes the typo by changing the import statement to MidjourneyIcon.
The import of Boxes and LayoutDashboard were removed as they were not being used in the file. New icons were added to nodeIconsLucide to improve the variety of icons available for use. The new icons added are MongoDBAtlasVectorSearch, Pinecone, and SupabaseVectorStore.
🔥 chore(utils.ts): remove unused import of Boxes and LayoutDashboard
The documentation link was previously always rendered, even if the href was empty. This caused an issue where the link would be clickable but lead to nowhere. The fix adds a conditional rendering to the link, so it is only rendered if the href is not empty.
The code has been refactored to improve readability by adding whitespace and consistent formatting. The function names have been updated to use camelCase for consistency. The updateDisplay_name function has been updated to use a logical OR operator instead of a ternary operator for better readability. The updateNodeDocumentation function has been added to update the node documentation. The updateNodeBaseClasses, updateNodeEdges, updateNodeDescription, and updateNodeTemplate functions have been updated to use consistent parameter names and whitespace.
🚀 feat(api/index.ts): add documentation field to APIClassType
The unused imports were removed to improve code readability. A documentation link was added to the node toolbar to allow users to easily access the documentation for the node. The documentation field was added to the APIClassType to allow for the storage of a link to the documentation for the API class.
🎨 style(GenericNode): change nodeIcons import to nodeIconsLucide to
match the new icon library
🎨 style(NodeModal): change Icon type to any to fix type error
🎨 style(chatInput): remove unnecessary array brackets
🎨 style(DisclosureComponent): change Icon size to 22 to match the new
icon library
🎨 style(extraSidebarComponent): change nodeIcons import to
nodeIconsLucide to match the new icon library and add Search icon
🎨 style(components/index): add SVGProps to import and change Icon type
to any to fix type error
✨ feat(utils.ts): add support for Lucide icons to be used in the app to
improve UI and UX.