Commit graph

3,064 commits

Author SHA1 Message Date
Gabriel Luiz Freitas Almeida
ab6515515d 🐛 fix(types.py): add conditional check for task_id and is_task to improve object representation in CustomComponentVertex 2023-08-17 10:15:21 -03:00
Gabriel Luiz Freitas Almeida
d393a66b2f 🐛 fix(base.py): handle ImportError when importing celery.result.AsyncResult to allow building the vertex locally when Celery is not installed 2023-08-17 09:11:52 -03:00
Gabriel Luiz Freitas Almeida
ce8fc2739d 🔧 chore(run.py): replace deprecated memoize_dict decorator with Memoize class to improve code maintainability and readability
🔧 chore(process.py): replace deprecated build_sorted_vertices_with_caching.hash with build_sorted_vertices_with_caching.session_id to fix incorrect session_id assignment
🔧 chore(utils.py): add get_cache_manager function to retrieve the cache manager from the service manager
2023-08-16 22:36:34 -03:00
Gabriel Luiz Freitas Almeida
eb17233cde Merge remote-tracking branch 'origin/dev' into celery 2023-08-16 21:49:42 -03:00
Gabriel Luiz Freitas Almeida
500b6d533c Merge remote-tracking branch 'origin/dev' into celery 2023-08-16 21:47:57 -03:00
Gabriel Luiz Freitas Almeida
87958c255e 🐛 fix(endpoints.py): change type annotation of session_id parameter in process_flow function to Union[None, str] to allow for None value
🐛 fix(schemas.py): change type annotation of session_id field in ProcessResponse schema to Optional[str] to allow for None value
🐛 fix(run.py): change return type annotation of build_sorted_vertices_with_caching function to Tuple[Any, Dict] to specify the return types
🐛 fix(process.py): change return type annotation of load_langchain_object function to Tuple[Union[Chain, VectorStore], Dict[str, Any], str] to include the session_id value in the return tuple
2023-08-16 21:43:35 -03:00
Gabriel Luiz Freitas Almeida
199ea3b1b8 🔧 fix(process.py): refactor process_graph_cached function for better readability and maintainability
 feat(process.py): add clear_caches_if_needed function to clear cache if clear_cache flag is set
 feat(process.py): add load_langchain_object function to load langchain_object and artifacts from data_graph
 feat(process.py): add process_inputs function to process inputs and add artifacts to inputs
 feat(process.py): add generate_result function to generate result and thought based on langchain_object and inputs
