✨ feat(config.yaml): add Qdrant vectorstore and RequestsWrapper to the config.yaml file
The config.yaml file has been updated with new documentloaders, memories, prompts, textsplitters, toolkits, utilities, and vectorstores. The Qdrant vectorstore has been added to the vectorstores section. The RequestsWrapper has been added to the wrappers section.
🔨 refactor(vector_store/base.py): refactor VectorstoreCreator to use import_class from langflow.interface.importing.utils
The `vectorstores_type_to_cls_dict` variable was not being used, so it was removed. The `VectorstoreCreator` class was refactored to use the `import_class` function from `langflow.interface.importing.utils` instead of importing it directly. This improves the code's readability and maintainability.
## Dynamic Font Size for ButtonBox Component
### Description
The ButtonBox component, which is used in the examples modal, has been
enhanced to have a dynamic font size that adjusts based on the length of
the text and the dimensions of its parent element. This improvement
ensures that the text within the ButtonBox component remains readable
and properly fits within its container.
### Changes Made
- Added a new `fontSize` state variable to track the font size within
the ButtonBox component.
- Utilized the `useEffect` hook to calculate and update the font size
dynamically.
- Implemented logic to check for both vertical and horizontal overflow
of the text within the parent container.
- Decreased the font size incrementally until the text fits within the
parent element's dimensions.
- Updated the component to apply the calculated font size to the text
element.
### Testing Done
- Manually tested the ButtonBox component with various text lengths and
parent container dimensions.
- Verified that the font size was adjusted correctly to fit the text
within the parent element without overflowing.
🐛 fix(base.py): correctly handle nested lists in Node.build() method
✨ feat(vector_store): add VectorStoreFrontendNode to handle vector store templates
🐛 fix(util.py): add build_template_from_method to correctly build templates from class methods
The configuration file now includes two new vector stores, DocArrayHnswSearch and DocArrayInMemorySearch. The Node.build() method now correctly handles nested lists. A new VectorStoreFrontendNode has been added to handle vector store templates. The build_template_from_method function has been added to correctly build templates from class methods.
Issue #335
- Modified UI styles in the app, making text more legible and buttons more visually appealing
- Changed chat trigger button to a gradient blue background to improve visibility and user experience
The position of the link to the Logspace website has been adjusted to be more centered on the page. The left margin has been increased by one unit to make it more visually appealing.
✨ feat(chatModal): add focus to chat input when modal is opened
The chat input was not resizing properly when the user typed more than one line of text. This was fixed by setting the height of the input to the scrollHeight of the input element. Additionally, the chat input is now focused when the chat modal is opened, which improves the user experience.
Fixes Text area is broken #328
The version number is now displayed in the footer of the application. The version number is fetched from the server using the /version endpoint and displayed in the footer. This allows users to easily identify which version of the application they are using.
The import statements for pathlib.Path and fastapi.staticfiles.StaticFiles were not used in the code and were therefore removed to improve code readability and maintainability.
This commit adds retry logic to the getAll API call in the TypesProvider component. The retry logic will attempt to make the API call up to 5 times with an increasing delay between each attempt. If the API call is successful, the state of the component will be updated with the retrieved data. If the component is unmounted before the API call resolves, the state will not be updated.