Commit graph

6,351 commits

Author SHA1 Message Date
anovazzi1
9b1295942c Merge remote-tracking branch 'origin/main' into release 2023-08-16 15:44:26 -03:00
Gabriel Luiz Freitas Almeida
c93390c0e9 🐳 chore(docker-compose.celery.yml): add PostgreSQL and pgAdmin services to support database operations
 feat(docker-compose.celery.yml): add db service with PostgreSQL image and configure environment variables for database connection

 feat(docker-compose.celery.yml): add pgadmin service with pgAdmin4 image and configure environment variables for admin login

🔧 chore(docker-compose.celery.yml): add db service as a dependency for the queue service
2023-08-16 15:42:10 -03:00
Gabriel Luiz Freitas Almeida
e1872b8213 🔒 chore(poetry.lock): update cohere package version to 4.20.1
🔒 chore(poetry.lock): update exceptiongroup package version to 1.1.3
🔒 chore(poetry.lock): update google-api-python-client package version to 2.97.0
🔒 chore(poetry.lock): update pandas-stubs package version to 2.0.3.230814
🔒 chore(poetry.lock): update setuptools package version to 68.1.0
🔒 chore(poetry.lock): update tenacity package version to 8.2.3
🔒 chore(poetry.lock): update textual package version to 0.33.0
2023-08-16 15:41:55 -03:00
Gabriel Luiz Freitas Almeida
40321f4be7 🐛 fix(frontend): update Dockerfile to use node:20-alpine as base image for frontend build
 feat(frontend): add support for BACKEND_URL environment variable in nginx.conf to configure backend URL
📝 chore(frontend): add start-nginx.sh script to replace placeholder in nginx.conf with actual BACKEND_URL and start nginx
2023-08-16 15:41:09 -03:00
Gabriel Luiz Freitas Almeida
c2ec95fbb7 🐛 fix(base.Dockerfile): change --with deploy to --extras deploy in poetry install command to correctly install deploy extras 2023-08-16 15:40:54 -03:00
Gabriel Luiz Freitas Almeida
49729263ef 🐛 fix(manager.py): fix incorrect assignment of langchain_object.result to result_dict["result"] to store the entire langchain_object instead 2023-08-16 15:40:14 -03:00
Gabriel Luiz Freitas Almeida
284158b33b 📦 chore(deploy_langflow_gcp.sh): add script to deploy Langflow on Google Cloud Platform
📝 docs(walkthroughtutorial.md): add tutorial for deploying Langflow on Google Cloud Platform

The `deploy_langflow_gcp.sh` script is added to the `scripts/gcp` directory. This script sets up the necessary VM, image, and networking configuration for deploying Langflow on Google Cloud Platform. It also creates firewall rules, installs dependencies, and starts the Langflow server.

The `walkthroughtutorial.md` file is added to the `scripts/gcp` directory. This file provides a step-by-step tutorial on how to deploy Langflow on Google Cloud Platform using the `deploy_langflow_gcp.sh` script. It includes instructions on setting up the GCP environment, running the script, and connecting to the Langflow VM.

Cleanup instructions are also provided in the tutorial for removing the resources created during the deployment process.

📝 docs(walkthroughtutorial_spot.md): add walkthrough tutorial for deploying Langflow on Google Cloud Platform

This commit adds a new file `walkthroughtutorial_spot.md` which contains a step-by-step tutorial for deploying Langflow on Google Cloud Platform (GCP) using Google Cloud Shell. The tutorial provides an introduction, prerequisites, instructions for setting up the GCP environment, deploying Langflow, connecting to the Langflow VM, and cleaning up resources after the deployment.

The tutorial is authored by Robert Wilkins III and has a duration of 45 minutes. It assumes that the user has a GCP account and basic knowledge of Google Cloud Shell. The tutorial also includes links to relevant documentation and provides commands for configuring the GCP environment and deploying Langflow.

