* Fix 11141-Added JDBC override parameter for resolving Cast Errors with timestamp
* Firestore Where condition Unit Test for Arrays
* Code review comments update
* removed two unrelated file somehow added here from the previous PR
* Code review comments update V2
* Code review Comments Fix - Second
* Removing the frontend Changes related to dropdown width
Co-authored-by: Leo Thomas <leoweb2010@gmail.com>
* DBRef fix with codec
* Added code comments regarding custom codec implemented
* Added Unit Test for Mongo DBRef
Co-authored-by: Leo Thomas <leoweb2010@gmail.com>
Co-authored-by: Sumit Kumar <sumit@appsmith.com>
* fix: Using form url encoded content type for token requests
* fix: Using form url encoded content type for cc as well
* fix: Conversion logic for expires in field
* Currently S3 plugin datasource requires the region field to be non-empty for it to work (when configured with other as the datasource type from dropdown). However, this field is not required for many S3 offerings. Hence, making it non-mandatory.
* feat: Add Array type to MultipartFormDataType variants
and handle every item in list as a part in multipart request
* fix: add array options
* fix: rename file to array value
* fix: parse Array from json text
* fix: reformat the code and remove `System.out.println`
* fix: testParseMultipartArrayDataWorks is more accurate now
Co-authored-by: Segun Daniel Oluwadare <dodanieloluwadare@gmail.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
* update option label
* add minIO as a separate datasource option
add datasource connection changes to support minIO without SSL and when using CA signed certificates
* fix cypress tests
* This PR adds the JSON smart substitution feature to Firestore plugin actions.
* This smart substitution will work exactly the same way as it works for REST API actions.
* Currently, smart substitution only gets applied to the body section of Create, Set, Add or Update commands as this is the only input field that expects a JSON input type.
* It can be toggled On/Off via the Settings tab.
* It is set to On by default. However, data migration has been added to set it to Off for all existing Firestore actions so that they are not impacted by this PR's changes.
* fix: remove asterisk from non-mandatory fields in firestore query
* making one false
* fix: remove asterisk from non-mandatory fields in firestore query
* fix: remove asterisk from non-mandatory fields in firestore query
Co-authored-by: Hritik Kumar <devnamrits@Hritiks-Mac.local>
* shelf: start working on substitution for `ISODate`
* a draft for Sumit to check what I did wrong in my tests
* test: tests are working
* test: cleanup
* refactor: add replacementDataType parameter to DataTypeStringUtils.jsonSmartReplacementPlaceholderWithValue
* fix: remove quotes for Mongo Types work in single form, arrays and json.
* add handling for more use cases
add/update more TCs
* add comments
* add more comments
* add space (cosmetic change)
Co-authored-by: Sumit Kumar <sumit@appsmith.com>
* fix: if test datasource gets Unauthorized accessing admin database
It will try to access the default database.
* fix: fix broken test
* fix: cleanup unused imports
* test: make test more readable with better comments
* fix: 7794 Google Sheet Fails with Mixed Datatype
* resolved failing test cases after new implementation
* Added code comments to the changes
Co-authored-by: Leo Thomas <leoweb2010@gmail.com>
* WIP
* Refactoring HTTP Method & Content Type to be objects instead of arrays
TODO:
1. Set the default content-type for Get request to "None". Currently, it's raw
2. For None content-type, don't send the body field in the API request
* Almost working implementation for the None type
Currently, the body still gets sent in non-GET requests even if the None tab is selected.
* Adding object.freeze to prevent any modifications to HTTP_METHOD_ENUM
* WIP: Using enum & const for ts autocomplete
* working implementation for NONE type, apiContentType prop added to API actions
* WIP
* Refactoring HTTP Method & Content Type to be objects instead of arrays
TODO:
1. Set the default content-type for Get request to "None". Currently, it's raw
2. For None content-type, don't send the body field in the API request
* Almost working implementation for the None type
Currently, the body still gets sent in non-GET requests even if the None tab is selected.
* Adding object.freeze to prevent any modifications to HTTP_METHOD_ENUM
* WIP: Using enum & const for ts autocomplete
* working implementation for NONE type, apiContentType prop added to API actions
* adds apiContentType to actionConfiguration.formData object
* Handling apiContentType property in Rest API formData
* change apiContentType when user types content-type value and switches http method
* makes api editor as similar as possible to postman, project postman.
* Correcting the import in ApiEditorConstants
* Resolved all merge conflicts
* replay DSL functtionality
* removes unneccessary files from worker
* Fixes type declarations, naming e.t.c.
* fix server side merge conflicts
* fix client side merge conflicts
* fix failing cypress tests
Co-authored-by: Irongade <adeoluayangade@yahoo.com>
Co-authored-by: Ayangade Adeoluwa <37867493+Irongade@users.noreply.github.com>
* This PR removes the Expiry Duration field from the Read file command of S3 plugin.
* An Expiry Duration field got added to Read file command mistakenly some time post migration to UQI schema. This field did not exist with the read command before the migration and does not get used even now.
* Fixed issue with Firestore in fetching data while using numbers in the where condition.
* Other Fixes made in the where condition :
When using Boolean
When using Date
When Using Timestamp
When given space in the key
When Space given in the Value
* Add `getStructure` implementation for S3 to return a list of accessible buckets.
* Add command templates for S3.
- List files
- Read file
- Create file
- Delete file
* Remove getDatasourceMetadata implementation as getStructure method can be directly used now.
* This PR adds a limit field which sets the batchSize for aggregate command. This way the user can set the number of documents they want in their Mongo query result.
* limit is set to 10 initially. However, for pre-existing Mongo actions, migration has been added to set this field to 101 - which is the default value that has been used by Mongodb in the absence of any user set value. Ref: https://docs.mongodb.com/manual/tutorial/iterate-a-cursor/
* fix:9648 Mongo update All issue-In Progress
* fix: Mongo Multi update query fail fixes
* Added updated testcases that got affected by the code change
* Changes reverted as per review comments
- fix Mongo plugin's smart substitution feature to handle quotes around ObjectId in array. e.g. Initial replacement value: ["ObjectId(xyz)"] , final replacement value: [ObjectId(xyz)]
- unrelated: added version number to lombok dependency to stop build failures in IntelliJ.
* feat:9389 Add support to send arbitrary form values to oAuth server during Datasource authentication
* Changes related to Code Review Comments of PR 9650
* Changes implemented to set custom Key Value pairs
* Resolved Code Review comments
* Resolved Code Review comments
* fix/8924-Bulk Insert throwing error on empty data in google sheets new1
* fix/8924 Error in bulk insert empty data
* fix/8924 Code review fix for Google Sheet Bulk insert error
* fix/8924 Code review fix for Google Sheet Bulk insert error
* Fixed code review comments
* Methodconfig data changes since only empty Mono is being tested
* Port Firestore plugin to UQI schema
* This PR implements a non-functional requirement i.e. from an end user perspective there is no change in the features that the plugin provides. However, the underlying DSL to render and interpret the query interface has been updated.
* It also involves a migration change to port existing Firestore plugin actions to the new UQI schema.
* Added parsing of where condition to Condition format
* Refactoring the name of functions to denote old style before implementing UQI where clause
* Updated the error message for data type problem for mixed data tyeps
* Generating complex logical expression.
* Working version of filtering happening without refactoring of code
* Added where clause configuration in List files in a bucket command.
Not able to render due to some configuration issue.
* Untested code completion
* To be reverted. Ayush's changes.
* Tested where condition on S3 List
* Made AND the default option for where clause
* where clause working in case of no valid inputs provided.
* Added parallel test cases as that were existing for the old where clause
* Revert "To be reverted. Ayush's changes."
This reverts commit a0f9b72e241f0688b7ef07cea8c3017473423512.
* Making equality the default option in a new where clause for LIST command
* Added test cases incorporating the review comments.
* Updated the options for the where command in S3 plugin. Removed the comparison operators except equality, non equality and belonging (in and not in) operators.
* Added catching of exception while parsing the operator into known appsmith condition types
* Reusing objectmapper from BasePlugin instead of creating a new one here.