ToolJet icon indicating copy to clipboard operation
ToolJet copied to clipboard

Release: Marketplace Sprint 6

Open akshaysasidrn opened this issue 1 year ago • 4 comments

What's Changed

🚀 Features

  • Feature: Add SSL support to MongoDB datasource
  • Feature: Add list all sheets and create new spreadsheet operation to GoogleSheets
  • Feature: Stripe plugin UI fixes with OpenAPI endpoint as source
    • closes #9498
    • by @devanshu052000, @mansukh-tj

🌟 Enhancements

  • Enhance: Statement timeout for postgresql mssql mysql can now be configured from env
    • by @ganesh8056
  • Enhance: Add clear all, cancel & apply functionality to TJDB filter-popup
    • closes #9103
    • by @parthy007
  • Enhance: Add read documentation link with data source drop down in query builder
    • closes: #10713
    • by @parthy007
  • Enhance: Improve error handling in Google-Sheets run query
    • closes #9498
    • by @parthy007
  • Enhance: Error handling for PgSql, MySql and MsSql
    • closes: #10883
    • by @parthy007
  • Enhance: Rest api body to accept raw input instead of raw json
    • closes #10814
    • by @devanshu052000
  • Enhance: Improve error handling in Airtable run query
  • Enhance: Add AI-tag to datasources in marketplace page #2597

akshaysasidrn avatar Nov 22 '24 07:11 akshaysasidrn

Code Review Agent Run Status

  • Limitations and other issues: The AI Code Review Agent was unable to review this change because Bito workspace ToolJet is downgraded to the plan that doesn’t include Code Review Agent feature.

    Please coordinate with your workspace admin to request an upgrade to the 10X Developer Plan.

TooljetBot avatar Nov 22 '24 07:11 TooljetBot

Deployment: https://tooljet-pr-11389.onrender.com Dashboard: https://dashboard.render.com/web/srv-ct05qclds78s739je2m0

github-actions[bot] avatar Nov 22 '24 10:11 github-actions[bot]

Code Review Agent Run Status

  • Limitations and other issues: The AI Code Review Agent was unable to review this change because Bito workspace ToolJet is downgraded to the plan that doesn’t include Code Review Agent feature.

    Please coordinate with your workspace admin to request an upgrade to the 10X Developer Plan.

TooljetBot avatar Nov 22 '24 11:11 TooljetBot

Quality Gate Failed Quality Gate failed

Failed conditions
4.9% Duplication on New Code (required ≤ 3%)
C Reliability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

sonarqubecloud[bot] avatar Nov 28 '24 20:11 sonarqubecloud[bot]

Code Review Agent Run #684493

Actionable Suggestions - 12
  • plugins/packages/mongodb/lib/index.ts - 1
    • Consider updating require() import style · Line 3-3
  • frontend/src/MarketplacePage/utils.js - 1
    • Consider handling plugin not found case · Line 16-17
  • frontend/src/_components/ApiEndpointInput.jsx - 1
  • frontend/src/_ui/Select/styles.js - 1
    • Consider removing unused state parameter · Line 31-31
  • plugins/packages/common/lib/oauth.ts - 1
    • Consider removing unused parameter underscore · Line 22-22
  • plugins/packages/googlesheets/lib/operations.ts - 1
    • Potential undefined value handling improvement · Line 307-308
  • frontend/src/MarketplacePage/InstalledPlugins.jsx - 1
    • Potential runtime error with tags mapping · Line 150-159
  • frontend/src/Editor/QueryManager/QueryEditors/index.js - 1
    • Consider resolving import resolution issue · Line 6-6
  • frontend/src/_styles/theme.scss - 1
  • frontend/src/Editor/QueryManager/QueryEditors/Restapi/index.jsx - 1
    • Consider validating json_body migration logic · Line 119-123
  • frontend/src/MarketplacePage/MarketplaceCard.jsx - 1
    • Consider handling non-AI tags in map · Line 61-70
  • frontend/src/Editor/QueryManager/QueryEditors/Restapi/TabBody.jsx - 1
    • Consider consolidating body state management props · Line 4-7
Additional Suggestions - 10
  • plugins/packages/mysql/lib/index.ts - 1
    • Structured error handling could be improved · Line 48-61
  • plugins/packages/restapi/lib/index.ts - 1
  • frontend/src/_components/DynamicForm.jsx - 1
    • Consider adding error handling for endpoint · Line 500-506
  • frontend/src/_components/ApiEndpointInput.jsx - 2
  • frontend/src/GlobalDatasources/GlobalDataSourcesPage/index.jsx - 2
    • Consider consolidating plugin ID checks · Line 448-452
    • Consider extracting complex boolean condition · Line 477-477
  • frontend/src/_styles/theme.scss - 3