The tutorial is comprehensive and aims to guide users through the process of deploying Langflow on GCP. It also includes cleanup instructions for removing the resources created during the tutorial if desired.
2023-08-16 15:39:08 -03:00
Gabriel Luiz Freitas Almeida
6b0383be50 📦 chore(deploy): add deployment files and configurations for Docker Compose setup 2023-08-16 15:38:43 -03:00
anovazzi1
5fde616f9b
Added spinning wheel when /all is loading (#757)
Added spinning wheel when all components are still loading.
2023-08-16 15:34:07 -03:00
anovazzi1
0b8d91f116 Merge branch 'release' into bug/loadingIndicator 2023-08-16 15:26:15 -03:00
igorrCarvalho
ed6ae4b380 Merge branch 'login-auth' of github.com:logspace-ai/langflow into login-auth 2023-08-16 15:24:01 -03:00
igorrCarvalho
634a5591cc feat: Add admin page button and refactor protected route /admin 2023-08-16 15:23:22 -03:00
anovazzi1
408ef81a5b chore(constants.ts): add missing newline at the end of the file
feat(tabsContext.tsx): add support for skipping node updates based on node type defined in the skipNodeUpdate constant to improve performance and prevent unnecessary updates
2023-08-16 15:02:57 -03:00
Cristhian Zanforlin Lousa
ca52a61012 Merge branch 'login-auth' of https://github.com/logspace-ai/langflow into login-auth 2023-08-16 08:38:56 -03:00
Cristhian Zanforlin Lousa
d320ddd30a 🐛 fix(App.tsx): add autoLogin function to handle automatic login on page refresh
🐛 fix(authLoginGuard/index.tsx): change condition to check autoLogin flag instead of LOCALHOST_JWT flag
🐛 fix(headerComponent/index.tsx): change condition to check autoLogin flag instead of LOCALHOST_JWT flag
🐛 fix(constants.ts): remove unused LOCALHOST_JWT variable
 feat(authContext.tsx): add autoLogin and setAutoLogin functions to AuthContext
🐛 fix(API/api.tsx): add auto_login endpoint to the list of excluded endpoints from Authorization header
 feat(API/index.ts): add autoLogin function to handle automatic login
🐛 fix(AdminPage/index.tsx): change handleDisableUser function parameter from user.is_superuser to user.is_active
🐛 fix(types/contexts/auth.ts): add autoLogin and setAutoLogin to AuthContextType
2023-08-16 08:38:49 -03:00
gustavoschaedler
91fcf33506 🐛 fix(auth.py): import get_session from correct module to fix import error
 feat(auth.py): add support for creating user API key and getting user ID from token
🐛 fix(base.py): fix typo in API_KEY_SECRET_KEY variable name
🐛 fix(base.py): fix typo in FIRST_SUPERUSER and FIRST_SUPERUSER_PASSWORD variable names
🐛 fix(base.py): fix indentation in load_settings_from_yaml function
2023-08-15 23:47:50 +01:00
anovazzi1
aae6223593 code format 2023-08-15 19:43:43 -03:00
anovazzi1
ec79cc43bd Merge remote-tracking branch 'origin/dev' into types_refactor 2023-08-15 19:34:53 -03:00
anovazzi1
85add46761 feat(AdminPage): add support for UserInputType in handleNewUser function to improve type safety and prevent potential errors
fix(UserInputType): make is_active and is_superuser optional in UserInputType to allow for flexibility in user input
2023-08-15 18:04:10 -03:00
gustavoschaedler
19c1eb6cf6 🐛 fix(auth.py): change create_user_longterm_token to use create_super_user to ensure super user exists before creating token
 feat(auth.py): add create_super_user function to create super user if it doesn't exist
🐛 fix(login.py): remove hardcoded user_id and use create_user_longterm_token without arguments
🐛 fix(users.py): remove redundant password hashing in add_super_user_for_testing_purposes_delete_me_before_merge_into_dev
🐛 fix(base.py): change AUTO_LOGIN default value to False and add FIRST_SUPERUSER and FIRST_SUPERUSER_PASSWORD settings
2023-08-15 17:58:04 -03:00
Cristhian Zanforlin Lousa
95f7a42569 formatting and merging 2023-08-15 17:07:10 -03:00
Cristhian Zanforlin Lousa
0383bc18ad 🐛 fix(App.tsx): import 'useNavigate' from 'react-router-dom' to fix compilation error
 feat(App.tsx): add support for process.env.PORT environment variable to be able to run app on a configurable port
🐛 fix(App.tsx): change 'port' variable case from lowercase to uppercase to improve semantics
🐛 fix(App.tsx): fix typo in import statement for 'getLoggedUser' function
🐛 fix(App.tsx): add missing import statement for 'LoginType' type
🐛 fix(App.tsx): add missing import statement for 'LOCALHOST_JWT' constant
🐛 fix(App.tsx): add missing import statement for 'onLogin' function
🐛 fix(App.tsx): add missing import statement for 'setUserData' function
🐛 fix(App.tsx): add missing import statement for 'setErrorData' function
🐛 fix(App.tsx): add missing import statement for 'getUser' function
 feat(App.tsx): add logic to automatically log in user on localhost with predefined credentials
🐛 fix(PaginatorComponent/index.tsx): calculate 'maxIndex' based on 'totalRowsCount' and 'pageSize' to fix pagination bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update 'currentPage' state when changing pages to fix display bug
🐛 fix(PaginatorComponent/index.tsx): update

🐛 fix(UserManagementModal): change is_disabled to is_active to improve semantics and consistency

🐛 fix(AdminPage/index.tsx): import cloneDeep from lodash to fix missing import error
 feat(AdminPage/index.tsx): add support for user management functionality, including disabling and editing user properties

🐛 fix(AdminPage/index.tsx): fix indentation and remove unnecessary code
 feat(AdminPage/index.tsx): add ConfirmationModal component for editing and disabling users
🔥 chore(AdminPage/index.tsx): remove unused code and fix formatting

🔨 refactor(UserManagement.tsx): refactor UserManagement component to improve readability and maintainability
🔥 chore(UserManagement.tsx): remove unused code and unnecessary closing div tag

🔧 fix(loginPage): add useEffect hook to import statement to fix missing dependency warning
🔄 refactor(api): rename is_disabled field to is_active in Users type for better semantics
🔄 refactor(components): rename is_disabled field to is_active in UserInputType for better semantics
🔄 refactor(utils): add UserCog2 icon import to nodeIconsLucide for future use
🔄 refactor(tailwind.config.js): add text-align-last-left and text-align-last-right utility classes for text alignment
2023-08-15 17:03:14 -03:00
gustavoschaedler
effbddbcb0 🐛 fix(base.py): set AUTO_LOGIN to True to enable automatic login as a super user
🔧 chore(base.py): improve readability by formatting logger.debug statements
2023-08-15 20:56:10 +01:00
Gabriel Luiz Freitas Almeida
5e715af875 🔧 fix(ApiModal/index.tsx): fix formatting of codesArray to improve readability
🔧 fix(formModal/index.tsx): fix formatting of getWebSocketUrl function to improve readability
🔧 fix(vite.config.ts): fix formatting of comment to improve readability
2023-08-15 16:46:53 -03:00
Gabriel Luiz Freitas Almeida
69d03f64b1 🔧 fix(base.py): remove redundant imports and nested class declaration
 feat(base.py): add validation logic to set the DATABASE_URL value based on environment variables and file paths
2023-08-15 16:37:21 -03:00
Gabriel Luiz Freitas Almeida
6e3a6ce8c3 🐛 fix(base.py): set CONFIG_DIR to default value if not provided to improve functionality
 feat(base.py): add support for setting CONFIG_DIR to a cache directory if not provided to improve file management
🐛 fix(base.py): set DATABASE_URL to default value if not provided to improve functionality
 feat(base.py): add support for setting DATABASE_URL to LANGFLOW_DATABASE_URL environment variable if not provided to improve configurability
🐛 fix(base.py): raise ValueError if CONFIG_DIR is not set when using sqlite database to improve error handling
 feat(base.py): add support for copying existing sqlite database to new location if CONFIG_DIR is set to improve migration process
2023-08-15 16:33:47 -03:00
gustavoschaedler
3cd8aff96e 🐛 fix(auth.py): change create_user_longterm_token to use create_super_user to ensure super user exists before creating token
 feat(auth.py): add create_super_user function to create super user if it doesn't exist
🐛 fix(login.py): remove hardcoded user_id and use create_user_longterm_token without arguments
🐛 fix(users.py): remove redundant password hashing in add_super_user_for_testing_purposes_delete_me_before_merge_into_dev
🐛 fix(base.py): change AUTO_LOGIN default value to False and add FIRST_SUPERUSER and FIRST_SUPERUSER_PASSWORD settings
2023-08-15 20:32:53 +01:00
anovazzi1
56f8aca796 format code 2023-08-15 16:16:40 -03:00
anovazzi1
42c0ef8569 Merge branch 'authentication' into login-auth 2023-08-15 16:13:25 -03:00
anovazzi1
8f82367300 refactor(modals/UserManagementModal): move import statement for InputComponent to the top for better organization and readability
refactor(pages/loginPage): remove unused import statement for IconComponent

refactor(pages/signUpPage): remove unused import statement for IconComponent

refactor(routes.tsx): remove unused import statement for SignUp page
2023-08-15 16:05:08 -03:00
anovazzi1
015064b453 Merge branch 'authentication' into login 2023-08-15 16:03:42 -03:00
anovazzi1
4a7ccda51c Merge branch 'login' of personal:logspace-ai/langflow into login 2023-08-15 16:01:08 -03:00
gustavoschaedler
695a337c6c 🔧 fix(auth.py): move SECRET_KEY, ALGORITHM, ACCESS_TOKEN_EXPIRE_MINUTES, and REFRESH_TOKEN_EXPIRE_MINUTES to environment variables for better security and configurability
 feat(auth.py): add support for loading settings from environment variables in create_token and create_user_tokens functions
🔧 fix(auth.py): use settings_manager to access SECRET_KEY, ALGORITHM, ACCESS_TOKEN_EXPIRE_MINUTES, and REFRESH_TOKEN_EXPIRE_MINUTES in create_token and create_user_tokens functions
🔧 fix(auth.py): use settings_manager to access SECRET_KEY and ALGORITHM in get_current_user function
 feat(auth.py): add create_user_longterm_token function to create long-term access token for auto login
 feat(login.py): add auto_login endpoint to automatically log in as a super user if AUTO_LOGIN is enabled in the settings
🔧 fix(settings/base.py): add SECRET_KEY, ALGORITHM, ACCESS_TOKEN_EXPIRE_MINUTES, REFRESH_TOKEN_EXPIRE_MINUTES, and AUTO_LOGIN settings to the base settings class
 feat(settings/base.py): add AUTO_LOGIN setting to control whether auto login is enabled or not
🔧 fix(settings/base.py): use secrets.token_hex(32) to generate a random SECRET_KEY instead of hardcoding it
🔧 fix(settings/base.py): update comments and formatting in the base settings class
 feat(settings/base.py): add AUTO_LOGIN setting to control whether auto login is enabled or not
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings class
🔧 fix(settings/base.py): update comments and formatting in the base settings

🔥 refactor(settings.py): remove unused imports and code, clean up formatting and comments
🔀 chore(settings.py): merge duplicated code into reusable functions
📝 docs(settings.py): add missing docstrings and comments for better code documentation
🔧 chore(settings.py): update settings file to improve readability and maintainability
2023-08-15 20:00:02 +01:00
anovazzi1
a7ed611a15 Merge branch 'dev' into updateMakefile 2023-08-15 15:59:57 -03:00
anovazzi1
021380b6f3 format code 2023-08-15 15:40:50 -03:00
anovazzi1
b528ae86fd chore(Makefile): change npm install command to npm ci for frontend installation to ensure reproducible builds 2023-08-15 15:39:33 -03:00
anovazzi1
993cea0c0b Merge branch 'dev' into updateMakefile 2023-08-15 15:01:45 -03:00
Gabriel Luiz Freitas Almeida
6a974a4efd 🔧 chore(settings.py): add LANGFUSE_HOST environment variable to store the host URL for Langfuse API 2023-08-15 14:55:34 -03:00
Gabriel Luiz Freitas Almeida
73f02439b0 🔧 chore(base.py): add debug log messages for langfuse callback initialization and credentials check
🔧 chore(base.py): add debug log message for langfuse callback loaded
2023-08-15 14:54:38 -03:00
Lucas Oliveira
5756f46e81
Added view option to LangFlow (#770) 2023-08-15 14:07:40 -03:00
Gabriel Luiz Freitas Almeida
1e0f4f316f
Merge branch 'main' into release 2023-08-15 15:50:42 +00:00
gustavoschaedler
c752872fc3 🐛 fix(auth.py): add optional parameter 'update_last_login' to 'create_user_tokens' function to allow updating last login only when needed
🐛 fix(auth.py): add optional parameter 'db' to 'create_refresh_token' function to allow passing the database session
 feat(login.py): pass 'update_last_login=True' to 'create_user_tokens' function to update last login when user successfully logs in
🐛 fix(ApiModal/index.tsx): fix formatting of 'codesArray' array to improve readability
🐛 fix(formModal/index.tsx): fix formatting of 'getWebSocketUrl' function to improve readability
🐛 fix(vite.config.ts): fix typo in comment
2023-08-15 16:50:40 +01:00
Gabriel Luiz Freitas Almeida
cef9fa4dd0 🔖 chore(pyproject.toml): update package version from 0.4.9 to 0.4.10 for maintenance purposes 2023-08-15 12:48:50 -03:00
Gabriel Luiz Freitas Almeida
6fe486b164 🔧 chore(base.py): refactor setup_callbacks function to improve readability and maintainability
🔧 chore(base.py): refactor get_langfuse_callback function to improve readability and maintainability
🔧 chore(base.py): refactor get_result_and_steps function to improve readability and maintainability
🔧 chore(settings.py): add LANGFUSE_SECRET_KEY and LANGFUSE_PUBLIC_KEY optional settings
2023-08-15 12:46:54 -03:00
Lucas Oliveira
2b21db32b5
Feature/view mode (#769)
This feature implements a view mode to all of the flows, to embed on
sites.
2023-08-15 12:43:29 -03:00
Lucas Oliveira
685ac70e90 disabled ZoomOnDoubleClick 2023-08-15 12:31:17 -03:00
Lucas Oliveira
fe7239b577 Disabled Pan On Pinch 2023-08-15 12:30:39 -03:00
Lucas Oliveira
8529c379e1 Disabled zoom and pan when on view mode 2023-08-15 12:29:19 -03:00
Gabriel Luiz Freitas Almeida
2d2641c285 🔧 chore(pyproject.toml): add langfuse dependency to improve language processing capabilities 2023-08-15 12:28:37 -03:00
Lucas Oliveira
3667f4812e Fixed bug: flow not showing 2023-08-15 12:21:20 -03:00