2023-08-16 21:29:17 -03:00
Gabriel Luiz Freitas Almeida
2f928c7d84 Merge remote-tracking branch 'origin/dev' into add_session_id 2023-08-16 19:31:29 -03:00
Gabriel Luiz Freitas Almeida
97ad9889be Merge remote-tracking branch 'origin/dev' into celery 2023-08-16 19:26:06 -03:00
Gabriel Luiz Freitas Almeida
7539ba3166 Merge remote-tracking branch 'origin/dev' into fix_db_location 2023-08-16 19:21:47 -03:00
Gabriel Luiz Freitas Almeida
c2cfcafc17 🐛 fix(Dockerfile): change order of COPY commands to improve build caching and efficiency
🐛 fix(exportModal/index.tsx): add state for invalidName to handle validation of name field
2023-08-16 19:20:24 -03:00
anovazzi1
4b64d38d68 fix(inputComponent): fix TypeScript error by adding non-null assertion to className variable
fix(authContext): fix TypeScript error by setting initial value of userData to null
fix(tsconfig.json): enable strict mode in TypeScript compiler for better type checking and error detection
2023-08-16 18:29:47 -03:00
anovazzi1
e33e236466 Merge branch 'login' into types_refactor 2023-08-16 18:19:36 -03:00
anovazzi1
545a099339 removed strict and implicity any from tsconfig 2023-08-16 18:13:53 -03:00
anovazzi1
c5850977a7 fix(utils.ts): add TemplateVariableType import to fix type error in checkBaseClass function
chore(tsconfig.json): set strict to false and noImplicitAny to true to relax strict type checking and enforce explicit typing
2023-08-16 18:00:37 -03:00
anovazzi1
57f580c93d refactor(utils.ts): simplify logic for getting chat input field
The logic for getting the chat input field has been simplified by removing unnecessary checks and using optional chaining. This improves readability and reduces the complexity of the code.
2023-08-16 17:52:08 -03:00
anovazzi1
af218867eb fix(formModal): fix nullish coalescing operator usage to handle nullable properties in tabsStateFlowId.formKeysData 2023-08-16 17:49:03 -03:00
anovazzi1
9b0ff166c9 fix(ApiModal): fix null assertion on tabs array
fix(ApiModal): fix strict mode in tsconfig.json to enable strict type checking
2023-08-16 17:45:12 -03:00
Gabriel Luiz Freitas Almeida
d4beb3133c Merge remote-tracking branch 'origin/release' into celery 2023-08-16 15:44:27 -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
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
anovazzi1
0b8d91f116 Merge branch 'release' into bug/loadingIndicator 2023-08-16 15:26:15 -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
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
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
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
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
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
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
Lucas Oliveira
3667f4812e Fixed bug: flow not showing 2023-08-15 12:21:20 -03:00
Lucas Oliveira
81dba95720 Added view option to LangFlow 2023-08-15 12:16:32 -03:00
Gabriel Luiz Freitas Almeida
5140ae605d
CtrlBackspace fixed on Macbook (#765) 2023-08-15 13:09:11 +00:00
Gabriel Luiz Freitas Almeida
e63d6aa943 🐛 fix(endpoints.py): fix comparison of path variable to string in get_all() function to prevent duplicate processing of paths 2023-08-15 10:04:40 -03:00
Gabriel Luiz Freitas Almeida
b6d063a0fd 🐛 fix(settings.py): convert Path object to string before appending to list to avoid type error
🐛 fix(settings.py): check if value is already in the list before appending to avoid duplicates
2023-08-15 09:15:28 -03:00
Lucas Oliveira
f1f958a7ae CtrlBackspace fixed on Macbook 2023-08-15 08:52:07 -03:00
Gabriel Luiz Freitas Almeida
d0cee2cc09 Formatting 2023-08-14 21:07:54 -03:00
gustavoschaedler
ab61edfbf9 Merge remote-tracking branch 'origin/dev' into authentication 2023-08-14 22:52:57 +01:00
gustavoschaedler
e9a94d7374 🐛 fix(auth.py): remove unnecessary blank line
🐛 fix(auth.py): add validation for inactive users and users waiting for approval in authenticate_user function
 feat(login.py): remove unnecessary blank line
2023-08-14 22:46:55 +01:00
igorrCarvalho
cb66255b84 Refactor: Refactor api modal constant 2023-08-14 18:17:12 -03:00
gustavoschaedler
501d7399a8 🔒 chore(auth.py): add support for retrieving current user and current active user
🔒 chore(auth.py): add support for creating user tokens with user id

🔒 chore(auth.py): add support for updating last_login_at when creating user tokens

🔒 chore(auth.py): add support for updating user information

🔒 chore(login.py): add support for retrieving current active user in login route

🐛 fix(users.py): fix import order and remove unused imports to improve code readability
 feat(users.py): add support for pagination in read_all_users endpoint to retrieve a list of users with pagination
🔧 refactor(users.py): rename update_user function to patch_user for better semantics and consistency
🔧 refactor(users.py): refactor update_user function to use update_user function from models module for better code organization and reusability
 feat(users.py): add support for creating a superuser for testing purposes in add_super_user_for_testing_purposes_delete_me_before_merge_into_dev endpoint
2023-08-14 21:18:47 +01:00
Gabriel Luiz Freitas Almeida
e0f625e793 🐛 fix(utils.py): add condition to check if prompt has 'partial' attribute before calling it to prevent error 2023-08-14 17:17:57 -03:00
Gabriel Luiz Freitas Almeida
2144e1ec91 🐛 fix(types.py): handle case where prompt template is not present in PromptVertex
ℹ️ The code was modified to handle a case where the `template` attribute is not present in the `PromptVertex` class. If the `template` attribute is not found, the code checks if the `prompt` attribute is present and uses its `template` attribute instead. This change ensures that the code does not break when the `template` attribute is missing.
2023-08-14 17:16:54 -03:00
Gabriel Luiz Freitas Almeida
a9bb04ee24 🐛 fix(base.py): add is_task parameter to Vertex constructor to indicate if the vertex is a task
 feat(base.py): add `get_result` method to `Vertex` to retrieve the result of a built vertex
🐛 fix(types.py): pass `is_task=True` to `super().__init__` in `CustomComponentVertex` constructor
 feat(worker.py): add `build_vertex` task to build a vertex asynchronously
2023-08-14 17:05:40 -03:00