Review Details
  • Files reviewed - 55 · Commit Range: 0890027..09c305b
    • .version
    • frontend/.version
    • frontend/assets/images/icons/ai-tag.svg
    • frontend/src/AppBuilder/QueryManager/Components/QueryManagerBody.jsx
    • frontend/src/AppBuilder/QueryManager/QueryEditors/Restapi/TabBody.jsx
    • frontend/src/AppBuilder/QueryManager/QueryEditors/Restapi/TabContent.jsx
    • frontend/src/AppBuilder/QueryManager/QueryEditors/Restapi/Tabs.jsx
    • frontend/src/AppBuilder/QueryManager/QueryEditors/Restapi/index.jsx
    • frontend/src/AppBuilder/QueryManager/QueryEditors/Stripe.jsx
    • frontend/src/AppBuilder/QueryManager/QueryEditors/index.js
    • frontend/src/Editor/DataSourceManager/DataSourceManager.jsx
    • frontend/src/Editor/QueryManager/Components/QueryManagerBody.jsx
    • frontend/src/Editor/QueryManager/QueryEditors/Restapi/TabBody.jsx
    • frontend/src/Editor/QueryManager/QueryEditors/Restapi/TabContent.jsx
    • frontend/src/Editor/QueryManager/QueryEditors/Restapi/Tabs.jsx
    • frontend/src/Editor/QueryManager/QueryEditors/Restapi/index.jsx
    • frontend/src/Editor/QueryManager/QueryEditors/Stripe.jsx
    • frontend/src/Editor/QueryManager/QueryEditors/index.js
    • frontend/src/GlobalDatasources/GlobalDataSourcesPage/index.jsx
    • frontend/src/MarketplacePage/InstalledPlugins.jsx
    • frontend/src/MarketplacePage/MarketplaceCard.jsx
    • frontend/src/MarketplacePage/MarketplacePlugins.jsx
    • frontend/src/MarketplacePage/utils.js
    • frontend/src/TooljetDatabase/Filter/index.jsx
    • frontend/src/TooljetDatabase/Filter/styles.scss
    • frontend/src/TooljetDatabase/Forms/FilterForm.jsx
    • frontend/src/TooljetDatabase/Forms/styles.scss
    • frontend/src/TooljetDatabase/Table/Header.jsx
    • frontend/src/_components/ApiEndpointInput.jsx
    • frontend/src/_components/DynamicForm.jsx
    • frontend/src/_helpers/utils.js
    • frontend/src/_styles/global-datasources.scss
    • frontend/src/_styles/queryManager.scss
    • frontend/src/_styles/theme.scss
    • frontend/src/_ui/AiBanner.jsx
    • frontend/src/_ui/AppButton/AppButton.scss
    • frontend/src/_ui/Card/Card.jsx
    • frontend/src/_ui/Icon/solidIcons/AITag.jsx
    • frontend/src/_ui/Icon/solidIcons/index.js
    • frontend/src/_ui/Select/SelectComponent.jsx
    • frontend/src/_ui/Select/styles.js
    • plugins/packages/airtable/lib/index.ts
    • plugins/packages/common/lib/index.ts
    • plugins/packages/common/lib/oauth.ts
    • plugins/packages/googlesheets/lib/index.ts
    • plugins/packages/googlesheets/lib/operations.ts
    • plugins/packages/googlesheets/lib/types.ts
    • plugins/packages/mongodb/lib/index.ts
    • plugins/packages/mongodb/lib/types.ts
    • plugins/packages/mssql/lib/index.ts
    • plugins/packages/mysql/lib/index.ts
    • plugins/packages/postgresql/lib/index.ts
    • plugins/packages/restapi/lib/index.ts
    • server/.version
    • server/src/modules/casl/abilities/tooljet-db-ability.factory.ts
  • Files skipped - 5
    • marketplace/plugins/awsredshift/README.md - Reason: Filter setting
    • plugins/packages/googlesheets/lib/operations.json - Reason: Filter setting
    • plugins/packages/mongodb/lib/manifest.json - Reason: Filter setting
    • plugins/packages/stripe/lib/operations.json - Reason: Filter setting
    • server/src/assets/marketplace/plugins.json - Reason: Filter setting
  • Tools
    • Eslint (Linter) - ✔︎ Successful

AI Code Review powered by Bito Logo

TooljetBot avatar Nov 28 '24 20:11 TooljetBot

Changelist by Bito

This pull request implements the following key changes.

Key Change Files Impacted
Feature Improvement - REST API Body Enhancement

- TabBody.jsx - Updated to accept raw body input instead of raw JSON

- TabContent.jsx - Modified to handle raw body input

- Tabs.jsx - Updated UI to reflect raw body input changes

