feat: Improve flow creation and search functionality
Improve the flow creation and search functionality by adding explicit wait conditions for modals and search results. This ensures that the necessary elements are loaded before interacting with them, preventing potential errors or timeouts.
Refactor the code in the 'generalBugs-shard-8.spec.ts' file to include the following changes:
- Add a timeout of 3000ms for the modal title selector
- Add a timeout of 3000ms for the dataAPI request selector
These changes enhance the reliability and stability of the tests in the 'generalBugs-shard-8.spec.ts' file.
* fix: Improve test and add missing timeouts
The test in the generalBugs-shard-13.spec.ts file was improved to include missing timeouts for better stability and reliability.
* docs: enhance Google Cloud Vertex AI setup guide for Langflow
- Add detailed step-by-step instructions for creating a Google Cloud project
- Include instructions for creating and configuring a Service Account
- Add steps for generating and downloading a JSON key file
- Provide an example of the JSON key file structure
- Include instructions for enabling the Vertex AI API
- Add steps for configuring credentials in Langflow components
- Include relevant screenshots and GIFs to illustrate each step visually
- Improve overall clarity and completeness of the setup process
Co-authored-by: Vinícios Batista da Silva <vinicios.batsi@gmail.com>
* feat: Update Google Cloud Vertex AI integration documentation for clarity and structure
* remove-unused-images
* docs: update Google Cloud Vertex AI integration setup instructions
* docs: update Google Cloud Vertex AI integration setup instructions
---------
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
* 📝 (.github/changes-filter.yaml): Add new path to starter-projects test category
🔧 (index.tsx, inputFileComponent): Add data-testid attribute to input element for testing purposes
🔧 (index.tsx, popover): Increase padding-right value for password input field
🔧 (Vector Store.spec.ts): Update test to click on correct element with data-testid attribute for file upload
🔧 (Vector Store.spec.ts): Remove redundant code related to filling input field and clicking on button
* 🔧 (index.tsx): Update styles for inputComponent popover to improve layout and alignment.
* 📝 (openai.py): Update temperature slider range from 0-1 to 0-2 with step 0.01 for more precise control
📝 (sliderComponent/index.tsx): Update step value for slider component from 0.1 to 0.01 for smoother and more accurate adjustments
📝 (sliderComponent/index.tsx): Update MAX_LABEL from "Wild" to "Creative" for better semantic representation
📝 (sliderComponent/index.tsx): Add cursor-grabbing style when slider thumb is being grabbed to improve user experience
* 📝 (sliderComponent/index.tsx): improve styling and structure of the SliderComponent by refactoring the display value element to use a div container with appropriate classes and styles.
* 📝 (App.css): Add styles to hide spin buttons in input[type=number] elements for better UX
🔧 (sliderComponent/index.tsx): Add input element to allow users to directly edit the slider value for improved user experience
* ✨ (slider-labels.tsx): Add SliderLabels component to display min and max labels with icons in SliderComponent for better user experience
📝 (index.tsx): Remove sliderInput prop and refactor SliderComponent to improve code readability and maintainability
🔧 (applies.css): Add styling for input-slider-text class to improve consistency in SliderComponent styling
* 📝 (applies.css): update hover:ring value to use variable hover:ring-slider-input-border for consistency and maintainability
📝 (index.css): add variable --slider-input-border to define the color value for slider input border
🔧 (tailwind.config.mjs): add slider-input-border custom property to map to the defined color value in the CSS variables
* ✨ (build-color-by-name.ts): add function to dynamically build color based on input values to customize UI
✨ (get-min-max-value.ts): add function to get minimum or maximum value based on input constraints
🔧 (index.tsx): update import path for getMinOrMaxValue function
🔧 (index.tsx): add buildColorByName function to dynamically set thumb color based on percentage
🔧 (index.tsx): add logic to dynamically set background color gradient based on thumb color and percentage
🔧 (index.tsx): add logic to dynamically set thumb background color based on percentage and color calculation
📝 (frontend): update import paths to use absolute paths for better module resolution
🔧 (frontend): refactor TableOptions component to improve styling and conditional class application
fix: update flow creation test to wait for modal title
The code changes update the flow creation test in the pythonApiGeneration.spec.ts file. The test now waits for the modal title to appear before proceeding. This ensures that the test is more reliable and avoids any timing issues.
* test: Improve flowPage.spec.ts test reliability
Enhance the reliability of the flowPage.spec.ts test by adding explicit wait conditions for the modal and sidebar components. This ensures that the test waits for the necessary elements to be present before interacting with them, reducing the likelihood of test failures due to timing issues.
* Changed Advanced Settings to Controls and implemented DisplayName on shortcuts
* fix: validate 'streaming' vertex connections in graph (#5067)
* feat: Table Input for tools metadata (tool name and description) in component as tools (#4961)
* ✨ (endpoints.py): Add support for tool_mode field in custom component update
🔧 (schemas.py): Add tool_mode field to UpdateCustomComponentRequest schema
♻️ (component.py): Refactor run_and_validate_update_outputs method to handle tool_mode field
🔧 (index.tsx): Add tool_mode property to NodeInputField component
🔧 (index.tsx): Refactor hasToolMode logic to use checkHasToolMode utility function
🔧 (mutate-template.ts): Add callback parameter to mutateTemplate function
🔧 (use-handle-new-value.tsx): Add tool_mode property to useHandleOnNewValue hook
🔧 (popover/index.tsx): Add console.log for placeholder, value, and id
🔧 (inputGlobalComponent/index.tsx): Add tool_mode property to InputGlobalComponent
🔧 (refreshParameterComponent/index.tsx): Add tool_mode property to RefreshParameterComponent
🔧 (use-post-template-value.ts): Add tool_mode parameter to usePostTemplateValue function
🔧 (nodeToolbarComponent/index.tsx): Add support for tool_mode functionality in NodeToolbarComponent
🔧 (reactflowUtils.ts): Add checkHasToolMode utility function to check for tool_mode field in template
* fix: Set default value for tool_mode in UpdateCustomComponentRequest schema
* adding table input in tool mode
adding table input
* Update component.py
update real-time refresh
* added dynamic tool description input
added dynamic tool description input
* [autofix.ci] apply automated fixes
* Update component.py
simplifying the tool mode logic
* Update component_tool.py
updated logic to be more readable
* Update component.py
* adding tool table schema as constant
---------
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* fix: update drag and drop test (#5048)
* refactor: Improve wait time for modal in drag and drop test
* ✨ (dragAndDrop.spec.ts): update file path to read collection.json from the correct location
🐛 (dragAndDrop.spec.ts): increase timeout for waiting for "uploaded successfully" text to prevent test failures
* ✨ (dragAndDrop.spec.ts): Add tests for drag and drop functionality to ensure users can drag and drop collections and flows without crashing the application
📝 (simulate-drag-and-drop.ts): Add utility function to simulate drag and drop events in tests for improved test coverage and functionality
* add debouncing time on file upload
* [autofix.ci] apply automated fixes
---------
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* fix: add hover state on folder button when moving flow to it (#4999)
* ✨ (index.tsx): Refactor SideBarFoldersButtonsComponent to improve code readability and maintainability. Add new functionalities such as drag and drop, folder hovering effects, and folder actions like upload, download, add, update, and delete. Update folder state management and handle loading states for various folder operations.
* ✨ (add-folder-button.tsx): Add a new component for adding folders to the sidebar
✨ (folder-select-item.tsx): Add a new component for displaying folder select items in the sidebar
✨ (header-buttons.tsx): Add a new component for displaying header buttons in the sidebar
✨ (input-edit-folder-name.tsx): Add a new component for editing folder names in the sidebar
✨ (select-options.tsx): Add a new component for displaying select options in the sidebar
✨ (upload-folder-button.tsx): Add a new component for uploading folders to the sidebar
✨ (handle-select-change.ts): Add a new helper function for handling select changes in the sidebar
🔧 (index.tsx): Refactor sidebar folder buttons component to use new components and helpers for better organization and functionality
* ✨ (use-on-file-drop.tsx): add support for fetching and using flows specific to the current folder in the file drop functionality
📝 (use-get-folder.ts): update the get folder query to set and use flows specific to the current folder
📝 (foldersStore.tsx): add state management for storing and setting flows specific to the current folder in the store
📝 (index.ts): add FlowType import for flows specific to the current folder in the store types
* ✨ (flows.py): Add description field to the returned flow object in read_flows function for better data representation
♻️ (use-on-file-drop.tsx): Refactor code to use new centralized store for flows instead of accessing flowsFromCurrentFolder directly
🔧 (use-get-folder.ts): Remove setFlowsFromCurrentFolder function and directly update flows in the store within getFolderFn
🔧 (foldersStore.tsx): Remove flowsFromCurrentFolder state and setFlowsFromCurrentFolder function from the store as they are no longer needed
* fix: Fix test_get_and_cache_all_types_dict (#5054)
* fix: add condition to not block component from building when input is filled by tool mode (#5039)
Fixed frontend blocking build when component is disabled because of tool mode
* feat: Enhance Observability with ArizePhoenixTracer Integration (#5058)
* Added ArizePhoenixTracer
* [autofix.ci] apply automated fixes
* Fixed Ruff Style Check Errors
* add Arize icon
* Fixed Mypy Errors
* Refactor ArizeIcon component to use arrow function syntax
Co-authored-by: Jeff Carpenter <jeffrey.carpenter@datastax.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
* refactor: Remove footer from TableModal component (#5036)
* Refactor: update curlApiGeneration test (#5046)
refactor: Update wait time for modal to appear in curlApiGeneration.spec.ts
* Refactor: Remove unnecessary value rendering in EmptyParameterComponent (#4955)
* feat: Persist locked state for flows (#4459)
* persist locked state for flows
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* 📝 (popover.tsx): Remove duplicate declaration of PopoverAnchor in popover.tsx
✨ (lock-flow.spec.ts): Add test for locking and unlocking a flow in the application to ensure proper functionality and saving of the flow.
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* Refactor actionsMainPage-shard-0.spec.ts (#5043)
* refactor: Add missing import and update assertions in actionsMainPage-shard-0.spec.ts
* refactor: Adjust chat view layout for responsiveness (#5061)
* refactor: Adjust chat view layout for responsiveness
The code changes in this commit adjust the layout of the chat view component to improve responsiveness. Specifically, the CSS classes for the chat container and input container have been modified to make them responsive on different screen sizes. This ensures that the chat view is displayed properly on both desktop and mobile devices.
Refactoring the layout in this way enhances the user experience by making the chat view more accessible and user-friendly across different devices.
* fix: Fix: improve error in InputFileComponent when displaying invalid file types (#5064)
* fix: Fix error in InputFileComponent when displaying invalid file types
The code changes in this commit fix an issue in the InputFileComponent where an error was not being displayed correctly when the file type was not allowed. The commit adds a fix to properly display the error message with the list of invalid file types.
* refactor: Improve wait times and visibility checks in auto-save-off tests (#5044)
* refactor: Improve wait times and visibility checks in auto-save-off tests
* Refactor: refactor wait times and selectors in filterEdge-shard-1.spec.ts (#5049)
* refactor: Update wait times and selectors in filterEdge-shard-1.spec.ts
* Refactor: update autoLogin.spec.ts to use waitForSelector (#5045)
refactor: Update autoLogin.spec.ts to use waitForSelector instead of waitForTimeout
* feat: improve whitespace handling in NodeDescription component (#5096)
* 📝 (NodeDescription/index.tsx): update CSS classes to improve text formatting and readability in NodeDescription component
* ♻️ (NodeDescription/index.tsx): refactor NodeDescription component styles to improve readability and remove redundant classnames
* refactor: use Inspector for column checks in locked state migration (#5097)
🐛 (add_persistent_locked_state.py): fix migration script to correctly check for existing 'locked' column before adding or dropping it
* fix: changed parameter name of agent component (#4992)
* Changed Add tool Current Date to only Current Date
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* fix: re-activated playground page and made it full screen (#5066)
* Re-activated playground page
* Added full-screen to show entire content instead of modal
* Added full screen page on new Modal
* Made app wrapper page be full width and height
* fix: apply variables to fields automatically, remove password truncation from variable fields (#5031)
* Change default type to be Credential on Global Variabel Modal
* Removed clipping on input password
* Updated StrRenderComponent to receive display_name
* Updated InputGlobal and StrRender to receive display_name
* Update InputGlobalComponent to handle fields already applied
* Passed display name from strRender to inputglobal
* Update updateGroupRecursion to not need updateGlobalVariables since it's already dealt with by the InputGlobalComponent
* fix: clear chat input when sending from play button (#5071)
Fix newChatView to clear chat input if the component runs before
---------
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: Christophe Bornet <cbornet@hotmail.com>
Co-authored-by: Ali Saleh <saleh.a@turing.com>
Co-authored-by: Jeff Carpenter <jeffrey.carpenter@datastax.com>
Co-authored-by: Mike Fortman <michael.fortman@datastax.com>
* Change default type to be Credential on Global Variabel Modal
* Removed clipping on input password
* Updated StrRenderComponent to receive display_name
* Updated InputGlobal and StrRender to receive display_name
* Update InputGlobalComponent to handle fields already applied
* Passed display name from strRender to inputglobal
* Update updateGroupRecursion to not need updateGlobalVariables since it's already dealt with by the InputGlobalComponent
* Re-activated playground page
* Added full-screen to show entire content instead of modal
* Added full screen page on new Modal
* Made app wrapper page be full width and height
* Changed Add tool Current Date to only Current Date
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* 📝 (NodeDescription/index.tsx): update CSS classes to improve text formatting and readability in NodeDescription component
* ♻️ (NodeDescription/index.tsx): refactor NodeDescription component styles to improve readability and remove redundant classnames
* fix: Fix error in InputFileComponent when displaying invalid file types
The code changes in this commit fix an issue in the InputFileComponent where an error was not being displayed correctly when the file type was not allowed. The commit adds a fix to properly display the error message with the list of invalid file types.
* refactor: Adjust chat view layout for responsiveness
The code changes in this commit adjust the layout of the chat view component to improve responsiveness. Specifically, the CSS classes for the chat container and input container have been modified to make them responsive on different screen sizes. This ensures that the chat view is displayed properly on both desktop and mobile devices.
Refactoring the layout in this way enhances the user experience by making the chat view more accessible and user-friendly across different devices.
* persist locked state for flows
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* 📝 (popover.tsx): Remove duplicate declaration of PopoverAnchor in popover.tsx
✨ (lock-flow.spec.ts): Add test for locking and unlocking a flow in the application to ensure proper functionality and saving of the flow.
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* ✨ (index.tsx): Refactor SideBarFoldersButtonsComponent to improve code readability and maintainability. Add new functionalities such as drag and drop, folder hovering effects, and folder actions like upload, download, add, update, and delete. Update folder state management and handle loading states for various folder operations.
* ✨ (add-folder-button.tsx): Add a new component for adding folders to the sidebar
✨ (folder-select-item.tsx): Add a new component for displaying folder select items in the sidebar
✨ (header-buttons.tsx): Add a new component for displaying header buttons in the sidebar
✨ (input-edit-folder-name.tsx): Add a new component for editing folder names in the sidebar
✨ (select-options.tsx): Add a new component for displaying select options in the sidebar
✨ (upload-folder-button.tsx): Add a new component for uploading folders to the sidebar
✨ (handle-select-change.ts): Add a new helper function for handling select changes in the sidebar
🔧 (index.tsx): Refactor sidebar folder buttons component to use new components and helpers for better organization and functionality
* ✨ (use-on-file-drop.tsx): add support for fetching and using flows specific to the current folder in the file drop functionality
📝 (use-get-folder.ts): update the get folder query to set and use flows specific to the current folder
📝 (foldersStore.tsx): add state management for storing and setting flows specific to the current folder in the store
📝 (index.ts): add FlowType import for flows specific to the current folder in the store types
* ✨ (flows.py): Add description field to the returned flow object in read_flows function for better data representation
♻️ (use-on-file-drop.tsx): Refactor code to use new centralized store for flows instead of accessing flowsFromCurrentFolder directly
🔧 (use-get-folder.ts): Remove setFlowsFromCurrentFolder function and directly update flows in the store within getFolderFn
🔧 (foldersStore.tsx): Remove flowsFromCurrentFolder state and setFlowsFromCurrentFolder function from the store as they are no longer needed