Commit graph

101 commits

Author SHA1 Message Date
anovazzi1
98afa2192b update poetry lock and package-lock 2023-10-06 15:46:00 -03:00
anovazzi1
88d91c48d8 Merge remote-tracking branch 'origin/dev' into NGNMergeDev 2023-10-06 15:41:42 -03:00
anovazzi1
56fce07318 refactor(reactflowUtils.ts): simplify logic for adding edges to selection in validateSelection function
fix(reactflowUtils.ts): filter edges in validateSelection function based on nodes in the selection to ensure only connected edges are added
2023-10-05 19:51:16 -03:00
anovazzi1
c67d7da5e2 fix(typesContext.tsx): import Edge from reactflow to fix missing type declaration
feat(typesContext.tsx): add deleteEdge function to typesContext to delete edges from reactFlowInstance
fix(PageComponent/index.tsx): add deleteEdge function to delete selected edges from typesContext
2023-10-03 19:46:22 -03:00
anovazzi1
b19565385b fix paste function 2023-10-02 15:18:58 -03:00
Cristhian Zanforlin Lousa
4e613117d6 🚀 chore(package.json): update reactflow package version to 11.9.2 for bug fixes and improvements
🐛 fix(dictAreaModal/index.tsx): prevent delete Node and close modal when user presses backspace key to improve user experience
2023-09-27 19:19:04 -03:00
anovazzi1
41d18edc97 update package lock json 2023-09-26 10:46:55 -03:00
Gabriel Luiz Freitas Almeida
05b1f3658e 🔧 chore(frontend): add newline at the end of package-lock.json file to adhere to coding conventions 2023-09-22 14:05:46 -03:00
Gabriel Luiz Freitas Almeida
78ecb4c341 Merge remote-tracking branch 'origin/dev' into celery 2023-09-22 12:53:05 -03:00
anovazzi1
f63a19578b update lock file 2023-09-21 21:28:19 -03:00
anovazzi1
b2f14793e3 migrate progress and install playwrite 2023-09-20 19:53:25 -03:00
anovazzi1
3305983cc4 refactor(reactflowUtils.ts): extract duplicated code into a helper function to improve readability and maintainability
fix(reactflowUtils.ts): fix typo in function name scapedJSONStringfy to escapedJSONStringify
fix(reactflowUtils.ts): fix typo in function name customStringify to escapedJSONStringify
feat(reactflowUtils.ts): add inputTypes property to targetHandleType to improve functionality and accuracy of handle connection check
2023-09-18 18:21:09 -03:00
Cristhian Zanforlin Lousa
0838baa50a merge dev 2023-09-17 10:32:45 -03:00
anovazzi1
9647fe0b69 fix bug on infinity icon 2023-09-14 21:17:23 -03:00
Cristhian Zanforlin Lousa
887bfb8ee7 🐛 fix(genericModal/index.tsx): close modal when template has no variables to prevent user confusion 2023-09-13 21:42:26 -03:00
anovazzi1
249cf833fa fix(AdminPage/index.tsx): fix asynchronous handling of updateUser function to properly reset filter and set success data after user update
fix(styleUtils.ts): fix import statement for GradientSparkles component to use curly braces for named import
2023-09-11 18:46:50 -03:00
anovazzi1
7bdaa1bca6 copy package-lock from dev to avoid dependencie erro 2023-09-10 21:23:18 -03:00
anovazzi1
db4bb0c822 Merge remote-tracking branch 'origin/dev' into newGroupNode 2023-09-10 19:54:28 -03:00
anovazzi1
e22f3acf8c fix(DisclosureComponent): remove commented out code and fix missing icon bug
feat(PageComponent): add selection menu component and onClick event handler for debugging purposes
2023-09-08 17:48:44 -03:00
Cristhian Zanforlin Lousa
afc1888d73 🎨 style(dictAreaModal): update BaseModal size prop value to "medium-h-full" for better UI layout 2023-09-08 10:00:59 -03:00
Cristhian Zanforlin Lousa
1beca4ed12 📦 chore(frontend): add react18-json-view package to package.json dependencies
🎨 style(App.css): reformat CSS code for better readability and consistency
🚀 feat(App.css): add styles for json-view component
🔨 refactor(parameterComponent): extract DictComponent to a separate file for reusability
🔧 chore(constants): add constant for CODE_DICT_DIALOG_SUBTITLE
🔨 refactor(EditNodeModal): extract DictComponent to a separate file for reusability
🔧 chore(constants): add constant for CODE_DICT_DIALOG_SUBTITLE
🔨 refactor(codeAreaModal): remove unused isTweakPage variable