- index.jsx - Implemented raw body handling in REST API editor

Feature Improvement - Data Source Documentation Link

- QueryManagerBody.jsx - Added documentation link for data sources in query builder

Feature Improvement - AI Tag for Data Sources

- DataSourceManager.jsx - Added AI tag display for applicable data sources

- ai-tag.svg - Added new AI tag icon

Other Improvements - Version Update and Code Cleanup

- .version - Updated version to 3.0.5-ce

- .version - Updated frontend version to 3.0.5-ce

- Stripe.jsx - Removed Stripe component

- index.js - Removed Stripe import and export

Feature Improvement - REST API Body Enhancement

- TabBody.jsx - Updated to accept raw body input instead of JSON body

- TabContent.jsx - Modified to handle raw body input instead of JSON body

- Tabs.jsx - Updated UI to reflect raw body input changes

- index.jsx - Implemented raw body handling in REST API editor

Feature Improvement - Data Source Documentation and UI Enhancements

- QueryManagerBody.jsx - Added documentation link for data sources and improved UI layout

- index.jsx - Added tags display for data sources and improved UI

Other Improvements - Code Cleanup and Refactoring

- index.js - Removed Stripe import and export

- Stripe.jsx - Removed Stripe component

Feature Improvement - Enhanced Filter UI and Functionality

- index.jsx - Redesigned filter UI with improved validation and error handling

- styles.scss - Added new styles for enhanced filter popup and components

- FilterForm.jsx - Updated filter form with better input handling and tooltips

- styles.scss - Added styles for filter form components

- Header.jsx - Added active filters count and improved filter layout

Feature Improvement - AI Tag Integration

- index.jsx - Added AI tag support for data sources

- InstalledPlugins.jsx - Implemented AI tag display for installed plugins

- MarketplaceCard.jsx - Added AI tag display in marketplace cards

- MarketplacePlugins.jsx - Updated marketplace plugins layout

- utils.js - Added utility functions for handling plugin tags

Feature Improvement - REST API Body Enhancement

- TabBody.jsx - Updated to accept raw body input instead of raw JSON

- TabContent.jsx - Modified to handle raw body input

- Tabs.jsx - Updated UI to reflect raw body input changes

- index.jsx - Implemented raw body handling in REST API editor

Other Improvements - Code Cleanup and Version Update

- .version - Updated version to 3.0.5-ce

- .version - Updated frontend version to 3.0.5-ce

- Stripe.jsx - Removed Stripe component

- index.js - Removed Stripe import and export

Feature Improvement - API Endpoint Input Enhancement

- ApiEndpointInput.jsx - Added new ApiEndpointInput component for handling API endpoint selection and parameter input

- DynamicForm.jsx - Integrated ApiEndpointInput component into DynamicForm

- SelectComponent.jsx - Updated SelectComponent to support custom border radius

- styles.js - Modified styles to accept custom border radius

Feature Improvement - AI Tag Integration

- AiBanner.jsx - Added new AiBanner component for displaying AI tag

- Card.jsx - Integrated AI tag display in Card component

- AITag.jsx - Added new AITag icon component

- index.js - Integrated AITag icon into icon library

Other Improvements - Styling and Layout Improvements

- global-datasources.scss - Updated styling for datasource cards and tags

- queryManager.scss - Improved styling for query manager components

- theme.scss - Enhanced overall theme styling including filter buttons and tags

- AppButton.scss - Updated button styling for disabled state

Other Improvements - Code Refactoring and Bug Fixes

- utils.js - Improved hasBuilderRole function to handle edge cases

Feature Improvement - Enhanced Error Handling

- index.ts - Improved error handling with detailed error information for Airtable queries

- index.ts - Added detailed error handling for MSSQL queries

- index.ts - Enhanced error handling with MySQL-specific error details

- index.ts - Implemented comprehensive error handling for PostgreSQL queries

New Feature - Google Sheets Operations Enhancement

- index.ts - Added new operations for creating spreadsheets and listing all sheets

- operations.ts - Implemented new spreadsheet operations and improved error handling

- types.ts - Updated types to support new spreadsheet operations

Feature Improvement - REST API and OAuth Enhancements

- index.ts - Added JSON content type checking functionality

- oauth.ts - Enhanced OAuth handling and content type validation

- index.ts - Improved REST API body handling with raw input support

New Feature - MongoDB SSL Support

- index.ts - Added SSL/TLS support for MongoDB connections

- types.ts - Added types for MongoDB SSL configuration

Other Improvements - UI and Security Updates

- styles.js - Added border radius customization support

- .version - Updated version to 3.0.5-ce

- tooljet-db-ability.factory.ts - Improved builder role validation

TooljetBot avatar Nov 28 '24 21:11 TooljetBot