Commit Graph

488 Commits

Author SHA1 Message Date
Anagh Hegde
dde1eb1735
Add check for default branch before deleting branch (#11631) 2022-03-05 08:30:29 +00:00
Nayan
caab37de26
feat: Add new API to combine get application details and get pages API (#11448)
Merges the get application details and get page list API into one. This API takes either applicationId or pageId and returns the list of pages of that application.
2022-03-04 12:32:48 +06:00
Abhijeet
13d6450616
chore: Soft delete resources across Appsmith board for delete operation (#11555)
* Soft delete resources

* Add TC and migrations
2022-03-03 23:06:34 +05:30
Nidhi
8b1638aba6
chore: Modified plugin config aggregation logic (#11561)
* fix: Modified plugin config aggregation logic

* Modified logs a bit

* Reverted incorrect path from another branch
2022-03-03 19:26:55 +05:30
Nidhi
d57207d224
fix: Changed test class reference to CE (#11578) 2022-03-03 12:00:55 +05:30
Abhijeet
cdf06cb773
feat: API to discard changes for git connected applications (#11362)
* Add discard changes functionality for git

* Recover deleted resources from the file system and refactor

* Remove untracked files, remove unwanted actions

* Testcases added for discard changes

* Added comments
2022-03-02 19:54:09 +00:00
Nidhi
5c994975d7
fix: Modified action execution endpoint (#9473) 2022-03-02 16:01:50 +00:00
Anagh Hegde
1d90a9fed9
feat: Add API for delete branch for git connected application (#11432)
* Add API to delete git branches

* WIP

* Fix test failures

* Change the method from POST to DELETE

* Changes per review

* Changes per review
2022-03-02 13:42:16 +00:00
Abhijeet
612d7d6727
feat: API to provide a way to distinguish if the application is updated manually or through DB migration (#11414)
* Added check for updating application resources manually

* Refactor to include client-side migration
2022-02-24 14:17:50 +00:00
Nayan
10033aea09
-Added new API to return list of default plugins (#11297)
Added a new API that'll return a list of plugins which are available to install. In other words, it'll return list of default/system plugins. This returns the package name, name and icon only - which will be used by templates to show datasource name and icons.
2022-02-24 16:43:11 +06:00
Mojtaba
450950d68f
fix: curl import tries to guess the content-type from the body if content-type header is not specified (#11295)
* fix: content-type is empty when it's not specified.

* feat: try to guess the content type json or form-urlencoded

* fix: broken test for curl with `--data-urlencode` parameter

* fix: fix guessing urlEncodedPattern

* fix: fix broken tests

* fix: Fixed and improved the code formatting
2022-02-24 13:58:26 +03:30
Abhijeet
86c7c09982
fix: Map correct collection ids for onPageLoad actions during import application (#11328)
* Introduce defaultCollectionId for onLayoutLoadAction

* Added TC for clone application

* ImportExportSpec & Dropdown resetSpec flaky fix

* Fix test failures

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-02-24 12:42:28 +05:30
Nayan
4ae0b5b1de
fix: Set comment authors email address as reply to field in comment notification email (#11251) 2022-02-23 21:56:57 +05:30
Nayan
f060ab8c03
feat: Allow saving theme customizations (#11165)
This PR adds API to save a customized theme so that it can be used again for that application. It also adds permission to themes. Each customized theme will have permissions set just like other domain objects.
2022-02-23 12:32:18 +06:00
Abhijeet
aaf9740674
chore: Remove theme ids during git commit (#11225) 2022-02-17 05:33:25 +00:00
Abhijeet
325f27982a
fix: Take previously connected git applications accessibility into consideration to accurately calculate private repo count (#11151)
* Take already connected apps repo accessibility into account during connect and import flows

* Testcases for private repo limit check
2022-02-16 13:36:39 +05:30
Nayan
eefae47b09
feat: Return page slug for default pages in get applications API in home page (#11080)
The GET /application/new API is used to show list of organizations, applications in home page. The list of pages under each application contains only page id. As we're introducing page slugs in URLs, we need the slug of the default page inside the response of this API. This PR adds default page's slug to the response of GET /application/new API.
2022-02-16 12:19:29 +06:00
Abhijeet
ce2cf1ba3a
fix: Fix error code for application controller test case(#11161)
* Fix error code for the application controller TCs

* Fix import-export TCs
2022-02-15 16:28:02 +05:30
Trisha Anand
e892ba18a7
Moving ActionServiceTest to ce package (#11125) 2022-02-15 06:54:03 +00:00
Trisha Anand
80bab90e28
chore: Minor code refactoring for bean utils and action execution (#11102) 2022-02-14 10:24:54 +05:30
Abhijeet
d218b48cf6
fix: Increase supported header size for multipart data (#11058)
* Increase supported header size for multipart data to 128kB

* Update error to be thrown from the global exception handler
2022-02-11 11:26:40 +00:00
Abhijeet
6f7691b6aa
fix: Update error handling for git connect (#11070)
* Update error handling for git connect

* Add testcase for git generic error
2022-02-11 16:17:02 +05:30
Abhijeet
ee6d639e42
chore: Update error handling for resource not found exception for clone, fork and import APIs #11044 2022-02-10 10:26:07 +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
Anagh Hegde
fa06473d63
fix: Delete the pages post merge operation from application when they are removed from file system (#10810)
* Delete the pages post merge operation from application if they are removed from file system

* Changes per review

* Add tests

* changes per review

* Use string utils for null check

* Change per review

* Fix tests

* Fix tcs
2022-02-04 12:07:07 +05:30
Abhijeet
7329d7ff23
fix: Fix NPE during import application when page ids are missing for published action and actionCollection (#10858)
* Provide a fallback pageIds for missing ones in action and JSObjects published version

* Add TC
2022-02-03 20:08:58 +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
Abhijeet
0b1a8ad20b
fix: Update ApplicationPageId with defaultPageId while fetching applications for homepage (#10812) 2022-02-03 10:56:35 +05:30
Nidhi
bc93a1d413
fix: Removed filter of JS actions from get method (#10726) 2022-02-02 08:28:41 +00:00
Abhijeet
8c4d711f5b
chore: Make sure to keep forked application in valid state even if client exits the flow before server responds (#10704) 2022-01-30 17:43:35 +05:30
Abhijeet
07082f6bde
fix: Copy evaluation version for cloned application from the source application to fix dynamic binding evaluation to support escaped characters without double escapes (#10702) 2022-01-28 08:07:59 +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
e0e4a73650
fix: Logic to delete stale git branch which are not in db (#10647) 2022-01-26 21:29:00 +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
Abhijeet
231c3aaeb7
fix: Bugfix for curl import when the request is made from the child branch for git-connected application (#10638)
* Fix for curl import in sub-branch

* Added comment
2022-01-26 18:20:49 +05:30
Nidhi
44f5e353fa
fix: Fix typo in default resources ids for actions within collections while creating new collection (#10349)
* fix: Small fix in default resources for actions within collections

* Added tests
2022-01-20 18:17:34 +00:00
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
Abhijeet
0ec6875b47
fix: Fix clone JSObject issue where cloned JSObject gets attached to both parent and cloned page and fix race condition for delete action when trying to delete page with JSObject (#10455)
* Fix clone JSObject issue where cloned JSObject gets attached to both parent and cloned page

* Race condition for delete action when trying to delete page with JSObject

* Set published collection to null during fork application
2022-01-19 17:06:27 +00:00
Abhijeet
a48aa9c72b
feat: Remove action and actionCollection ids in exported application JSON (#10430)
* Export action and actionCollection without actual ids

* Added TC

* Comments
2022-01-19 11:46:32 +05:30
Abhijeet
3471de90cd
fix: Gracefully handle defaultResourceIds exception (#10454)
* Gracefully handle defaultResourceIds exception

* Added TCs

* Remove sentry logs
2022-01-19 10:45:36 +05:30
Abhijeet
1ed1bf0e5d
feat: Apply JSON schema migration while importing the application using JSON file (#10339)
* Json schema version check added before importing an application

* Added TC

* Fieldname refactor to make it more relevant
2022-01-18 07:11:23 +00:00
Abhijeet
0b71b3840c
Fix error for import curl when app is connected to git (#10355) 2022-01-14 08:59:56 +05:30
Abhijeet
c1e2a1ed59
Revert "chore: Don't take client subscription into account for fork application (#10220)" (#10375)
This reverts commit 814a7d57f9.
2022-01-13 19:00:04 +05:30
Nayan
02be902fdc
feat: add page slug in the get pages API (#10345)
We've added slug for pages. Each page has a slug which is generated from name automatically. In our get pages API /api/v1/pages/application/<app_id>, the slug names were not included in the Page DTO. This PR adds slug name in this API response.
2022-01-13 17:29:09 +06:00
Anagh Hegde
f660c0696d
fix: Fix issue with current branch not deleted exeception (#10334) 2022-01-13 14:07:01 +05:30
Sumit Kumar
7306967d0b
fix: fix page load action execution order (#10252)
* This PR fixes the page load action execution order when the actions have been set to run on page load explicitly via the settings tab by the user and its data has not been referenced in any other widget or action. e.g.
  - create action1 and action2.
  - make action2 dependent on action1 by adding {{action1.data}} in action2's body.
  - set both action1 and action2 to run on page load via settings tab. Do not reference action1 and action2 data in any other widget or action.
2022-01-11 16:13:54 +00:00
Abhijeet
814a7d57f9
chore: Don't take client subscription into account for fork application (#10220) 2022-01-11 16:20:40 +05:30
Abhijeet
92a5cbf7f2
chore: Don't take client cancellation for git flows into account to keep the repo and DB in sane state even when client cancels subscription (#10036)
* Added Mono sink calls for git and import application APIs

* TC for import-export

* Update TCs for gitService

* Added git commit and create branch test

* Test added for midway cancellation flow
2022-01-06 20:04:35 +05:30
Anagh Hegde
ed490304d9
feat: Git import - generate and save SSH Keys (#9129)
* 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

* changes per review
2022-01-06 15:16:33 +05:30