🚀 feat(dictAreaModal): add DictAreaModal component to allow editing of dictionaries
🔧 chore(styleUtils.ts): import and add BookMarked icon to nodeIconsLucide for future use
2023-09-04 20:15:23 -03:00
Gabriel Luiz Freitas Almeida
5c258d08f0 Merge remote-tracking branch 'origin/dev' into celery 2023-09-01 15:24:07 -03:00
anovazzi1
19dd994c12 chore(frontend): update dependencies in package.json
- Update "@emotion/react" to version "^11.11.1"
- Update "@emotion/styled" to version "^11.11.0"
- Update "@headlessui/react" to version "^1.7.17"
- Update "@heroicons/react" to version "^2.0.18"
- Update "@mui/material" to version "^5.14.7"
- Update "@tabler/icons-react" to version "^2.32.0"
- Update "@tailwindcss/forms" to version "^0.5.6"
- Update "ace-builds" to version "^1.24.1"
- Update "axios" to version "^1.5.0"
- Update "class-variance-authority" to version "^0.6.1"
- Update "dompurify" to version "^3.0.5"
- Update "esbuild" to version "^0.17.19"
- Update "react-error-boundary" to version "^4.0.11"
- Update "react-icons" to version "^4.10.1"
- Update "react-router-dom" to version "^6.15.0"
- Update "react-tabs" to version "^6.0.2"
- Update "react-tooltip" to version "^5.21.1"
- Update "rehype-mathjax" to version "^4.0.3"
- Update "shadcn-ui" to version "^0.2.3"
- Update "tailwind-merge" to version "^1.14.0"
- Update "tailwindcss-animate" to version "^1.0.7"

chore(frontend): update devDependencies in package.json

