* feat: Add new gRPC v2 plugin
- Enhanced DataSourcesController to support invoking methods on data sources.
- Introduced InvokeDataSourceMethodDto for method invocation requests.
- Added WhitelistPluginGuard to restrict method invocation based on data source kind.
- Updated IDataSourcesController and IDataSourcesService interfaces to include invoke method functionality.
- Implemented invokeMethod in DataSourcesService to handle method calls for gRPC v2.
- Added method whitelisting for gRPC v2 in the service layer.
* refactor: invokeMethod to use method dispatch pattern
* fix: improve error handling in testConnection method
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* refactor: update types and interface
* fix: remove unnecessary border styles for improved UI consistency
* refactor: simplify error handling
- Introduced a new SCSS file for styling the gRPC v2 query editor components.
- Styled request sections, server URL input, dropdown menus, and method buttons for better user experience.
refactor(grpcv2): enhance error handling and type safety
- Updated error handling in gRPC query service to use a new `toError` utility function for consistent error conversion.
- Improved type definitions for gRPC client and service methods to ensure better type safety.
- Refactored method existence validation and gRPC call execution to handle errors more gracefully.
fix(grpcv2): improve service discovery and proto file loading
- Enhanced service discovery logic to handle reflection and proto file clients more robustly.
- Added checks for valid service constructors and improved error messages for better debugging.
- Updated the `loadProtoFromRemoteUrl` function to handle HTTP errors more effectively.
chore(grpcv2): add utility functions for type checks
- Introduced utility functions `isRecord`, `hasProperty`, and `toError` for better type checking and error handling throughout the codebase.
* feat: add LegacyBanner component for gRPC legacy tag display
* fix: styling changes
* fix: correct text in LegacyBanner component
* feat: enhance GRPCv2 component with request handling and state management improvements
* refactor: update metadata handling in GRPCv2 component and service
* refactor: update GRPCv2 component to use raw_message instead of requestData
* fix: Styling issues and labels
* refactor: gRPC test connection checks for proto file and url
* fix: improve error handling in service discovery
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* apiendpoint component used for rendering openapi spec value are persisted
* Fix/stripe old component (#13737)
* fix: integrated old component
* removed log
---------
Co-authored-by: Devanshu Gupta <devanshuguptaknp@gmail.com>
* REST API changes from LTS and new changes
* Fix: Response, Request and Metadata coming out to be undefined on query failure and success inside Inspector
---------
Co-authored-by: devanshu052000 <devanshu.rastogi05@gmail.com>
* 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
---------
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
Co-authored-by: Parth <108089718+parthy007@users.noreply.github.com>
Co-authored-by: Akshay <akshaysasidrn@gmail.com>
Fetch the auth code using correct method in request
Get the plugin object correctly for reloading
Fix woocommerce operation rendering
Resolve promise correctly
Pass plugin_id as prop
Resolve plugin saving issue with caching tokens
Add json-message in query correctly
Use auth code once without cache
* API backend setup for fetching decrypted options object
* Frontend setup to use and fetch decrypted options object
* Debounce validation and include encrypted fields
* Update banners and point back to inputs
* Remove ssl config from connection string in postgresql
* Add support for textarea design component
* Improve conditional requirement logic
* Fix validation banner bugs
* Change schema for airtable
* Change schema for bigquery
* Change schema for mongodb
* Change schema for mysql
* Change schema for mssql
* API backend setup for fetching decrypted options object
* Frontend setup to use and fetch decrypted options object
* Debounce validation and include encrypted fields
* Update banners and point back to inputs
* Remove ssl config from connection string in postgresql
* Add support for textarea design component
* Improve conditional requirement logic
* Fix validation banner bugs
* Change schema for airtable
* Change schema for bigquery
* Change schema for mongodb
* 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>
* Enhanced rest api body to accept raw input instead of raw json.
* Changed content type from application/json to text/json and changed copywrite to RAW.
* Changed rest api body toggle label from 'RAW' to 'Raw'.
* Added request label for static REST API data source.
* Fixed issue where GET query failed since body was undefined.
* Integrated json_body to add backward compatibility.
* Removed console logs.
* Added support for 'text/json' type in checkIfContentTypeIsJson function.
* Made changes according to new frontend architecture in v3.
* Fixed request URL field overflow issue.
---------
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>