ToolJet/frontend/src/_components/ApiEndpointInput.jsx

573 lines
18 KiB
React
Raw Normal View History

Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
import React, { useEffect, useState } from 'react';
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
import { openapiService } from '@/_services';
import Select from '@/_ui/Select';
import { queryManagerSelectComponentStyle } from '@/_ui/Select/styles';
import DOMPurify from 'dompurify';
import { ToolTip } from '@/_components';
import CodeHinter from '@/AppBuilder/CodeEditor';
import { withTranslation } from 'react-i18next';
import { isEmpty } from 'lodash';
import PropTypes from 'prop-types';
import SolidIcons from '@/_ui/Icon/SolidIcons';
const operationColorMapping = {
get: 'azure',
post: 'green',
delete: 'red',
put: 'yellow',
};
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
const extractSchemaProperties = (schema) => {
if (!schema) return {};
if (schema.properties) {
return schema.properties;
}
// Handle allOf - merge all properties
if (schema.allOf) {
return schema.allOf.reduce((acc, subSchema) => {
const props = extractSchemaProperties(subSchema);
return { ...acc, ...props };
}, {});
}
if (schema.oneOf) {
return schema.oneOf.reduce((acc, subSchema) => {
const props = extractSchemaProperties(subSchema);
return { ...acc, ...props };
}, {});
}
// Handle anyOf - similar to oneOf
if (schema.anyOf) {
return schema.anyOf.reduce((acc, subSchema) => {
const props = extractSchemaProperties(subSchema);
return { ...acc, ...props };
}, {});
}
if (schema.$ref) {
console.warn('$ref found in schema, which may need to be resolved:', schema.$ref);
return {};
}
return {};
};
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
const ApiEndpointInput = (props) => {
const [loadingSpec, setLoadingSpec] = useState(true);
const [options, setOptions] = useState(props.options);
const [specJson, setSpecJson] = useState(null);
const [operationParams, setOperationParams] = useState({});
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
// Check if specUrl is an object (multiple specs) or string (single spec)
const isMultiSpec = typeof props.specUrl === 'object' && !Array.isArray(props.specUrl);
const [selectedSpecType, setSelectedSpecType] = useState(isMultiSpec ? Object.keys(props.specUrl)[0] || '' : null);
const fetchOpenApiSpec = (specUrlOrType) => {
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
setLoadingSpec(true);
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
const url = isMultiSpec ? props.specUrl[specUrlOrType] : props.specUrl;
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
openapiService
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
.fetchSpecFromUrl(url)
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
.then((response) => response.text())
.then((text) => {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
const format = url.endsWith('.json') ? 'json' : 'yaml';
openapiService.parseOpenapiSpec(text, format).then((data) => {
setSpecJson(data);
if (isMultiSpec) {
// MODIFIED: Retain existing values instead of clearing them
const currentParams = options?.params || {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
path: {},
query: {},
request: {},
};
// Keep existing values if the operation/path still exists in the new spec
let newOperation = options?.operation;
let newPath = options?.path;
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
let newSelectedOperation = null;
// Validate if the current operation/path exists in the new spec
if (newPath && newOperation && data?.paths?.[newPath]?.[newOperation]) {
newSelectedOperation = data.paths[newPath][newOperation];
} else {
// Only clear if the operation/path doesn't exist in the new spec
newOperation = null;
newPath = null;
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
}
const newOptions = {
...options,
operation: newOperation,
path: newPath,
selectedOperation: newSelectedOperation,
params: currentParams, // Retain existing params
specType: specUrlOrType,
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
};
setOptions(newOptions);
props.optionsChanged(newOptions);
}
setLoadingSpec(false);
});
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
});
};
const getOperationKey = (operation, path) => {
return `${operation}_${path}`;
};
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
const changeOperation = (value) => {
const operation = value.split('/', 2)[0];
const path = value.substring(value.indexOf('/'));
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
if (options.operation && options.path) {
const currentOperationKey = getOperationKey(options.operation, options.path);
setOperationParams((prevState) => ({
...prevState,
[currentOperationKey]: options.params,
}));
}
const newOperationKey = getOperationKey(operation, path);
const savedParams = operationParams[newOperationKey] || {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
path: {},
query: {},
request: {},
};
const newOptions = {
...options,
path,
operation,
selectedOperation: specJson.paths[path][operation],
params: savedParams,
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
};
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
setOptions(newOptions);
props.optionsChanged(newOptions);
};
const changeParam = (paramType, paramName, value) => {
if (value === '') {
removeParam(paramType, paramName);
} else {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
let parsedValue = value;
if (paramType === 'request') {
try {
parsedValue = JSON.parse(value);
} catch (e) {
console.error(`Invalid JSON for request param "${paramName}":`, e);
parsedValue = value;
}
}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
const newOptions = {
...options,
params: {
...options.params,
[paramType]: {
...options.params[paramType],
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
[paramName]: parsedValue,
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
},
},
};
setOptions(newOptions);
props.optionsChanged(newOptions);
}
};
const removeParam = (paramType, paramName) => {
const newOptions = JSON.parse(JSON.stringify(options));
const newParams = { ...newOptions.params };
const newParamType = { ...newParams[paramType] };
delete newParamType[paramName];
newParams[paramType] = newParamType;
newOptions.params = newParams;
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
setOptions(newOptions);
props.optionsChanged(newOptions);
};
const renderOperationOption = (data) => {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
const path = data.displayLabel || data.value.substring(data.value.indexOf('/'));
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
const operation = data.operation;
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
const summary = data.summary;
const isSelected = data.isSelected;
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
if (path && operation) {
return (
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
<div className="d-flex align-items-start">
<div className="me-2" style={{ minWidth: '60px' }}>
<span className={`badge bg-${operationColorMapping[operation]}`}>{operation.toUpperCase()}</span>
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
</div>
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
<div className="flex-grow-1">
<div>{path}</div>
{summary && !isSelected && (
<small className="text-muted d-block" style={{ fontSize: '0.875em' }}>
{summary}
</small>
)}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
</div>
</div>
);
} else {
return 'Select an operation';
}
};
const categorizeOperations = (operation, path, acc, category) => {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
const operationData = specJson.paths[path][operation];
const summary = operationData?.summary || '';
// Create searchable label that includes both path and summary
const searchableLabel = summary ? `${path} ${summary}` : path;
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
const option = {
value: `${operation}${path}`,
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
label: searchableLabel,
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
name: path,
operation: operation,
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
summary: summary || null,
displayLabel: path, // Keep original path for display
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
};
const existingCategory = acc.find((obj) => obj.label === category);
if (existingCategory) {
existingCategory.options.push(option);
} else {
acc.push({
label: category,
options: [option],
});
}
};
const computeOperationSelectionOptions = () => {
const paths = specJson?.paths;
if (isEmpty(paths)) return [];
const pathGroups = Object.keys(paths).reduce((acc, path) => {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
const operations = Object.keys(paths[path]);
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
const category = path.split('/')[2];
operations.forEach((operation) => categorizeOperations(operation, path, acc, category));
return acc;
}, []);
return pathGroups;
};
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
const getRequestBodyProperties = () => {
if (!options?.selectedOperation?.requestBody?.content) {
return {};
}
const contentTypes = Object.keys(options.selectedOperation.requestBody.content);
if (contentTypes.length === 0) {
return {};
}
const contentType = contentTypes.includes('application/json') ? 'application/json' : contentTypes[0];
const schema = options.selectedOperation.requestBody.content[contentType]?.schema;
return extractSchemaProperties(schema);
};
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
useEffect(() => {
const queryParams = {
path: props.options?.params?.path ?? {},
query: props.options?.params?.query ?? {},
request: props.options?.params?.request ?? {},
};
setLoadingSpec(true);
setOptions({ ...props.options, params: queryParams });
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
if (!isMultiSpec) {
fetchOpenApiSpec();
}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
}, []);
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
useEffect(() => {
if (isMultiSpec && selectedSpecType) {
fetchOpenApiSpec(selectedSpecType);
}
}, [selectedSpecType]);
const specTypeOptions = isMultiSpec
? Object.keys(props.specUrl).map((key) => ({
value: key,
label: key,
}))
: [];
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
return (
<div>
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
{/* Render spec type dropdown only for multi-spec */}
{isMultiSpec && (
<div className="d-flex g-2 mb-3">
<div className="col-3 form-label">
<label className="form-label">{props.t('globals.specType', 'Spec Type')}</label>
</div>
<div className="col flex-grow-1">
<Select
options={specTypeOptions}
value={{ value: selectedSpecType, label: selectedSpecType }}
onChange={(val) => setSelectedSpecType(val)}
width={'100%'}
styles={queryManagerSelectComponentStyle(props.darkMode, '100%')}
/>
</div>
</div>
)}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
{loadingSpec && (
<div className="p-3">
<div className="spinner-border spinner-border-sm text-azure mx-2" role="status"></div>
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
{props.t('', 'Please wait while we load the OpenAPI specification.')}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
</div>
)}
{options && !loadingSpec && (
<div>
<div className="d-flex g-2">
<div className="col-12 form-label">
<label className="form-label">{props.t('globals.operation', 'Operation')}</label>
</div>
<div className="col stripe-operation-options flex-grow-1" style={{ width: '90px', marginTop: 0 }}>
<Select
options={computeOperationSelectionOptions()}
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
value={
options?.operation && options?.path
? {
operation: options?.operation,
value: `${options?.operation}${options?.path}`,
summary: options?.selectedOperation?.summary || null,
isSelected: true,
displayLabel: options?.path,
label: options?.selectedOperation?.summary
? `${options?.path} ${options?.selectedOperation?.summary}`
: options?.path,
}
: null
}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
onChange={(value) => changeOperation(value)}
width={'100%'}
useMenuPortal={true}
customOption={renderOperationOption}
styles={queryManagerSelectComponentStyle(props.darkMode, '100%')}
useCustomStyles={true}
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
filterOption={(option, inputValue) => {
if (!inputValue) return true;
const searchValue = inputValue.toLowerCase();
const pathMatch = option.data.displayLabel?.toLowerCase().includes(searchValue);
const summaryMatch = option.data.summary?.toLowerCase().includes(searchValue);
return pathMatch || summaryMatch;
}}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
/>
{options?.selectedOperation && (
<small
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
style={{ marginTop: '10px' }}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
className="my-2"
dangerouslySetInnerHTML={{ __html: DOMPurify.sanitize(options?.selectedOperation?.description) }}
/>
)}
</div>
</div>
{options?.selectedOperation && (
<div className={`row stripe-fields-row ${props.darkMode && 'theme-dark'}`}>
<RenderParameterFields
parameters={options?.selectedOperation?.parameters}
type="path"
label={props.t('globals.path', 'PATH')}
options={options}
changeParam={changeParam}
removeParam={removeParam}
darkMode={props.darkMode}
/>
<RenderParameterFields
parameters={options?.selectedOperation?.parameters}
type="query"
label={props.t('globals.query'.toUpperCase(), 'Query')}
options={options}
changeParam={changeParam}
removeParam={removeParam}
darkMode={props.darkMode}
/>
<RenderParameterFields
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
parameters={getRequestBodyProperties()}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
type="request"
label={props.t('globals.requestBody', 'REQUEST BODY')}
options={options}
changeParam={changeParam}
removeParam={removeParam}
darkMode={props.darkMode}
/>
</div>
)}
</div>
)}
</div>
);
};
export default withTranslation()(ApiEndpointInput);
ApiEndpointInput.propTypes = {
options: PropTypes.object,
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
specUrl: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
optionsChanged: PropTypes.func,
darkMode: PropTypes.bool,
t: PropTypes.func,
};
const RenderParameterFields = ({ parameters, type, label, options, changeParam, removeParam, darkMode }) => {
let filteredParams;
if (type === 'request') {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
filteredParams = Object.keys(parameters || {});
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
} else {
filteredParams = parameters?.filter((param) => param.in === type);
}
const paramLabelWithDescription = (param) => {
return (
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
<ToolTip
message={type === 'request' ? DOMPurify.sanitize(parameters[param]?.description || '') : param.description}
>
<div className="cursor-help">
<input
type="text"
value={type === 'request' ? param : param.name}
className="form-control form-control-underline"
placeholder="key"
disabled
/>
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
</div>
</ToolTip>
);
};
const paramLabelWithoutDescription = (param) => {
return (
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
<input
type="text"
value={type === 'request' ? param : param.name}
className="form-control"
placeholder="key"
disabled
/>
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
);
};
const paramType = (param) => {
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
return (
<div className="p-2 text-muted">
{type === 'query' &&
param?.schema?.anyOf &&
param?.schema?.anyOf.map((type, i) =>
i < param.schema?.anyOf.length - 1
? type.type.substring(0, 3).toUpperCase() + '|'
: type.type.substring(0, 3).toUpperCase()
)}
{(type === 'path' || (type === 'query' && !param?.schema?.anyOf)) &&
param?.schema?.type?.substring(0, 3).toUpperCase()}
{type === 'request' && parameters[param]?.type?.substring(0, 3).toUpperCase()}
</div>
);
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
};
const paramDetails = (param) => {
return (
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
<div className="col-auto d-flex field field-width-179 align-items-center">
{(type === 'request' && parameters[param]?.description) || param?.description
? paramLabelWithDescription(param)
: paramLabelWithoutDescription(param)}
{(type === 'request' ? parameters[param]?.required : param.required) && (
<span className="text-danger fw-bold">*</span>
)}
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
{paramType(param)}
</div>
);
};
const inputField = (param) => {
return (
<CodeHinter
initialValue={(type === 'request' ? options?.params[type][param] : options?.params[type][param.name]) ?? ''}
mode="text"
placeholder={'Value'}
theme={darkMode ? 'monokai' : 'duotone-light'}
lineNumbers={false}
onChange={(value) => {
if (type === 'request') {
changeParam(type, param, value);
} else {
changeParam(type, param.name, value);
}
}}
height={'32px'}
/>
);
};
const clearButton = (param) => {
const handleClear = () => {
if (type === 'request') {
removeParam(type, param);
} else {
removeParam(type, param.name);
}
};
return (
<span
className="code-hinter-clear-btn"
role="button"
onClick={handleClear}
onKeyDown={(e) => {
if (e.key === 'Enter') {
handleClear();
}
}}
tabIndex="0"
>
<SolidIcons name="removerectangle" width="20" fill="#ACB2B9" />
</span>
);
};
return (
filteredParams?.length > 0 && (
<div className={`${type === 'request' ? 'request-body' : type}-fields d-flex`}>
<h5 className="text-heading form-label">{label}</h5>
<div className="flex-grow-1 input-group-parent-container">
{filteredParams.map((param) => (
<div className="input-group-wrapper" key={type === 'request' ? param : param.name}>
<div className="input-group">
{paramDetails(param)}
<div className="col field overflow-hidden code-hinter-borderless">{inputField(param)}</div>
Release : Google Calendar plugin and Oauth component extraction for plugins (#13393) * Enhance: Extract the general OAuth flow for plugins [PRE-RELEASE] (#13291) * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * Fix dropdown according to tooljet editions --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> * Feat/google calendar plugin pre release (#13361) * ee commit * Feature: Prometheus plugin (#13161) * prometheus plugin * added existing props * Host and database can be dynamically configured in query builder for PostgreSQL and MySQL data sources (#13163) * Fix: Postgresql datasource tries to connect via ssl even when ssl toggle is off (#13167) * The ability to provide a partition key for deleting items in CosmosDB datasource has been enabled (#13166) * Feature: Ability to configure the database name in Redis datasource (#13165) * merge commit * feat: updated openapi operation component * Fix: Avoid setting Content-Type header for requests without body and configure different host for all environments in OpenAPI [PRE-RELEASE] (#13230) * Send content-type only with body in request * Persist OpenAPI parameters per operation only * Configure different host * Add disable styles to the select input * Feat: New fields 'client id' and 'client secret' have been introduced in the Slack datasource configuration page in pre-release (#13162) * Update slack frontend * Update slack backend to handle custom creds * Add backfill migrations * Dynamically change dropdown according to versions * Change migration file name * Correctly access scope in chat:write logic * Extract general OAuth flow * Render save button correctly * Update the dropdown labels * feat: added google calendar * fix: option styling * fix: removed test connection * Fix dropdown according to tooljet editions * fix: updated oauth type * fix: added env variable helper * fix: environment fetch * feat: added default scope * Remove connect button when multi-auth true * Make scope configurable * Hardcode google calendar scope --------- Co-authored-by: Ganesh Kumar <40178541+ganesh8056@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com> --------- Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com> Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com> Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com> Co-authored-by: parthy007 <parthadhikari1812@gmail.com>
2025-07-14 16:48:06 +00:00
{((type === 'request' && options['params'][type][param]) || options['params'][type][param?.name]) &&
Feature: Stripe plugin UI fixes with OpenAPI endpoint as source (#2725) * Fixed GET and DELETE request input renders and added all UX fixes (#9498) * fixed get and delete request input renders and added all UX fixes * Extracted Stripe plugin component as a separate component for Dynamic Form. * Resolved PR review comments and fixed issue where rendering path input field crashed the app. * Changed param name underline to dashed for tooltip and revamped input field clear button * Fixed a few sonarlint issues. * Removed the duplicate code by creating a separate function named RenderParameterFields. * Refactored computeOperationSelectionOptions function to not nest functions more than 4 levels deep. * Refactored RenderParameterFields function to reduce its Cognitive Complexity. * Made span tag with the 'button' interactive role focusable. * Inside switch case for codehinter in DynamicForm > getElementProps, Extracted nested ternary operation for theme into an independent statement. * Added keyboard listener to the clear button. * Removed opacity from select dropdown and operation from operation select dropdown UI. * Fixed syntax error in clearButton function. * Removed the package @nrwl/nx-linux-x64-gnu from marketplace dependencies. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com> * Made changes according to new app builder architecture in v3. * Fixed import issue for codehintor * Fixed issue where due to incorrect value, stripe queries crashed the entire app. --------- Co-authored-by: Mansukh Kaur <mansukhkaur@Mansukhs-MacBook-Pro.local> Co-authored-by: Devanshu Rastogi <devanshu.rastogi05@gmail.com>
2024-11-21 15:47:42 +00:00
clearButton(param)}
</div>
</div>
))}
</div>
</div>
)
);
};
RenderParameterFields.propTypes = {
parameters: PropTypes.any,
type: PropTypes.string,
label: PropTypes.string,
options: PropTypes.object,
changeParam: PropTypes.func,
removeParam: PropTypes.func,
darkMode: PropTypes.bool,
};