- Update "@swc/cli" to version "^0.1.62"
- Update "@swc/core" to version "^1.3.80"
- Update "@tailwindcss/typography" to version "^0.5.9"
- Update "@testing-library/jest-dom" to version "^5.17.0"
- Update "@testing-library/react" to version "^13.4.0"
- Update "@testing-library/user-event" to version "^13.5.0"
- Update "@types/lodash" to version "^4.14.197"
- Update "@types/node" to version "^16.18.46"
- Update "@types/react
2023-08-30 19:12:28 -03:00
anovazzi1
6457725d13 fix(genericModal/index.tsx): remove debugger statement for cleaner code
fix(genericModal/index.tsx): update condition for setting nodeClass to avoid unnecessary re-rendering
2023-08-29 22:29:41 -03:00
anovazzi1
02cc23d6b1
Login (#802)
### Description
This pull request introduces a significant enhancement to the project by
incorporating robust authentication logic. The enhancement addresses the
critical need for secure user access and data protection within the
application. With this addition, the system will be able to authenticate
users, verify their identities, and provide access only to authorized
individuals.

### Changes Implemented
- **Authentication Middleware**: A new middleware module has been
implemented to intercept incoming requests and validate user
authentication. This middleware checks for valid authentication tokens
or credentials and ensures that only authenticated users can access
protected resources.

- **User Authentication Endpoint**: A new endpoint has been created to
handle user authentication. This endpoint allows users to provide their
credentials, which are then securely processed and validated against the
stored user data.

- **Password Hashing**: User passwords are now securely hashed using a
strong cryptographic algorithm before being stored in the database. This
ensures that even if the database is compromised, user passwords remain
inaccessible.

- **Token-Based Authentication**: Upon successful authentication, the
system generates a time-limited access token for the user. This token
must be included in subsequent requests to access protected resources.
Token validity is maintained through token expiration and refresh
mechanisms.

- **Authorization Checks**: The logic has been extended to include
authorization checks after successful authentication. This ensures that
authenticated users only have access to the resources they are
authorized to use, based on their roles and permissions.

### Benefits
1. **Enhanced Security**: By implementing strong authentication
mechanisms and password hashing, the project significantly improves
security, minimizing the risk of unauthorized access or data breaches.

2. **User-Friendly Experience**: Users can securely access the
application, confident in the knowledge that their credentials and data
are protected. The token-based authentication simplifies the user
experience by eliminating the need for frequent re-authentication.

3. **Scalability**: The authentication logic has been designed with
scalability in mind, ensuring that the system can handle a growing
number of users and requests without compromising security or
performance.

4. **Modularity**: The new authentication logic has been integrated as a
separate module, enhancing the project's modularity and maintainability.
2023-08-29 17:38:20 -03:00
anovazzi1
d73b3b0b52 fix(users.py): improve error message when trying to add a user with an already claimed username 2023-08-29 16:26:15 -03:00
Lucas Oliveira
2cfd772387 React Flow update and minor style fixes 2023-08-29 15:42:30 -03:00
Cristhian Zanforlin Lousa
b319b909e4 ️ chore(frontend): update moment package to version 2.29.4 for bug fixes and improvements 2023-08-18 15:01:10 -03:00
Gabriel Luiz Freitas Almeida
853648ae33 📝 chore(locustfile.py): add locustfile.py for load testing the API
🐛 fix(test_process.py): refactor test_load_langchain_object_with_cached_session to use session_manager
🐛 fix(test_process.py): refactor test_load_langchain_object_with_no_cached_session to use session_manager
🐛 fix(test_process.py): refactor test_load_langchain_object_without_session_id to use session_manager
2023-08-18 08:51:56 -03:00
Cristhian Zanforlin Lousa
bfe8053127 merging with authentication 2023-08-17 19:18:30 -03:00
anovazzi1
ab81c604a1 chore(Makefile): update 'install_frontendc' target to remove existing node_modules and package-lock.json before running 'npm install' to ensure a clean installation 2023-08-17 15:30:24 -03:00
Lucas Oliveira
500fc98a00 Merge branch 'main' into dev 2023-08-17 10:13:38 -03:00
Cristhian Zanforlin Lousa
ad8cbddd91 📦 chore(frontend): add moment package as a dependency to handle date and time formatting
🐛 fix(headerComponent): add onClick event handler to navigate to "/account/api-keys" when button is clicked

🐛 fix(API): add missing API functions for getting, creating, and deleting API keys

🐛 fix(SecretKeyModal): add functionality to create a new API key and set the value in the input field

🔧 fix(ApiKeysPage): remove unused imports and refactor code to improve readability and performance
 feat(ApiKeysPage): add support for fetching and displaying API keys for the logged-in user
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
🔧 fix(ApiKeysPage): refactor code to improve readability and remove unnecessary functions and variables
2023-08-16 18:41:40 -03:00
Cristhian Zanforlin Lousa
26345cc9a6 📦 chore(frontend): update package.json to add @radix-ui/react-form dependency
🔨 refactor(PaginatorComponent): remove unnecessary whitespace in paginate prop
📝 docs(ConfirmationModal): add missing JSDoc comments and improve code readability
📝 docs(UserManagementModal): add missing JSDoc comments and improve code readability
🔨 refactor(baseModal): improve code readability by adding a div wrapper for headerChild

 feat(AdminPage/index.tsx): add Pencil icon from lucide-react library to the import statement to use it in the component
 feat(AdminPage/index.tsx): add ConfirmationModal and UserManagementModal components to import statements to use them in the component
🐛 fix(AdminPage/index.tsx): remove unused handleSaveClick function
 feat(AdminPage/index.tsx): add modalEditOpen and modalDeleteOpen states to handle the opening and closing of the modals
 feat(AdminPage/index.tsx): add handleEditUser function to handle the edit user functionality
🐛 fix(AdminPage/index.tsx): remove unused handleSaveClick function
 feat(AdminPage/index.tsx): add ConfirmationModal component to handle the delete user functionality
 feat(AdminPage/index.tsx): add UserManagementModal component to handle the edit user functionality
 feat(components/index.ts): add ConfirmationModalType and UserManagementType types to handle the props of ConfirmationModal and UserManagementModal components
🐛 fix(components/index.ts): add missing newline at the end of the file
 feat(utils/styleUtils.ts): add UserMinus2 and UserPlus2 icons from lucide-react library to the import statement
2023-08-09 12:13:58 -03:00
Cristhian Zanforlin Lousa
dd6d1e64f7 🔧 chore(frontend): add @radix-ui/react-select package to package.json dependencies
🔧 chore(frontend): add PaginatorComponent and Select component to the project

🔧 fix(api.tsx): comment out error retry logic to temporarily disable it

 feat(LoginPage): add login functionality for admin page

🆕 feat(AdminPage): add AdminPage component to display a list of users and provide filtering and pagination functionality
🐛 fix(AdminPage): fix handleInputChange function to update the password value correctly
🔨 refactor(AdminPage): refactor handleFilterUsers function to filter users based on user and email fields
🔥 chore(AdminPage): remove unused imports and console.log statements

 feat(routes.tsx): add routes for admin login and admin page to enable access to admin features
🔧 chore(components/index.ts): add PaginatorComponentType to define the type for a paginator component
2023-08-08 20:10:28 -03:00
Lucas Oliveira
39a696117e Changed notification center popup to ShadCN Popover and deleted popupContext permanently. 2023-07-25 15:15:52 -03:00
Lucas Oliveira
bfbe66a547 Merge branch 'dev' into interceptor-dev 2023-07-25 10:07:34 -03:00
dependabot[bot]
f57ecadfc1
build(deps): bump word-wrap from 1.2.3 to 1.2.5 in /src/frontend
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.5.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.5)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-25 11:44:58 +00:00
Cristhian Zanforlin Lousa
9f3a7b9a75 📦 chore(frontend): add @types/axios package to improve type checking in the frontend
🐛 fix(typesContext.tsx): remove unnecessary retry logic and error logging in getTypes function
🚀 feat(API/api.tsx): add ApiInterceptor component to handle API response retries and error handling
🚀 feat(API/index.ts): replace axios calls with api instance from API/api.tsx for better code organization and reusability

 feat(index.tsx): add ApiInterceptor component to intercept API requests and responses for additional processing
