Commit Graph

215 Commits

Author SHA1 Message Date
Leo Thomas
69f7136a81
fix: 8878 - To handle Comma delimited float values (#11207)
* fix: 8878 - To handle Comma delimited float values

* Code review comments fixes

Co-authored-by: Leo Thomas <leoweb2010@gmail.com>
2022-02-17 13:30:01 +05:30
Anagh Hegde
9992a9ae3c
feat: Add api to check the git connection after the key is regenerated (#11144)
* Add api to check the git connection

* Add analytics event for test connection api
2022-02-16 22:25:38 +05:30
Leo Thomas
4c81347128
fix: 7794 Google Sheet Fails with Mixed Datatype (#11089)
* 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>
2022-02-16 08:22:40 +00:00
Arpit Mohan
286864eb3d
feat: Support body in GET API requests (#7127)
* 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>
2022-02-15 11:13:48 +00:00
Nidhi
1868675349
feat: Self-signed certificates for REST APIs (#11043)
* feat: Self-signed certificates for REST APIs

* Changed scope for netty dep
2022-02-15 06:54:26 +00:00
Sumit Kumar
00a7647590
feat: S3 plugin: add command to delete multiple files at a time
* Add a new command Delete multiple files. This command will allow users to delete many files at once. Currently, only one file can be deleted at a time. It takes an array of files as config parameter from the user e.g. ["file1", "file2"]
* Add template for the new command.
* Add template for the command Create multiple files
2022-02-15 12:24:16 +05:30
Trisha Anand
80bab90e28
chore: Minor code refactoring for bean utils and action execution (#11102) 2022-02-14 10:24:54 +05:30
Sumit Kumar
d03f503657 add new command: delete multiple files
add template for delete multiple files
add template for create multiple files
add / update TCs
2022-02-14 10:18:01 +05:30
Abhijeet
860318e0fe
chore: Add stopwatch to log execution time by process name (#11069)
* Add stopwatch to log execution time by process name

* Refactor
2022-02-10 16:59:26 +05:30
Sumit Kumar
aa2290405d
fix: fix refresh token flow in REST API OAuth (#10875)
Co-authored-by: Segun Daniel Oluwadare <dodanieloluwadare@gmail.com>
2022-02-09 09:38:58 +05:30
Abhijeet
fa0e900f3f
fix: Sort unordered set elements before committing to git repo so as to have same serialised output string for identical set of elements (#10933) 2022-02-08 00:48:20 +05:30
Sumit Kumar
5c3e12fc10
handle empty column name in sort component (#10895)
* This PR adds changes to ignore all the empty column names in sort component (or ignore the sort conditon if all column names are empty).
2022-02-07 08:55:26 +00:00
Abhijeet
2e5c1ea4ec
chore: Update doc urls for errors related to git (#10852)
* Update doc urls for errors and SSH key response
2022-02-03 21:13:40 +05:30
Abhijeet
e356fd039f
chore: Commit only unpublished resources to git repo which includes queries, JSObjects, pages to avoid data duplication (#10776)
* Commit only unpublished resources to avoid resolving merge conflicts twice

* Added TCs

* Update directory names, fix pull issue in JSObjects
2022-02-03 11:47:57 +00:00
Sumit Kumar
6f83df976d
feat: add sorting and pagination features to S3 plugin (#10736)
* add sorting and pagination features to S3 plugin
2022-02-03 06:15:01 +00:00
Nidhi
f450ea5be3
fix: Fixed issue with H2 where PS parameters were getting merged if the keys were the same (#10805) 2022-02-02 17:43:53 +00:00
Abhijeet
8d93d06317
feat: Add reference doc url for error responses for git APIs (#10620)
* Added reference doc urls for pull conflicts

* Update TCs
2022-01-27 13:08:21 +05:30
Anagh Hegde
c83f7fb3c1
feat: Git import api (#10282)
* Added API to generate deploy keys and store them in a collection for import flow

* Add tests for the key generation flow

* Move the key generation to helper class

* changes per review

* Fix bad merge

* add api to import application

* handle timeout for git import

* Update the comments

* Add API for git import

* handle duplicate application name error & add profiles while importing

* Add tests for import api

* Hydrate from file system after cloning the repo

* Fix test failures

* Test cases

* changes per review

* throw error when the datasource with same name of different type exists

* Fix test failures

* Fis error messages

* Fix test failures

* Fix issue with checking the datasource types

* Add datasource name check while importing the application

* Refactor SSH key gen code for import

* Resolve issues around defaultResourceIds, don't commit app name

* Resolve the issue related to duplicate name for app during import

* Minor fixes

* WIP

* Add logic to get unconfigured datasources for the application

* Fix tests

* WIP

* revert datasource related changes

* Add a boolean flag to Datasource entity

* Add a boolean flag to Datasource entity

* Add flag to identify import status

* Set application name before importing from json files in git-import

* update the variable name

* changes per review

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2022-01-26 21:26:22 +05:30
Nidhi
c7d1e87c0a
fix: Removed tracking on Sentry for unsupported plugin operation (#10636) 2022-01-26 19:02:48 +05:30
Abhijeet
62b720ab00
feat: Add documentation URL alongwith the error response to offer more info about the exception (#10325)
* Add doc url param in error response

* Modify TCs

* Update error codes to follow the sequence
2022-01-20 02:48:43 +00:00
Sumit Kumar
18edb18b20
fix: implement getStructure method for S3 plugin (#8919)
* 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.
2022-01-13 11:33:50 +05:30
Sumit Kumar
4b75f77caa
feat: add support for projection, sort and pagination. (#9712)
* Add API server support for UQI's Projection, Sorting and Pagination feature.
2021-12-23 14:16:49 +00:00
Anagh Hegde
4f4d0fd7df
fix: Clear the cache - git limit number of repos (#9874)
* Error handling for git limit

* clear cahe of git limit on connect api

* update per review

* check the repo is public before checking for the limit

* changes per review

* check if the repo is public or private during connect flow
2021-12-21 14:17:26 +00:00
Sumit Kumar
c858edf726
fix Mongo smart substitution for quotes around ObjectId (#9856)
- 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.
2021-12-21 18:47:19 +05:30
Nidhi
e48a51c166
fix: Ignore form data elements with null keys (#9769)
* fix: Ignore form data elements with null keys

* Added reference to constant instead of using a String
2021-12-16 09:54:38 +00:00
Sumit Kumar
7909ae8680
feat: port Firestore plugin to UQI (#9393)
* 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.
2021-12-16 13:31:09 +05:30
Trisha Anand
11603e0d24
chore: Backend code split (#9610)
* Server comes up

* Instead of extracting ee, we extract the ce to get the mongo repo to work

* ActionRepo migrated

* ApiTemplateRepo migrated

* Application repo migrated

* Asset Repo migrated

* Collection repo migrated

* Comment repo migrated

* Comment thread repo migrated

* Config repo migrated

* datasource repo migrated

* group repo migrated

* Invite user repo migrated

* layout repo migrated

* New action repo migratd

* .

* Migrated rest of the repos.

* Migrated the repo impl as well between ce and common

* acl package partially migrated

* Authentication migration done!

* Controllers migrated

* AppsmithPermission enum migrated to class and split

* Unnecessary change removed

* Appsmith role enum converted to class

* Revert

* Reverting enum to class conversion after failing at implementing

* All services migrated

* server.solutions package completed

* Fixed solutions failing test cases

* Code compiling! Woohoo!
2021-12-15 22:59:46 +05:30
Anagh Hegde
e216dad15b
feat: Refactor APIs to include branch name in the request header (#9679)
* refactor api's to include branchName for git

* Check for updating Ids for move action

* Added check for global profile

* Fix bad merge

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2021-12-14 15:09:30 +00:00
Nayan
28c181b59c
feat: [Feature] Upgrade spring boot version to 2.5.5 (#8932)
Upgrades spring boot version to 2.5.5
2021-12-14 16:22:37 +06:00
Nidhi
e402a76564
fix: Added timestamp in where clause types, modified logic for calculating date time types (#9608)
* fix: Added timestamp in where clause types, modified logic for calculating date times

* fix: Added another field for timestamp, shouldn't fail

* Added test case for older filter method as well

* Added test case for older filter method as well

* Modified types for date and time
2021-12-08 05:25:07 +00:00
Trisha Anand
4512c86d87
feat: Trigger framework with default implementation for entity selector for UQI (#9142)
* Untested trigger framework added

* Entity selector is working!

* Moved to query params instead of request body for the trigger api (since the trigger api is of type GET)

* Adding minor comments

* Added test case for trigger functionality
2021-11-25 12:35:43 +05:30
Trisha Anand
81d5cffc44
feat: UQI where clause support (#9051)
* 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.
2021-11-18 15:45:43 +05:30
Nidhi
93de065fa8
feat: Added Smart substitution support for S3 (#9124)
* Test case

* Dummy commit for tests to pass

* Removed logic for double escapes

* Renamed from BSON to JSON
2021-11-15 10:57:41 +05:30
Anagh Hegde
a7b1902afd
feat: handle error messages for merge action (#9030)
* Handle merge conflicts

* Fix test failures

* Move branch name from request params to body for merge operation

* Use request body for branchNames
2021-11-12 10:04:29 +00:00
Nidhi
54cc5b8ff4
fix: Add support for content type in create file for S3 plugin (#9021) 2021-11-10 07:44:36 +05:30
Anagh Hegde
2ad6a382ea
feat: checkout remote branch (#8827)
* Add API to checkout remote branch

* Create a new application on fetch

* Create a new application on checking out remote branch

* Add tests

* Change per review comments

* Changes per review comments
2021-11-09 14:04:00 +00:00
Anagh Hegde
b951d8db21
Get default branch from DB instead of remote to save time (#8844) 2021-10-29 09:32:02 +00:00
Trisha Anand
0300fa9486
feat: Migrating S3 plugin to UQI framework (#8575) 2021-10-25 11:19:22 +05:30
Trisha Anand
4a11a10ee0
fix: on page load actions take into account widget dependencies as well to compute correct order of action computaion on page load (#7829) 2021-10-25 08:03:08 +05:30
Anagh Hegde
4717b4bcf0
feat: git merge status (#8692)
* git merge status
2021-10-22 12:31:13 +00:00
Anagh Hegde
6faaa33936
feat: Git version control functionality with connect to remote, commit, push flows (#8403)
* core workflows of git - branch, clone, commit, pull, merge, status, log

* Rehydrate file system before merge operation

* Add logic to handle merge conflict for merge and pull flow

* Add defaultBranch to listBranch API

* Add Unit tests for git commands

* Upgrade JGit dependencies to fix the security issue

* Git command tests

* Revert unwanted changes and update delete application flow

* Disable git feature until the FE changes are merged

Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
2021-10-20 09:47:34 +00:00
Sumit Kumar
d7411be855
fix: show hint message on using duplicate header or query parameters in API (#8263)
* show hint message on using duplicate headers or query parameters in API.
2021-10-13 18:02:16 +05:30
Trisha Anand
9dafd3207f
fix: [Filter Library]Prepared Statements doesn't set value if the data type is not supported in H2. Defaulting to String for unsupported types. (#8015)
* Prepared Statements doesn't set value if the data type is not supported in H2. Defaulting to String for unsupported types.

* Incorporated review comment
2021-09-30 15:48:52 +00:00
Trisha Anand
d8dec82565
Handling the empty object set for where clause in new actions (#8017) 2021-09-30 14:58:32 +00:00
Sumit Kumar
611ff3b776
feat: make Mongodb plugin error messages more readable. (#7857)
* Make MongoDB plugin's error messages more readable. A Client side change is required before this change becomes visible to the end user.
2021-09-27 15:10:14 +00:00
Nidhi
59ec853498
Fixed installation for multiple plugins into organizations (#7767) 2021-09-24 05:44:14 +00:00
Trisha Anand
a2e68c9724
Minor grammar/language change in the errors for filtering library (#7779) 2021-09-23 23:56:20 +05:30
Trisha Anand
3412644a75
feat: Adding Prepared Statement for H2 database for handling all user data without special error handling (#7653) 2021-09-23 18:29:15 +05:30
Nidhi
688b75af22
Changes to introduce peader prefix in API key authentication type (#7742) 2021-09-23 13:20:44 +05:30
Nidhi
c3f4cdaa15
feat: Introducing SaaS integrations as a plugin (#7560)
* WIP client side changes

* Saas execution flow + scheduled import of remote plugins
2021-09-21 17:35:29 +05:30