This pull request fixes a condition in the `stop` method. Previously,
the method would raise a `ValueError` if `output_name` was not provided,
even if it was set to `None`. This pull request updates the condition to
only raise the `ValueError` if `output_name` is not provided and is not
set to `None`. This allows for more flexibility when calling the `stop`
method.
This pull request includes the following changes:
- Added a new table called "message" to the database, allowing for
storing and retrieving messages in the application.
- Refactored the add_messages function to use a database session for
adding messages to the monitor service, improving reliability.
This pull request introduces two improvements:
Type Annotations for Custom Hooks: Enhances code readability and
maintainability by adding type annotations to our custom hooks. This
will improve IDE support and help catch potential errors early in the
development process.
Card Component Refactor (useHooks): Refactors card components to
leverage the useHooks pattern. This improves code organization and
potentially simplifies component logic.
These changes improve the overall codebase quality and make it easier to
understand and maintain.
📝 (memory.py): Refactor delete_messages function to use SQLAlchemy delete statement for better performance and readability
📝 (monitor/schema.py): Update MessageModel to use UUID type for id and flow_id for consistency and better data handling
This commit refactors the add_messages function in memory.py to use a database session for adding messages to the monitor service. Instead of directly calling the monitor_service.add_message method, the messages are now added using a session object. This change ensures that the messages are properly persisted in the database and improves the reliability of the application.
This commit adds a new table called "message" to the database. The table includes columns for timestamp, sender, sender_name, session_id, text, id, flow_id, and files. The "message" table is created using Alembic migration. This addition allows for storing and retrieving messages in the application.
💡 (use-dropdown-options.tsx): add TypeScript types to function parameters
💡 (use-api-keys.tsx): add TypeScript types to function parameters
💡 (use-handle-delete-key.tsx): add TypeScript types to function parameters
💡 (use-preload-images.tsx): add TypeScript types to function parameters
💡 (use-patch-password.tsx): add TypeScript types to function parameters
💡 (use-patch-profile-picture.tsx): add TypeScript types to function parameters
💡 (use-save-key.tsx): add TypeScript types to function parameters
💡 (use-scroll-to-element.tsx): add TypeScript types to function parameters
💡 (use-messages-table.tsx): add TypeScript types to function parameters
💡 (use-remove-messages.tsx): add TypeScript types to function parameters
💡 (use-updateMessage.tsx): add type annotations to setSuccessData and setErrorData for better type safety and code clarity
💡 (index.tsx): add non-null assertion operator to playground variable
♻️ (use-on-file-drop.tsx): add type annotations for folderId and folderChangeCallback
♻️ (use-auto-resize-text-area.tsx): add type annotations for value and inputRef
♻️ (use-drag-and-drop.tsx): add type annotations for setIsDragging, setFiles, currentFlowId, and setErrorData
♻️ (use-focus-unlock.tsx): add type annotations for lockChat and inputRef
♻️ (use-upload.tsx): add type annotations for uploadFile, currentFlowId, setFiles, and lockChat
♻️ (use-column-defs.tsx): add type annotation for myData
♻️ (use-row-data.tsx): add type annotations for myData and open
♻️ (index.tsx): remove commented-out code
♻️ (use-filtered-flows.tsx): add type annotations for flowsFromFolder, searchFlowsComponents, and setAllFlows
💡 (index.tsx): add non-null assertion operator to flowsFromFolder variable
- Add `useDataEffect` to handle data-related side effects
- Add `useInstallComponent` to manage component installation logic
- Add `useLikeComponent` to handle like functionality
- Add `useDragStart` to manage drag start events
- Add `usePlaygroundEffect` to handle playground-related side effects
✨ (cardComponent): add custom hooks for data, install, like, drag start, and playground effects
♻️ (cardComponent): rename state variables for consistency and readability
✨ (MainPage): add CollectionCard component to handle card rendering and interactions
✨ (index.tsx): add CollectionCard component to ComponentsComponent
♻️ (index.tsx): refactor to use CollectionCard instead of inline code
* Update Makefile to use command substitution for killing process
* break long lines into shorter ones
* replace fixed values with variables
* correct the unit test coverage report
---------
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* chore: Add check-format script to package.json for code formatting consistency
* chore: Update lint-js.yml to use npm run check-format instead of npm run format
* ✨ (typescript_test.yml): add workflow_dispatch event to trigger workflow manually with branch input parameter
🔧 (typescript_test.yml): update workflow to checkout code from the specified branch when triggered manually
* 📝 (lint-py.yml): update linting workflow to trigger on specific pull request events and checks requested action
📝 (lint-py.yml): add a specific job to run Mypy for static type checking in the linting workflow
* 🔧 (python_test.yml): update pull_request event types and branches to trigger on more actions for better test coverage and integration
* 🐛 (tableNodeCellRender): fix templateValue check to use Object.keys
✨ (textAreaComponent): add Case component for conditional rendering
♻️ (editNodeModal): remove commented-out useEffect code
✅ (basicExamples.spec): update test selectors and increase timeout values
✅ (filterEdge.spec.ts): update test IDs to match new naming conventions
✅ (inputListComponent.spec.ts, intComponent.spec.ts): update test IDs and streamline test steps for consistency and clarity
✅ (keyPairListComponent.spec.ts): update test ID for model element
✅ (keyPairListComponent.spec.ts): add steps to test editing model options and saving changes
* ✅ (tests): update end-to-end tests for chat input/output and modal components
- Update test selectors for better accuracy
- Add keyboard interaction in chatInputOutputUser.spec.ts
- Improve file handling in chat image upload test
- Refine prompt modal component tests for better validation
- Enhance twoEdges.spec.ts with additional view controls
* ♻️ (tests): refactor repeated click actions into reusable function in e2e tests
* ✅ (tests): replace waitForTimeout with waitForSelector in end-to-end tests
* ✅ (typescript_test.yml): add --debug flag to Playwright test command for better debugging
* ✅ (typescript_test.yml): enable trace option in Playwright tests for better debugging
* ✅ (typescript_test.yml): reduce Playwright test workers from 2 to 1 to improve stability
✅ (textInputOutput.spec.ts): add waitFor visibility checks to ensure elements are visible before interaction
* ✅ (tests): update paths for test assets to correct locations
✅ (tests): add waitForSelector to ensure elements are loaded before interaction
* ✅ (typescript_test.yml): increase Playwright workers from 1 to 2 to speed up tests
✅ (chatInputOutputUser.spec.ts): increase timeout for AI response to 100000ms
✅ (chatInputOutputUser.spec.ts): correct file path for image upload test
✅ (deleteComponentFlows.spec.ts): change waitFor to target last checkbox-component
✅ (store.spec.ts): increase timeout for share button to 100000ms
* 🐛 (flows.py): ensure flow names are unique by appending a number if necessary
* Apply Ruff formatting
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Cristhianzl <Cristhianzl@users.noreply.github.com>
⬆️ (package.json): update prettier-plugin-tailwindcss to version 0.6.5
♻️ (package.json): reorder @types/lodash dependency for consistency
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>