2023-07-24 16:16:02 -03:00
Lucas Oliveira
169a20ab97 Fixed all bugs with tweaks on API modal 2023-07-24 09:55:42 -03:00
Cristhian Zanforlin Lousa
0669a3e148 🎨 style(formModal): add custom-scroll class to Textarea component for custom styling
🎨 style(tailwind.config.js): add cursor: auto to scrollbar styles for better user experience
2023-07-17 19:50:52 -03:00
Cristhian Zanforlin Lousa
0db3ed20d8 🐛 fix(AccordionComponent): change trigger prop type to accept string or ReactElement to improve flexibility
 feat(AccordionComponent): add keyValue prop to uniquely identify each accordion item for better performance and stability
🐛 fix(ApiModal): add keyValue prop to AccordionComponent to uniquely identify each accordion item for better performance and stability
🐛 fix(formModal): remove unused imports and replace Accordion, AccordionContent, AccordionItem, and AccordionTrigger with AccordionComponent
 feat(formModal): add keyValue prop to AccordionComponent to uniquely identify each accordion item for better performance and stability
🐛 fix(types): change trigger prop type in AccordionComponentType to accept string or ReactElement to improve flexibility
2023-07-17 19:30:39 -03:00
Cristhian Zanforlin Lousa
1ff4ef514f 🔧 fix(AccordionComponent): add className "AccordionContent" to AccordionContent component for styling purposes
🔧 fix(formModal): add className "AccordionContent" to AccordionContent component for styling purposes
🔧 fix(index.css): add styles for AccordionContent component to handle animation for opening and closing
🔧 fix(tailwind.config.js): remove unused keyframes and animations related to accordion
2023-07-17 10:48:45 -03:00
Cristhian Zanforlin Lousa
de2a24fa5d 🐛 fix(ApiModal/index.tsx): fix startState function to properly reset tweak and tweaksList variables
 feat(ApiModal/index.tsx): add logic to reset tweak and tweaksList variables when flow data nodes length is 0
2023-07-14 21:52:26 -03:00
Cristhian Zanforlin Lousa
2e4228abb4 🔧 fix(EditFlowSettingsComponent): add div wrapper around description label for proper styling
🔧 fix(EditNodeModal): remove unused imports and update component structure to use BaseModal

🔧 fix(baseModal): add Footer component to BaseModal and update component structure to use Header and Footer

🔧 fix(exportModal): remove unused imports and update component structure to use BaseModal

🔧 fix(flowSettingsModal): import BaseModal component and refactor modal structure for better readability and maintainability
🔧 fix(genericModal): adjust margin-top for prompt variables description to improve spacing
2023-07-12 21:53:32 -03:00
anovazzi1
c4ce44c592 bug fix for ace 2023-07-07 16:45:26 -03:00
Gabriel Luiz Freitas Almeida
4bc1a843d1 🔧 chore(frontend): add prettier-plugin-organize-imports package to improve code formatting
The prettier-plugin-organize-imports package is added to the project to improve code formatting. This plugin helps to organize and sort import statements in a consistent and standardized manner, making the codebase more readable and maintainable.
2023-07-07 15:33:43 -03:00
Cristhian Zanforlin Lousa
6be38af44e merge fix 2023-07-05 16:48:44 -03:00
Gabriel Luiz Freitas Almeida
032c616c00 ⚙️ chore(frontend): add Prettier and Prettier plugin for Tailwind CSS
The package.json file has been updated to include the dependencies for Prettier and the Prettier plugin for Tailwind CSS. Prettier is a code formatter that helps maintain consistent code style across the project. The Prettier plugin for Tailwind CSS ensures that the Tailwind CSS code is formatted correctly. Additionally, a new prettier.config.js file has been added to configure Prettier with the Tailwind CSS plugin. This will improve the code formatting and maintainability of the frontend codebase.
2023-07-02 10:28:44 -03:00
Cristhian Zanforlin Lousa
168a1b9e0f merging branch release into dev 2023-06-30 13:49:49 -03:00