Commit Graph

2809 Commits

Author SHA1 Message Date
Hetu Nandu
3aff53187c
feat: Maintain Focus and Context Phase 1 (#16317) 2022-10-17 20:46:38 +05:30
Arpit Mohan
70f79ae69a
chore: Updating the tenant API to return the complete object instead of just the configuration (#17615) 2022-10-17 14:21:28 +05:30
Trisha Anand
ad57c3533d
chore: BaseAppsmithRepo code split (#17614) 2022-10-17 14:14:52 +05:30
Nidhi
2af4fd136b
fix: Fixed check for duplicate JSObject names in an application page (#17536)
* fix: Fixed check for duplicate JSObject names in an application page

* Fixed merge conflicts

* Reverted file with unchanged tests

* Fixed test name
2022-10-17 10:31:42 +05:30
Nidhi
c3e935ef40
fix: Remove datasource connection from cache when datasource is deleted (#17364)
* Changes to testDatasource interface method and archive flow

* Tests for plugin level testDatasource implementations

* Added test for refreshing cache on deleting datasource

* Modified warnings to errors in logs

* Fixed test

* Fixed test
2022-10-17 10:31:26 +05:30
Arpit Mohan
6e2ebbe2fd
chore: Fixing the API to fetch current tenant configuration (#17581)
Fixing the /api/v1/tenants/current API
Also fixing the ObjectMapper configuration to serialize empty beans in the entire product
2022-10-15 16:27:42 +05:30
Arpit Mohan
1d176ec086
feat: Add configuration API to save some configurations in tenantConfiguration (#17407) 2022-10-15 10:04:21 +05:30
Manish Kumar
c3e807d246
chore: changed the datasource-update event tag for analytics (#17326)
* Flipped the user/server invoked datasource update, Now the key is isDataosourceUpdateUserInvoked

* overridden update method from basecontroller in datsourcecontroller

* made tag final

* migrated tag key to FieldName.java
2022-10-14 11:33:18 +05:30
Dhruvik Neharia
c0318b6451
feat: Change Modern/Default Theme Background to #F8FAFC (#17345)
* feat: Change Modern/Default Theme Background to #F8FAFC

* feat: Update modern/default theme bg in system themes

* fix: Update basic spec theming test with new modern theme background color

* fix visual tests

* fix: Update WidgetsLayout_spec.js snapshots

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Pawan Kumar <pawan.stardust@gmail.com>
2022-10-14 11:10:50 +05:30
Shrikant Sharat Kandula
bbe4b7453e
fix: Use JSON to serialize sessions for OAuth (#16632) 2022-10-14 10:59:23 +05:30
Dhruvik Neharia
7b7ca712fd
feat: Add Text Truncate Button Color to System Themes (#17299)
* feat: Add text truncate button color to system themes

* updated colour used

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Nandan <nandan@thinkify.io>
2022-10-14 10:07:34 +05:30
Anagh Hegde
b60c504f7d
fix: Post forking an application without the first page the application ends up having pages with page name as the page id (#17474)
* Remove pages from the application object as well while merging the selected pages

* Add tests for selected pages with merge template flow

* Add test case for all the pages selected
2022-10-14 08:06:53 +05:30
Nilesh Sarupriya
725abae97a
chore: add transient user permissions to action collection DTO (#17485)
* Add transient user permissions to Action Collection DTO

* Add test for Transient Fields.
2022-10-14 01:23:05 +05:30
Anagh Hegde
31d7077da2
fix: App Version issue where the app was getting reset to old url after the template was merged to existing application (#17517)
Fix the App Version issue where the app was getting reset to old url format
2022-10-13 20:25:08 +05:30
Vishnu Gp
0f73e43cd7
feat: Added analytics events for admin settings updates (#17491)
* feat: Added analytics events for admin settings updates

* Review changes - Variable name change
2022-10-13 12:13:29 +00:00
Nidhi
55ccae03c6
fix: Added null check for action dependency edge (#17495)
* fix: Added null check for action dependency edge

* Revert other change
2022-10-11 23:24:26 +05:30
Nidhi
b9aff18c62
chore: Refactoring refactor flows (#17442)
* chore: Refactoring refactor flows

* Merged fron release
2022-10-11 15:24:04 +05:30
Anagh Hegde
177a6e1425
chore: Fix NPE in git service analytics (#17451) 2022-10-11 11:13:49 +05:30
Nidhi
74c3dbbc1a
fix: Modified on page load actions calculation using AST (#17074)
* Changes to on page load logic and consumption for update layout

* Slight clean up, tests and stuff

* - Added evaluationVersion logic based on application configuration
- Added configuration for slim and fat container rts availability
- Added backup logic of string comparison for slim containers
- Added tests for both paths

* Changes to on page load logic and consumption for update layout

* Slight clean up, tests and stuff

* Cleaned up comments all over

* Why isn't there even a setting to disable auto re-formats

* update rts logic to use updated shared AST logic

* Make changes to naming conventions

* Some temp stuff to check if update layout API changes will work out

* Added health check endpoint in RTS

* Added types for AST request

* update: type for save page request object

* update: return type for getEditorConfigs func

- Added applicationId to the type.
- Fetching from the redux store -> applications -> currentApplication -> id

* update: url generation func for update page API

- added applicationId as query param for the call

* Fixed test failures

* Fixed merge from release with on page load failure messages

* Fixed tests failing after merge

* Review comments, more tests, and fix for array index ref directly after .data path

* Test fix

* Addressed review comments

* Updated comment

* Fixed rts temporarily, added handling for data as function name, left with tests

* fix: failing rts server

* Tests for all types of actions and references

* Changes to test

* Modified type to set

* Test fixes

* Trying to make a test pass

* Added app id in cypress test update dsl

* Added app id in cypress test update dsl

* Added app id in cypress test update dsl

* Removed dep tree temp file

* Resolving compile issues after merging from release

* updated tests for applicationId

* corrected a typo

* fixed some more tests

* updated test

* Updated test

* DSL load AppId fix

* appId removal

* AgHelper LocalStorageCache()

* AgHelper LocalStorageCache() - commit 2

* AgHelper LocalStorageCache() - commit 3

* AgHelper LocalStorageCache() - commit 4

* AllWidgets_Reset_spec - Dsl fix

* Json_spec fix

* S3_2 spec fix

* fixes

* LocalStorageCache fixes

* fixes

* fixes

* fix

* OnLoadActions spec fix

* Promises spec fix

* S3_2 spec fix

* 16702 spec update

* OnLoadActions spec trial fix

* RTS fix

Co-authored-by: Nidhi Nair <cataclysm@Nidhis-MacBook-Pro.local>
Co-authored-by: Ayangade Adeoluwa <adeoluayangade@yahoo.com>
Co-authored-by: Ayush Pahwa <ayush@appsmith.com>
Co-authored-by: Aman Agarwal <aman@appsmith.com>
Co-authored-by: Apple <nandan@thinkify.io>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-10-11 11:02:44 +05:30
akash-codemonk
b47f04206f
chore: fix templates feature flag param name (#17391) 2022-10-10 19:57:54 +05:30
Vishnu Gp
9b3858e3e8
fix: Fixed wrong event data on page view event (#17390) 2022-10-07 23:37:06 +05:30
Anagh Hegde
1a7820517c
fix: forking template to a child branch of git connected app is throwing Page not found error (#17292)
* Use the branched application for git connected apps

* Add error handling and comment

* Changes per review

* Add check before updating the action collections with the defaultPageId from the default page for git apps

* Fix git sync id not set in ImportExport flow

* Remove error handling

* Add tests for template merge flow
2022-10-07 17:11:01 +05:30
Vishnu Gp
b6436793f1
chore: Moved page delete to happen only after other resources are deleted (#17300)
* chore: Moved page deleted to happen only after other resources are deleted

* Corrected the resource deletion flow on application delete operation

* fix: Fixed race condition error

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-10-07 15:39:13 +05:30
Nilesh Sarupriya
f6365671d9
fix: workspace email website validation (#16912)
* Add validation checks for Email and Website

* Add test cases

* Update pattern and Test cases

* Valid and Invalid samples for regex

* Update test cases.
2022-10-06 11:56:38 +05:30
Manish Kumar
ab2d580e90
chore: added datasource-save event differentiator for analytics (#17237)
* chore: added datasource-save event differentiator for analytics

* added more comments

* code readability changes
2022-10-05 17:03:30 +05:30
Shrikant Sharat Kandula
df1139e640
fix: Use proxy for access token requests (#17195)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-10-04 20:25:06 +05:30
Abhinav Jha
e6b89d03aa
Sandboxed iFrames with srcDoc (#11426)
Change iFrame widgets to use sandbox mode if srcDoc is provided
Allowed options:
`allow-forms allow-modals allow-orientation-lock allow-pointer-lock allow-popups allow-scripts allow-top-navigation-by-user-activation`

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-10-04 15:20:45 +05:30
Shrikant Sharat Kandula
2bc928745e
Fix updating wrong workspace (#17266)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-10-03 14:41:19 +05:30
Trisha Anand
ef53e46d86
chore: Permission Group Service minor refactor (#17247)
No requirement for generating a specific create event for the same. All the validations, and extra settings have already happened. Directly save
2022-10-02 21:56:28 +05:30
Trisha Anand
06bee0f13e
chore: Refactored validCreateWorkspaceTest test case to ensure EE test case scenario also passed by moving away from absolute assertions to containsAll way of expression (#17245) 2022-10-02 16:59:53 +05:30
Nilesh Sarupriya
80c22a42b3
chore: minor refactor get datasource from action (#17210) 2022-10-01 18:46:09 +05:30
Shrikant Sharat Kandula
cc68fac236
Fix escaping single quotes in env variable values (#16983)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-09-29 18:37:59 +05:30
Shrikant Sharat Kandula
9a351070b1
Fix template filtering version mismatch (#16843)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-09-29 17:20:07 +05:30
Arpit Mohan
c036087379
chore: Import template application to a git branch in application (#17032)
Also fixing the comodification array error when we are removing items from a list while iterating over it.
Fixes #17030

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-09-29 14:39:19 +05:30
Aswath K
756d27b00e
chore: Property pane config cleanup (#16639) 2022-09-29 10:54:49 +05:30
Nidhi
66f3dfe790
chore: Move to Jupiter JUnit5 (#17083)
* Upgrading to Jupiter tests for everything but plugins

* Whoops, too soon

* Fixed failing tests

* Imports fixed

* Removed PowerMock dep and JUnit4 from interfaces

* Woohoo! That's testcontainers

* Added maven enforcer to disallow junit4

* Update app/server/appsmith-server/src/test/java/com/appsmith/server/services/GitServiceTest.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Update app/server/appsmith-server/src/test/java/com/appsmith/server/services/UserWorkspaceServiceTest.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Update app/server/appsmith-server/src/test/java/com/appsmith/server/services/ce/ActionServiceCE_Test.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Update app/server/appsmith-server/src/test/java/com/appsmith/server/solutions/CreateDBTablePageSolutionTests.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Weird formatting and version upgrades

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-09-29 08:54:07 +05:30
Vishnu Gp
4b4b2f97d4
fix: Fixed NPE issue with analytics event on authentication method configuration (#17112) 2022-09-29 00:33:54 +05:30
Anagh Hegde
cf17eaa447
chore: Add view mode to the analytics events (#15791)
* Add view mode to the analytics events

* Add view mode to the analytics events

* Fix UnSupported operation with template

* Replace hardcoded strings
2022-09-29 00:31:14 +05:30
Anagh Hegde
cc1a39b36d
test: Fix Curl import test failures for AuditLog (#17013)
Fix Curl import test failures for AuditLog
2022-09-26 13:33:19 +05:30
Vishnu Gp
c72b8eae2a
chore: Changes in action execution analytics event (#17021) 2022-09-26 10:11:38 +05:30
Manish Kumar
bfc79bdfd3
feat: Informative error messages on cyclic dependency for queries on page load (#16634)
* This commit addresses the feature https://github.com/appsmithorg/appsmith/issues/16154

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2022-09-24 15:31:52 +05:30
Trisha Anand
4c69e15b29
chore: Replacing redis entry with in memory storage for anonymous user permission groups (#17031) 2022-09-23 20:26:13 +00:00
Hetu Nandu
28a3fc6625
feat: Create a feature flag for Templates: Phase 2 (#17025) 2022-09-23 19:02:17 +05:30
Sumit Kumar
b8f30a8f10
fix: remove RapidAPI plugin src code from API server (#16501)
* remove RapidApi plugin related code from API server
* mark RapidApi plugin related data as deleted in DB (soft delete)
2022-09-23 13:20:03 +05:30
Anagh Hegde
63fa43ecc1
test: Add user details for tests (#16944)
* Add user details for tests

* Remove withUserDetails annotation where not required
2022-09-22 21:37:36 +05:30
Dhruvik Neharia
2088c7e117
feat: Add font family to system-themes for map chart (#16922) 2022-09-21 17:28:55 +05:30
subratadeypappu
2751af6810
fix: Fix NPE in execute API (#16722) (#16888)
* Fix NPE in execute API (#16722)

* Add unit tests with usual and unusual ordering of the parts (#16722)
2022-09-21 15:36:09 +05:30
sneha122
44e08b096d
fix: fixes right body type not selected after curl import (#16549)
* fixes rght body type not selected after curlimport

* added apiContentType key in ActionConfiguration formData property

This commit fixes the bug https://github.com/appsmithorg/appsmith/issues/13978 and changes two files:
		* appsmith-server/src/test/java/com/appsmith/server/services/CurlImporterServiceTest.java
		* appsmith-server/src/main/java/com/appsmith/server/services/ce/CurlImporterServiceCEImpl.java

additionaly this commit fixes the Body type detection for REST APIs with GET method  when imported from cURL.

* Made changes to the casing of Header key 'content-type', now it is  HTTPHeader.CONTENT_TYPE standard -> 'Content-Type'. changed test cases accordingly.

* Made header-key check in assertHeader functions case insensitive in CurlImporterServiceTest.java

* removed wildcard imports and changed some comments

* changes according to PR review comments

* updated imports for APIPaneUtils

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
Co-authored-by: manish kumar <manish@appsmith.com>
2022-09-21 09:40:36 +00:00
Trisha Anand
e3a100d67b
chore: Shutting down get applications endpoint (#16902)
Shutting down get applications endpoint
2022-09-20 17:20:47 +05:30
Anagh Hegde
c2d7b0c2c1
chore: Add support for limit - queryAll method of base repo (#16710)
## Description

> The `queryAll` method of AppsmithBaseRepository does not support the mongodb limit. This PR adds the support for the same. 

## How Has This Been Tested?

- locally

## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-09-20 15:54:27 +05:30
Arsalan Yaldram
34e7eb12b7
feat: added theme values for slider widget. (#16462) 2022-09-17 12:11:16 +05:30
Vishnu Gp
75bac52626
Added users name to sessionUser (#16825) 2022-09-17 07:55:13 +05:30
subratadeypappu
cf2ef37527
feat: Add a service layer to get AppsmithType from client-type (#16508) (#16619)
* feat: Add a service layer to get AppsmithType from client-type (#16508)

This commit takes care of the following things
- It creates a service layer to get the target AppsmithType from the client-side data type and the evaluated value
- This service layer is currently not consumed by any plugins
- A full JUnit test suit for MySQL-specific types

* feat: Remove FloatType and add comments for better understanding (#16508)

* feat: Add FallbackType and covert the DataTypeService to a util class (#16508)

This commit takes care of these
- Introduce FallbackType as a separate type
- Convert the DataTypeService to a util class
- Add java doc around the methods in DataTypeService class

* feat: Rename DataTypeService to DataTypeServiceUtils (#16508)
2022-09-16 17:40:28 +06:00
Shrikant Sharat Kandula
c3ac06c639
chore: Allow env API for frame ancestors variable (#16765) 2022-09-16 13:07:16 +05:30
Sumit Kumar
ecec0e1975
fix: re-install graphql plugin in workspaces (#16764)
* re-install graphql plugin in workspaces
2022-09-15 21:09:01 +05:30
Shrikant Sharat Kandula
89620d3cbf
Fix unused reactive publisher (#16732) 2022-09-13 18:08:35 +05:30
Shrikant Sharat Kandula
83fc89f1a1
fix: No-op Asserts (#16690) 2022-09-13 13:55:33 +05:30
Trisha Anand
becd778fe1
chore: Added username to error logs when signup is disabled (#16720) 2022-09-13 13:07:12 +05:30
Trisha Anand
aa45f851eb
chore: Minor code refactor + Deleting PermissionGroupServiceTest from CE (#16680)
Minor code refactor + Deleting PermissionGroupServiceTest from CE
2022-09-11 20:53:12 +05:30
Parthvi
e3ba513e2a
fix: Update AppsmithError.java (#16676)
Update AppsmithError.java
2022-09-11 00:06:26 +05:30
Sumit Kumar
0cbe81dfde
feat: merge GraphQL plugin to release (#16554)
* merge GraphQL plugin to release
2022-09-09 21:29:47 +05:30
Vishnu Gp
43ee8b2089
chore: Changes in user invited analytics event (#16611) 2022-09-09 10:31:18 +05:30
Anagh Hegde
4d609a5b4d
feat: Add non-configured datasource to merge template to an existing app API response (#15918)
Add unconfigured datasource to merge template to app API
2022-09-08 22:55:47 +05:30
Dhruvik Neharia
c87fd20b02
feat: Update QR Scanner Themes to Code Scanner Themes (#16595)
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-09-08 15:04:12 +05:30
Trisha Anand
96435ac235
chore: Using single permission group for all public viewable objects (#16620) 2022-09-08 11:37:12 +05:30
Trisha Anand
245a09ae21
fix: Duplicate default workspaces for first login using SSO (#16606) 2022-09-07 14:11:04 +05:30
Anagh Hegde
274205196f
test: refactor git test (#16550)
* Refactor tests

* Use Mock.Spy to mock the method of the testing class

* Add the mock for new workspaceId in the test class

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-09-07 10:21:09 +05:30
Trisha Anand
70bb40d5c5
fix: Creating default workspace for SSO signed up users before creating first application (#16579) 2022-09-06 12:55:07 +00:00
Trisha Anand
9cf3714d36
chore: Code Split for Policy Generator (#16538) 2022-09-05 20:40:52 +05:30
Vishnu Gp
75a9858397
chore: Added some changes in authentication analytics events (#16432)
* chore: Added some changes in authentication analytics events

* Review Changes
2022-09-05 10:46:59 +05:30
Trisha Anand
97a651c6a5
chore: update-bad-theme migration should only run once. (#16507)
Update bad theme migration should only run once.
2022-09-04 21:04:20 +05:30
Trisha Anand
918c018049
fix: Performance improvement of /new API by updating the api used for fetching apps. Eliminating public applications from the result (#16497) 2022-09-03 22:33:29 +05:30
Trisha Anand
8c4451a2fe
fix: Duplicating themes where 1:many applications mapping exists (#16496) 2022-09-02 22:39:21 +05:30
Dhruvik Neharia
f97cd4c38a
feat: Add QR Scanner to System Themes (#16474) 2022-09-02 17:06:34 +05:30
Nidhi
29fe999dc7
chore: Converted server log timestamps to UTC (#16475) 2022-09-02 13:09:12 +05:30
Shrikant Sharat Kandula
8a0838505a
All outgoing requests should go through the configured proxy (#14427)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-09-01 11:16:45 +05:30
Anagh Hegde
b53dc1d47f
chore: Refactor repo limit check function (#16356)
* Refactor repo limit check function

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/GitServiceCEImpl.java

* Fix the repo limit check

Co-authored-by: Trisha Anand <trisha@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-09-01 08:53:27 +05:30
Trisha Anand
0163c22003
fix: For a public app, do not export the default permission group (#16409)
* For a public app, do not export the default permission group

* Adding test to assert that exported application JSON is not public.
2022-08-31 10:44:32 +05:30
Vishnu Gp
fa31166eaa
fix: Added analytics event for workspace creation (#16383)
## Description
This adds the missing analytics event for workspace creation

## Type of change

- New feature (non-breaking change which adds functionality)

## How Has This Been Tested?

- Locally

## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [x] New and existing unit tests pass locally with my changes
2022-08-30 10:41:36 +05:30
Trisha Anand
8d9e071648
feat: Adding cache eviction for users whose permissions change due to super user changes (#16362)
Adding cache eviction for users whose permissions change due to super user changes
2022-08-29 13:21:24 +05:30
Trisha Anand
a5e6d09ae8
fix: Super user updated from docker.env on every restart (#16351) 2022-08-27 23:04:39 +05:30
Trisha Anand
649fe2ec7c
chore: refactor code split for UserUtils for super user creation (#16348) 2022-08-27 21:39:17 +05:30
Anagh Hegde
043705f343
chore: refactor git constants (#16287) 2022-08-25 20:52:25 +05:30
Trisha Anand
8f3591615a
feat: RBAC framework (#14823)
Co-authored-by: Sidhant Goel <sidhant@appsmith.com>
Co-authored-by: Ankita Kinger <ankita@appsmith.com>
Co-authored-by: Sangeeth Sivan <sangeeth@appsmith.com>
Co-authored-by: Parthvi <80334441+Parthvi12@users.noreply.github.com>
2022-08-22 23:27:07 +05:30
subratadeypappu
0e2637b1b2
chore: Modified action execution payload to support data types (#16106)
* POC: Datatype handling autogenerated naming params client

* added array and file datatype

* handles all primitive types

* paramproperties convetred to map instead of array

* parametermap inversion

* handled no bindings bug

* feat: Consume action execution payload changes w.r.t. data type mapping (#15555)

This commit does the following things
1. It consumes data type metadata from payload
2. It consumes the mapping between the pseudo binding name and original binding name
3. It doesn't apply any logic w.r.t. data type identification after consumption

* added comments and cleaned code with proper datatypes

* removed URLencoding for binding params names

* feat: Remove URL decoding on param keys from server-side codebase (#15555)

* Remove unused import (#15555)

Co-authored-by: ChandanBalajiBP <chandan@appsmith.com>
2022-08-19 01:01:47 +05:30
Nidhi
cdb70066b6
fix: Logging execute events again (#16125)
Execute action triggered events were not getting logged because of a lack of subscription. Fixed in place.

## Type of change
- Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?
- Locally connected to segment

## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [x] New and existing unit tests pass locally with my changes
2022-08-18 13:40:29 +05:30
Trisha Anand
48ab154cf1
chore: Removing debug feature flag logs from the server (#15931) 2022-08-11 12:50:37 +02:00
Nayan
8e38079a31
chore: Return custom slug in other api (#14854)
* -return custom slug in response to the get list of pages API

* -return custom slug for default page in home page API

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-08-10 21:52:24 +06:00
Vishnu Gp
2c03cecbb1
feat: Added more data to existing analytics events (#15684)
* feat: added more data to existing analytics events

* Added extra audit data points for page and action events

* Corrected minor comment issue

* Review changes

* Removed audit references in variable names

* Review changes related to sending analytics events and DB optimization
2022-08-09 13:05:00 +00:00
Anagh Hegde
82a9d720ae
feat: Added unconfigured datasources to the template API response (#15606)
Co-authored-by: Akash N <akash@codemonk.in>
2022-08-04 09:50:54 +05:30
Keyur Paralkar
bfd341510e
feat: added accentColor and fontFamily to the theme config chartwidget (#15622) 2022-08-03 11:47:01 +05:30
Nidhi
02aa9b29bf
fix: Reset sync function fields on each update (#15442)
* Reset sync function fields on update

* Partial cypress test

* Completed cypress test

* Uncommented every other test :P
2022-08-03 10:11:02 +05:30
Nidhi
7693c759aa
fix: Do not cache updatable connections (#15593)
* fix: Do not cache updatable connections

* Delete cache entries for stale connections

* Test fixes
2022-08-02 23:13:18 +05:30
Hetu Nandu
69490bbcbf
chore: Extend commenting deprecation deadline to 1.7.12 (#15616) 2022-08-02 10:02:34 +00:00
Shrikant Sharat Kandula
928a93d02e Fix OIDC session tokens support in Redis sessions
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-08-02 15:28:29 +05:30
Shrikant Sharat Kandula
de23ea9d61
feat: JSON Session serialization on Redis (#15368) 2022-07-30 00:42:56 +05:30
Vishnu Gp
7d8fca9545
chore: Fixed flaky ApplicationForkingServiceTests (#15550) 2022-07-30 00:34:23 +05:30
Shrikant Sharat Kandula
8619a311ad
Fix compile error 2022-07-29 15:16:43 +05:30
Shrikant Sharat Kandula
04f8d2799d
Fix potential delay in sending setup completion (#15534)
The Installation setup complete event is not getting sent sometimes, and it's behavior looks very much like there's some race condition somewhere. I'm proposing this change towards two goals.

One, currently, we send the event after the user-entered data is saved to the DB. But, there's no actual dependency, no point to waiting on that for sending the event. The actual user itself, is already created and signed up. So, one change is that we don't wait for the DB update to be applied. I'm also changing .onSuccess to .map, hoping that might make a difference.

Two, make a debug log entry to see if it is our callback function that's not getting invoked, or if Segment's API isn't doing it's job, when the event is not sent.

This PR also fixes formatting of Segment error messages.
2022-07-29 14:35:26 +05:30
Anagh Hegde
4821a5c141
fix: ssh url validation in git to include a few cases where - is present in the url (#15499)
Fix the ssh URL validation to include a few cases with `-` in the url
2022-07-29 10:44:19 +05:30
Nidhi
12e626d5b0
chore: Added isMock and isTemplate to action execution analytics (#15505)
Added isMock and isTemplate to action execution
2022-07-29 01:18:09 +05:30
Nidhi
daea0a8545
chore: Added analytics for C, U, D operations on actions (#15069)
* chore: Added analytics for C, U, D operations on actions

* chore: Added isTemplateOrMock field in datasource

* fix: Set mock datasource field as true on creation

* Split template and mock identifiers into two. Added them to analytics as well

* Added tests as well as felt like a noob.

* Add isMock and isTemplate fields to datasources of created Actions

* Removed execute action triggered props

* Revert "Removed execute action triggered props"

This reverts commit cad1b8af504218813daa5f563f7b417fa263101b.

* Stringified response body before recording event

* Adding ds fields

* Reverting client side changes

* Fixed failing tests

Co-authored-by: Ayangade Adeoluwa <adeoluayangade@yahoo.com>
2022-07-28 09:40:47 +05:30
Nidhi
6df4dafead
chore: Better server logging infra (#15440)
* Fixed a bunch of server side logging issues

* Tests

* Added ISO8601 timestamp to log format
2022-07-28 09:40:03 +05:30
Vishnu Gp
828f734b18
Added missing analytics events and extra data (#15408)
This adds a few missing analytics events and some more extra data for audit purposes. The missing event added are,

    User login (login_USER)
    User logout (logout_USER)
    Import Application (import_APPLICATION)
    Export Application (export_APPLICATION)
    Clone Application (clone_APPLICATION)
    Create Workspace (create_WORKSPACE)
    Delete Workspace (delete_WORKSPACE)
    View Page (view_NEWPAGE)
2022-07-27 21:01:34 +05:30
Anagh Hegde
712e15a1fc
chore: NPE issue while copying in git-theming migration (#15480)
## Description

> Fix the NPE issue in theming while copying the properties. 


## Type of change

- Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?

> Locally

## Checklist:

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
2022-07-27 17:14:17 +05:30
Vishnu Gp
91025f94d7
chore: Fixing flaky test in ApplicationForkingServiceTests (#15468)
## Description

Fixes issue in ApplicationForkingServiceTests

## Type of change

- Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?

- Local tests

## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [x] New and existing unit tests pass locally with my changes
2022-07-27 11:25:15 +05:30
Nayan
9489484ffd
Add migration to fix deleted themes when branch was deleted (#14957)
Due to a bug, customized themes set to the parent branch where deleted when user deletes git branch. The bug has been fixed already. This PR adds a DB migration that fixes the data if there is any.
2022-07-27 10:13:39 +05:30
Vishnu Gp
d7fe87fac8
fix: Converted ApplicationForkingServiceTests to synchronous to temporarily solve tests failing on CI (#15450) 2022-07-26 18:20:40 +05:30
Hetu Nandu
a1e5b511eb
chore: Deprecation warning for comments (#15363)
Adds deprecation warning for comments

Resolves #15364
2022-07-26 18:04:54 +05:30
Ankita Kinger
3b7ace67b5
feat: migrate texts and error messages from organization to workspace (#15410) 2022-07-25 17:52:09 +05:30
Nidhi
833a6b05c4
fix: Modified available scopes for Google Sheets (#15169)
* fix: Modified available scopes for Google Sheets

* fix: Fixed locator reference

* Modified text for scope

* Fixed failing tests
2022-07-21 16:35:54 +05:30
Nayan
63370c1819
feat: Add API to get sample apps related to a template (#14942)
This PR adds query params to the get similar templates API.
2022-07-21 16:56:49 +06:00
Nidhi
50172ecd64
fix: Added support for self signed certificate during OAuth2 flows (#14719)
* Added support for self signed certificate during OAuth2 flows, server side changes

* fix: authentication.useSelfSignedCert key added

* Merging from release

* Fixed issue with dependencies, plus bug with using ssl

* Cypress test attempt 1

* Cypress test attempt 2

* Cypress test attempt 3

* Clean up

* Review comments

* Enabled compression again

Co-authored-by: Aman Agarwal <aman@appsmith.com>
2022-07-21 16:10:36 +05:30
Vishnu Gp
728728cac4
fix: App deploying when git push fails (#15255)
* Fix: Prevented publishing the app when git push fails
2022-07-21 10:29:22 +05:30
Sumit Kumar
fc65216782
fix: fix race condition on datasource creation (#14348)
* fix race condition on datasource creation for non-clustered setup
2022-07-20 23:31:50 +05:30
Ankita Kinger
3933f5f4d1
feat: migrate from org to workspace under phase 3 (#14158)
* migration from organization to workspace on code level

* updated a few more files

* fixed runtime errors

* update org settings URL

* Renamed organizationId in domain objects

* changed field named from organization to workspace

* Reverted AppsmithRole changes

* fixed migrations

* recreating indexes

* migration update

* seed data runs before migration, undo changes

* mock commit

* seedmongo to populate upgraded data, datasource upgrade

* fixed two test cases

* updated migrations

* updated prop name

* Upgraded AclPermission

* comment

* migrated AppsmithRole

* more changes

* final set of changes

* variable name changes

* update cypress variable name

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/ce/ApplicationControllerCE.java

* Update app/server/appsmith-interfaces/src/main/java/com/appsmith/external/models/Datasource.java

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* reverting encryption handler change

* refactor code to migrate from org to workspace

* migrated a few missed out org to workspace

* updated a few more

* migrated a few missed out org to workspace

* migration changes

* Removed Permission import

* reverted code change

* few more changes

* fixed failing cypress test

* fixed failing cypress test

Co-authored-by: Sidhant Goel <sidhant@appsmith.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
Co-authored-by: Sidhant Goel <sidhant@hexcod.in>
2022-07-20 17:24:16 +05:30
Shrikant Sharat Kandula
5d166a46f1
fix: Block the call to clear Redis sessions (#15330) 2022-07-20 16:09:09 +05:30
Shrikant Sharat Kandula
e8be0936e6
Fix method name for Redis cleaning migration (#15322) 2022-07-20 12:48:55 +05:30
Anagh Hegde
dbf0b94973
feat: Update the table widget to v2 in suggested widget list (#15277)
Co-authored-by: balajisoundar <balaji@appsmith.com>
2022-07-20 12:28:50 +05:30
Shrikant Sharat Kandula
39ad73228c
Log users out to fix serialization error from upgrading Spring (#15314) 2022-07-20 07:43:38 +05:30
Shrikant Sharat Kandula
bba78afc3b
chore: Upgrade dependencies reported by Dependabot (#13735)
Upgrades vulnerable dependencies in all plugins except for MySQL. That one is still failing and I'll fix it in a separate PR. Issue #14475

Co-authored-by: Nayan <nayan@appsmith.com>
Co-authored-by: Anagh Hegde <anagh@appsmith.com>
2022-07-19 10:23:27 +05:30
Nidhi
02a5e1d490
fix: Added dropdown to select whether to send credentials in header or body in client credentials flow (#14545)
* Added dropdown to select isAuthorizationHeader in client credentials flow

* Added tests

* Added cypress test

* Oopsie
2022-07-13 14:33:19 +05:30
Nayan
bac6162921
feat: Add new field for the page meta data in templates (#14784)
In order to import a specific page or browse to that page, the templates FE need page names and page ids. This PR replaces the list of page names with a list of objects that contains the page names and page ids.
2022-07-13 00:07:18 +06:00
Anagh Hegde
317f340421
feat: fetch branch speific refs from the remote repo (#15067)
* fetch branch specific refs from the remote repo
2022-07-08 11:29:16 +05:30
Anagh Hegde
883d9d801e
chore: Refactor git api to include application id as request param instead of the path variable (#14800)
* Refactor git API's to add `/app` to the API path to identify the appId

* Update the url in cypress tests

* Update the path in git spec cypress files

* Update the url for connection spec
2022-07-07 12:35:03 +05:30
Shrikant Sharat Kandula
30236469a9
Fix saving values with special chars in env file (#14873)
Fix how special chars in env values are saved

Also included some refactoring to fix several compile time warnings and lint errors,
including proper formatting.

Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-07-07 11:27:16 +05:30
Nidhi
c5253fc300
fix: Handled migration of empty condition objects, or missing operators (#15038) 2022-07-06 12:37:58 +05:30
Nidhi
ff58dad704
fix: Switched Google Sheets JSON to local directory (#14971)
* fix: Switched Google Sheets JSON to local directory

* fix: Fixed placeholder text for insert row object

* fix: Enabled server side caching of plugin resources again
2022-07-04 22:02:54 +05:30
Nidhi
906a7298dc
feat: Simplified Google Sheets queries (#14869)
* Client changes 1

* add DSL functionality

* Temp commit for refactoring changes

* Do I even know what I'm doing here?

* chore: Second GS layout

* Update: Visibility conditional outputs for schemas

- Added the output from conditional outputs for schema children too

* Update: Entity selector visibility control

- Added logic for controlling visibility of sub components via the JS expressions system

* Update: Passing disabled prop to toggle button

* Update: Passing disabled prop to toggle btn

* Update: Styled component for toggle button

- Added disabled styles based on the disabled prop sent to the toggle form view JSON button

* Update: configProperty role in Entity Selector

- Removed dependance of the configProperty of the entity selector children to it's parent component

* Update: type of placeholder key

- Made placeholder key from form config JSON to accept either string or an object
- Earlier only string was accepted
- This is for pagination component

* Update: Added placeholder control for pagination

* Client changes 1

* add DSL functionality

* Do I even know what I'm doing here?

* fix: updated uqi forms ui, clubbed JS switch button to ads, updated tooltip design

* fix: updated tooltip component for wrong ui on entity explore

* temp triggers

* fix: updated uqi forms ui, clubbed JS switch button to ads, updated tooltip design (#12395)

* fix: updated uqi forms ui, clubbed JS switch button to ads, updated tooltip design

* fix: updated tooltip component for wrong ui on entity explore

* fix: updated tooltip ui, where condition placement, sort by ui

* temp form data access logic

* fix: updated sorting type width ui

* fix: updated ui for spacing, width and text issues

* Update: Type for tooltip of UQI forms

- Added option to send an object to the tooltipText object.
- This allows for composite components like pagination to have tooltips for each sub component

* Update: tooltip for pagination component

- Added handling to parse the tooltip for multiple components.
- This allows for composite components like pagination to have tooltips for each sub component

* Update: Type cast for tooltip component

- Made the content passed to tooltip component as a string only

* Update: Fixed tooltip component CSS

* Update: Dropdown option component

- Added a tooltip wrapper to each option
- This is to show on hover text like disabled state

* fix: updated ẇhere clause broken ui for condition

* Add: functions to check and extract expressions

- Loop through the formConfig and find any keys that have a value that is bindable
- Used pre defined regex to check if value is a moustache binding

* Add: Types for evaluated form configs

- Added types for the form configs to be evaluated and their output post eval

* Add: Flow to run the form config

- Run the form config and update the result to the redux state

* Update: Name of the type for formconfigs

- Updated since it was clashing with a component of the same name

* Add: Function to enforce config type checks

- This is done so that the improper configs can be weeded out and the rest of the form can be shown

* Add: Function to update evaluated config

- Added option to update the config if it's values needed evaluation

* Add: Type check for schema sections

* Update: Error handling for invalid control type

- We were throwing an exception till now, changed it to a warning text

* Add: Exposed tooltip for dropdown option disabled state

* Update: switch to json mode functionality

- Added logic to convert data to a string rather than an object when the first switch to JSON mode happens

* Update: Added key to tooltip for dropdown options

* Trigger API modification

* Add: function to fetch default trigger URL

* Update: Made URL optional in dynamic trigger config

* Update: Dynamic trigger API call

- Made the API call for dynamic triggers have URL as optional field
- Added type check to the response of the API call

* Update: resp type for trigger APIs

* Update: Moved code to utils folder

- Moved functions for UQI form eval processing to utils file

* Update: passing original controltype to JS switch

* Update: config for JSON editor mode

- Updated the config to have different options for JSON mode depending on the original control type

* Update: Connected line numbers flag to config

* Revert: CSS changes for tooltip

* Refactor: Removed consle

* Add: type for the config of dynamic values

* Add: Feature to evaluate config for triggers

* Refactor: fix type check errors

* fix: dropdown ui width with text alignment

* Update: fixed selector for dynamic values

* Update: selector call for fetchDynamicValues

* Add table header index prop for columns selector

* migration partial commit

* migration partial commit

* Refactor: removed unused import

* Update: reused function for checking dynamic value

* Update: removed unused import

* Fix format JSON issues

* Retrieve binding paths from entity selector components

* Fixes 6 remaining issues with UQI implementation

* Fix dropdown issues

* Fix dropdown height issues and fixes triggering of APIs when option is deselected

* Migration changes

* Fix QA generated UQI issues

* Fix projection component height and route change logic

* Fix multi select dropdown placeholder text issue and json stringify issue with switching view types

* Reset entity type value when command value changes

* Test changes

* Review comments

* Moved migrations around

* Corrected import statement

* Added JSON schema migration

* Updated schema version

* perf improvements and filter dropdown options feature

* Fix Code mirror component config for toggleComponentToJson input fields.

* Fix prettier issues

* fix prettier issues

* Fix style issues as a result of the merged conflicts

* Fix failing test case

* Fixed a few other flows (#14225)

* Fixed a few other flows

* Review comments

* Fix generate CRUD, fix evaluation of dynamic bindings and fix various styling issues.

* More fixes (#14367)

* Factor in the root formconfig parent key.

* Fix flickering issues, and evaluatedFormConfig issues

* fix: Teeny bugs (#14455)

* Teeny bugs

* Added previous functionality as is

* Improvements in the way we fetch dynamic values

* Fix stringiification issue and cyclic dependency issues

* Resolve projection component values deletion

* Resolve merge conflicts and fix prettier issues

* fix: Tsc issues

* Fix property pane connection navigation

* updating ee locator

* updating inputfield locator

* dropdown locator update

* Merge conflict not properly resolved.

* Fix s3 spec

* Fix Mongo Spec

* Fix some more tests

* fix: prevent cyclic dependency when switching to js mode (#14668)

* add delete events for change from array to string in diff

* add test to assert absence of cyclic dependency error when switching to js in switchgroup widget

* Assert that evaluation is not disabled when no cyclic dependency happens

* Cypress test preparations for google sheets and form controls

* Fixed a few test errors (#14874)

* Add: unit tests for uqi UI updates

- view type tests
- conditional output extraction
- processing conditional output to handle view/enabled state of the component

* Add: completed isValidFormConfig test

* Update: improved tests for update config

- These tests cover the functionality to update a section config after it's components are done evaluating

* Fix failing cypress tests and cyclic dependency issue

* Fixes some more tests

* Fixed migration of row objects (#14896)

* Bumped the version of design system package

* Update: reverted change to EE selector

* Fix deletion pointer

* Update: selector for js on load spec

- Synced with changes related to ADS dropdown

* Fix mongoDBShoppingCart spec

* Remove comments

* Fix: mongo shopping cart test failures

* fix: mongo shopping cart spec

* Dummy push to retrigger vercel

* fix: mongo shopping cart spec

* Update MongoDBShoppingCart_spec.js

* fix: removed unused click away

* dummy commit

* Update: moved helper functions to separate file

* Add: added tests for saga functions

- Worked on testing for
   - extractFetchDynamicValueFormConfigs
   - extractQueueOfValuesToBeFetched

* Add if check for queueOfValuesToBeFetched

* Resolve review comments

* Empty-Commit

Co-authored-by: Irongade <adeoluayangade@yahoo.com>
Co-authored-by: Ayush Pahwa <ayush@appsmith.com>
Co-authored-by: Aman Agarwal <aman@appsmith.com>
Co-authored-by: Ayangade Adeoluwa <37867493+Irongade@users.noreply.github.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Favour Ohanekwu <fohanekwu@gmail.com>
Co-authored-by: Albin <albin@appsmith.com>
2022-07-04 11:13:27 +05:30
Pawan Kumar
545540723c
fix: Update the default themes in app theming (#14576)
* add new themes

* update default themes

* fix cypress tests

* comment theme test in backend

* updated tests for theming changes

* fix font name in sun rise theme

* update border radius/box shadow labels

* update snapshots + fix cypress tests

* fix cypress tests

* fix cypress tests

* trying fixing snapshot bugs

* trying fixing snapshot bugs

Co-authored-by: Nayan <nayan@appsmith.com>
2022-07-01 11:26:16 +05:30
Nayan
1cf3e0983d
fix: Increase file size limit for templates (#14855)
Forking a template was failing due to file size limit. This PR increases the file size limit to 4 MB.
2022-07-01 11:53:20 +06:00
Nayan
1509d4b0ab
Fix Server build failure due to failing tests (#14837)
Fixes build failure due to missing dependency in controller tests.
2022-06-28 11:01:06 +05:30
Nayan
737bab389d
bug: fixed test failure for get profile of anonymous users (#14805) 2022-06-27 11:55:50 +06:00
Anagh Hegde
e95602ce8a
feat: Add keyType to git import key generation flow (#14762) 2022-06-23 17:54:39 +05:30
Nidhi
049de6b58f
chore: Added actionId and requestedAt fields in ActionExecutionRequest (#14720)
* chore: Added actionId and requestedAt fields in ActionExecutionRequest

* Reverted unrelated failing test

* Fix test failures

* Refactor test

Co-authored-by: Anagh Hegde <anagh@appsmith.com>
2022-06-22 22:43:31 +05:30
Nayan
530a571ba0
chore: send whether the app was published manually to the analytics event (#14728)
Sends an attribute along with publish app analytics event to denote whether this was a manual publish or automated publish.
2022-06-22 23:10:22 +06:00
Anagh Hegde
14eb9b4cb5
feat: Add API for git docs and supported shh keys (#14641) 2022-06-22 21:50:04 +05:30
Nayan
076f2a6ced
fix: Admin email not working (#14474)
When a new email of an existing user is added to admin emails from the admin settings page, that user does not get admin access instantly. Same happens when an existing user's email is removed from admin settings - permission is not revoked instantly.
2022-06-22 11:26:37 +06:00
Vishnu Gp
63205dce27
Merge pull request #14184 from appsmithorg/feat/git-delete-only-removed-resources
Feat: Perform file ops only when the resource is updated
2022-06-22 10:53:45 +05:30
Nayan
4431c79e75
fix: Custom theme not copied when creating new branch (#14680)
When a new branch is created where source branch has a custom theme, theme is not copied.
2022-06-21 02:30:46 +00:00
Trisha Anand
437224b856
fix: Fix migration for overwriting recently used workspaces (#14634) 2022-06-17 15:01:52 +05:30
Trisha Anand
c307fc686b
hotfix: Adding workspaceId when missing (#14617) 2022-06-17 12:21:56 +05:30
Abhijeet
ebc4090b53
chore: Enable serialisation for JsonIgnore fields during export flow to avoid adding intermediate fields in DTO (#14120)
* Add separate DTO for import export to serialise JsonIgnored fields

* Move remove unwanted field method for app in aaplication class

* Refactor sanitise objects before export

* Write migrations as per updated serialization implementation

* Fix migration

* Fix NPE during import

* Refactor

* Fix partial import scenario

* Fix testcases for DSLActionDTO

* Remove unwanted testcase

* Fix testcases for orgId to workspaceId migration

* Fix empty repo import testcase
2022-06-17 10:09:28 +05:30
sidhantgoel
15559d0048
fix: for Running an API query returns a missing organization ID error for an unsaved datasource (existing apps) 2022-06-16 18:24:03 +05:30
Pawan Kumar
a6c8e03702
fix: Theming is not applied to Table's 'Delete' & JSONForm's 'Reset & Update' buttons in Crud template (#14316)
* Updated Template

* Updated Template

* Updated Template

* Updated Template

* Updated Template

* Updated Template

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2022-06-16 16:43:39 +05:30
Sidhant Goel
0f5e371ad7
added migration 2022-06-16 13:04:28 +05:30
Anagh Hegde
32f9adef21
test: Fixing test failures for git file utils (#14582) 2022-06-16 09:00:36 +05:30
Ankita Kinger
9b7944e7ee
feat: migrate organisation to workspace (#13863)
* migration from organization to workspace on code level

* updated a few more files

* fixed runtime errors

* update org settings URL

* Renamed organizationId in domain objects

* changed field named from organization to workspace

* Reverted AppsmithRole changes

* fixed migrations

* recreating indexes

* migration update

* seed data runs before migration, undo changes

* mock commit

* seedmongo to populate upgraded data, datasource upgrade

* fixed two test cases

* updated migrations

* updated prop name

* Upgraded AclPermission

* comment

* migrated AppsmithRole

* more changes

* final set of changes

* variable name changes

* update cypress variable name

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/ce/ApplicationControllerCE.java

* Update app/server/appsmith-interfaces/src/main/java/com/appsmith/external/models/Datasource.java

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* reverting encryption handler change

* migrated a few missed out org to workspace

* migrated a few missed out org to workspace

* migration changes

* Removed Permission import

* fixed AppsmithRole

* mongodb version update

* fixed compile error

* fixed compile issue

* fixed some tests

* simplified embedded mongodb config

* updated a cypress test

Co-authored-by: Sidhant Goel <sidhant@appsmith.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
Co-authored-by: Sidhant Goel <sidhant@hexcod.in>
2022-06-15 21:07:41 +05:30
Aravind
595da2d9ef
fix: Redirection after login does not work for Google and Github (#14268)
* Fix for issue #9819

Security.STATE_PARAMETER_ORIGIN is already set to "origin="

* removing redundant variable 

Refactoring code
2022-06-15 17:59:56 +05:30
sidhantgoel
0ccc1aee93
fix: Fixes issue where CI was not executing all tests (#14338)
* made test classes public

* added surefire compatible with junit 4

* Revert the changes of tests class accessibility

* Fix test failures

* test case fixes

* fixed NPE

* Fixed failing tests

Co-authored-by: Anagh Hegde <anagh@appsmith.com>
Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
2022-06-15 12:04:28 +05:30
Vishnu Gp
74ac6b9a1c
Resolved the issue of actionCollection updatedAt field not getting updated (#14323) 2022-06-11 10:03:26 +05:30
Anagh Hegde
c64784646a
Update the delete app flow for git connected apps (#14399) 2022-06-10 18:39:00 +05:30
Ankita Kinger
3b62e3f26a
Refactor code for RBAC feature (#14426) 2022-06-10 07:35:30 +05:30
Aswath K
a88618d17d
chore: Adds feature flag for Property pane grouping (#14311)
* Adds feature flag for Property pane grouping

* changes assertion logic
2022-06-09 11:16:00 +05:30
Ankita Kinger
442b849d9e
Refactor code for RBAC feature (#14362) 2022-06-08 18:48:15 +05:30
Abhijeet
6778af219c
chore: Improve the import application flow performance (#14364)
* Use saveAll instead of save in import flow
2022-06-08 13:53:50 +05:30
Nayan
51744a6727
feat: Return recently used templates first (#13996)
If user has recently used templates set, those should come first in the response of get templates API
2022-06-08 13:25:00 +06:00
Nayan
da2455bb5c
feat: Import an template inside an existing Application (#12507)
This PR adds the feature to import a template inside an application.
2022-06-08 13:24:37 +06:00
Somangshu Goswami
cdf0454db5
Merge branch 'master' into release 2022-06-08 11:08:30 +05:30
sidhantgoel
bacb0ab640
organization export permission in seed data (#14335)
Signed-off-by: Sidhant Goel <sidhant@appsmith.com>
2022-06-07 17:31:15 +05:30
Nayan
722aa11be2
Add custom slug along with auto generated slug for pages (#14065)
Adding custom slugs for pages that can be set by the user.
2022-06-05 00:48:25 +06:00
Pawan Kumar
78e6bcf7ad
fix: Theming UX Changes (#13741)
* update color control ux

* add reset theme option

* remove the console

* update theme card

* update icons + text for reset

* update button size

* fix cypress tests

* fix cypress tests

* fix flaky git tests

* incorporate ashit feedback

* fix cypress tests

* fix color button in theme panel

* fix reset theme logic + jest tests

* fix button styles reset issue in json form

* add cypress test for theming reset

* incorporate ashit feedback

Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
2022-06-03 15:55:38 +05:30
Anagh Hegde
4c6c109edf
fix: Update the widget from drop down to select widget in suggested widget list (#13944)
* Update the widget from drop down to select widget
2022-06-03 07:49:56 +00:00
Abhijeet
acf3e0c6fd
fix: Add sequential counter suffix for imported application nomenclature (#14245)
* Add sequencial counter for import application flow

* Refactor
2022-06-03 10:37:56 +05:30
Abhijeet
78ce45a190
chore: Remove client subscription for delete branch (#14152)
* Remove client subscription for delete branch

* Remove unused imports
2022-06-02 11:47:13 +05:30
Pawan Kumar
33767cf75f
fix: Theming is not applied to Table's 'Delete' & JSONForm's 'Reset & Update' buttons in Crud template (#14193)
* Updated Template

* Updated Template

* Updated Template

* Updated Template

* Updated Template

* Updated Template

* Updated Template

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2022-06-02 11:37:36 +05:30
Trisha Anand
5054cf312e
feat: Add Policy Domain (#14224) 2022-06-01 16:35:54 +05:30
Trisha Anand
ecce50a1b4
feat: Add User Group domain (#14221) 2022-06-01 16:33:11 +05:30
Anagh Hegde
c073170816
Update url for connecting to repo git sync (#14226) 2022-06-01 16:20:01 +05:30
Trisha Anand
adf70ed6fa
feat: Adding Permission Group datastructure (#14147) 2022-06-01 16:19:14 +05:30
Aishwarya-U-R
be926e3b22
Merge branch 'master' into release-v1.7.2 2022-06-01 11:50:27 +05:30
Abhijeet
d669cf4e4d
chore: Add branch name param for git analytics events (#14133) 2022-05-30 10:32:54 +05:30
Nayan
a362e536fd
feat: Sort datasources alphabetically and mark recently created datasources (#13958)
Return list of datasources in the GET /api/v1/datasources sorted alphabetically. Also set a flag isRecentlyCreated to the most recently created 3 datasources.
2022-05-29 00:02:39 +06:00
Trisha Anand
132a5065fe
feat: Add conceptual Tenant (#13935) 2022-05-27 18:29:08 +05:30
Shrikant Sharat Kandula
39b071961a
Better error response for admin API when env file is not found (#13373) 2022-05-27 17:04:40 +05:30
Arpit Mohan
f0663ec341
Merge branch 'master' into v1.7.1_promote_release_to_master 2022-05-27 07:49:15 +02:00
Abhijeet
6c1e5ec8c4
fix: Close insert modal for MongoDB and Google sheet after InsertQuery is executed for generated CRUD pages (#14115)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2022-05-26 16:20:28 +05:30
Abhijeet
845d5b2ad4
chore: Update CRUD page template to include JSONFormWidget (#12662)
* Updated Template

* Fix testcases

* Try removing autogenerated field entry from insert modal

* Update mongo testcase
2022-05-26 09:19:33 +05:30
Anagh Hegde
7f56d3972c
fix: Add support to generate ssh keys of type RSA (#13640)
* Add support to generate ssh keys on RSA algo
* Add the ssh key metadata to the get ssh key api
2022-05-25 14:14:02 +00:00
Sidhant Goel
8a50dea54d
added comment 2022-05-23 16:18:06 +05:30
Sidhant Goel
54b82d0502
Fix for running migrations before application start 2022-05-23 15:21:32 +05:30
Nayan
6b6deaf98f
feat: Add query count and page count as attributes to publish app event (#13847)
Adds number of pages and number of queries in a Application to the list of analytics attributes when an application is published.
2022-05-20 23:42:09 +06:00
Anagh Hegde
961d412a9f
chore: Add isSystemGenerated field to analytics for git operations (#13705)
* Add isSysteGenerated field to analytics for git operations
2022-05-19 20:42:16 +05:30
Sidhant Goel
12a269f66e
closing stream 2022-05-18 17:00:50 +05:30
Sidhant Goel
a2132d18c7
Added comment to explain processing optimizations done using stream 2022-05-18 16:17:26 +05:30
Sidhant Goel
f24553cc12
optimized the workspace copy migration 2022-05-18 14:52:52 +05:30
Sidhant Goel
a3e593250d
Merge branch 'release' into feat/migrate_organization_to_workspaces 2022-05-18 12:53:08 +05:30
Nayan
33c78e93ef
feat: Update organization slug (#13791)
When organization name is updated, the slug is not updated. This generates a outdated URL when user clicks on a organization name from the left panel. This PR changes the following behaviors

    The Organization slug will be no more unique
    Link to organization applications will be based on organization id instead of slug
    Organization slug will be updated whenever there is a change in organization name
    All the existing organization slugs will be updated
2022-05-18 11:08:13 +06:00
Sidhant Goel
47f8ed94b1
Merge branch 'release' into feat/migrate_organization_to_workspaces 2022-05-17 20:23:36 +05:30
Trisha Anand
11ee278740
fix: NPE check when datasource createdAt is null (#13894) 2022-05-17 15:44:14 +05:30
Trisha Anand
ea80a6028c fix: NPE check when datasource createdAt is null
(cherry picked from commit beafb371b24180dce2e351f1dea6d9d34db2a204)
2022-05-17 14:34:28 +05:30
Ankita Kinger
ccf74e691b Merge branch 'master' of https://github.com/appsmithorg/appsmith into chore/release-v1.6.26 2022-05-17 12:39:04 +05:30
Nayan
71ffbdeb45
fix: Theming issue when application has multiple git branches (#13870)
* fix: Themeing issue when application has multiple git branches

* Don't commit published mode theme

* -updated as per review comment

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2022-05-17 10:14:08 +05:30
Abhijeet
e7f34b0034
chore: Improve execution time logging (#13811)
* Increate timeout for git APIs and log execution time in mixpanel

* Improve execution time logging
2022-05-16 09:45:34 +00:00
Sidhant Goel
6a249c1cbe
Merge branch 'release' into feat/migrate_organization_to_workspaces 2022-05-12 16:21:24 +05:30
Sidhant Goel
6a9d62476d
Added migration to update sequence names 2022-05-12 16:16:18 +05:30
Anagh Hegde
807eea20b4
test: Fix git test failures (#13748)
* Fix test failures

* Fix testcase for pull changes

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2022-05-12 15:44:13 +05:30
Sidhant Goel
9cde523e52
Reverted changes in strings from workspace to organization 2022-05-12 15:20:33 +05:30
Sidhant Goel
109f34b3ab
renamed USER_ADDED_TO_ORGANIZATION_EMAIL_TEMPLATE to USER_ADDED_TO_WORKSPACE_EMAIL_TEMPLATE and corresponding template file name 2022-05-11 22:21:25 +05:30
Sidhant Goel
0abf57488a
Renamed PluginOrgDTO to PluginWorkspaceDTO 2022-05-11 22:18:26 +05:30
sidhantgoel
1e1e11d9be
Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/DatasourceServiceCEImpl.java
grammar correction

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-05-11 22:16:55 +05:30
sidhantgoel
4a984b68ae
Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/AssetServiceCEImpl.java
grammar correction

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-05-11 22:13:54 +05:30
Sidhant Goel
3f83e93a89
Merge branch 'feat/migrate_organization_to_workspaces' of github.com:appsmithorg/appsmith into feat/migrate_organization_to_workspaces 2022-05-11 22:10:15 +05:30
Sidhant Goel
087d24c6de
Removed migration to delete organization collection
Renamed constant FieldName.ORGANIZATION to FieldName.WORKSPACE, kept the value as organization
Renamed constants in appsmith errors
2022-05-11 22:08:03 +05:30
sidhantgoel
9848cb5294
Update app/server/appsmith-server/src/main/java/com/appsmith/server/solutions/ce/ApplicationFetcherCEImpl.java
Organization to Workspace in comments

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-05-11 21:37:04 +05:30
sidhantgoel
30aa1a9a6a
Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/ApplicationPageServiceCEImpl.java
orgMono to workspaceMono

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-05-11 21:36:44 +05:30
sidhantgoel
93e96d0c7f
Update app/server/appsmith-server/src/main/java/com/appsmith/server/solutions/ce/ExamplesWorkspaceClonerCEImpl.java
grammar correction in comments

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-05-11 21:34:56 +05:30
sidhantgoel
e0ee0134eb
Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/ApplicationPageServiceCEImpl.java
orgMono to workspaceMono

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-05-11 21:34:17 +05:30
sidhantgoel
796868ab79
Update app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomApplicationRepositoryCEImpl.java
renamed organizationId to workspaceId in comment

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2022-05-11 21:33:31 +05:30
Sidhant Goel
214e5a8318
Merge branch 'release' into feat/migrate_organization_to_workspaces 2022-05-11 18:03:51 +05:30
balajisoundar
ba0b58aa8f
chore: add theme stylesheet for Table widget v2 (#13713) 2022-05-11 11:06:19 +05:30
Sidhant Goel
c1cd3d2f10
Merge branch 'release' into feat/migrate_organization_to_workspaces 2022-05-10 16:59:26 +05:30
Abhijeet
797828a50a Fix build failure 2022-05-10 15:18:57 +05:30
Anagh Hegde
ab3d1d9815
Delete application created during git import for empty repo (#13450) 2022-05-10 13:02:30 +05:30
Nayan
c75e330506
feat: Track recently forked templates (#13159)
This PR adds feature to track recently forked templates by the user.
2022-05-10 13:28:43 +06:00
Nayan
12dfef1578
fix: Test failing for theme name change (#13663)
Fixes a failing junit test due to theme name change.
2022-05-10 10:59:20 +06:00
Sidhant Goel
98d1ac017b
Renamed organization in variable names and comments 2022-05-09 21:16:23 +05:30
Anagh Hegde
4db07f88b4
Fix test failures (#13306) 2022-05-09 13:17:20 +00:00
Sidhant Goel
9f56a7e49b
Renamed variable names and function names 2022-05-07 00:44:57 +05:30
Sidhant Goel
19483c6f07
QOrganization to QWorkspace in CustomWorkspaceRepositoryCEImpl 2022-05-06 23:19:19 +05:30
Sidhant Goel
db73a16ad6
UserOrganizationServiceImpl to UserWorkspaceServiceImpl 2022-05-06 23:13:39 +05:30
Sidhant Goel
0b99548493
OrganizationControllerTest to WorkspaceControllerTest 2022-05-06 23:12:07 +05:30
Sidhant Goel
549ca3ee4a
OrganizationController to WorkspaceController 2022-05-06 23:10:29 +05:30
Sidhant Goel
f514847847
OrganizationPlugin to WorkspacePlugin 2022-05-06 23:08:19 +05:30
Sidhant Goel
a4e4c00826
OrganizationPluginStatus to WorkspacePluginStatus 2022-05-06 23:07:45 +05:30
Sidhant Goel
25ec1ec5ae
ShareOrganizationPermissionTests to ShareWorkspacePermissionTests 2022-05-06 23:06:50 +05:30
Sidhant Goel
7298b05ef6
Renamed ExamplesOrganizationClonerTests to ExamplesWorkspaceClonerTests 2022-05-06 23:05:56 +05:30
Sidhant Goel
0b7dc1aa7e
Renamed UserOrganizationServiceCEImpl to UserWorkspaceServiceCEImpl 2022-05-06 23:04:44 +05:30
Sidhant Goel
ddc99df246
Renamed ExamplesOrganizationCloner(s) ExamplesWorkspaceCloner(s) 2022-05-06 23:03:43 +05:30
Sidhant Goel
1c2db28676
Renamed OrganizationApplicationsDTO to WorkspaceApplicationsDTO 2022-05-06 22:58:41 +05:30
Sidhant Goel
cb1cb07ba2
Renamed UserOrganizationServiceTest to UserWorkspaceServiceTest 2022-05-06 22:57:25 +05:30
Sidhant Goel
c73defbb03
Renamed UserOrganizationService to UserWorkspaceService 2022-05-06 22:56:25 +05:30
Sidhant Goel
50082fcd14
Renamed UserOrganizationServiceCE to UserWorkspaceService 2022-05-06 22:36:23 +05:30
Sidhant Goel
6c5134ca42
Renamed UserOrganizationServiceCE to UserWorkspaceServiceCE 2022-05-06 22:35:34 +05:30
Sidhant Goel
ffed375768
Renamed OrganizationServiceImpl to WorkspaceServiceImpl 2022-05-06 22:31:25 +05:30
Sidhant Goel
8f4cacd9bf
Renamed OrganizationControllerCE to WorkspaceControllerCE 2022-05-06 22:29:55 +05:30
Sidhant Goel
91678931e4
Renamed OrganizationServiceCEImpl to WorkspaceServiceCEImpl 2022-05-06 22:28:28 +05:30
Sidhant Goel
6e27e5abd4
Renamed OrganizationServiceUnitTest to WorkspaceServiceUnitTest 2022-05-06 22:26:29 +05:30
Sidhant Goel
8ff79a5c22
Renamed OrganizationServiceTest to WorkspaceServiceTest 2022-05-06 22:25:18 +05:30
Sidhant Goel
4ade25c457
Rename OrganizationService to WorkspaceService 2022-05-06 22:23:50 +05:30
Sidhant Goel
49297c35ac
Renamed OrganizationServiceCE to WorkspaceServiceCE 2022-05-06 22:21:36 +05:30
Sidhant Goel
7458df100a
Renamed Organization repositories to Workspace repositories 2022-05-06 22:19:13 +05:30
Sidhant Goel
96adf6c273
Created Workspace domain object
Marked Organization deprecated
Replaced all references to Organization with Workspace
Added migration to copy documents from organization collection to workspace collection
Added migration to create indexes on workspace collection
Added migration to drop organization collection
2022-05-06 22:04:10 +05:30
Abhijeet
9aa4bd104a
fix: Missing pluginId issue for datasource during the import flow if destination org don't have sepcific plugin installed (#13487)
* Fix missing pluginId issue for datasource

* Refactor assertion

* Update error message
2022-05-06 15:08:06 +05:30
Abhijeet
ad4772f5ea
fix: Improve git error logging (#13580)
* Add appropriate error type

* Fix warnings

* Update repo not found exception
2022-05-06 10:57:35 +05:30
Abhijeet
ecb3904680
chore: Add analytics event for SSH key generation (#13505) 2022-05-05 15:52:30 +00:00
Vishnu Gp
f23077285b
Merge pull request #13570 from appsmithorg/feat/analytics-events-for-authentication-methods
Chore: Functional breakdown for authentication analytics feature
2022-05-05 20:14:48 +05:30
Nidhi
dc70220a2f
fix: Throw error when trying to import a cURL command that has a subshell in it (#13558) 2022-05-05 11:08:17 +05:30
Vishnu Gp
21f5447e40 Functional breakdown for authentication analytics feature 2022-05-04 20:39:03 +05:30
Abhijeet
9fc9f7a774
chore: Commit application files during the connect flow (#12288)
* Commit application files during the connect flow

* Refactor detach remote method name

* updating connectToGitRepo method

* fix git tests

* Update default dsl to remove uncommitted changes for bottomRow and pathlist

* updating git cypress tests

* fixed git bug spec cypress test

* enabled other test case

* with store test

* fixed comment

* closing git sync modal

* updated test logic

Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
Co-authored-by: Parthvi12 <80334441+Parthvi12@users.noreply.github.com>
Co-authored-by: haojin111 <haojin828@outlook.com>
2022-05-04 12:27:07 +05:30
Vishnu Gp
acca123872
Merge pull request #13462 from appsmithorg/feat/analytics-events-for-authentication-methods
Feat: Added analytics events for GitHub and Google Auth
2022-05-03 19:51:39 +05:30
Arpit Mohan
80516658b4
Release v1.6.24 2022-05-03 16:14:15 +02:00
Anagh Hegde
75a326470c
fix: Add null check for createdAt field in analytics event (#13491)
* Add null check for createdAt field

* send empty value
2022-05-03 11:42:34 +05:30
Anagh Hegde
d274fa3974
fix: Optimize flow to maintain page order during export-import (#13401)
* Use map isntead of sorting list

* Refactor

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2022-05-03 11:42:22 +05:30
Nayan
e9b1108e47
fix: Set default theme when application is exported (#13321)
When application is exported and it does not have a theme set, a NullPointerException was raised in that case. This PR fixes that by returning the default theme when theme is missing.
2022-04-30 01:41:08 +06:00
Vishnu Gp
a8fa0b7465 Added analytics events for GitHub and Google Auth 2022-04-29 19:18:24 +05:30
Anagh Hegde
3e3a32604a
fix: Git connected Application forking should use default branch application (#13255)
* Application forking use default branch application

* refactor changes

* Update the permission
2022-04-29 19:05:23 +05:30
Anagh Hegde
0653f657cf
Merge pull request #13262 from appsmithorg/bug/duplicate-app-git-connected
fix: For git connected apps duplicate should use default branch resources
2022-04-29 15:01:50 +05:30
Nayan
501fb1c1ed
feat: Delete theme when application is deleted (#13252)
This PR archives the related themes when an application is deleted aka archived.
2022-04-29 12:38:09 +06:00
Anagh Hegde
4a19f83a42 Merge branch 'release' into bug/duplicate-app-git-connected 2022-04-29 11:43:45 +05:30
Anagh Hegde
aa4c3fe953 fix: Unable to see apps in home page after git connect fails (#13387) 2022-04-28 17:17:50 +05:30
Anagh Hegde
2c484d5538
fix: Unable to see apps in home page after git connect fails (#13387) 2022-04-28 16:43:53 +05:30
Pawan Kumar
0aec29d837 update theming config 2022-04-28 16:00:03 +05:30
Pawan Kumar
6052600d0b update theming config 2022-04-28 15:58:51 +05:30
Anagh Hegde
a768bb5eb7 Merge branch 'release' into bug/duplicate-app-git-connected 2022-04-27 12:31:23 +05:30
Anagh Hegde
456b5b94ef
fix: Page order sequence for git import (#13126)
* Added page sequence to metadata

* Update test resources

* Add null check for the pageOrder List

* FIx NPE

* Add logic to handle page order for deployed version

* Add tests for the page order

* Add null check for published pages

* Fix unpublished page names getting added in the order list for published

* update the variable name

* Use published page order in tests for published view

* Fix NPE
2022-04-27 11:45:40 +05:30
Nidhi
10f83ef698
fix: Throw error on trying to access non-existent unpublished action (#13210)
* fix: Throw error on trying to access non-existent unpublished action

* Fixed NPE at copy policies from page to action
2022-04-26 20:04:14 +05:30
Rimil Dey
0da092baa7
Merge branch 'master' into promotion-release-1-6-22 2022-04-26 17:55:31 +05:30
Sumit Kumar
7e9eb58f03
fix: fix action objects missing plugin id and plugin type info in database (#13263)
* add plugin id and type info to action object if found missing
* this fix is currently added to the read and update action flows
2022-04-26 16:51:30 +05:30
Abhijeet
b88cdacc7d
Fix npe and duplication for JSObject during clone application (#13297) 2022-04-26 13:13:58 +05:30
Nidhi
21b6936f86 fix: Fixed compile time errors 2022-04-25 14:44:58 +05:30
Anagh Hegde
838b45a8f5 Add branchName check for the clone 2022-04-25 14:24:04 +05:30
Anagh Hegde
94ba542606 use default branch app for clone operation 2022-04-25 14:18:17 +05:30
Abhijeet
56998d77d5 Add index for git (#13133) 2022-04-22 18:31:52 +05:30
Nayan
0a038e714f
feat: added page names to the templates meta data (#12786)
Adds page names to templates meta data
2022-04-22 12:58:35 +06:00
Nayan
c4ee44de15
feat: log template app name to analytics service when template is forked (#12972)
Logs application template name to analytics service when template is forked.
2022-04-22 11:40:32 +06:00
Vishnu Gp
534bdd93b2
fix: Add validation for Git URLs on server (#13182)
This PR adds a backend validation for git URLs on the backend side. Plus added some more test cases for URLs
2022-04-22 07:23:13 +05:30
Nayan
6889882088
feat: updated download template App API to download from cloud services (#12311)
Update download json file API so that it downloads via cloud services
2022-04-22 00:19:46 +06:00
Nayan
15394207a5
feat: Add API to get template filters (#12969)
Adds a new API to get available filters for application templates from Appsmith cloud services. It acts as a proxy to the API.
2022-04-21 15:52:27 +06:00
Abhijeet
3a22cda148
Add index for git (#13133) 2022-04-21 11:10:41 +05:30
Vishnu Gp
cfb7fc4b94
fix: git remote SSH url for Azure | BE (#12933)
Users were not able to add Git SSH URLs from some providers. This fixes the BE aspects of this issue.
2022-04-20 14:47:02 +05:30
Pawan Kumar
a5e32c8083
chore: Update theming default themes configs (#13117)
* theming config update

* add progress bar

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2022-04-20 12:08:35 +05:30
Anagh Hegde
ecb08a4918
Add logic to change default branch for git connected application (#11549)
We are opening the appsmith default application when the user clicks on edit. But when the app is connected to git we should always bring up the default application of the default branch.
2022-04-19 19:43:23 +05:30
Abhijeet
cebccc5401
Fix issues in git flows when pages don't have reference in application object (#13040)
As a part of git-directory update we have introduced a bug where if the entity names includes the - we were not able to filter the entities in the individual page directory. This commit introduces a new name-seperator to avoid such issues.
2022-04-19 17:25:11 +05:30
Anagh Hegde
f9fee48c14
Remove feature flag for git import (#12909) 2022-04-18 16:36:59 +05:30
Anagh Hegde
4b8646dd05
Handle logic to delete the application during git delete branch flow (#12986) 2022-04-18 15:24:40 +05:30
Abhijeet
a12750b536
feat: Update directory structure for git-sync to mimic UI (#11705)
* File migration for git

* Testcases added

* Comments added

* Update the action file names to keep unique constraints

* Separate out the theme from metadata

* Update server version to convey the file migration
2022-04-14 23:35:08 +05:30
Vishnu Gp
c7a4ac7353
fix: Organization name can be empty
fix: Organization name can be empty
2022-04-13 17:36:32 +05:30
Anagh Hegde
5c17422956
fix: Connection timeout for git connect when the git repo is behind a firewall (#12819)
* Use non blocking IO for checking the repo status

* Cache the results

* Update tests for the util class method
2022-04-13 10:33:28 +00:00
Vishnu Gp
ccc25f35f5 code refactoring for empty organization name fix 2022-04-13 11:17:35 +05:30
Nayan
4819907a34
feat: Add analytics events to track user activation (#12611)
Adds some attributes to existing analytics events to track user activation.
2022-04-12 20:09:03 +06:00
Nidhi
e36b352a42
fix: Conversion logic for expires in field (#12781) 2022-04-11 11:27:24 +00:00
Vishnu Gp
2c24050bf9 Added comments and test case for empty organization name fix 2022-04-11 16:27:31 +05:30
Anagh Hegde
f9df59f02b
Handle empty repo during git import with proper error message (#12752) 2022-04-11 12:29:18 +05:30
Abhijeet
8dd6bc8d4c
fix: After cloning the page with JSObject creating a new branch copies all the JSObject in a single page (#12743) 2022-04-11 07:42:09 +02:00
Vishnu Gp
1826f3dfef Fix empty organization name 2022-04-11 10:53:38 +05:30
Abhijeet
75cfe8df5b
fix: Fix clone page issue where JSObjects are not showing up in destination page when application is connected to git (#12723) 2022-04-09 13:53:28 +00:00
Anagh Hegde
e386c594fe
fix: Maintain page order during file import (#12698)
* Add logic to order page after creating

* Add test to check if the page order is same as the json file during the import
2022-04-09 11:15:45 +05:30
Anagh Hegde
f9f689af69
fix: Current branch delete exception in delete branch API (#12699)
* Handle current branch delete exception

* Updated error message

* Update error message
2022-04-08 18:28:43 +00:00
Anagh Hegde
737680bb9b
fix: Reset of isPublic flag during git merge operation (#12703)
* do not update the isPublic flag during git operation

* Add tests

* update the comments
2022-04-08 14:35:20 +05:30
arunvjn
fabfb65a4f
chore: Parallelise feature flags and user info API (#12263) 2022-04-07 23:27:32 +05:30
Nikhil Nandagopal
1d27c951de
Reverted to older template file 2022-04-07 12:14:41 +05:30
Nikhil Nandagopal
73b3a54e08
chore: Update crud template (#12634) 2022-04-07 11:36:55 +05:30
Pawan Kumar
cf425249ca
chore: update theming stylesheet config (#12645) - skipChangeLog
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2022-04-07 11:28:45 +05:30
Nikhil Nandagopal
2539d6ec12 Updated Template 2022-04-06 19:44:23 +05:30
Nikhil Nandagopal
8dd700f663 Updated Template 2022-04-06 19:41:30 +05:30
Nikhil Nandagopal
a9ccfab55b Updated Template 2022-04-06 19:41:28 +05:30
Nikhil Nandagopal
a6fe504768
feat: Updated CRUD Template (#12579)
* Updated Template

* Updated Template

* Updated Template

* updated xpaths for gemeratePage

Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
2022-04-06 15:46:36 +05:30
Nidhi
79a63d535d
fix: Only add missing user set actions to scheduling order (#12601) 2022-04-06 12:04:41 +05:30
Nidhi
981c618420
fix: Using form url encoded content type for token requests (#12597)
* 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
2022-04-05 17:47:44 +00:00
Anagh Hegde
e3c7d2b3f2
fix: While importing the application page sequence does not match with the source application (#12539)
* Add logic to maintain page order while exporting the app

* Add test for the page order during export
2022-04-04 23:24:42 +05:30
Abhijeet
ffd0595330
fix: Fix importing datasource with same name but different plugin issue (#12512)
Co-authored-by: Anagh Hegde <anagh@appsmith.com>
2022-04-04 13:23:00 +05:30
Nayan
797f1c0788
chore: removed feature flag for app template (#12485)
Removed feature flag for templates as we're planning to go live
2022-04-03 10:07:59 +06:00
Sumit Kumar
c2f39f4eda
feat: [server side change only] convert Mongo's form data to raw / native query (#10058) 2022-04-01 18:44:32 +05:30
Anagh Hegde
f03a163a38
feat: Export application with datasource configuration for sample apps and templates (#12310)
* Expose a way to export crdentials for sample apps and templates

* Export application with creds if marked as exportableWithCred in application object

* Fix and add testcases

* Add comments

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2022-03-31 21:56:18 +05:30
Nayan
085b4a3a15
fix: Update admin settings permission from users when they are added or re… (#11770)
Update user permission when email address is added as admin email from settings page.
2022-03-31 20:17:47 +06:00
Trisha Anand
f51da7019d
chore: Adding delete endpoint in ConfigService (#12450) 2022-03-31 19:02:54 +05:30
Shrikant Sharat Kandula
72ee8e7296
Add UsagePulse API, create-only (#12340)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-03-31 06:00:11 +05:30
Abhijeet
d9b2a747df
chore: Add git discard and pull documentation url for status API response (#11869)
* Added discard doc url for status API response
2022-03-30 13:10:38 +00:00
Anagh Hegde
98c69868f1
fix: Fix binding for APIs during git import (#12357)
* Add org id for the actions during git import

* Updated the test resource
2022-03-30 12:44:09 +05:30
Nikhil Nandagopal
b80e536a71
Update crud template (#12298)
* Updated Template

* Updated Template

* Updated Template

* Updated Template

* Updated Template

Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
2022-03-28 18:59:46 +05:30
Abhijeet
b13cf320f0
chore: Add manual and auto update fields within application object to distinguish between the migration related changes (#12099) 2022-03-26 10:40:59 +05:30
arunvjn
69c09c03aa
feat: adding slug names in urls (#10957)
* Init commit clean urls

* Changes to builder route

* Refactored URLs

* Remove default params from url builder functions.

* Fixed more urls

* Changed selector name

* Minor url correction

* Type fixes

* Jest fixes

* Fixed routing for old published apps

* Fixed url slug replace

* page-1 -> page1 as default page slug name

* Remove application id from init editor calls

* Use default page slug

* Added comments and placeholder values for slug names

* variable rename

* Removed redirection and added back the old routes

* Prevent page slug name recompute

* Fixed home page load in view mode

* Added null checks

* Fixed jest test

* Fixed jest test

* Update URL slugs when app/page name changes

* Added unit tests and updates types

* Removed unused code

* * Removed duplication fetch page call.
* Fixes #11354
* Fixed sign up flow

* Refactored initializeEditorSaga

* Fixed warnings

* Fixed integrations screen URL bugs

* Cypress fixes

* Fixed slug names in copy/move operations and pages screen

* Minor refactor

* Fixed page highlight bug in published apps

* Added new url factory and middleware to store url params

* Changed store to default export and fix unit tests

* Fixed slugs unit test

* Minor fixes

* Fixes #11379

* Fixed set as home page feature

* Updated types

* app id adjustments for cypress

* Fixed bad merge

* Refactored routes to functional component

* * Fixed EE active entity highlight.
* Remove unused code in editor router.

* jest fix

* Mock history to prevent security errors

* constant rename

* Removed console logs

* Fixed page id regex

* Do not check for /pages in url

* Fixed missing pageId on quick edit/deploy clicks

* Missed files from previous commit

* Fixed warnings

* Fixed jest test

* New api integration

* feat: Add applicationVersion property to Application (#11626)

Added a new property to Application object - applicationVersion. This property can be used to identity when there is a breaking change and can not be solved with migration. FE will use this property to detect such conditions. Another API is added to migrate the applicationVersion to latest version when user migrates the breaking changes.

* Added manual upgrade modal.

* Test fix

* Fixed jest test

* function rename

* Fix deploy error

* Added null check

* Changes to persist URL search params when redirecting

* Added updates tooltip

* More unit test cases

* Fixed git url redirection

* Fix warning

* Fixed evaluation on upgrade

* Fixed warnings

* File rename

* Added cypress for clean urls

* Fixed import/export/fork cypress

* Cypress api server fixes

* Fixed mongo spec

* Fixed replay spec

* Fixed comments spec

* More cypress fixes

* Fixed tooltip in update btn

* Text size changes

* Minor fixes

* Jest test fix

* Fixed type error

* Fixed warnings

* Fixed todo comments

* Moved description to constants file

* Fixed cypress CI run crash

* Fixes git cypress failures

* Import/Export cypress test fixes

* Import export fork cypress fixes

* Explorer test fix

* Switch branch test fix

* Added applicationVersion in export app json

* Calls plugin forms in parallel

* Fixed warnings

* Fixed warning

* Import export CI fixes

* Reverts previous changes

* Fixes import export

* Fixed import export cypress URL verification

* Pass applicationVersion when duplicating application

* Cypress fix

* Dummy commit

Co-authored-by: Nayan <nayan@appsmith.com>
2022-03-25 16:13:26 +05:30
Nayan
468ed8454f
chore: Send test email error message to client (#11968)
Passes error message from server to client when there is error in send test email
2022-03-24 14:52:51 +06:00
Sumit Kumar
47ad7cc9b1
feat: add JSON smart substitution feature to Firestore plugin actions
* 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.
2022-03-24 13:02:54 +05:30
Anagh Hegde
fae7fc6e7c
fix: App visibility of git connected application is reset after git merge (#11890)
* Fix issue with policies being overridden during hydration from file system to db

* Fix tests

* Update the policies for the branched application

* Add test cases for the visibility changes for git connected applications

* Remove the visibility flag from application object while committing to git repo
2022-03-24 07:01:28 +00:00
Abhijeet
b4dfb6919f
fix: Archived pages are getting copied in forked application (#12050)
* Filter cloning archived pages in application fork action
2022-03-23 17:34:42 +05:30
Anagh Hegde
e44a81e031
fix: Reconnect application showing for existing datasources due to missing flag value (#12034)
* Add migration to fix the reconnect application showing for existing datasources

* Changes per review

* Check the invalids before adding the configured flag

* Fix NPE in migration

* Refactor

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2022-03-23 09:03:39 +05:30
Nidhi
1ca9fd803a
fix: S3 formData path for bucket name (#12049) 2022-03-22 12:56:42 +01:00
Nidhi
608e7b4fa0
chore: Updated Template for form/json mode for Firestore, S3 and Mongo (#12021)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2022-03-21 16:13:52 +05:30
Nidhi
dddb85abbf
Null map values (#12018) 2022-03-21 15:37:04 +05:30
Nidhi
079689951d
Null map values (#12017) 2022-03-21 15:19:55 +05:30
Nidhi
aef4001fde
chore: Ignore actions that are already migrated (#12013)
* Ignore actions that are already migrated

* Logging exception
2022-03-21 14:47:55 +05:30
Nidhi
ac3cdc7325
Added null checks for formData keys (#12010) 2022-03-21 14:15:19 +05:30
Nidhi
9912aac4c6
Added null checks for formData (#12009) 2022-03-21 13:52:16 +05:30
Shrikant Sharat Kandula
1d916e1c3c
Fix NPE in form-data migration (#12006) 2022-03-21 13:14:32 +05:30
Nidhi
c97b7e31e7
chore: Migrations to enable JSON and form mode (#11534)
* feat: added new component to perform generic json raw toggle functionality

* chore: Migration to convert formData references

* fix: Redid migration for per plugin changes, fixed consumption

* fix: Added JSON migration for git import

* Added JSON migration as well

* Reverted client side changes

* fix: Modified plugin config aggregation logic

* Merge conflict fixes

* different paths for different commands

* Whoopsie

* Modified usage to different paths

* Reverting env change

* Config changes to show json mode

* Test fixes

* Migrated body,path,next,prev

* Cypress test fixes

* Modified dynamic binding replacement

* Changed view type

* Reverted json form mode display

* Modified structure of JSON mmigrations

Co-authored-by: Aman Agarwal <aman@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-03-21 11:22:14 +05:30
Anagh Hegde
f869930c92
chore: Update error message for checkout remote branch flow (#11891)
* Update error message for checkout remote branch flow

* Changes per review
2022-03-21 11:19:55 +05:30
Abhijeet
f8b62894d6
fix: Handle JSON schema migration for CRUD page generation JSON template (#11948)
* Added migration for CRUD psge generation resource

* Testcase for JSON migration
2022-03-18 14:48:56 +00:00
Nayan
5cdda5a450
fix: Combined API returns branched application id instead of root application id (#11925)
We've added a new API to combine the get application details and get page list APIs as part of the clean URL project. This API was returning root application instead of branched application when application is in separate branches. This PR fixes that problem.
2022-03-18 09:49:04 +00:00
Nayan
e1ba450c91
feat: Added new fields to templates (#11940)
Added two new fields to templates - productImageUrl and sortPriority.
2022-03-18 15:34:59 +06:00
Nayan
21151b851a
-added migration to change default theme name (#11898)
Changes the name of the default theme by introducing a new theme property - display name.
2022-03-18 09:24:29 +06:00
Nayan
ed790f9794
fix: added response meta to the response for import template API (#11662)
Added Response meta to the JSON response for import template API.
2022-03-17 10:51:29 +00:00
haojin111
9cfca0518f
feat: 9754 import work flow (#10453)
* updated import application modal design as v2

* updated import flow

* added title, description, uploadIcon on filepicker ads component for custom file picker

* adding modal of add credential for git import

* added "Git Import" modal

* added generating ssh key for importing flow

* fixed issue of merging

* chore: fix import

* chore: show old import modal based on feature flag

* seperated import api from connect

* added datasource list on reconnect credential modal

* chore: minor changes

* chore: move ssh keys to git sync reducer from applications reducer

* chore: minor fixes

* chore: fetch datasource config for import

* for pulling

* for review of displaying of datasource

* added reconnect datasources after git import

* fix: initialize datasource with default values

* fix: initialise redux for after updating datasource with default values

* fixed issue of git connection init when importing

* if there is a datasource config missing in import, reconnect modal should be opened

* updated logic for unconfigured datasources

* commented unnecessary code

* fixed issue of successful import

* updated import app error logic

* Add un-configured datasources to Import via file response

* Add test

* fix

* chore: refactors

* change per review

* fix: reset ssh keys / url

* Fix issue with newly created datasources not sent

* fix

* chore: minor updates

* chore: minor fix

* WIP

* added saas and rest api datasource form

* feat: fixes and updates for file import flow

* chore: close on upload

* Refactor logic ofr finding unconfigured datasources

* fix: minor fixes

* Fix issue with IsPartialImport

* fix

* Add PartialImport flag for ImportExport service

* refactoring of datasource editor form for both of importing app and editing app

* fixed collapse config

* Fix tests

* Handle redirection back to the /applications for oAuth type

* Show reconnect button on the datasources pages if the datasource configuration is skipped

* added analytic events for reconnecting datasource modal

* Fix the repo limit check for git import

* updated test of importing app from json as new work flow

* updated exported app json while testing automatically

* Add isImport flag for handling OAuth redirection in import flow

* WIP

* updated card UI for import from git title and message in import app modal

* chore: cleanup

* chore: lint

* fix: add is import query param to get token for oauth

* fix

* When the user imports the application there should not be any uncommitted changes displayed on the commit icon

* Add flag to identify OAuth redirection for git import

* Update the variable name

* refactoring reconnect datasource modal

* close git import modal when repo limit error responded

* fixed issue of restoring draft data of datasource form without save on reconnect datasource modal

* chore: update query

* updated query name of oauth redirection url

* Fix duplicate name issue in git import

* fixed rest api reconnect issue on reconnect modal

* init datasources and plugins after imported app, updated reconnect modal as new design

* added unconfigured datasource list logic when importing and updated rest api form delete button visible

* removed put default config of datasource and fixed issue on it

* Add logic to check isCOnfugred in datasource API

* Expose API to get un configured datasources for git import

* added fetch unconfigured datasource list api when redirecting form OAuth

* Remove sensitive fields from application json during export

* update put call response to check for datasourceConfig

* chore: use @appsmith for constants/messages

* chore: use download icon and Import for Importing application label

* chore: move import application text up a bit

* Fix bad merge

* chore: update skip to application tooltip text

* fixed tooltip content of skip to application CTA

* init values of datasource when importing

* updated ui of git import modal as figma design

* fixing padding issue of reconnect datasource modal

* fixed cursor issue on import app modal

* Fix issue with datasource config

* chore: make code compile

* chore: sort lines

* fixed save button issue of dbform on reconnecting modal

* fixed style of import application modal

* Fix iisue with wrong value updated to flag

* reverted from reconnection form style

* fix: update design as per slack discussions on 2022.02.23

* fix: move modal close button to the left

* Remove check for the flag and use the one from db

* Set siCOnfigured as true for mockdata sets

* updated creating datasource with isConfigured as false

* Fix NPE while importing

* fixed scrollbar issue and text alignment on reconnect datasource modal

* fixed style of form container in reconnect datasource and redirecting to app if all are configured

* remove unwanted fields from application json

* FIx NPE for file import

* fix: move close button up in import modal

* remove delete button on reconnect datasource modal

* Add isConfigured false while creating datasources

* fix: add a gap and update color

gap between git import dialog title and subtitle
update color of subtext to GREY_800

* fix: use git import feature flag

* fix: do not use older modal

* updated selecting logic of unconfigured datasource in reconnect modal

* cleanup: auto format

* cleanup: refactor react component

* cleanup: refactor some more

* cleanup: autoformat

* Fix reconnect flag for mockdatasource

* During git import set the isConfigured to false for datasources

* Remove decrypted field from the applicationJson file

* Remove decrypted field from the applicationJson file

* Add app slug to remote repo

* fixed cypress test related with git

* updated json while testing

* Changes per review

* Update the method name

* fixed cypress test related with git

* fixed migration cypress test

* set is configured field as true on tour app

* Fix issue with datasource creation for welcome tour

* fixed issue of replay_editor cypress test

Co-authored-by: Rishabh Saxena <rishabh@appsmith.com>
Co-authored-by: Anagh Hegde <anagh@appsmith.com>
Co-authored-by: Anubhav <anubhav@appsmith.com>
Co-authored-by: f0c1s <iamanubhavsaini+git@gmail.com>
2022-03-17 15:58:54 +05:30
Nayan
a1255582e4
feat: Added analytics events on themes (#11866)
This PR adds analytics events on different actions on themes - save, customize, delete, apply.
2022-03-17 15:28:36 +06:00
Nidhi
496d908a92
fix: Modified import export flow to use valid names for actions (#11879)
* fix: Modified import export flow to use valid names for actions

* Added test
2022-03-16 20:50:29 +05:30
Abhijeet
9e896dde06
fix: Fix git repository visibility status check and update error messages for git-checkout API (#11858) 2022-03-15 15:29:48 +05:30
Nayan
215285cfeb
Application template fork fails (#11719) 2022-03-15 13:04:34 +05:30
Trisha Anand
b526c0b1b6
fix: Analytics sendEvent should be able to send events even during sign in process (#11818) 2022-03-13 22:23:08 +05:30
Anagh Hegde
1921af9b28
fix: Support repo url conversion for all top level domains (#11694)
* Add support for all top level domains

* Fix tests

* Add tests for git util class
2022-03-10 09:20:12 +00:00
Abhijeet
bc929f2f67
chore: Don't take client subscription into account for discard git changes (#11666) 2022-03-09 16:58:54 +05:30
Nidhi
aaf12c513d
fix: Adds user set on load prop from actions to exported JSON file (#11718) 2022-03-09 16:57:45 +05:30
akash-codemonk
a6946fbcf0
fix: end guided tour on exiting editor (#11084) 2022-03-08 20:25:20 +05:30
Shrikant Sharat Kandula
ae5f9569c9
Fix startup failing if signup disabled is empty (#11686)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-03-07 17:38:18 +05:30
Shrikant Sharat Kandula
1233f7f7ee
chore: Change watchtower to latest from latest-dev (#11669)
This is because watchtower:latest-dev doesn't run on ARM architectures.
2022-03-07 13:58:20 +05:30
Nayan
be5b12b7bb
[Fix] Added permission in security config for themes (#11527)
Theme API path was not added added to security config path. As a result, themes in published mode in public apps were not loaded. This PR fixes that issue.
2022-03-07 01:43:26 +06:00
Anagh Hegde
dde1eb1735
Add check for default branch before deleting branch (#11631) 2022-03-05 08:30:29 +00:00
Shrikant Sharat Kandula
cde48bf9a9
Don't provide extra information on forgot password (#11596) 2022-03-04 15:16:58 +05:30
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
Nayan
3cfc3781f1
Handle NPE in home page API (#11481) 2022-03-02 11:54:24 +05:30
Ayangade Adeoluwa
51b43daa1b
fix: Fixes modal pop up bugs on page load (#11504)
* Fixes modal pop up bugs on page load

* send confirmBeforeExecute attribute with page execution order info

(cherry picked from commit 6d3cfdfbdb83b435e67797f3fb27024799d5d579)

Co-authored-by: Sumit Kumar <sumit@appsmith.com>
2022-02-28 23:07:21 +05:30
Shrikant Sharat Kandula
8056e76946
Fix casing of plugin names (#11447)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-02-25 13:10:31 +05:30
Rishabh Saxena
acf01995bd
chore: git sync cypress tests (#10006)
* Fix connect test

* check api response

* [wip] test comments across branches (#8704)

* Intercept only connect api

* chore: update switch branches tests (#9005)

* test switch branches from the query params

* test flow wip

* .

* fix merge status update

* change mergeAble to isMergeAble

* wip

* fix: show error popup if pulled from bottom bar

* fix: append branch query to notification links

* fix: disable git connection during onboarding

* fix: typo

* fix: typo

* fix: typo

* fix: z-index bottom bar cout

* fix: pull button minor fix

* fix: reset conflicts when the git sync modal is opened

* fix

* feat: enable search for branch dropdown

* fix

* fix: typo

* added merge conflicting on merge tab

* updated gitsyncsaga for git sync error action

* added generate ssh key on init and updated git changed count message

* removed git sync error action from error processing module(toast and log)

* commented push button on bottom git action bar temperory

* added option to use git global config

* Added latest deploy preview time: didn't appear until the duration was in minutes

* Link open repo button with repo link

* fixed of commented code part

* upated tooltip of push button on bottom quick git sync toolbar

* Update banner styles for error and warning

* updated repo publish url pattern and last deployed view part

* when the user clicks on the push icon the deploy tab should open

* when branch name is too big and user hover on it the tooltip is not displayed

* The dropdown alignment displayed for the git connect should be polished

* update tests

* fix: minor git sync fixes (#9228)

* fixed of Under the merge tab when the user searches for the branch name which is not present the pop up closes all of a sudden

* fix: update merge api, use message from api response

* fix: update field

* added tooltip of long dropdown option and updated merge tab dropdowns

* removed log

* chore: add connection cypress tests

* temp update for running tests locally

* fixed long branch name on branch list popup

* Use _ as the branch name separator, instead of -

* Use large buttons as CTAs

* Remove the % from the progress bar

* Fix alignment for the skeletons on the deploy tab

* Merge CTA moves down when the status is rendered, add offset to prevent that and error branch dropdown on merge tab

* Show progress bar after clicking on Merge CTA as the loading state and generate key button

* after generating the deploy key before clicking on connect close the pop-up and open it again the Remote URL is not visible in the input box

* fixing of conflicting issue

* updated git connection design

* Provide more spacing between the lines

* Learn more does not have a hover state

* Heading Merge Changes should be sentence cased like headings on other tabs

* Button can trigger CTA call when in loading state

* disabled clickable icon on git connect bottom bar

* Git connection tab: on error the window doesn't scroll all the way to the bottom

* updated temp remote url values on action and reducer

* updated ellipsis functions of text

* fix: prune branch flag

* fix: update page level roomId to include branch name

* fix

* fix

* feat: add a separate feature flag for git import

* feat: branch section headers bottom bar branch list

* fixed branch list comments

* fixed merge issue

* fix

* feat: hotkey for commit and push

* remove pull button on git conflict info

* move tempRemoteUrl redux to gitSyncreducer and added messages

* splited git error as individual action

* removed push button from git sync bottom buttons

* feat: section header at the merge dropdown

* added comment of converting ssh to https

* feat: show connected to git badge

* feat: show asterisk when we have uncommitted changes

* fix: upate segment header for dropdown

* t fix: remove redundant success toasts

* removed tempory git repo url from app data

* wrapped tooltip with elipsis text

* fix: rm unused vars

* fix: bottom bar icon updates

* updated dropdown option with ellipsis text

* added new props named "wrappedOption" on dropdown for wrapping ellipsis option

* rename wrappedOption to truncateOption on dropdown component

* updated dropdown option with disabled props of tooltip

* fix: remove remote branches from merge branch dropdown

* reset yarn lock

* reset yarn

* fix: keeping it same as the existing value

* fix: remove branch dropdown border

* fix: show merge success indicator

* feat: init repo limit error modal

* fix: disconnect git wip

* added git user config test

* removed test data

* fix: checkout api

* fix: lint

* chore: pre connection test specs

* added revoking git workflow

* renamed revoke to disconnectGit

* added setting on git sync action over bottom bar

* added analytic on git connection

* added learn more for remote url and init module of temp remote url when select new application

* .

* chore: test learn more ssh url

* Verify the functionality of Read documantation link

* added git connect with onboarding workflow

* Validate the Input Box displayed below Commit to master Text

* updated test module for deploy tab with commit comment and deploy preview

* test of prune branch name

* Validate the error faced when user switches between the branches

* verify the functionality when user click on "+" Icon

* Verify the functionality of serach input box inside the serach dropdown

* Verify the display of the Merge Button

* advanced of disconnect git ui

* added git disconnect modal test case

* updated repo limit error condition

* added learn more link test on git disconnect modal

* for review of repo limit error modal test script.

* fix: issue with intercept

* fixes

* fixes

* add key, misc fixes

* fix

* revert changes

* fix

* fix imports

* Fix import

* Yarn lock update

* fix

* fix imports

* chore: remove timeout for a test run

* Increase timeout for jgit APIs

* chore: try increasing timeout

* try increasing timeout further

* Handle git connect error on the basis of error type

* Add env variable to CI build script

* Fix bad commit for adding env var in workflow

* Refactor

* FAdd env var for local repo path

* fix import

* fix specs

* fix

* fix

* try

* fix

* fix

* fix

* fix

* fix: don't validate error msgs

* fix spec

* improve spec

* chore: rm unused code

* chore: update descriptions

* rm commented out code

* fix

* rm comment

* chore: rm comments

* fix: lint

* chore: update comment

* fix: wait for widget switch transition

* spec updates

* fix

* fix imports

* try waiting for getPagesForViewApp

* fix: rm unused file

* fix: remove spec

* fix: add js collection, comment out repo limit exceeded error since it seems not limited on appsmith instances

* Fix server failure

* chore: correct bootIntercom import and sort lines

Co-authored-by: Rishabh-Rathod <rishabh.rathod@appsmith.com>
Co-authored-by: haojin111 <haojin828@outlook.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
Co-authored-by: Abhijeet <abhijeet@appsmith.com>
Co-authored-by: Abhijeet <41686026+abhvsn@users.noreply.github.com>
Co-authored-by: Anagh Hegde <anagh@appsmith.com>
Co-authored-by: f0c1s <anubhav@appsmith.com>
2022-02-25 06:13: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
Nayan
32757a9f35
-set feature flag for templates (#11368)
Adds feature flag for templates.
2022-02-24 16:39:15 +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
Trisha Anand
860b573bc2
chore: Rename metadata to idToken (#11313) 2022-02-21 16:43:37 +05:30
Nayan
a877d137a6
fix: NPE when application has no page (#11204)
This PR fixes a NPE when application has no page or page are missing.
2022-02-18 12:14:02 +00:00
Shrikant Sharat Kandula
4d3e1282ad
Move data counts to properties for analytics (#11236)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-02-17 19:07:31 +05:30
Trisha Anand
ac7ccfd243
feat: Disable form login configurable via admin settings page. (#11234) 2022-02-17 07:54:07 +00:00
Abhijeet
aaf9740674
chore: Remove theme ids during git commit (#11225) 2022-02-17 05:33:25 +00:00
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
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
Abhijeet
d8e4ba61fe
fix: Add migration for actionCollection and newAction to improve the performance for getResourceByPageId queries (#11148) 2022-02-14 20:07:02 +00:00
Trisha Anand
80bab90e28
chore: Minor code refactoring for bean utils and action execution (#11102) 2022-02-14 10:24:54 +05:30
Anagh Hegde
eb54d7d325
fix: Remove default error fields for git-sync related analytics for success events (#11097)
* Do not include the error data points in the map for success states

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2022-02-12 15:10:52 +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
Anagh Hegde
5bb73ce36f
Fix NPE in git analytics (#11072) 2022-02-11 05:49:29 +00:00
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
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
Nayan
a5dec675b1
feat: Added application templates (#10952)
Added the required BE API for application templates. It gets templates from Appsmith cloud services through REST API.
2022-02-09 23:13:31 +06:00
Anagh Hegde
b1055cc94d
feat: Add gitHosting provider to analytics (#11036)
* Add gitHosting provider to analytics

* Add support for git provierders like bitbucket

* Change the logic to get provider name
2022-02-09 16:41:19 +00:00
Trisha Anand
d7ce026b93
Minor refactor of code to avoid merge conflicts. (#11039) 2022-02-09 13:53:57 +00:00
Shrikant Sharat Kandula
6e1e2faaac
chore: Anonymous stats if telemetry is enabled (#11014)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-02-09 10:31:00 +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
Abhijeet
fba0fc2fd7
chore: Remove git feature-flag (#10914)
* Remove git feature-flag
2022-02-07 06:46:15 +00:00
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
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
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
Keyur Paralkar
da638d7f2b
Updated Template (#10853)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2022-02-03 15:23:56 +05:30
Abhijeet
0b1a8ad20b
fix: Update ApplicationPageId with defaultPageId while fetching applications for homepage (#10812) 2022-02-03 10:56:35 +05:30
Tolulope Adetula
bb2f7da823
feat: Select and Multiselect V2 (#10359)
* fix: Select V2

* Fix: CI Fail

* fix: failing test

* fix: failing test

* Fix: MultiSelect

* Fix: loading issue

* Fix: loadin state

* Fix: loading

* fix: failing test

* fix: evaluation tests

* Fix: failing tests

* Fix: failing test

* fix: failing tests

* Fix: Failing tests

* fix: select All

* fix: filtering

* Fix: filtering

* fix: refactor Select widget

* fix: hide MultiSelect

* fix: select options

* Fix: failing tests

* fix: failing tests

* Fix: issues

* Update system-themes.json

* Update system-themes.json

* Update system-themes.json

* Update system-themes.json

* fix: PR reviews

* Update EntityDefinitions.ts

* Fix: issues

* fix: console

* fix: QA issues

* fix: options issues

* fix: add widget icons

* fix: update Selectv2

* empty commit to fix CI

* fix: failing test
2022-02-02 06:15:07 -08:00
Nidhi
bc93a1d413
fix: Removed filter of JS actions from get method (#10726) 2022-02-02 08:28:41 +00:00
Nidhi
b02a7f53f6
fix: Disabled generate CRUD page feature for MsSQL (#10811) 2022-02-02 08:27:59 +00:00
Keyur Paralkar
2ec0d2b02a
fix: Updated Template (#10694)
* Updated Template

* Updated Template

* Updated Template

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2022-02-02 12:50:21 +05:30
Abhijeet
6b1e3fe7c0
fix: Add branch param for redirect url while authorising Google Sheet when application is connected to git (#10715)
* Add branch param in the redirect url
2022-01-31 10:11:12 +05:30
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
Shrikant Sharat Kandula
d3d1f8bbf9
Clear sessions on password reset (#9955)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
Co-authored-by: Nayan <nayan@appsmith.com>
2022-01-28 16:49:00 +05:30
Shrikant Sharat Kandula
cc3ab115b5
Remove CORS config as it's unused now (#10312)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-01-28 16:48:04 +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
0183897d5a
chore: Update mongo indexes to improve the query performance (#10658)
* Add index for JScollection, action and userData

* Refactor
2022-01-26 21:24:56 +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
Anagh Hegde
341bc61e8c
feat: Add logic to sync the repo if the path is not updated in env file (#10478)
* Add logic to sync the repo if the path is not updated in env file

* changes per review

* checkout branch locally when the branch is not present in remote

* Add the local checked out branch to list
2022-01-26 12:55:07 +05:30
Shrikant Sharat Kandula
6accb9e364
fix: Use CDN for all assets (#10417)
Co-authored-by: Nayan <nayan@appsmith.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2022-01-26 02:19:43 +05:30
Nayan
bb9010d875
fix: fetch user by case insensitive email for oauth login (#10350)
When an user signs up, we store the email in lower case. When user logins with oauth2, we fetch user by email ignoring case. This creates a problem if email from oauth is in upper case. As users are registered with lowercase and we're trying to fetch with upper, users are not found.
This PR fetches user by case insensitive emails during oauth login.
2022-01-25 13:54:50 +00:00
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
Leo Thomas
58b376fa9b
fix: Fix 10463 js object cloning issue (#10523)
* fixes js object cloning issue

* fix10463- JSObject returning new name of cloned object

Co-authored-by: Irongade <adeoluayangade@yahoo.com>
Co-authored-by: Leo Thomas <leoweb2010@gmail.com>
2022-01-20 22:02:11 +05:30
Rishabh Rathod
10e64df1e5
chore: S3 Template (#10461)
* Updated Template

* Updated Template

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2022-01-20 14:07:05 +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
Shrikant Sharat Kandula
f2d26db290
Use CDN for plugin icons (#10393)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2022-01-15 12:54:30 +05:30
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
Anagh Hegde
7718e03b76
fix: Change SSH key generation protocol for git (#10307)
* move away from RSA-SHA1 to ECDSA-SHA2 protocol for key generation

* Add migration to regenerate SSH keys via new protocol

* use 256 bit signature for the keys

* remove unused imports

* Fix error message for key generation
2022-01-12 12:05:35 +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
Shrikant Sharat Kandula
a0aa41145b
chore: Re-run the fakeapi DB migration (#10310) 2022-01-11 13:38:07 +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
5f14dcc798
chore: Add migration to update indexes for DB collection to include branchName param for git enabled apps(#10295)
* Add migration to insert index to include branch param for newAction, newPage, application and actionCollection
2022-01-11 16:10:07 +05:30
Rishabh Rathod
034aadf835
fix: Update crud template (#10281) 2022-01-11 04:11:31 +05:30
Sumit Kumar
f045af8bfc
feat: Mongo plugin: add limit field to aggregate command to allow users to define batchSize (#10257)
* 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/
2022-01-10 16:42:30 +00:00
Rishabh Rathod
b4a5540b60
chore: Revert "Updated Template (#10146)" (#10248)
This reverts commit 28d05e29fc.
2022-01-10 13:23:50 +05:30
Anagh Hegde
2469d21c51
fix: ssh to http url conversion (#10173)
* fix ssh to http url conversion

* fix sync branch issue

* changes per review

* changes per review

* fix error message
2022-01-10 11:00:36 +05:30
Rishabh Rathod
28d05e29fc
Updated Template (#10146)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2022-01-07 10:12:14 +00:00
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
Nayan
758d6d6725
fix: Fixed error due to string to instant serialization (#10074)
Fixes the serialization exception when exported application has deleted JSObject.

Fixes #9807
2022-01-06 11:13:25 +06:00
Anagh Hegde
48af7ea0df
fix: Merge and pull branch analytics NPE (#10117)
* Fix merge and pull branch issue

* fix detach remote API

* changes per review

* changes per review
2022-01-04 13:25:58 +05:30
Anagh Hegde
4718f519a3
fix: sync branch issues (#9918)
* 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

* fix issues with sync branches

* Add sucess error handler

* changes per review

* add missing return statement

* remove unused import statements
2022-01-03 11:42:58 +05:30
Nayan
50fd155d2f
fix: Unable to add comment to public apps (#10103)
Commenting on a public app fails if the user is not not part of the corresponding organization. This PR fixes that issue.
2022-01-03 11:59:35 +06:00
Nayan
abd4de1cd9
fix: Application is not publishable when imported without theme (#10009)
When we import an application from a JSON file where themes are not present, publishing the application fails. This PR fixes this issue.
2021-12-30 12:32:54 +06:00
Abhijeet
9cba2986f3
fix: Fix npe while importing application when JSObject contains only variables and no action (#10044) 2021-12-29 15:48:04 +00:00
Abhijeet
d24703cdea
feat: Introduce version field for git JSON files structure (#9800)
* Introduce version field for applicationJson

* Update TC to check the version
2021-12-29 15:29:53 +05:30
Anagh Hegde
f921305e95
feat: Add analytics for BE git events (#9899)
* Add analytics for connect flow

* Add analytics for commit flow

* Add analytics events for git flows

* changes per review

* add reference to constructor

* Add error events to git analytics

* changes per review

* resolve conflicts
2021-12-29 07:23:03 +00:00
Abhijeet
3bf43dc73a
fix: Filter the action and collection with no pageIds to fix server error while importing the application (#10024)
* Filter the action and collection with no pageIds to fix npe

* Added TC
2021-12-29 04:59:47 +00:00
Abhijeet
4c5241bc93
fix: JS objects not getting copied over when app is duplicated while retaining the JS objects in original app (#10011)
* Create new action collection instead of updating the original collection 

* Update TC
2021-12-28 12:00:41 +00:00
Abhijeet
b72ac43bd7
fix: Update defaultResourceIds with resource ids after the disconnect event (#9990)
* Update defaultResourceIds with resource ids after the disconnect event

* Update TC to check the applicationPage updates correctly

* Added TC
2021-12-28 10:57:50 +05:30
Nidhi
3426d70b28
chore: Fixed dot replacement policy for mongo (#9961) 2021-12-25 21:29:05 +05:30
Abhijeet
904b05abaa
chore: Update git error codes to log only useful errors in sentry (#9994) 2021-12-25 09:55:01 +00:00
Nayan
e3f8040265
fix: Set auth db name in MongoDB properties (#9997) 2021-12-24 20:45:18 +05:30
Anagh Hegde
74f0d7400f
add tests and fix tests failures (#9981) 2021-12-24 14:54:47 +00:00
Nayan
cd3a2ac1c4
Set a default color to application when application has no color set from FE (#9919) 2021-12-24 15:51:42 +06:00
balajisoundar
1fad719dbe
Add API for application themes (#9449) 2021-12-24 12:14:59 +05:30
Nidhi
9af1f4c9f4
fix: Switched reference from package name to plugin name (#9916) 2021-12-23 14:16:30 +00:00
Nidhi
b2855ccf77
fix: Do not return JS actions when fetching page actions (#9960) 2021-12-23 14:16:16 +00:00
Sumit Kumar
4a075628d7
fix: add work around to handle bad data in Firestore UQI migration (#9966)
* add another migration for those Firestore actions that could not be migrated.
* handle ClassCastException via try catch and assigning default empty value.
2021-12-23 15:59:53 +05:30
Abhijeet
0e0b4d0d1e
Check for layoutOnLoadAction during clone application (#9947) 2021-12-22 21:40:19 +05:30
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
Nikhil Nandagopal
0b0b978245
chore: Updated Template for CRUD DB template (#9913) 2021-12-21 19:34:37 +05:30
Shrikant Sharat Kandula
2dec964e21
Add migration for new MongoDB mock endpoint (#9909)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-12-21 18:04:12 +05:30
Abhijeet
20649ccb0a
fix: Fixes issues related to git profile and use appsmith user profile as a fallback value (#9891)
* Fixes related to git profile

* Added a TC for connect application with empty git profile and null default git profile
2021-12-21 16:45:56 +05:30
Sumit Kumar
b8cfc18f7f
fix: fix firestore pagination cyclic dependency error (#9892)
* fix firestore pagination cyclic dependency error
fix firestore UQI migration error

* fix TC
2021-12-21 11:27:05 +05:30
Abhijeet
95869517f6
fix: Replace default IDs for forked application with destination resource IDs (#9886) 2021-12-21 11:19:00 +05:30
Nayan
a447c6ee5d
Hide updated date when application was not updated manually (#9493)
We should last updated date of an application in the home page. If an application was updated internally e.g. a new user was added to the application, the updated date was set and it was displayed in the home page. This PR fixes that problem.
2021-12-20 22:54:02 +00:00
Anagh Hegde
8a75928c2f
fix: Fix the wrong CS url for private repo limit check (#9865) 2021-12-20 15:16:57 +05:30
arunvjn
99a12be018
feat: add option to delete org (#9287)
Co-authored-by: Nayan <nayan@appsmith.com>
2021-12-20 05:58:01 +00:00
Anagh Hegde
1b30c58617
feat: Limit private git repos which can be connected within organization (#9803)
* Added check for private repos

* WIP limit repos

* Get the git connected apps from git

* Call CS to get the limit for the git connected apps

* Update comment

* Changes per review

* Add check for limiting the repo

* Cache the results from cloud service

Co-authored-by: Abhijeet <abhijeet@appsmith.com>
2021-12-18 17:40:46 +00:00
Abhijeet
5e6e6caedb
fix: Use Appsmith user profile as a fallback git profile (#9821)
* Added appsmith profile as a fallback value

* Modified TC for userData to include git profile TCs

* Added check for null value when user want to use repo level profile and provide empty author name or email

* Refactor method names
2021-12-18 21:36:25 +05:30
Nayan
68a9584fd9
fix: removed sentry reposrting when application not found (#9839) 2021-12-17 20:16:49 +05:30
Nidhi
ab4add4b83
fix: Install plugin to existing organizations after approval (#9840) 2021-12-17 12:35:19 +05:30
Shrikant Sharat Kandula
8a336d3caa Fix OOM in insertDefaultResources migration
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-12-16 22:39:48 +05:30
Shrikant Sharat Kandula
1247864893
Fix migration OOM in firestore action migration (#9830)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-12-16 21:03:35 +05:30
balajisoundar
3c1edbeb3a
feat: Admin settings page to tinker with env variables (#9687) 2021-12-16 19:47:16 +05:30
Nidhi
508865f1dc
fix: Added handling for refactor of default list elements (#9774) 2021-12-16 11:33:40 +00:00
Abhijeet
52782c6088
fix: Resolve issues related to disconnect git repo flow (#9760)
* Fixed issues related to git disconnect

* Update TC
2021-12-16 08:50:11 +00:00
Abhijeet
c51c0036af
fix: Fix action collection not being deleted when the deleted collection in edit mode is published (#9785) 2021-12-16 13:48:14 +05:30
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
Nidhi
8d53c16e25
fix: Added check for self references in layout (#9756) 2021-12-16 13:30:19 +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
Nayan
f0a2cbd73f
chore: Added DB migration to flush redis (#9772) 2021-12-15 13:54:27 +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
Nidhi
b0900d1c22
fix: Added collection id and clientsideexecution to layout on page load DTO (#9683) 2021-12-14 16:34:45 +05:30
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
Nayan
c126786e98
fix: application is added to recent list if duplicated (#9549)
When user duplicates an application, the source application is also being marked as recently accessed application. As a result both the duplicated application and the source application are shown in the beginning of the list of applications.
2021-12-14 16:21:50 +06:00
Nidhi
861ee2c46e
fix: Added handling for action collections during duplicate app flow (#9637) 2021-12-14 13:40:25 +05:30
Abhijeet
e6c323a2ec
fix: Update crud template for failing S3 list file action (#9691)
* Updated Template

* Update TC

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-12-12 18:23:59 +05:30
Abhijeet
f12b97b9d8
fix: When the SQL table provided by user have less number of columns than template columns for generate CRUD page (#8810) 2021-12-10 09:11:57 +05:30
Trisha Anand
3a21d91a57
fix: PageLoad - action.data implicitly depends on action.actionConfiguration. Added this relationship to dag (#9178)
* fix: PageLoad - action.data implicitly depends on action.actionConfiguration. Added this relationship to dag

* Random walkthrough comments

* Logic does not work!

* Ignore pagination configuration from dynamic binding path list to avoid creating cyclic dependency

* The most complicated test case ever passed! Woohoo!

* Code cleanup

* Incorporated review comments
2021-12-09 20:04:55 +05:30
Nayan
15ca54e43f
Custom domain should be configured from admin UI (#9633) 2021-12-09 14:40:08 +05:30
Arpit Mohan
7dfd8ac6f5
chore: Making smtp default install true for new all organizations (#9654) 2021-12-08 16:33:31 +05:30
Shrikant Sharat Kandula
4b7b9b698b
Migration to update mockdb endpoint (#9562)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-12-08 11:35:16 +05:30
Nayan
092b78bbc4
Send test mail by config (#9478)
Sending the test email was using existing email configuration, this commit fixes this to use the configuration provided by the user on the admin settings UI.
2021-12-08 09:56:49 +05:30
haojin111
d701f8dfb1
fix: misc git sync fixes / ui polish (#9229)
Co-authored-by: Rishabh Saxena <rishabh@appsmith.com>
Co-authored-by: Rishabh-Rathod <rishabh.rathod@appsmith.com>
2021-12-07 07:59:32 +00:00
Arpit Mohan
b5e27aaa57
feat: Adding a SMTP plugin (#8927) 2021-12-07 09:15:15 +05:30
Shrikant Sharat Kandula
77caf4c536
chore: Send telemetry option in user profile to client (#9535)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

Co-authored-by: sbalaji1192 <balaji@appsmith.com>
2021-12-03 01:56:16 +05:30
Shrikant Sharat Kandula
cd624982b8
Handle telemetry disabled (#9517)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-12-02 16:58:26 +05:30
Nidhi
2653c7828f
feat: authentication for SaaS (#9352)
* initial commit

* fix: Added migration gor google sheets plugin name
2021-12-02 14:46:51 +05:30
Nidhi
5434d25735
fix: Added client side execution logic and on page load logic for js (#9392)
* fix: Added client side execution logic and on page load logic for js

* Revert dev env

* Revert dev env

* Updated tests expectation partly to break PR

* fix: Reverted test breakage for this PR
2021-12-01 22:02:43 +05:30
Nayan
06656eca5d
feat: [Feature] Show recently accessed apps first (#9017)
Most recently apps will be displayed under each organization in user homepage. Earlier, the applications were sorted based on application names.
2021-11-30 15:43:30 +06: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
Nidhi
9283e258e1
fix: Add null check for unpublished collections in view mode (#9254) 2021-11-19 15:46:59 +05:30
Nikhil Nandagopal
dc510161d9 Updated Template 2021-11-19 14:02:11 +05:30
Nayan
a0ea8c21ba
fix: [Fix] Set user email to lowercase before creating the user and in reset password (#9179) 2021-11-19 09:49:33 +05:30
Nayan
c696b369eb
fix: add migration for application going public event it has isPublic false set (#9166) 2021-11-15 16:11:14 +00:00
Shrikant Sharat Kandula
255b6bf940
Fix sending email when from address is empty string (#9126) 2021-11-12 16:25:04 +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
8474806aad
chore: Enabling JS editor for all users (#9074) 2021-11-12 12:11:00 +05:30
Nayan
b44f555a7f
fix: application edit date is updated when an user is added or removed from org (#8984)
Last edit time of an application was updated when a new user is added or existing user is removed from the corresponding organization.
2021-11-11 17:30:57 +06:00
Nidhi
c14b0ac1bf
fix: Update crud template for S3 to support content type (#9095)
* Updated Template

* Updated Template

* Updated Template

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-11-10 19:26:49 +05:30
Nayan
ef4f5d9c47
fix: app is publicly accessible event if it's not public (#9035)
When a public app is edited by someone, isPublic=false is set to it even the app is not public. This PR fixes that issue.
2021-11-10 13:44:28 +00:00
Nidhi
9eec2a4173
fix: Updated Template for S3 to support content type changes (#9072)
* Updated Template

* Updated Template

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-11-10 17:50:55 +05:30
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
Trisha Anand
4380d38a84
chore: Removes incorrect trigger paths from list widget via database migrations (#8989)
* Migrations for updating dynamic trigger paths for list widget in the existing pages to remove incorrect trigger paths.

* Removed an unnecessary line

* Review comment

* If widgetType is null, then this would ensure that NPE is not thrown.
2021-11-09 16:02:47 +05:30
Sumit Kumar
3c8583210f
feat: remove region requirement from s3 plugin (#8829)
* Remove Region field from S3 datasource editor page for AWS S3, Upcloud, Digital Ocean Spaces, Dream Objects, Wasabi.
  * Use SDK provided property for AWS S3 to delegate region selection to the SDK.
  * Extract region info from endpoint URL for Upcloud, Digital Ocean Spaces, Dream Objects and Wasabi, since the SDK property does not work for these service providers.
* Removed some redundant checks from datasourceCreate that were already part of validateDatasource
* Fix show clause in list.json
2021-11-03 16:23:53 +05:30
Trisha Anand
9d97f2322f
Adding field evaluation version in application (#8993) 2021-11-03 15:38:48 +05:30
Nidhi
81f0bff6f3
fix: Make organization plugins unique (#8987) 2021-11-03 09:56:52 +00:00
Nayan
3e3f97f1ee
feat: [Feature] Add isConfigurable property in profile response for the super admins (#8616)
Added a new property to the response of `/me` API. This property will indicate whether super user can edit the configuration or not.
2021-11-03 11:19:05 +06:00
Nayan
4722ff153d
feat: [Feature] Add API to send test email (#8856)
Added an API for super users to send test email
2021-11-03 11:17:53 +06:00
Shrikant Sharat Kandula
d5ec98f7cb
Fix allowed domains breaking OAuth (#8953)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-11-02 10:57:41 +05:30
Shrikant Sharat Kandula
507ce6581b
Fixed migration causing OOM (#8952)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-11-01 18:09:37 +05:30
Nayan
8e568d6056
feat: [Feature] Add slug for applications and pages (#8860)
Generates and stores a slug from application name and page names when they are created or updated. Also adds a migration to set slug to existing applications and pages.
2021-11-01 14:18:21 +06:00
Nayan
5637b4dfa4
fix: [Bugfix] Delete comments when unpublished page is deleted (#8698)
When a page is deleted, the comment threads in that page should also be deleted and should not appear to user.
The Edit mode comments should not be visible to app viewers.
2021-11-01 14:17:42 +06:00
Nayan
2181f47632
fix: Update admin settings API for changes in UI (#8818)
Set a default name as Appsmith to new instances. Also adds super user's email to admin email configuration.
2021-11-01 14:16:56 +06:00
Rishabh Rathod
19be98bd46
Updated Template (#8920)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-10-29 15:36:31 +05:30
Anagh Hegde
b951d8db21
Get default branch from DB instead of remote to save time (#8844) 2021-10-29 09:32:02 +00:00
Anagh Hegde
ebb9665d42
fix: check for repoName while deleting apps (#8866)
* check for repoName while deleting apps

* Added tests
2021-10-29 07:21:31 +00:00
Nidhi
6b0ef6e236
fix: Added JS collection body to view mode (#8899) 2021-10-29 07:02:28 +00:00
Arpit Mohan
86ad475e30 Revert "chore: Updated Template (#8813)"
This reverts commit f72d6b5777.
2021-10-29 11:21:32 +05:30
Rishabh Rathod
f72d6b5777
chore: Updated Template (#8813)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-10-29 10:16:56 +05:30
Shrikant Sharat Kandula
10bff6d80e
Update identify data with role and goal (#8809) 2021-10-28 16:38:30 +05:30
balajisoundar
1b596be6f5
chore: Fix misc admin settings issues (#8838) 2021-10-28 10:17:02 +05:30
Anagh Hegde
338e8ba8d0
fix: git push relevent error messages (#8769)
* WIP

* Add relevant error messages for push action

* fix tests

* changes per review comments

* Add error message for the file system related error

* Fix test failures

* Fix test failures
2021-10-27 14:15:46 +00:00
Nidhi
295f8b9631
fix: Forking with JS collections (#8799) 2021-10-26 11:04:04 +05:30
Shrikant Sharat Kandula
c82bb751e1
Fix deleting datasources with deleted actions (#8627) 2021-10-26 06:20:59 +05:30
Trisha Anand
b57e0c245d
fix: Get buckets in S3 plugin during generate CRUD page (#8781)
* Fix: Generate page fix for S3 plugin

* Fixed the replacement of template variables in form data failure for S3
2021-10-25 22:38:22 +05:30
Shrikant Sharat Kandula
47511640e5
Don't hash identify data points on cloud (#8790) 2021-10-25 18:57:24 +05:30
Rafael Baldasso Audibert
0e22f26621
fix: Change "Allow Horizontal Scroll" text to "Allow scroll" (#8085)
* chore: Change "Allow Horizontal Scroll" to "Allow Scroll"

* chore: Hide option to choose scroll for pie chart

* fix: Fix prettier errors

* feat: Add migration to allowScroll for `CHART_WIDGET`s

Closes #4227

* fix: Fix chart widget prop recursively

Per https://github.com/appsmithorg/appsmith/pull/8085#discussion_r733442011
Closes #4227
2021-10-25 17:09:39 +05:30
Trisha Anand
0300fa9486
feat: Migrating S3 plugin to UQI framework (#8575) 2021-10-25 11:19:22 +05:30
Nayan
5fc00a6cd0
fix: check with url path when redirecting to default application url (#8207)
When deciding whether to redirect to default application or the redirect url provided during signup, it'll compare with url path now. Earlier it was considering any query params added to the redirect url.
2021-10-25 11:43:02 +06:00
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
Shrikant Sharat Kandula
9f770ae871
Include role in first_login event (#8654) 2021-10-23 07:55:30 +05:30
Nidhi
03a92776f7
fix: Refactor with escape sequences (#8713)
* fix: Refactor with escape sequences

* Remove comments
2021-10-22 16:09:53 +00:00
Anagh Hegde
4717b4bcf0
feat: git merge status (#8692)
* git merge status
2021-10-22 12:31:13 +00:00
Nikhil Nandagopal
122d897617
Updated S3 CRUD Template (#8722) 2021-10-22 11:33:27 +00:00
Nayan
98ca448f9f
feat: [Feature] Add API to download docker config (#8587)
Added API to download docker config for super admin users
2021-10-20 15:58:31 +06: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
c9172f8079
fix: data migration to set default value for permanent url toggle where none exists (#8507)
* Recently a change was introduced to modify the default value of s3 plugin's permanent URL toggle from NO to YES. This created an issue with the older actions where the toggle didn't exist and hence no value was saved against its property. Hence, since the default is now ON and the older actions don't have any value saved, the action editor shows the toggle value as ON but behaves like the value is OFF. To fix this issue, this method adds URL toggle as NO where no toggle value exists.
2021-10-15 11:24:04 +05:30
Yyee
870dadd777
fix: Refresh current user in edit profile (#8267) 2021-10-15 11:07:27 +05:30
Nidhi
1cefa7e51b
fix: Expose actions with collections in view mode (#8509)
* fix: Expose actions with collections in view mode

* Dummy commit for tests to pass

* Test fixes
2021-10-14 06:53:46 +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
Nayan
c288df157b
Show profile picture from the uploaded photo id of the user (#8402)
Sends photoId in user profile response. Shows profile picture from the uploaded photo id instead of email address.
2021-10-11 18:28:08 +06:00
Shrikant Sharat Kandula
09c2875e4f
Server restart API, and restart detection API (#7480) 2021-10-11 16:29:39 +05:30
Nayan
72dd22d490
fix: added a check to address NPE in home page when user has no organization (#8259) 2021-10-08 19:27:16 +06:00
Shrikant Sharat Kandula
a4975c5bff
Add API for updating role and goal for users (#8242) 2021-10-08 09:40:19 +05:30
Shrikant Sharat Kandula
a13f674752
Make port customizable from env variable (#8288) 2021-10-07 17:02:49 +05:30
Nidhi
82dc82633f
fix: Make JS objects visible to anon users (#8260)
* Make JS objects visible to anon users

* Dummy commit
2021-10-07 00:30:16 +05:30
Nidhi
4498810cef
fix: Added graceful check for failure in mock data endpoint (#8211)
* fix: Added graceful check for failure in mock data endpoint

* Modified error type
2021-10-06 09:18:21 +05:30
Abhijeet
24c1fbee7d
test: Update TC to include Smart Substitution and prepared statement check for generate page (#7922)
* Added prepared statement and smart substitution checks, in TC for generate page

* Updated Template

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-10-05 14:10:56 +05:30
Shrikant Sharat Kandula
08a775d63d
chore: Fix role and goal in event data (#8180)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-10-05 01:24:54 +05:30
Shrikant Sharat Kandula
89cc2555ab
Fix role and goal saving before using (#8177) 2021-10-04 23:09:56 +05:30
Shrikant Sharat Kandula
edeec80d00
Fix role and goal usage and docker.env location (#8174) 2021-10-04 21:23:11 +05:30
albinAppsmith
31cdfe0fe5
feat: Appsmith design system changes (#8125)
Introducing a much improved design system with new components in the Appsmith Design System.
2021-10-04 21:04:37 +05:30
Abhijeet
bacf29848b
test: Update testcases to check forking app is possible for user even with VIEW permission (#8079) 2021-10-04 13:24:17 +05:30
Abhijeet
82fac6405e
fix: Exclude the deleted page in applicationPages for export application flow (#7967)
* Added check for applicationPages to include only if not deleted
2021-10-03 10:51:33 +00:00
Shrikant Sharat Kandula
cb4d059e5f
Effect the telemetry choice in welcome page (#7902)
Solves for two things:

1. From the welcome page signup, depending on telemetry being enabled or disabled, we report.
2. When telemetry is changed from welcome page (which, it obviously will), we make the change persistent by writing to the env file.
2021-10-02 11:45:17 +05:30
Nayan
a8ab1e4cb6
fix: update user names in notifications when users update their name (#8043)
Fix: update user names in notifications when users update their name
2021-10-02 00:42:50 +06:00
Nayan
12acbf4a55
feat: added API to get unread comment thread count in an application (#7975) 2021-10-02 00:42:11 +06:00
Abhijeet
49182e7060
chore: Update success asset urls for generate page (#7579)
* Update asset urls

* fix: use successImageUrl for CRUD success popup

* Increase delay to switch between GIF and image

* Use ASSETS_CDN_URL instead of S3_BUCKET_URL

Co-authored-by: Rishabh-Rathod <rishabh.rathod@appsmith.com>
2021-10-01 15:09:41 +00:00
Nidhi
60f53546d2
Refactor now uses FQN when available (#7964) 2021-10-01 15:09:27 +00:00
Nidhi
70c282da5a
fix: Refactor collection API (#7962)
* Refactor collection API

* Refactor collaction API
2021-10-01 15:08:56 +00:00
Nidhi
e4c1c2a9ca
Converting headers safely into jsonnode (#8021) 2021-09-30 16:08:40 +00:00
Nidhi
713ed76676
Fixed check for missing action collections (#8006) 2021-09-30 19:04:33 +05:30
Abhijeet
35442e2d42
fix: Update application permission for forking functionality, to enable templates forking (#8007) 2021-09-30 12:47:16 +00:00
Shrikant Sharat Kandula
4c1ed4a67e
Fix migration to not load full actions into memory (#8005) 2021-09-30 17:42:36 +05:30
Nidhi
a6a6c7e702
fix: Delete action collections on deleting page (#7957) 2021-09-30 05:59:40 +00:00
Nayan
81d78ca9e8
fix: Signposting when user signs up with oauth is not working (#7918)
Creates a default application when users signs up from oauth
2021-09-29 20:07:28 +06:00
Nayan
c3724d5df2
feat: Skip bot-comment when onboarding is skipped (#7816)
Backend changes to skip the bot comment and onboarding
2021-09-29 15:50:57 +06:00
Nidhi
883b0215a6
Changes for JS actions in the import/export feature (#7892) 2021-09-28 18:13:26 +05:30
Abhijeet
0729ab3211
fix: Display result in tabular format for action response in imported app for SQL datasource (#7889)
* Added pluginId to nested datasource object within actionDTO

* Added check in TC for plugin id
2021-09-28 16:03:56 +05:30
Nikhil Nandagopal
5c3e4ba715
fix: Update crud template (#7891)
* Delete CRUD-DB-Table-Template-Application.json

* Updated Template

* Update TC to replace selectedRow with triggeredRow as per the updated template

Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
2021-09-28 15:28:33 +05:30
Shrikant Sharat Kandula
f6d2e89ae3
fix: Actions not being deleted when app is deleted (#7880) 2021-09-28 13:28:50 +05:30
Sumit Kumar
a7dcfae491
- remove feature flag for snippet. (#7824) 2021-09-27 08:12:04 +05:30
Trisha Anand
eb0f88244a
Adding where key in generate CRUD application with google sheets for SelectQuery (#7812) 2021-09-24 12:37:42 +00:00
Nidhi
85f5382a31
fix: Modified unique index for plugin collection (#7804) 2021-09-24 11:17:46 +00:00
Nidhi
59ec853498
Fixed installation for multiple plugins into organizations (#7767) 2021-09-24 05:44:14 +00:00
Shrikant Sharat Kandula
d5262d14b3
Remove Spring startup banner (#7761) 2021-09-24 08:20:35 +05:30
Anagh Hegde
101b21b901
fix: Widget suggestion for firestore datasource (#7375)
* Add tests for ArrayList data type response

* Refactor WidgetSuggestion logic

* use getters and setters
2021-09-23 09:52:11 +00:00
Shrikant Sharat Kandula
0ded7a4c71
Announce that we are up! (#7735) 2021-09-23 09:54:05 +05:30
Nidhi
8b7f1a7f01
fix: Use populated actionDTO for json path keys in JS during refactor (#7650)
* Use populated actionDTO for json path keys in JS

* Review comment
2021-09-22 21:23:56 +05:30
Trisha Anand
2121050177
Adding migrations for dynamic binding path list for mongo actions post uqi migrations (#7718) 2021-09-22 14:13:25 +05:30
Abhijeet
391674fc75
fix: Update crud template to fix mongo queries after the page generation (#7657) 2021-09-21 21:55:25 +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
Nayan
1296faef8e
feat: [Feature] Use photo asset id instead of email address for profile picture in comments (#7434)
* -set user photo id when adding a new comment thread

* -update user data when users remove their profile photo

* -updated photo id in comments when user changes or set a profile photo

* -remove photoid from thread, kept it in comment only

* -resized uploaded profile image

* -added test for delete profile photo

* -add test for the comment set user photo

* -check user change event handler is called in delete user photo

* -add test for checking user photo change event is triggered after upload photo

* -fixed tests due to changes

* -make profile pictures thumbnail only

* - used get photo by asset id API to show user photo in comment card
- set cache control header in get asset by id API

* - stop using email address to show user photo
2021-09-20 15:03:39 +06:00
Trisha Anand
98fd6205ff
Fixing NPE error (#7588) 2021-09-18 12:34:57 +05:30
Trisha Anand
936f014b3e
feat: Add UQI infrastructure to Mongo Plugin (#7238) 2021-09-17 12:22:22 +00:00
Nayan
624a8d1e9c
fix: on page load actions are disabled after fork app (#7490)
* fix: on page load actions are disabled after fork app
* -fix: change permission check during fetch application in fork app
2021-09-17 17:42:06 +06:00
Nayan
28adc4e928
feat: set modified by during create, clone, fork, import app (#7452) 2021-09-17 17:10:08 +06:00
Trisha Anand
60f85bd88b
fix: Add migrations for all google sheet actions to turn off smart substitution for existing actions (#7517) 2021-09-16 12:08:34 +00:00
Arpit Mohan
37e7a61792
chore: Minor changes for fixing some strings on the home page & action settings page (#7469) 2021-09-15 12:20:25 +00:00
Shrikant Sharat Kandula
851abd5a06
fix: Add missing variables in env file in config (#7100)
The env config API currently only changes values that are already defined in the env file. It is not capable of adding anything to the file.

This commit adds the capability to do so. However, since we don't want to let the client add just any variable, we've switched from a black list to a white list of env variables that can be managed by this API. If the requested variable is present in the whitelist, we add it, if its missing in the env file.
2021-09-15 17:03:47 +05:30
Shrikant Sharat Kandula
c509a640b7
feat: Add an API to get env values for superusers (#7043)
This commit adds the following API:

`/api/v1/admin/env` — Responds with the names and values of all environment variables currently configured, that are allowed for configuration from the UI. Some variables will be missing from this, ones that are not allowed to be edited from the configuration UI.

Doesn't take any query params. Only usable by the superuser.

Also added a `isSuperUser` boolean field to the response of `api/v1/users/me`, that will indicate whether the current user is a superuser or not.
2021-09-15 13:56:41 +05:30
Nikhil Nandagopal
01f01cd565
fix: Updated Template (#7447)
* Updated Template

* Updated Template

* Modified TC accoording to updated template

Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
2021-09-15 12:36:56 +05:30
Sumit Kumar
4d847336d0
fix: update on-page-load actions on action delete. (#7439)
* Currently, the list of actions to be run on page load is not updated when an action object gets deleted. Hence, sometimes, a previously deleted action may be set to run on page load which throws an error when the application tries to run it on page load.
* This PR updates the list of actions to be run on page load whenever any action gets deleted.
2021-09-14 14:46:24 +00:00
Nayan
d9a57b7b49
fix: set thread mode to comment mode in the create when creating a comment (#7303) 2021-09-13 22:18:34 +06:00
Nikhil Nandagopal
b949b7030f Updated Template 2021-09-10 23:42:49 +05:30
Nidhi
7ac1017b80
fix: Js editor view mode collections accessible to anonymous users (#7321)
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-09-09 23:26:02 +05:30
Trisha Anand
a272a0ec7a
feat: Add consumption of UQI UI templates (#7082)
* Same templates for mongo fetch

* WIP

* Working version

* Minor refactoring and addition of comments for understanding the code flow

* Minor fileName change

* Extra check added to only try to read options for command
2021-09-09 16:39:42 +00:00
Shrikant Sharat Kandula
9b98621010
Restore a few missing fields on appsmith.user object (#7295)
With latest update, the following fields are unavailable on the `appsmith.user` object:

- `accountNonExpired`
- `accountNonLocked`
- `credentialsNonExpired`
- `isAnonymous`
- `isEnabled`

These fields are necessary for building applications and many apps were relying on these, despite them not being listed in the documentation at <https://docs.appsmith.com/framework-reference/appsmith#user>.
2021-09-09 15:34:02 +05:30
Apeksha Bhosale
09eea59330
feat: JS Editor (#6003)
* Changes to add js plugin

* routes+reducer+create template

* added debugger to js editor page

* entity explorer changes

* create js function

* added copy, move and delete action

* added js plugin

* added existing js functions to data tree

* removed actionconfig for js collection

* new js function added to data tree and entity as well

* parsing flow added

* changes to data tree

* parse and update js functions

* small changes for def creator for js action

* create delete modified

* small changes for update

* update flow change

* entity properties added

* removed linting errors

* small changes in entity explorer

* changes for update

* move, copy implementation

* conflict resolved

* changes for dependecy map creation

* Only make the variables the binding paths

* Basic eval sync working

* Minor fixes

* removed unwanted code

* entity props and autocomplete

* saving in progress show

* redirection fix after delete js action

* removed unnecessary line

* Fixing merge conflict

* added sample body

* removed dummy data and added plugin Type

* few PR comments fixed

* automplete fix

* few more PR comments fix

* PR commnets fix

* move and copy api change

* js colleciton name refactor & 'move to page' changes & search

* view changes

* autocomplete added for js collections

* removing till async is implemented

* small changes

* separate js pane response view

* Executing functions

* js collection to js objects

* entity explorer issue and resolve action on page switch

* removed unused line

* small color fix

* js file icon added

* added js action to property pane

* Property pane changes for actions

* property pane changes for js functions

* showing syntax error for now

* actions sorted in response tab

* added js objects to slash and recent entitties

* enabling this to be used inside of function

* eval fix

* feature flag changes for entity explorer and property pane

* debugger changes

* copy bug fix

* small changes for eval

* debugger bug fix

* chnaged any to specific types

* error in console fix

* icons update

* fixed test case

* test case fix

* non empty check for functions

* evaluate test case fix

* added new icons

* text change

* updated time for debounce for trial

* after release mereg

* changed icon

* after merge

* PR comments simple

* fixed PR comments - redux form, settings remove

* js object interface changes

* name refactor

* export default change

* delete resolve actions chnage

* after merge

* adding execute fn as 3rd option and removed create new js function

* issue 7054 fixed - app crash

* execute function on response tab changes

* refactor function name part 1

* refactor of js function name

* try catch added refactor

* test fix

* not used line removed

* test cases locator fixed

Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
2021-09-08 23:02:22 +05:30
Nayan
6247b6a3a5
feat: Generate and store ssh key to git meta data of application (#7184)
- Added new API that generates a new ssh key pair and stores that inside the git meta data of an application. The key is generated in open ssh format. The private key is stored as encrypted in DB.
2021-09-08 20:54:20 +06:00
Nidhi
a7239cfa5b
feat: Changes to add js plugin (#4861)
Adds server side changes for supporting JS editor
2021-09-08 19:17:30 +05:30
Nayan
61eaaf1aab
fix: stop creating private thread if someone tagged a user in their first comment (#7205) 2021-09-08 10:50:11 +06:00
Nayan
a17be566a9
feat: Removed unnecessary fields from exported application (#7198)
Removed unnecessary fields from exported application
2021-09-07 18:33:45 +06:00
Nikhil Nandagopal
1d2bcb277b Updated Template 2021-09-06 23:30:19 +05:30
Nikhil Nandagopal
e7b95d2fd9
fix: Updated Template (#7169)
* Updated Template

* Updated Template

* Updated Template
2021-09-06 22:28:48 +05:30
Anagh Hegde
31180a4b28
feat: API to save git config data (#6930)
* API to save git config data

* Store the git config data as global/default property in user data object

* Add API to fetch the config for the user
2021-09-06 19:50:12 +05:30
Abhijeet
168000be92
[skip_changelog] Feature/directory structure for version control (#6757)
* Insert git application metadata to application object, for git sync/version control feature there is a need to save the application in the structured format

* Added changelog to index application collection with git branch and remoteurl

* Rehydrate and dehydrate applications among different instances

* Added serailisation purpose while exporting the application to make distinction between version control and regular import-export flow 

* Git file operations moved to appsmith-git module

* Delete json reference from directory for deleted resource in DB

* Added git authentication in application metadata

* Replace String with Path to handle file path in git file structure
2021-09-06 18:18:18 +05:30
Rishabh Saxena
685aa3b98c
feat: make comments publicly available (#7143) 2021-09-06 18:04:40 +05:30
Nayan
c4a7c1fb01
feat: add last edit information to application (#6948)
Adds the last edit time and editor username to the application when there is a change in the application.
2021-09-06 16:17:02 +06:00
Rishabh Saxena
a2b38c86eb
feat: init bottom bar skeleton, add feature flag for git (#7105) 2021-09-06 14:59:35 +05:30
Shrikant Sharat Kandula
0a08f9b807
fix: Rename user company to user's useCase (#7093)
We're not going to be collecting the company name for the self-hosted installation, but instead we'll be collecting the use-case that is being solved with Appsmith.
2021-09-06 12:28:47 +05:30
Trisha Anand
7526129a3a
feat: Adding APPSMITH_PLUGIN_MAX_RESPONSE_SIZE which can be configured as an environment variable to increase plugin response size (currently only supported for Postgres Plugin) (#7126)
* Adding `APPSMITH_PLUGIN_MAX_RESPONSE_SIZE` which can be configured as an environment variable to increase plugin response size (currently only supported for Postgres Plugin)

* Updated error message + added the environment variable to the template docker env files for new installations
2021-09-05 15:38:36 +00:00
Nayan
b5529310d1
feat: Removed check on template organization ID when creating the default organization and application after signup (#7084) 2021-09-03 15:32:53 +06:00
Anagh Hegde
d4ee07ab58
Remove list widget from suggested widget on action execution (#7038) 2021-09-03 11:52:27 +05:30
Nayan
b98f646642
feat: Redirect after signup (#6962)
* WIP

* -redirect to newly created application after signup

* feat: create default application if no redirect url exists. also add a param to indicate first time user experience

* -updated function comment as per PR review

* -updated the create application using existing function

* -added check whether application is null when creating application page url

* -removed unnecessary refactoring

* -removed unused parameter from method
2021-09-02 12:25:39 +06:00
Abhijeet
3414195b69
[skip_changelog] Update error message for sign-in source capitalization issue for OAuth (#7004) 2021-08-31 16:13:21 +05:30
Abhijeet
85323b2de3
[skip_changelog] Show table schema alongwith table name for the generated CRUD page (#6992) 2021-08-31 13:59:02 +05:30
Abhijeet
ea8116863e
revert: "Add version check from import-export flow (#6552)" (#6935) 2021-08-27 18:46:13 +05:30
Abhijeet
e57755e426
Revert "[skip_changelog] Update error message for import flow (#6779)" (#6927)
This reverts commit bc55021994.
2021-08-27 17:04:31 +05:30
Anagh Hegde
078ad25613
feat: Create interface for git service and add all the required classes (#6903)
* Create interface for git service and add all the requireq classes

* Fix name of the service class

* Fix name of the service class as per review
2021-08-27 14:17:35 +05:30
Rishabh Rathod
dc86c9b82b
feat: Show Crud Info Modal data from backend (#6882)
CRUD Info modal which pops up on successful CRUD generation, will now have dynamic data for each CRUD template.

Modal success `message` and `Image` to explain the working of the CRUD template is fetched from the backend.

Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
2021-08-26 12:53:39 +05:30
Shrikant Sharat Kandula
e0273ecc03
Add form data support for superuser signup API (#6844)
The superuser signup api available at /users/super currently only supports JSON payload. This PR adds support for form-data payload at the same endpoint, and makes it consistent with the normal user's signup API endpoint.
2021-08-26 06:35:32 +05:30
Nayan
b1885358cb
feat: add feature flag for multiplayer feature (#6878) 2021-08-25 13:03:35 +00:00
Sumit Kumar
163192d851
Feature flags snippet and linting features. (#6828)
* Introduce feature flags for snippets feature and linting feature.
2021-08-24 18:50:50 +05:30
Abhijeet
bc55021994
[skip_changelog] Update error message for import flow (#6779)
* Modified the error message for import version check, to make it more humane and actionable

* Update TC
2021-08-23 13:54:43 +05:30
Nayan
843666f1fc
[Feature] - Add lastDeployedAt date to application object (#6753)
* -add lastDeployedAt date to application object

* -skip setting published date when application is forked
2021-08-23 11:33:13 +06:00
Nayan
a5ec0add23
-allow login with case insensitive emails (#6712) 2021-08-22 18:48:53 +06:00
Shrikant Sharat Kandula
094b77832f
Accept richer inputs from welcome signup form (#6650)
* Accept richer inputs from welcome signup form

* Send subscribe event when user has approved it
2021-08-20 10:10:04 +05:30
Anagh Hegde
e08c5b83e4
Add errorType to Categorise Debugger Errors (#6413)
* Add errorType to response

* Fix Test Failures

* group the errors

* Add errorType to categorise the issue/error

* remove the helper class

* update changes as per review

* Update the logical groupings of errors

* Fix formatting issues

* Updated the error types

* Update error classification
2021-08-19 19:59:25 +05:30
Anagh Hegde
e76d8c2c15
Change the name of the mock datasource (#6498)
* Change the name of the mock datasource

* Remove the hardcoded value for Cloud services

* Handle index out of exception

* Add check if the response contains necessary credentials for mockdb

* Change as per review comments

* Fix cypress test failures

* minor changes to fix cypress test for mock data according to new changes

* updated mock data locator

* Update the mockdata source name

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-08-19 17:53:30 +05:30
Abhijeet
9677a4fb8f
[Skip_changelog] Enable S3 and GSheet from backend for generate CRUD page (#6706)
* Update appsmithVersion for static json file used in import application cypruss test
2021-08-19 12:04:14 +05:30
Nidhi
0cc738122a
Enable JS editor by email (#6701) 2021-08-19 09:43:32 +05:30
Abhijeet
7b98079ee8
Updated Template (#6688)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-08-18 16:59:45 +05:30
Nayan
919a420aa7
[Improvement]- Improve the password reset feature (#6545)
* -limit the rate for sending password reset requests

* -used encrypted token in password reset

* -add unit tests for the password reset issue

* -improved formatting

* -updated PR as per review comments

* -hanled IllegalStateException instead of Exception when parsing the encrypted token
2021-08-17 12:35:00 +00:00
Abhijeet
c3f7bea904
Add version check for import-export flow (#6552)
* Added version check

* Added error message for version check while importing the file

* Added TC to check version in exported file

* Added version in FE assets for cypruss test
2021-08-16 21:32:51 +05:30
Nayan
22e477da8f
- add page name in comment notification emails (#6608) 2021-08-16 18:40:31 +06:00
Nidhi
a0462a5697
Added user email to logging context (#6619) 2021-08-16 16:36:03 +05:30
Shrikant Sharat Kandula
e20d616c33
Env Manager API and super user signup API (#6473)
* Add API for env management and super user

* Add missing files

* Add API for signing up for super user

* Fix types in client code

* Add docs for env manager API

* Minor refactoring

* Remove unused updates to app startup

* Better error logging when unable to write file

Co-authored-by: Nidhi <nidhi@appsmith.com>

* Don't cache the user count (duh!)

Co-authored-by: Nidhi <nidhi@appsmith.com>
2021-08-14 07:01:54 +05:30
Shrikant Sharat Kandula
0f41886ce7
Fix NPE when Referer header is missing (#6601) 2021-08-13 22:49:09 +05:30
Abhijeet
a1398ad9b4
[skip_changelog] Check datasource validity before creating a CRUD page (#6562)
* Added check for valid datasource before generating a page

* Sanitise column names for binding in widgets

* Refactor

* Update TC
2021-08-13 11:19:06 +05:30
Nayan
c3b44aa3b3
Bugfix: Create notification when comment added, deleted and thread resolved, deleted (#6495)
* bugfix: notification not created if user is mentioned in the first comment of a thread

* -add notification event type in comment notifications
-show different message for create thread and create comment in UI

* -send notification when comment is deleted

* -send notification when comment thread is deleted
2021-08-13 10:58:42 +06:00
Abhijeet
1d0f5011ec
Update CRUD template
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-08-12 19:17:20 +05:30
Arpit Mohan
be675fbc6b
Adding the email rollout strategy to feature flag (#6541)
This PR adds the email based rollout strategy to features. We can now define a list of domain names in the init-flags.yml file and define the domains for which the feature will be active.

Also added tests to assert the functionality for this flag flipping strategy.
2021-08-12 04:57:45 +00:00
Nikhil Nandagopal
d6e5c0d19e Updated Template 2021-08-11 17:20:22 +05:30
Sumit Kumar
15061765da
Encrypt attributes (#6508)
* encrypt attributes
2021-08-11 11:43:57 +05:30
Anagh Hegde
e2284e4199
Add null check for the nested data structure (#6479)
* Add null check for the nested data structure

* Add unit test for the null nested data
2021-08-09 19:24:19 +05:30
Abhijeet
eb7dd49457
[skip_changelog] Form login disabled after user uses OAuth login method (#6425)
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-08-09 12:50:06 +05:30
Abhijeet
87beed34d6
[Bugfix] Empty object creation in published pages for application object fixed 2021-08-09 11:43:51 +05:30
Abhijeet
786f7f8ec9
Update CRUD template For S3 page (#6426)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-08-06 12:50:42 +05:30
Anagh Hegde
42c2d1f708
Fix binding query for the nested data responses (#6372)
* Fix binding query for the nested data responses

* Fix formatting issues and add comments

* Updated comments

* remove code duplications
2021-08-04 15:23:33 +05:30
Nayan
0d106a5c9d
Improvement: Add limit on password length in user signup (#6312)
* -add max password validation in FE and password validation in BE for signup

* -added unit test for password length limit

* - set max password length to 48
- add password length check in reset password

* -removed password limit check from login
2021-08-04 15:33:33 +06:00
Anagh Hegde
528716cc7a
Fix authentication issue while creating mockdata (#6294)
* Re set password to avoid double encryption while creating suffix datasource

* Add test to query on mockdata source

* Check the Authentication type before setting the password
2021-08-03 21:17:58 +05:30
Abhijeet
365c6e3f39
Added null check to verify empty layout in generate CRUD page flow (#6359) 2021-08-03 19:28:36 +05:30
Abhijeet
60cbaad9bd
Add list buckets API to S3 (#6334)
* Add list buckets action method to S3

* Added TC for list bucket method
2021-08-03 18:04:47 +05:30
Abhijeet
7052e97547
Added instance Id in analytics datapoint (#6252) 2021-08-03 12:24:21 +05:30
Abhijeet
70cf1e39b8
Snowflake get structure error resolved for columns query (#6316)
* Table name reference copied from templates body to avoid misconfiguration in action body
2021-08-02 19:03:28 +05:30
Arpit Mohan
538fe8ea00 Merge branch 'release' of github.com:appsmithorg/appsmith into release 2021-08-02 14:42:58 +05:30
Arpit Mohan
c466056223 Fixing bug where the comment feature flag was disabled for all users 2021-08-02 14:42:43 +05:30
Anagh Hegde
9dbb16747e
Add analytics event for mock-data creation (#6136)
* Add analytics event for mockdata creation

* Use the correct name for the mockdatasource

* Added FE analytics for mock datasource

* Changes per review

* Remove the method call

* Fix indentation issue

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-08-02 08:30:56 +05:30
Nayan
183cc97b50
Fix: Mark comment threads as viewed when they are resolved (#6251)
* -log widget type in analytics service when new thread created
-set viewed=true for resolved threads

* fixed typo

* fix the test case when there is not widget type
2021-08-02 00:12:41 +06:00
Shrikant Sharat Kandula
1c70a104a6
Fix NPE when Segment key not available correctly (#6244) 2021-07-30 11:36:42 +05:30
Arpit Mohan
8dd41ab947
Adding expiry of 30 days to session cookies (#6224)
Fixes #5872

Adding an expiry of 30 days to the cookie to ensure that browsers don't delete the cookie when the browser session is closed.
2021-07-29 18:13:22 +05:30
Abhijeet
c8928d34ed
Remove autogenerate column from insert query for generate CRUD page from DB table (#6183)
* Removed autogenerated column reference from InsertQuery

* Disable page generation flow for layout with widgets

* Updated Template

* TCs modify for updated template application

* Allow column with only String datatype as a search column in SelectQuery

* Remove AtomicRef as not needed

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-07-28 13:14:04 +05:30
Abhijeet
8aebeb50dd
Add analytics event for self-hosted instances (#6198)
* Enable analytics event to get triggered for self-hosted instances

* Add conditional logic for analyticsRunner method
2021-07-28 12:15:48 +05:30
Nidhi
2cb1aa3de1
Added validation for refactor name (#6165) 2021-07-28 11:19:23 +05:30
Nayan
8b1c5f486d
[Feature] Add filter in get comment threads (#6122)
* -added filter by resolved state in get comment thread API

* -add aggregation and lookup to fetch comment threads

* -added unit test for the repository aggregation method

* -reverted the aggregation lookup

* -add unit test for get all thread

* -removed unused method

* -resolved merge conflicts

* -skip hardcoded property value in query
2021-07-26 17:14:47 +00:00
Nayan
667179d5a1
Stop creating bot comment thread when user is app viewer (#6111)
* -stop creating bot comment thread when user is app viewer

* -added comments to the method
2021-07-26 15:28:49 +06:00
Arpit Mohan
a99bb17c1a
Feature flags on the server (#5926) 2021-07-26 12:31:26 +05:30
Abhijeet
102e36ce95
Bugfix for generate page from db table, Analytics event after the successful CRUD page creation (#6087)
* Analytics datapoint after the successful page generation

* S3 bucket referenced from plugin specified template
2021-07-23 20:09:02 +05:30
Nayan
2c437a41e6
[Bugfix] Mark a comment thread as unread when there is a new comment in the thread (#6100)
* -mark thread as unread and unresolved when new comments added

* -added test
2021-07-23 19:30:36 +06:00
Anagh Hegde
cef530e835
Add binding query to the suggested widget to improve the experience (#6016)
* Add binding query to the suggested widget to improve the experience

* Fix test failures

* Add comments and change as per review

* Move the query template to enum class

* Change Test cases as per review

* Remove unused methods from the test class

* Remove commented code

* Use proper attributes in binding query

* Refactor suggestWidget method to support node

* Add unit tests
2021-07-23 14:29:27 +05:30
Anagh Hegde
c82c518f60
[Bug] - Add check for duplicate name issue while creating mock data set (#6039)
* Add check for duplicate name issue while creating mock data set

* Fix Test failures
2021-07-23 13:34:03 +05:30
Abhijeet
9633d1e1c3
Add autogenerate field in datasource structure for each column (#6018)
* Added field to autogenerate values in DB column

* Added comment and refactor

* Autogenerate field update according to names instead of type for ArangoDB
2021-07-23 09:00:32 +05:30
Abhijeet
a6c357ac16
Removed support for S3 and GSheets for generate CRUD page (#6076)
* Removed support for S3 and GSheets for now as FE code does not have support for these plugins yet

* Commented TCs for S3 and GSheets
2021-07-22 19:12:32 +05:30
Nikhil Nandagopal
ee1c624426 Updated Template 2021-07-22 15:24:05 +05:30
Nikhil Nandagopal
fe71345768 Updated Template 2021-07-22 15:21:54 +05:30
Nikhil Nandagopal
5cc21dbe1d Updated Template 2021-07-22 15:19:39 +05:30
Abhijeet
886ed672ca
Extend backend support for S3 and Google Sheets plugin for generating page from DB table feature (#5997)
* Comments update

* S3 plugin support added

* Support for GSheet

* GSheet and S3 support, TCs update

* TC added for MongoDB datasource

* ilike opertor for SQL fixed

* Resolve merge conflicts

* Seperate template page for postgresql and other SQL datasources as there are minor changes in action bodies

* Added ListFiles query as on page load action, Insert all the columns from user's table in SelectWidget

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-07-22 14:24:22 +05:30
Bhavin K
7259d1e908
Bug/mustache binding extra space (#5587)
Table data was not populating when extra space inside the mustache binding, This is now fixed for list and table widget

* removed return statements from computed values

* list widget responce update

* table data handled return, added migration

* removed unused function

* updatetd rowBinding string generator

* fix failing cypress test

* fix cypress tests
2021-07-22 14:13:58 +05:30
Abhijeet
597a53c4d5
[Bug] Fix for immutable map in analytics service (#6051)
* Updates are made on local Map to avoid ImmutableCollection issue in analytics service
2021-07-21 17:39:53 +05:30
Nayan
5970d06164
[Improvement] Update the positioning parameters for bot threads (#6036)
* -updated the position field for comment threads

* -use default origin header when origin header not present in comment email
2021-07-21 15:24:39 +06:00
Nayan
5261f782df
Fixed comment missing issue when user role is changed (#5898)
* -fixed comment missing issue when user role is changed

* WIP: add test for policy utils

* -added test for policy utils comment permission when users are added or removed

* -removed unused code

* -removed public access modifier for an internal function

* -add test to verify comment thread policy updated when user role changed in organization

* -add tests for add user and remove user from organization to test comment thread policies
2021-07-21 12:30:34 +06:00
Arpit Mohan
9f29dd028d
Improving error message for invalid entities (#5977)
Also removing the toast message for successful action runs. With the debugger, this is no longer required.
2021-07-20 11:07:20 +05:30
Anagh Hegde
ed7e4457fe
Bug - Fix page order sorting (#5971)
* Use the order from Application object

* Fix the bug in test cases
2021-07-20 09:09:20 +05:30
Nayan
6efe78479f
[Enhancement] Add link to unsubscribe from email notification for a comment thread (#5769)
* -added API to and template for unsubscribe  comment thread

* -changed public API url to make it sepratate from client public pages
-included the unsubscribe link to email body

* -made unsubscribe email notification API to private

* -added unsubscribe page

* -removed unused code

* Update app/client/cypress/integration/Smoke_TestSuite/ClientSideTests/Comments/UnsubscribeEmail_spec.js

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Update app/client/src/pages/common/UnsubscribeEmail.tsx

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Update app/client/src/pages/common/UnsubscribeEmail.tsx

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/BaseAppsmithRepositoryImpl.java

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* -updated text as per lint error

* -updated text as per lint error

* -moved unsubscribe screen texts to messages.ts

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-07-20 00:14:38 +06:00
Rishabh Saxena
25a6fd2240
Fixes related to the comments feature (#5904) 2021-07-19 20:58:41 +05:30
Nayan
5185a0af5c
Log analytics event when comment created (#5953)
* -log analytics event when comment created

* -mocked analytics for comment tests

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/CommentServiceImpl.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-07-19 20:45:37 +06:00
Anagh Hegde
d5d6c3fa9c
Feature/page order API refactor (#5799)
* Refactor Page order API - Instead of the order filed use the Order persistency in Array offered by Mongo

* Add migration script to remove the order filed from the Application Pages

* Change unit tests as per the new implementation

* Fix indentation issues

* Compute pages based on the view mode

* Removed order field in response and changed the page order API response to List of pages instead of the application object

* Remove the Order filed from the Response class

* Use the $push instead of $addToSet to maintain order of pages in array
2021-07-19 15:12:29 +05:30
Abhijeet
db0445c64a
Fix failing server testcases (#5948)
* Add constructor in AnalyticsService
2021-07-19 13:04:59 +05:30
Abhijeet
bf9257d543
Refactor analytics events to encrypt or remove sensitive information (#5920)
* Applied encryption for self-hosted instances username field, removed sensitive fields from request

* Request field added for Appsmith cloud instance

* Config variables moved to a central file
2021-07-18 15:18:11 +05:30
Nayan
ac654d754f
Fix datetime parsing error in notifications (#5893)
* -fix datetime parser exception in comment thread notifications

* -resolved merge conflicts
2021-07-17 16:26:30 +06:00
Abhijeet
c5a909ddc8
Google sheet APIs for getting all the spreadsheet, getting all sheets within spreadsheet and column headers (#5875)
* API to run DB query using plugin specified templates

* Included get spreadsheet metadata in get info method

* Added TCs for checking Spreadsheet info response

* Added error message for invalid datasources

* Authentication check for datasource modified to AuthenticationStatus field
2021-07-16 16:15:29 +05:30
Anagh Hegde
3a4de769ee
Call the WidgetSuggestion method before processing data types. (#5907) 2021-07-16 15:40:27 +05:30
Nayan
8fcbb6e4c1
Add a bot thread when someone adds first comment or tags someone is the comment for the first time (#5521)
* resolved conflicts

* -fixed some issues in PR

* -used sequence in generating thread number

* -refactored the create thread method

* -refactored comment service

* -add bot reply to the first comment thread of an user

* -added a new bot thread when user resolves the first bot thread

* -handle the case when user data can be absent

* -add organization id and widget type to comment and comment threads

* -resolved conflicts

* -mark appsmith bot username as a tagged user in the bot comment

* -turn a private thread to a public thread when someone is tagged in it

* -updated as per the review comments

* -fixed compile error in unit test

* -updated as per PR review comments

* -removed commented code
2021-07-15 23:45:08 +06:00
Anagh Hegde
f169c8c5a0
Add login mode to track for analytics purpose (#5870) 2021-07-15 14:36:57 +05:30
Anagh Hegde
99a06728d4
Suggest List of possible widgets and add exception handling (#5800)
* Add try catch block to handle the data conversion exception

* Suggest widget only in edit mode

* Add JsonNodeType to the widget suggestion logic

* Use ClassCastException instead of generic exception

* add tests for the array data type

* Suggest list of possible widgets instead of one

* Use constant in if condition to avoid possible NPE
Fix typo
2021-07-14 22:25:13 +05:30
Nikhil Nandagopal
ce38354b41 Updated Template 2021-07-14 17:40:45 +05:30
Nidhi
193f20ad7a
Redirecting to view mode of datasource after authorization (#5758)
* view mode true

* removed new query btn from view mode for google sheet datasource

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-07-09 15:13:54 +05:30
Nayan
45198c7d68
Increased maximum image size to be uploaded as profile picture (#5641)
* -increased max image size to upload as profile picture

* -removed unnecessary changes

* -show message on maximum allowed file size
2021-07-09 15:38:14 +06:00
Nikhil Nandagopal
4ffeca4a56 Updated Template 2021-07-08 17:26:49 +05:30
Rishabh Rathod
c27974b2a2
Replace pluginName with packageName in mockDB creation (#5720)
* replace pluginName with packageName in mockDB creation

* Replace pluginName with packageName

Co-authored-by: Anagh Hegde <anagh@appsmith.com>
2021-07-08 16:03:41 +05:30
Nikhil Nandagopal
6bcb7c2f62 Updated Template 2021-07-08 14:40:50 +05:30
Shrikant Sharat Kandula
37db1ef376
Fix new user event being fired on every login (#5675) 2021-07-08 13:51:00 +05:30
Nikhil Nandagopal
3ad73cd2c7 Updated Template 2021-07-08 12:01:12 +05:30
Nikhil Nandagopal
fb35594bf2 Updated Template 2021-07-08 11:59:20 +05:30
Anagh Hegde
0154017836
Refactor Get mock-data set API (#5620)
* Call cloud services to fetch mock datasets

* Call cloud services to fetch mock datasets

* Change the MockData Config,

* Remove unused import statements and fix small indentation issues

* 1. Moved the mock data creation and fetching to a separate class
2. Added plugin type to mockdata class
3. Used pluginName to identify the db type
4. Removed the block call mock data creating method
5. Added unit tests for the mockdata

* 1. Removed unused field from contract and
2. Updated the url to cloud service

* 1. renamed the field of mockdata contract
2. Updated the test cases

* using new mock datasources apis

* 1. Added the Cloud Service release end point to env variable

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-07-08 11:29:11 +05:30
Abhijeet
07944f214b
Provide API for MongoDB datasource to generate page from DB table feature (#5590)
* Template application updated to include separate page for MongoDB as a datasource

* Support for mongoDB as datasource added

* Added comments

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-07-08 07:18:23 +05:30
Nayan
500efb0dd7
Updated plugin logos from png to svg (#5671)
* -updated svg logo for plugins

* -added svg logo for ArangoDB plugin
-used MongockTemplate instead of MongoTemplate in the db migration
2021-07-07 20:02:59 +06:00
Aswath K
2c6e8a388e
Shows 'last saved' time on hovering over the 'saved' icon (#5092) 2021-07-07 18:17:01 +05:30
Abhijeet
de511e47f6
Bugfix OAuth2.0 datasource authentication for import export application feature (#5658) 2021-07-07 17:49:16 +05:30
Nayan
eb557035b2
Added new API to get unread comment thread count (#5429)
* -added new API to get unread comment thread count

* -changed query to get unread comments so that it only searches where user has permission

* -added unit test for unread comment thread count

* -improved formatting

* -updated as per PR review
2021-07-07 13:00:33 +06:00
Abhijeet
17006ffe0e
Minimise DB calls to throw duplicate app name error message (#5625)
* Minimise DB calls to throw duplicate error message for updating application name
2021-07-06 22:20:47 +05:30
Trisha Anand
d1ef21dce3
Reliable change application access from public to private & vice versa (#5530)
* Changing application public/private view can no longer be cancelled (for example by client timeout, etc.)

* Update test to only read the datasource used in the application

* Incorporated review comment

* Comment update
2021-07-06 21:49:35 +05:30
Sumit Kumar
d68ca405a8
Feature: integrate ArangoDB plugin (#5518)
* integrate arangoDB plugin.

Co-authored-by: Ming Fang <mingfang@mac.com>
Co-authored-by: Automated Github Action <automated@github.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
2021-07-06 18:40:19 +05:30
Anagh Hegde
027603697a
Suggest widget after executing Action (#5574)
* Add widget suggestion to query execution flow

* Change the logic for Chart widget suggestion

* Add tests for the all the suggested widgets

* Added enum class to store widget types
2021-07-06 18:15:48 +05:30
Nayan
13fec4e30e
Update email notification template when there is comment (#5392)
* WIP: updated the email template

* -updated the comment link in email as per the user role

* -rebased from release

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/solutions/EmailEventHandler.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* -updated the template as per review comment

* -removed unused email template file

* -fixed compile error

* -checked application policy instead of role when sending email for comment

* -minor changes as per PR review comment

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-06-30 20:46:56 +06:00
Nikhil Nandagopal
ed40980f2d
Update CRUD-DB-Table-Template-Application.json 2021-06-30 11:24:37 +05:30
Anagh Hegde
40d147d5b5
Feature/editor simplify - API to work with mock data sets (#5421)
* Added an API to get list of mock datsets
Removed the flow of

* Removed the auto populate of mock datasets flow when the user sign up first time

* Fixed indentation issues

* Instead of sending empty datasource, change template value to empty

* Add only the configs to response instead of entire mongo doc

* Add API to create mock data set
2021-06-29 20:17:00 +05:30
Nikhil Nandagopal
1112c20f7c Updated Template 2021-06-29 17:20:53 +05:30
Nikhil Nandagopal
95b41f36d3 Updated Template 2021-06-29 16:19:46 +05:30
Nikhil Nandagopal
8c2f5f50ce Updated Template 2021-06-29 13:10:04 +05:30
Nikhil Nandagopal
82fbf1c95d Updated Template 2021-06-29 12:18:38 +05:30
Nikhil Nandagopal
4c3f63305d Updated Template 2021-06-29 12:16:11 +05:30
Trisha Anand
02e5445731
[Mongo Plugin] Raw is now a command option instead of Form vs Raw (#5446)
* Raw is now a command option instead of Form vs Raw

* Added database migration for migration raw input type to be of raw command type

* Fixed test case failure

* Minor cleanup
2021-06-29 11:13:17 +05:30
Nayan
36c399ac4f
Fix the comment missing issue when new users added to organization (#5314)
* -Add the newly added user to existing comment threads

* -update PR as per review comment

* -updated the PR as per review
2021-06-28 14:50:39 +06:00
Abhijeet
6ec6f9578c
API for generating a page with UI based on the structure of a given database table (#5269)
* Keymapping, Clone actions from template application, Used exported application JSON file as template app

* Delete references of widgets from action config if extra widgets not required

* Separate API added when pageId is not present with the client

* Added TCs

* Update in regex, enable reqArgsConstructor, separate DTO for CRUD page
2021-06-24 14:58:57 +05:30
Nayan
9a247f3e78
Fix bug where some fields are missing for notifications from the API (#5336)
* -set createdAt and type fields in notification
-add threadId in response for comment

* -fixed bug with unread notification count
2021-06-24 14:35:30 +06:00
Rishabh Saxena
29a6136380
Set mode for comments (#5372) 2021-06-24 12:51:01 +05:30
Nayan
e52680fb1f
Feature/implement comment thread subscriber (#5261)
* -send email to users who are subscribed to a thread only

* -fixed null pointer exception while set subscriber in create thread

* -updated as per PR comments and review
2021-06-23 17:24:57 +06:00
Abhijeet
7fc04f043f
Error message when updating duplicate application name modified to give more contextual information (#5341) 2021-06-23 13:08:12 +05:30
Anagh Hegde
a1defb9544
Remove the unnecessary comments 2021-06-23 11:16:15 +05:30
Anagh Hegde
0d57f3c132
Merge branch 'release' into feature/page-order-api 2021-06-23 10:54:17 +05:30
Anagh Hegde
fa9a1bc488 Set the order to published pages 2021-06-23 10:51:25 +05:30
Trisha Anand
a89990e157
Mongo For Update Migrations (#5291)
* Commenting out migration for quick fix to bring up release

* Added null checks for the incomplete configured update single and update many queries
2021-06-21 18:37:33 +05:30
Abhijeet
598a48cea7
Migration for createdAt and updatedAt field for userCollection if not present (#5249) 2021-06-19 18:03:23 +05:30
Anagh Hegde
32ecffbf8f Merge remote-tracking branch 'origin/feature/page-order-api' into feature/page-order-api 2021-06-18 22:40:43 +05:30
Anagh Hegde
9ad742e97e Change the test method name to more meaningful,.equals for boolean comparision, fix indentation 2021-06-18 22:40:16 +05:30
Anagh Hegde
82a1289f45
Merge branch 'release' into feature/page-order-api 2021-06-18 15:15:48 +05:30
Anagh Hegde
e02e572df7 Change the logic to have check for the order of all the pages 2021-06-18 14:53:33 +05:30
Shrikant Sharat Kandula
040d3b0cc4 Fix publish application event not being sent 2021-06-18 13:27:31 +05:30
Trisha Anand
ee4429b973
Commenting out migration for quick fix to bring up release (#5248) 2021-06-18 12:10:15 +05:30
Shrikant Sharat Kandula
7d08187677
Merge pull request #5233 from appsmithorg/fix/send-publish-event-only-on-client-publish
Fix app publish event sent at wrong times
2021-06-18 11:19:36 +05:30
Trisha Anand
388418cec5
Merge the two update commands into a single update command in Mongo Form (#5171)
* Update commands have been merged into a single update command for both single and multi updates

* Added migrations to migrate any update one mongo form command to new update command

* Incorporated review comments
2021-06-18 11:04:39 +05:30
Shrikant Sharat Kandula
6c67c20576 Another typo 🤦🏻‍♂️ 2021-06-18 10:48:58 +05:30
Shrikant Sharat Kandula
45b062b83b Typo 2021-06-18 10:43:10 +05:30
Anagh Hegde
bd3369dd03 Remove * import statements 2021-06-18 10:25:36 +05:30
Abhijeet
b87825523e
Support for orphan API without any datasource added for import-export functionality (#5232) 2021-06-18 07:20:28 +05:30
Shrikant Sharat Kandula
11218c2b19 Fix app publish event sent at wrong times 2021-06-17 19:28:50 +05:30
Nidhi
884636f33f
Snowflake integration (#5176)
* POC for snowflake integration with Appsmith

This is just a rough version to see if the functionality works. Needs to be cleaned up & enhanced for production usage.

* Plugin with connection, monos, ds testing, validation, templates, structure and forms

* Better comments

* Default schema to public

* Changed logging destination, populated request in result and used thread group for datasource creation

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-06-17 15:03:18 +05:30
Rishabh Saxena
9c99f36bd6
Comments feature fixes (view mode) (#5081) 2021-06-17 13:07:27 +05:30
Nayan
a1a4f0ef3f
Fature/add pagination in notifications (#5096)
* -added pagination to notifications API

* -add unit tests for notification pagination

* -added unread count in get notifications API

* -moved notification creations to notification service from comment service

* -add repository method to mark a notification as read

* -added repository to update isRead by for username

* -add API to mark notification as read

* -addd application id and application name in notification

* -save application id and name in notification when creating notification for comment and comment threads

* -added page id, from user information in notifications

* -fixed failing unit test due to dependency error

* -removed unused imports

* -extended base controller in notification controller

* - introduced pagination based on before created data instead of offset based pagination

* -moved application id, name and page id inside comment from notification

* -moved author information from notification to comment thread

* -return data from notification service instead of the response object in the mark read or unread API
2021-06-16 23:24:03 +06:00
Rishabh Saxena
10b3f7e790
Feature/signup success url (#5124) 2021-06-16 21:21:18 +05:30
Anagh Hegde
e119bd716c Ignore the order of the page while checking the published and edited pages test 2021-06-16 21:12:18 +05:30
Anagh Hegde
8296f416cc Merge remote-tracking branch 'origin/feature/page-order-api' into feature/page-order-api 2021-06-16 14:29:37 +05:30
Anagh Hegde
2ccc1ef1f2 Change the test scenario 2021-06-16 14:29:03 +05:30
Anagh Hegde
e748623e57
Merge branch 'release' into feature/page-order-api 2021-06-16 13:56:52 +05:30
Anagh Hegde
1b36f79a4e Fix merge conficts 2021-06-16 13:44:46 +05:30
Anagh Hegde
5a8ac3fd33 1. Fix failing unit tests for the page reorder 2021-06-16 11:21:19 +05:30
Anagh Hegde
3e1702b4f9 1. Add migration logic
2. Add order while creating pages
2021-06-16 09:12:53 +05:30
Abhijeet
7c430303aa
Allow only organization admins to export application (#5085)
* Added permission export:applications for admin role

* Only admins are allowed to export applications

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-06-15 18:18:21 +05:30
Anagh Hegde
9932f918f9 Use assertThat type of assertions and move the order initialization logic to migration 2021-06-15 10:03:39 +05:30
Anagh Hegde
1ca7a0cb20 Add test for page reorder and add order to the response 2021-06-14 15:34:07 +05:30
Anagh Hegde
ccd04b14d9 1. Added logic to handle pageDown scenario
2. Added comments
2021-06-14 10:19:02 +05:30
Anagh Hegde
fea54e2fa0 Moved constructor to the top. 2021-06-10 17:12:29 +05:30
Shrikant Sharat Kandula
8db64e6355
Merge pull request #4980 from appsmithorg/feature/send-email-on-comment
Feature/send email on comment
2021-06-10 15:20:34 +05:30
Nayan
87ab6ff926 -removed commented code as per PR review 2021-06-10 13:09:36 +06:00
Anagh Hegde
bcd5f0600d Add page re-order API 2021-06-10 12:23:47 +05:30
Anagh Hegde
7acba5e1df Add page re-order API 2021-06-10 12:12:48 +05:30
Abhijeet
0246563bd2
Bugfix for applications with MongoDB datasources authenticated with SRV string (#4944)
* Avoid updating authenticationDTO for mongo-plugin with SRV if the authentication object is already present
2021-06-10 10:52:23 +05:30
Rishabh Saxena
07a292328a
Comments feature fixes (#4738) 2021-06-09 16:05:10 +05:30
Shrikant Sharat Kandula
4787b74958 Add API for setting page order in an application 2021-06-09 15:17:31 +05:30
Nayan
b3bde4eb95 -organized imports 2021-06-08 15:52:25 +06:00
Nayan
ba4ea3a61b -fixed issue in unit test 2021-06-08 15:34:10 +06:00
Nayan
280155ac89 -added test for the email event handler 2021-06-08 14:43:21 +06:00
Nayan
5550c9310f -moved email sender to background task 2021-06-08 14:43:20 +06:00
Nayan
f9493a4bd2 -add unit test for utils 2021-06-08 14:43:19 +06:00
Nayan
db7363fac6 -Issue #4706 - send email when new comment added or comment thread resolved 2021-06-08 14:43:18 +06:00
Sumit Kumar
d2a74b5ac9
Feature: firestore plugin support for multiple where conditions (#3740)
* allow users to add multiple where conditions to firestore's get documents query.
2021-06-07 10:43:16 +05:30
Shrikant Sharat Kandula
80b6d6578c Fix migration NPE 2021-06-03 10:58:26 +05:30
Nidhi
226c0720bd
Default state for mongo actions that were already configured (#4873)
* Default state for mongo actions that were already configured

* Clean up
2021-06-03 09:20:47 +05:30
Abhijeet
8fea689b4d
Actions are updated to page level resource, application name included in json file name (#4879) 2021-06-03 08:59:27 +05:30
Nayan
77940c0cfa
[Issue #3785][Bug] User names in organization management page are stale (#4702)
* [Issue #3785][Bug] User names in organization management page are stale

* -update name in userroles in background when there is a change in user
2021-06-02 15:56:52 +06:00
Nayan
78915301e3
[Issue #4572]-Allow users to leave an organization (#4634)
* [Issue #4572]-Added API to leave organisation by any user

[Issue #4572]-Add option for organization admins to leave an organization

* -add option to leave organization in frontend for non-admin users

* -updated the leave org endpoint path and HTTP method as per PR review

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* -add cypress test and some minor changes as per PR comment

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-06-02 15:56:22 +06:00
Abhijeet
51addbc963
Feature/import-export-application (#4553)
* Decryption for dbauth, basic and OAuth datasources added in exported file

* All authentications for datasources included while exporting as deserialization is done through json file otherwise cast is throwing error

* Content-Disposition header implemented 

* MongoEscapedWidget names segregated for published and unpublished layout, to prevent overwrite while exporting

* Published pages and actions explicitly handled in cases where unpublished resources are deleted
2021-06-01 17:38:26 +05:30
Nidhi
5ddd58cdfd
Added optional audience and resource fields for oauth2 datasources (#4678)
* Added optional audience and resource fields for oauth2

* Review changes

* Don't show audience and resource fields by default
2021-05-27 21:53:59 +05:30
Shrikant Sharat Kandula
3c4f0ace72 Fix API error when marking threads as read 2021-05-26 17:18:26 +05:30
Nayan
caf7f3678c
[Issue #2689][Bug] Duplicate Accounts with Same Email - Field is Case… (#4529)
* [Issue #2689][Bug] Duplicate Accounts with Same Email - Field is Case Sensitive

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

Co-authored-by: Nayan <83352306+nayan-appsmith@users.noreply.github.com>
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-05-26 15:25:48 +06:00
Nidhi
2bf1fbff04
Removed check for encryption since this is not handled manually anymore (#4673)
* Removed check for encryption since this is not handled manually anymore

* Removed migration for isEncrypted
2021-05-25 20:29:57 +05:30
Abhijeet
578c1d8506
Fork application event added (#4620) 2021-05-21 17:10:19 +05:30
Abhijeet
1845de739e
Added pluginName in execute_ACTION_TRIGGERED analytics event (#4610) 2021-05-21 15:50:48 +05:30
Sumit Kumar
c156560313
[Bug] fix NPE (#4613)
* fix NPE
* add ip check for localhost
2021-05-21 13:47:51 +05:30
Rishabh Saxena
8964aea9df
[Feature] Comments feature updates (#4579) 2021-05-20 17:33:08 +05:30
Shrikant Sharat Kandula
94d4302bcb
Merge pull request #4571 from appsmithorg/feature/notifications-api
Basics and infrastructure for a Notifications system
2021-05-20 13:49:56 +05:30
Shrikant Sharat Kandula
de4c66bf4e
Merge pull request #4570 from appsmithorg/feature/signup-query-param
Add a isFromSignup query param to /applications after signing up
2021-05-19 14:23:49 +05:30
Trisha Anand
d5e5be5d6a
[Feature] Mongo Form (#4378) 2021-05-19 11:05:24 +05:30
Arpit Mohan
b1d7258dcb
Adding support for multipart form data (#4547)
* Handling multipart form data in the CURL import flow

* Adding Cypress test for curl import with multipart/form-data

* Also fixing minor bug where the form values need not always be double-quoted
2021-05-19 10:48:51 +05:30
Shrikant Sharat Kandula
b1c523eef4 Fix flaky UserData test 2021-05-18 17:48:40 +05:30
Shrikant Sharat Kandula
28cab61e5b Separate notifications for comment threads 2021-05-18 17:16:09 +05:30
Shrikant Sharat Kandula
ea02205259 Merge branch 'release' into feature/notifications-api
# Conflicts:
#	app/server/appsmith-server/src/main/java/com/appsmith/server/domains/Comment.java
#	app/server/appsmith-server/src/main/java/com/appsmith/server/services/CommentServiceImpl.java
2021-05-17 14:55:34 +05:30
Shrikant Sharat Kandula
95a385dad7
Update names in comments when user name is changed (#4466)
* Update names in comments when changed

* Move database operation to repository class
2021-05-17 12:01:09 +05:30
Sumit Kumar
247e5d7ea4
Feature: return prepared stmt / smart substitution params under request params section for debugging (#4421)
- return prepared stmt / smart substitution params under request params section for debugging
2021-05-17 08:59:17 +05:30
Nayan
51dd6587cf
[Issue #2093]-show last used organizations first in home page (#4461)
* [Issue #2093]-show last used organizations first in home page

* -updated as per the comments in PR
2021-05-16 09:42:10 +06:00
Shrikant Sharat Kandula
2c2da7327d Add a isFromSignup to /applications 2021-05-14 12:39:58 +05:30
Trisha Anand
3e016296e6 Merge branch 'master' into release
# Conflicts:
#	app/client/src/workers/DataTreeEvaluator.ts
2021-05-13 14:43:00 +05:30
Shrikant Sharat Kandula
27af947852
APIs for adding and removing reactions on comments (#4457)
* Add APIs for reacting and unreacting on comments

* Add tests for Reactions APIs

* Fix s/create/delete typo

Co-authored-by: Nidhi <nidhi@appsmith.com>

* Deletion is successful if more than one are deleted

Co-authored-by: Nidhi <nidhi@appsmith.com>
2021-05-13 12:52:43 +05:30
Nidhi
53c2d815f6
Fixes refresh token flow (#4450)
* Fixes refresh token flow

* Review comments

* Reverting mistake with CI cs url
2021-05-12 17:07:59 +05:30
Shrikant Sharat Kandula
7b222b27fb
Don't create new org, if the new user has been invited to one (#4380) 2021-05-10 13:51:43 +05:30
Sumit Kumar
0ec3604eac
Feature: connect to mongo db via connection string URI (#4131)
allow user to connect using a mongo connection string URI directly.
2021-05-10 10:35:45 +05:30
Nidhi
39bb0ac805
Removed prod url from default config (#4377) 2021-05-07 23:22:20 +05:30
Shrikant Sharat Kandula
3b3e24f8cf
Add delete thread API (#4363) 2021-05-07 15:58:02 +05:30
Shrikant Sharat Kandula
8c7e844d80
Accept PUT requests for thread updates (#4357)
We were using PATCH, because that was semantically more
correct for what we are doing here. But since PUT is used
everywhere else in the project, changing this to PUT for
consistency.
2021-05-07 14:02:41 +05:30
Shrikant Sharat Kandula
1f2f5ec227
Fix ACL not applied on editing comments (#4351) 2021-05-07 12:35:53 +05:30
Trisha Anand
f7d3beef50
Added success log when the email is sent out successfully. (#4233) 2021-05-06 16:27:17 +05:30
Trisha Anand
aa51040c99
Small housekeeping server side changes (#4245)
* Minor refactor datasource policy generation for easy re-use.

* Added simple widget name refactor test
2021-05-06 16:27:08 +05:30
Nidhi
6c0668e74d Tests for encryption 2021-05-06 13:36:37 +05:30
Nidhi
b2aaa7787c Merge branch 'release' of github.com:appsmithorg/appsmith into task/apply-encryption 2021-05-06 12:55:25 +05:30
Nidhi
96123890cd
Merge pull request #4296 from appsmithorg/release
Fixes for broken evaluation
2021-05-04 22:49:00 +05:30
Sumit Kumar
1286af4285
fix for NPE (#4288) 2021-05-04 18:39:45 +05:30
Shrikant Sharat Kandula
568c0f92ac Merge branch 'release'
# Conflicts:
#	app/client/public/privacy-policy.html
#	app/server/appsmith-server/src/main/java/com/appsmith/server/services/NewActionServiceImpl.java
2021-05-04 13:16:26 +05:30
Nidhi
e855123542
DB change for SAAS editor UI component (#4268) 2021-05-04 00:05:48 +05:30
Shrikant Sharat Kandula
d950aeca22
Check for error class type before casting (#4256) 2021-05-03 16:13:26 +05:30
Sumit Kumar
52bfd25824
Feature: return request parameters with type for debug tab (#4078)
- return request parameters with type for debug tab.
- request params are stored in a RequestParamDTO object.
- a configProperty -> label map is cached in pluginService, which returns the param label as per the configProperty it is mapped to via editor.json file.
- This feature currently only works with prepared statements disabled.
2021-04-30 16:26:51 +05:30
Shrikant Sharat Kandula
0895c68f1f
Send time information in comments and threads even from RTS (#4235)
* Include time information in comments from RTS

* Fix ISO formatting missing Z suffix
2021-04-30 15:32:34 +05:30
Shrikant Sharat Kandula
914eb6f0c2 Initial version that creates and gets notifications 2021-04-29 16:11:40 +05:30
Rishabh Saxena
a0d2e8533d
Initialise comments (#3328)
* Initial scaffolding for comments CRUD APIs

* add actions

* add assets

* state management for existing comments and creating new

* add ui components

* add overlay comments wrapper to baseWidget

* add toggle comment mode button at editor header

* trigger tests

* Disallow commenting as someone else

* Add applicationId for comments

* lint

* Add overlay blacklist to prevent component interaction while adding comments

* Comment thread style updates

* Placeholder comment context menu

* Controlled comment thread visibility for making new comments visible by default

* Update comment type description

* Reset input on save

* Resolve comment thread button ui

* fix close on esc key, dont create new comment on outside click

* Submit on enter

* add emoji picker

* Attempt at adding a websocket server in Java

* CRUD APIs for comment threads

* Add API for getting all threads in application

* Move types to a separate file

* Initial commit for real time server (RTS)

* Add script to start RTS

* Fix position property

* Use create comment thread API

* Use add comment to thread API

* Add custom cursor

* Dispatch logout init on 401 errors

* Allow CORS for real time connection

* Add more logs to RTS

* Fix construction of MongoClient

* WIP: Real time comments

* Enable comments

* Minor updates

* Read backend API base URL from environment

* Escape to reset comments mode

* Set popover position as auto and boundary as scroll parent

* Disable warning

* Added permissions for comment threads

* Add resolved API for comment threads

* Migration to set commenting permission on existing apps

* Fix updates bringing the RTS down

* Show view latest button, scroll to bottom on creating a new comment

* Cleanup comment reducer

* Move to typescript for RTS

* Add missing server.ts and tsconfig files

* Resolve / unresolve comment

* Scaffold app comments

* Minor fixes: comment on top of all widgets, add toggle button at viewer header

* Reconnect socket on creating a new app, set connected status in store

* Retry socket connection flow

* Integration tests for comments with api mocks using msw

* Fix circular depependency

* rm file

* Minor cleanup and comments

* Minor refactors: move isScrolledToBottom to common hooks, decouple prevent interactions overlay from comments wrapper

* Use policies when pushing updates in RTS

* ENV var to set if comments are enabled

* Fix: check if editor/viewer is initialised before waiting for init action

* Add tests for comments reducer

* Revert "ENV var to set if comments are enabled"

This reverts commit 988efeaa69d378d943a387e1e73510334958adc5.

* Enable comments for users with appsmith email

* lint

* fix

* Try running a socket.io server inside backend

* Update comment reducer tests

* Init mentions within comments

* Fix comment thread updates with email rooms

* Minor fixes

* Refactors / review suggestions

* lint

* increase cache limit for builds

* Comment out tests for feature that's under development

* Add Dockerfile for RTS

* Fix policies missing for first comment in threads

* Use draftJS for comments input with mentions support

* fix fixtures

* Use thread's policies when querying for threads

* Update socket.io to v4

* Add support for richer body with mentions

* Update comment body type to RawDraftContentState

* fix stale method

* Fix mentions search

* Minor cleanups

* Comment context menu and thread UI updates

* revert: Scaffold app comments

* Yarn dependencies

* Delete comment using id api added

* Init app comments

* Add test for creating thread

* Api for delete comment with id

* Test comment creation response and policies

* Copy comment links

* Fix reset editor state

* Delete valid comment testcase added

* Delete comment TC : code refactor

* Don't allow creating comments with an empty body

* Pin comments WIP[]

* Ignore dependency-reduced-pom.xml files from VCS

* Cleanup of some dev-only files, for review

* Delete comment

* Update socket.io to v4 in RTS

* Pin and resolve comment thread object added in commentThread

* Pin and resolve comment thread object added in commentThread

* Update comment thread API

* Added creationTime and updationTime in comment thread response

* Added creationTime and updationTime in comment thread response

* Added human readable id to comment threads, fallback to username for null name in user document

* Refactor

* lint

* fix test, rm duplicate selector

* comment out saga used for dev

* CommentThread viewed status, username fallback for getName=null, username field added in pin & resolve status

* lint

* trigger tests

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
2021-04-29 16:03:51 +05:30
Trisha Anand
09748de6c0 NPE check when there are no mongo escaped widgets (#4200) 2021-04-28 22:31:13 +05:30
Trisha Anand
9884135cb7
NPE check when there are no mongo escaped widgets (#4200) 2021-04-28 22:27:01 +05:30
Trisha Anand
4a441b5ca2 [Bug Fix] : In case the table being renamed has mongo escaped fields, rename the table name in set keeping a track of these widgets as well (#4195) 2021-04-28 17:39:13 +05:30
Trisha Anand
73c2b09dc4
[Bug Fix] : In case the table being renamed has mongo escaped fields, rename the table name in set keeping a track of these widgets as well (#4195) 2021-04-28 17:36:30 +05:30
Nidhi
8afac888c7 Merge branch 'release' of github.com:appsmithorg/appsmith into task/apply-encryption 2021-04-26 13:30:49 +05:30
Sumit Kumar
275843e61a
Fix: Return helpful error message when get structure fails for mongo db due to lack of read permission. (#4077)
- return helpful error message when get structure fails for mongo db due to lack of read permission. The message returned is: Appsmith has failed to get database structure. Please provide read permission on the database to fix this.
- any get structure error is also generically being caught by the getStrucuture method in DatasourceStructureSolution.java
- error msg and status code is now returned as part of DatasourceStructure object.
- ErrorDTO is used to store error info.
- ErrorDTO definition is moved to appsmith-interfaces package so that it can be used all packages.
- Other changes:
  - stop logging PLUGIN_GET_STRUCTURE_ERROR externally, as this error is mostly triggered by credentials error or -lack of read permission.
  - start logging PLUGIN_GET_STRUCTURE_TIMEOUT_ERROR externally, because this is not a user error.
2021-04-26 11:18:08 +05:30
Abhijeet
c11dab9673 Auto-generated-organization field added in organization DB to differentiate between user created and auto generated organization 2021-04-23 19:29:20 +05:30
Trisha Anand
432b365980
[Hotfix] Fixed the migration script where actions with no default smart substitution configuration get the correct configuration of turned off (#4122)
* Fixed the migration script where actions with no default smart substitution configuration get the correct configuration of turned off

* Removed debug logs

* Stupid comment correction
2021-04-23 17:36:31 +05:30
Abhijeet
bb0516a495
Default counter for new datasource in organization should initiate at 1 (#4005)
* OrgId is added as a suffix to link datasource entry with orgId when creating document in sequenceDB.

* Each document entry in sequenceDB is linked to organization ID which is then used by the datasourceDB to generate default name. Testcase for testing default names to new datasources (#2212)

* Migration ChangeSet added to setup sequenceDB with organization ID in name field

* Optimization in string operation
2021-04-22 12:46:43 +05:30
Trisha Anand
dd00f51808
Type Migration for Plugins Part 2 : Migration of existing actions + revert hotfix for editor.json (#4085)
* WIP :  Migration of data type for smart substitution configuration

* Fixed the migration code. Also reverted editor.jsons  back to equality check after migrations of existing actions

* Only fetching actions for plugins which belong to supported plugins.

* Setting a default value of "false" for all the actions which don't have a valid configuration for smart substitution.

* Minor code formatting

* Minor language change in comment

* Removed debug logs
2021-04-22 12:07:25 +05:30
Abhijeet
005e00a8a8
Added new analytics datapoint to capture invite users event (#4095)
New analytics datapoint added to capture event : invite users to organisation
2021-04-22 10:59:47 +05:30
Nidhi
6b31aa333b
Introducing Google Sheets Plugin (#3517)
* cherry pick -make new

* revert to enable fix from release

* attempt to hook into existing datasource editor

* gSheets plugin skeleton from Rest API

* Changes for database migration

* fix for auth code

* separate it out

* action page loads!

* add to explorer

* create action from datasource

* Editor JSON WIP

* working query form

* Editor JSON WIP

* import to

* fix toast message

* redirect from datasource and editor pages

* fix onboarding

* fix imports and constants

* refactor form out

* refactor queryForm

* Merge branch 'release' into feature/google-sheets

* Merge branch 'release' into feature/google-sheets

* initial values from settings, editor and form

* Check

* remove dangling code around lightTheme

* Safety net

* remove class

* try mouseover solve

* force click

* changes from review

* fix action form name on import

* Merge branch 'release' into feature/google-sheets

* minor cleanup

* Merge branch 'release' into feature/google-sheets

* WIP

* Google sheets changes

* Merge conflicts

* Merging and fixes, needs refactoring

* Check

* Merge branch 'release' into feature/google-sheets

* Fixed tests

* Add cloud services env variable

* Clean up saga

* Clean up

* Refactoring

* Deleted svg file

* Minor fixes

* Modified design to allow behaviour in google sheets methods (#3486)

* Modified design to allow behaviour in google sheets methods

* Review changes

* Removed sysout

* Added handling of edge cases with table data

* Merge branch 'release' into feature/google-sheets

* Fixes

* Fixes

* Added validations

* Improved tests

* Removed extraneous injected bean

* Review changes

* Fixed bug with method

* Changes to Google sheets plugin's request and response structures (#3692)

* Method changes

* Removed logging

* Renaming options

* Reverting pom version

* Modified type of collection variables, fixed errors

* Converted row offset field to one that supports dynamic bindings

* Review changes

* List SAAS plugin type actions under lightning menu apis (#3820)

* list saas plugin type actions under lightning menu apis

* combine saas plugin type actions in the other sub menu of lightning menu

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>

* Fix merge issues

* Prettified query editor and a few fixes w/ ux

* Test fixes

* Reformatting request

* code for REST added (#3876)


Co-authored-by: hetunandu <hetu@appsmith.com>

* Renamed body to row object

* Renamed placeholder for range

* Renamed range heading

* Modifications to handle range semantics

* Use spreadsheet Url instead of id

* Ordering of methods

* Removed logging

* Add tests for Dynamic text controls

* Add tests for url helpers

* Fix coverage config

* Nevermind

* Interface changes

* There is no body here

* Yay to hints

* Delete row field is separately handled as row index

* placeholder support (#4001)

* Fixed tests, typos and creating new sheets with random rows

* Switched to using 'rowIndex' throughout

* binding path added for query input field (#4016)

* - Fixed QA bugs (#4032)

- Split delete sheet into two
- Removed dynamic query input types from hidden keys

* Proper exceptions

* Removed extra logging

* Throw exception if update method does not match any of the columns

* Same for bulk update

* Zero-indexed delete row

* I'm a space bound rocket ship

* Logic to register installations with cs (#4062)

* Logic to register installations with cs

* Clean up

* Casting to string

* Checking to see if this makes the test pass

* Added an extra null check

Co-authored-by: Piyush <piyush@codeitout.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Apeksha Bhosale <7846888+ApekshaBhosale@users.noreply.github.com>
2021-04-22 09:00:09 +05:30
Trisha Anand
04601b5bcb
Merge pull request #4071 from appsmithorg/release
Release Patch 2
2021-04-20 15:41:58 +05:30
Nidhi
963d1225dc
Reverting use of Mongo Listener since we aren't applying this yet (#4073)
* Added synchronization to encryption map

* Reverting listener for now
2021-04-20 13:58:59 +05:30
Trisha Anand
f1253074a8
Added null check for NPE handling in sanitize datasource (#4072) 2021-04-20 13:13:22 +05:30
Sumit Kumar
5f96642e73 Merge branch 'release' into master 2021-04-19 12:55:31 +05:30
Trisha Anand
eaa24ca894
[Bug Fix] : Fetch actions by id during refactor action name to solve IncorrectResultSizeDataAccessException for pages where duplicate action names exist (#4030)
* New dto for refactoring action name which includes actionId as well

* Refactor action name now also takes actionId as payload and fetches the action from db by id instead of name to solve for the scenario where the action names could be duplicated.

* Adding actionId to QP of action refactor API.

* WIP : test for asserting the bug fix

* WIP test

* Fixed the test case asserting refactoring works for an action when there are duplicate action names in the page.

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
2021-04-19 12:35:10 +05:30
Trisha Anand
4f8cf79041
[Bug fix] : Disallowing action creation with existing names from the page (#4015) 2021-04-16 16:13:03 +05:30
Abhijeet
6ea795e8a1
Autoscroll to invited organisation (#3945)
* Added organization slug to the invite Url, which is finally used by email template(#2359)

* Separate method to create email params. Welcome email url variable updated so as to be consistent with other email templates

* Unused enum emailType removed, importing of java.util.* removed as per suggestion
2021-04-15 16:46:46 +05:30
Trisha Anand
9b49308abe
Adding dependency relationship to plugins (#3997)
* Added dependencies to be added to dependencyMap on client to Postgres, MSSQL, MySQL and Mongo plugins

* Added Dependency config for API

* Fixed the test case
2021-04-15 11:36:41 +05:30
Shrikant Sharat Kandula
a259dd00ed
Fix internal server error on invalid header in curl command (#3931)
* Fix internal server error on invalid header in curl command

* Add tests for invalid header/method
2021-04-14 10:44:43 +05:30
Sumit Kumar
42573533cb fix NPE by adding null check conditional (#3989)
Fix NPE seen on Sentry by adding null check for result body
2021-04-13 21:37:56 +05:30
Sumit Kumar
b4e43798ab
fix NPE by adding null check conditional (#3989)
Fix NPE seen on Sentry by adding null check for result body
2021-04-13 19:58:40 +05:30
Nidhi
a24eb90091
Fixed escaped layout being used for update (#3968)
* Fixed escaped layout being used for update

* Few more cases of unescaped layout usage
2021-04-13 09:36:50 +05:30
Nidhi
4bddfa0a4e
Fixed curl import without valid tokens (#3933) 2021-04-09 14:03:53 +05:30
Sumit Kumar
9c8bce0415
Feature: return data types of returned data on query execution for better data display (#3914)
- Return data type list along with action execution result so that the data can be displayed in the correct format.
- Handles these three data types for now : table, json, raw.
  - If a plugin has already assigned the data type, then common handler is not used.
  - Mongo plugin assigns the data types in the plugin specific flow i.e. does not use the common data type parse / assign method.
- To address review comments:
  - added a new enum ActionResultDataType for data types. It is consumed by ParsedDataType. A list of ParsedDataType is returned by ActionExecutionResult
  - parsed data in parallel using streams.parallel().
2021-04-09 10:58:37 +05:30
Nidhi
4f68d5f472 Logging test failure 2021-04-08 19:53:48 +05:30
Nidhi
13a3e8f240 Applying AOP encryption 2021-04-08 16:58:45 +05:30
Sumit Kumar
41e44eed30
Feature: add title to action execution errors to improve user experience (#3872)
- add title to action execution errors to improve user experience
    - all errors in AppsmithPluginErrors
    - action execution related errors in AppsmithError : NO_CONFIGURATION_FOUND_IN_DATASOURCE, INVALID_ACTION, INVALID_DATASOURCE, INVALID_DATASOURCE_CONFIGURATION - as these are the likely errors in an action execution flow (excluding plugin specific flow) that might result from faulty action / datasource configuration by a user.
    - title is returned as part of ActionExecutionResult.
    - title is set in ActionExecutionResult on failure during action execution.
    - In response to review comment - added a new BaseException class, so that both AppsmithException and AppsmithPluginException extend this base class. Also, refactored code to introduce setErrorInfo() function in ActionExecutionResult class to set its attributes.
- Some unrelated cleanup:
    - catch PoolInitializationException for Postgres plugin and return AppsmithPuginException
    - catch MongoTimeoutException and return AppsmithPluginException
2021-04-08 09:49:05 +05:30
Trisha Anand
174ef284f0
[Bug Fix Improvement] : Table widget keys are unescaped after walking through the DSL (#3908)
* WIP : untested

* Minor refactoring

* Added test case to assert escaping and unescaping of the table widget primary column keys
2021-04-07 19:36:37 +05:30
Nidhi
927a6a3479
Annotation based encryption (#3610)
* Annotation set up

* Removed annotation uses

* Redundant condition

* Commented out logging, retained for implementation

* Handling for Collection and Map parameterized types

* Removed comments
2021-04-07 15:27:36 +05:30
Trisha Anand
4bf74f6434
Bug Fix : Escaping _id and _class from Table PrimaryColumn keys before storing the DSL (#3887)
* Bug Fix : Escaping _id and _class from primary column keys before storing the DSL

* Fixed the test case failures.

* Updated the replacement strings for _id and _class to include appsmith keyword
2021-04-07 13:21:18 +05:30
Sumit Kumar
3140e98146
modify hint message to include fix (#3829)
Modify hint message to include fix.
2021-04-01 17:10:30 +05:30
Shrikant Sharat Kandula
efec01344a
Clone explicitly set datasource for new users (#3793) 2021-04-01 12:44:44 +05:30
Nidhi
9f8cb59a04
Null handling for bad state in OAuth2 callback (#3810)
* Null handling for bad state in OAuth2 callback

* Handling null

* Another case for when state is present but not as expected
2021-04-01 10:41:11 +05:30
Trisha Anand
aab75bf304
Bug fix : App viewer inviting another app viewer would assign correct permissions to applications 2021-03-30 17:05:44 +05:30
Nidhi
683176fc48
Increased default limit for webclient payload (#3718)
* Increased default limit for webclient payload
2021-03-26 21:34:10 +05:30
Sumit Kumar
e347b61e53
Return hint on localhost url (#3611)
- Return hint for localhost URL on the following events:
Test datasource
Save datasource
Update REST API Url
Create datasource from REST API
When page gets loaded for first time.
- Hint message returned: "You may not able to access your localhost if Appsmith is running inside a docker container or on the cloud. Please check out Appsmith's documentation to understand more."
- It has been decided as part of actions pod meeting that these messages will not be persisted.
2021-03-26 15:42:34 +05:30
Trisha Anand
ed1a0b4045
Refactor the smart substitution code to extract common code at plugin interface level. (#3497) 2021-03-25 19:10:42 +05:30
Trisha Anand
c6e4f91ffb
[Bug fix] A lax search for presence of binding during save page to match client algorithm to reduce page save error (#3698)
* Lax mustache binding check added to match the client side check when client recognizes a field to have a dynamic binding. This would reduce/remove bad bindings from throwing a 400 during save page.

* Added a test to assert that update layout does not fail in case the binding is technically incorrect because part of the mustache's lie inside quotes. Since client has a lax way of finding a dynamic path, server also follows suite.
2021-03-25 16:00:45 +05:30
Trisha Anand
1a9a410c5e
Stringifying the binding name before setting in the error to ensure client can parse it correctly (#3689) 2021-03-25 12:36:56 +05:30
Shri
a18e569f7d
Fix data serialization in analytics (#3677)
* Serialize object fields before sending to analytics

* Push event when application is published
2021-03-23 17:13:02 +05:30
Sumit Kumar
38c5639542
Provide non client certificate based SSL support for Mysql, Mongo, Postgres plugins. (#3518)
- Provide non client certificate based SSL support for Mysql, Mongo, Postgres plugins.
- Added a new option default, apart from the the SSL mode types supported by the driver. Default means that go with whatever default configuration driver provides.
2021-03-19 15:03:56 +05:30
Nidhi
93d5a061e2
Added logs and analytics (#3622)
* Added logs and analytics

* Fix in error string

Co-authored-by: Shri <shrikant@appsmith.com>

* Review fixes :)

Co-authored-by: Shri <shrikant@appsmith.com>

Co-authored-by: Shri <shrikant@appsmith.com>
2021-03-18 21:48:13 +05:30
Shri
bb1d0059d3
Clear OAuth tokens for forked datasources (#3609)
* Clear OAuth tokens for forked datasources

* Fix datasource duplicate finder in light of oAuth tokens

* Fix potential NPE
2021-03-18 21:08:56 +05:30
Shri
cbd7828503
Add migration to remove template organization config (#3568) 2021-03-16 15:29:06 +05:30
Shri
e1fb1203b5
Application forking fixes and improvements (#3519)
* Clone only those datasources that are actually used

* Retry when cloning app causes a name class

* Search for an existing datasource before cloning

* Test deep matching of datasources

* Refactoring, since now the tests pass

* Allow forking of owning applications

* Don't limit datasource naming suffix number
2021-03-15 22:19:40 +05:30
Shrikant Sharat Kandula
3d6bd51556
Fix NPE in action execution analytics (#3541)
The NPE noticed is with the return value of `.getStatusCode`.
But this PR adds NPE guards to a few other potential cases.
2021-03-14 07:58:27 +05:30
Trisha Anand
217e36aaa9
Enrichment of analytics event for execute. (#3492)
* WIP : enrichment of analytics event for execute.

* Plugin level : Catch all exceptions and set request in the result
Server level : Adding new fields to analytics : `isSuccessfulExecution`, `statusCode`, `timeElapsed`

* Dont catch StaleConnectionException. Server handles the same.

* Removed class specification for onErrorResume in plugins since its supposed to catch all errors.
2021-03-11 15:40:07 +05:30
Shrikant Sharat Kandula
b12057ef73
Allow client to set layouts without id when creating a page (#3477)
* Allow client to set layouts without id when creating a page

* Mild refactoring

* Fix Layout action tests
2021-03-11 15:13:24 +05:30
Shrikant Sharat Kandula
1d683ad458
Fix recaptcha failing on signup when not configured (#3488) 2021-03-11 11:05:48 +05:30
Shrikant Sharat Kandula
65568a4e13
Add more devices in AppLayout options (#3451)
* Remove width and introduce more AppLayout type enums

* Fix: Adding min width to layout options.

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
2021-03-11 07:51:48 +05:30
Abhishek
0b4adf198d
Add recaptcha verification for user signup on the server (#3383)
Co-authored-by: Abhishek <abhishek.ak@bytedance.com>
2021-03-11 07:25:01 +05:30
Sumit Kumar
04e8acb763
Custom S3 service support (#3469)
- Provide support for non Amazon S3 service providers like Upcloud, Digital Ocean, Wasabi, DreamObjects and any other S3 compliant storage service provider.
- Change plugin label from "Amazon S3" to "S3"
2021-03-10 10:30:07 +05:30
Shrikant Sharat Kandula
bb9a9a307f
APIs for profile photos (#3260)
* Add API for uploading profile photos for current user

* Add delete and get APIs for profile photos

* Add test for uploading and deleting profile photo

* Added negative tests for upload profile photo API
2021-03-09 17:03:20 +05:30
Trisha Anand
38c0151e94
Changed order of message for easy grep in case of invalid dynamic binding path (#3436) 2021-03-08 16:05:05 +05:30
Trisha Anand
79164fde44
Only return request object in action execute if the action was executed in EDIT mode. (#3426) 2021-03-08 16:04:17 +05:30
Sumit Kumar
800d305dab
Gracefully handle the timeout overflow / out of expected range errors (#3411)
- Expect max value of timeout as 60000 ms.
- If value exceeds max value then add error message to the list of invalids. This list is returned to the client in response body.
- Detect integer overflow exception (Number format exception) and override the value to 60000 ms.
2021-03-05 17:09:29 +05:30
Trisha Anand
20ed017a58
In case of no mustache bindings are found in dynamic path list, throw invalid dynamic binding reference error. (#3394) 2021-03-04 15:35:46 +05:30
Trisha Anand
5e448b9331
DSL parsing : Catch index out of bound exception (#3364)
* In case index being referred does not exist, throw appropriate error during DSL parsing

* Fixing bad commit.
2021-03-03 18:51:35 +05:30
Trisha Anand
75b0986b92 Fixed the incorrect JSON string in INVALID_DYNAMIC_BINDING_REFERENCE appsmith error. 2021-03-03 18:22:42 +05:30
Trisha Anand
f49cc7b455
Added throwing a properly formatted error for client to consume when dynamic binding path list contains an invalid entry (#3343) 2021-03-03 17:47:35 +05:30
Trisha Anand
ca8be4c7f5
Db Migration : Delete unreferenced dynamic binding paths in actions (#3310)
* WIP compute if the dynamic binding path list is correct.

* Tested code for deleting the incorrect dynamic binding path list from actions.

* Added comments for code readability
2021-03-03 17:11:03 +05:30
Shrikant Sharat Kandula
9c50182f0e
API for forking of public applications (#3221)
* A barely working API for forking a public application

* Tests WIP

* Mild refactoring in tests

* Refactoring in test

* Not all applications are forkable
2021-03-03 15:45:47 +05:30
Trisha Anand
91e308665b
Requests preparation by plugins instead of ActionService (#3159)
* Added action request in S3 plugin.

* Added request data in Dynamo plugin

* Added request in Elastic Search.

* Request in Firestore.

* Request added in Mongo

* MsSQL request added.

* Added MySQL request.

* Added Postgres request.

* Added redis request.

* Redshift doen.

* Catching AppsmithPluginExceptions at the plugin level itself to ensure that the request gets passed on as part of the result.

* Fixed failing plugin test failures

* Fixed AmazonS3 test failures.

* WIP post analytics working

* WIP : Making the request data confirm to existing analytics request data format.

* Fixed the headers in the analytics body.

* Migrations S3, Postgres to the accepted format for request in analytics

* Updated S3 action to be the query

* Migration completed for all plugins for analytics.

* Removed the old analytics event. Now sending only the new one.

* Ensuring all data is captured in S3 plugin request in case of error.

* Minor editing of firestore to ensure that the errors get caught by the plugin itself.

* Fixed test cases in Amazon S3

* Incorporated review comments.
2021-03-02 10:58:46 +05:30
Shrikant Sharat Kandula
a1d027bb59
Save separate appLayout for edit/view and sync on publish (#3245) 2021-02-26 16:18:04 +05:30
Shrikant Sharat Kandula
5808620716
Add API for the signed in user to set their name (#3164)
* Add API for the signed in user to set their name

* Use the correct error in session handling
2021-02-26 14:48:20 +05:30
Shrikant Sharat Kandula
9f18aa2e69
Fix NPE in analytics on action execution (#3216) 2021-02-25 17:46:24 +05:30
Trisha Anand
42af1fa771
Only extract dynamic bindings from leaf nodes on update layout (#3210)
* Only extract dynamic bindings from leaf nodes.

* Minor code refactoring

* Moved to using generic Map type instead of LinkedHashMap
2021-02-25 15:56:45 +05:30
Sumit Kumar
63ff3c73fa
Fix execute on page load for api on app copy (#3150)
* first draft

* added fix without TC

* cleanup

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/NewActionServiceImpl.java

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/NewActionServiceImpl.java

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/NewActionServiceImpl.java

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* - add TC
- minor code refactor

* fix condition

* update clone page test

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2021-02-24 10:21:03 +05:30
Piyush
faea2f36ff
Add support for setting.json for pluginType DB (#3156) 2021-02-23 13:57:37 +05:30
Shrikant Sharat Kandula
9b58e683b5
Fix Spring deserialization routines failing at appLayout (#3155) 2021-02-23 12:32:55 +05:30
Nidhi
61af306110
Added null check for OAuth2 scopes(#3153) 2021-02-23 11:10:47 +05:30
Shrikant Sharat Kandula
15b8e0f590
Add appLayout field to Applications (#3144)
* Add `appLayout` field to Applications

* Fix NPE on clone
2021-02-22 19:21:13 +05:30
Trisha Anand
7ff80ea192
In case an action is created without plugin template being set, update doesn't set the property as well. (#3116) 2021-02-19 23:26:33 +05:30
Shrikant Sharat Kandula
a6be22e028
Add request body and some other details in action execution data point (#3096)
* Include request body in action execution data point

* Send analytics data point when analytics fails
2021-02-19 14:39:40 +05:30
Shrikant Sharat Kandula
6eb9f399a3
Add a boolean isHidden field for pages (#3090)
* Add a boolean `isHidden` field for pages

* Add `isHidden` when loading all pages of application
2021-02-18 19:23:15 +05:30
Trisha Anand
e5574c1945
Support Prepared Statements in Postgres (#2967)
* Pushing minor editor form changes to ensure that prepared statement could be turned off.

* Code refactor to do variable substitution in PluginExecutor instead of action service.

* WIP : Prepared Statement handling in psql plugin

* WIP Prepared Statements.

* Working version of prepared statements

* Quote trimming added for post preparing sql statements. Now the unprepared statements and prepared statements do not require edits.

* Fixed existing test cases failing.

* Code formatting.

* Super minor code cleanup.

* Added migration for the existing postgres actions.

* Fixed failing test cases in ActionServiceTest.

* Minor change in the text for turning on and off prepared statements in the postgres query pane.

* Added test cases for prepared statement.

* Some minor comments for code readability

* Moved Prepared Statement setting from Action Configuration to Plugin Specified Templates since this setting does not make sense for all the DB plugins.

* Added function level comments

* Update app/server/appsmith-interfaces/src/main/java/com/appsmith/external/helpers/SqlStringUtils.java

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Update app/server/appsmith-interfaces/src/main/java/com/appsmith/external/helpers/SqlStringUtils.java

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Incorporated review comments.

* Fixed compile time error.

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-02-18 18:33:27 +05:30
Trisha Anand
b565301afe
Datasource is given permission for a public app during create/update of a public action (#3086)
* Added test case to assert that new datasources and actions created post making an application public have the correct permissions for public execution.
2021-02-18 18:05:07 +05:30
Shrikant Sharat Kandula
2a2b55ceaf
Fix NPE on plugin specified templates (#3084) 2021-02-18 09:10:15 +05:30
Shrikant Sharat Kandula
6936a40361
Add more information for action execution (#3060)
* Add more information for action execution

* Add orgId and pageName to action execution data point
2021-02-18 08:30:56 +05:30
Piyush Mishra
74b013d909
Encode params toggle (#3006)
* Makes client side changes to support actionConfiguration.encodeParamsToggle setting.
* Add migration code.

Co-authored-by: Sumit Kumar <sumit@appsmith.com>
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-02-16 20:31:35 +05:30
Nidhi
afc329fd7b
Added grant type Authorization code to OAuth2 (#2992)
Co-authored-by: Piyush <piyush@codeitout.com>
2021-02-16 17:58:03 +05:30
Shrikant Sharat Kandula
3fd8db90bd
Consistent handling of signup configuration over FORM and OAUTH (#3013)
* Fix OAuth flow throwing 500 when signup is disabled

* Check for error code to identify signup disabled error

* Add consistent handling of allowed-domains for signing up

* Check for existence of valid email before checking domain
2021-02-12 19:48:07 +05:30
Shrikant Sharat Kandula
48b8bb9de1
Fix order of roles in share modal (#3017) 2021-02-12 16:37:34 +05:30
Nidhi
8823f9d407
Added client credentials grant type for OAuth2 (#2649)
* Added client credentials grant type for OAuth2

Co-authored-by: Piyush <piyush@codeitout.com>
2021-02-11 17:58:06 +05:30
Shrikant Sharat Kandula
8440d4e4e3
Allow app-viewers to invite others as app-viewers (#2961)
* Allow app-viewers to invite others as app-viewers

* Fix description for new permissions

* Migration for setting invite policy for app viewers
2021-02-11 16:33:35 +05:30
Sumit Kumar
2a7f7ba8c4
s3 plugin (#2735)
1. Integrate S3 plugin.
2021-02-10 15:26:01 +05:30
Shrikant Sharat Kandula
0861836db4
Fix bindings in Firestore plugin's where condition value (#2934) 2021-02-09 19:11:16 +05:30
Trisha Anand
af273c60d8
When fetching unpublished actions and unpublished pages, check if the undeployed version is not deleted before fetching. (#2792)
* When fetching unpublished actions and unpublished pages, check if the undeployed version is not deleted before fetching.

* Only add unpublished page deleted at check if the view mode is false (aka edit mode)

* 1. Update action repository to fetch only non deleted actions if fetching actions in edit mode.
2. Added test cases to assert re-using of deleted page and action names.
2021-02-09 12:57:10 +05:30
Trisha Anand
078870f7c9
Communicate action execute on load changes in update layout (#2825)
* 1. Update on load actions correctly
2. Send the changed actions with their changes as well as messages back to the client as part of the response.

* Added test case to assert that the action updates are correctly recorded in updateLayout.

* Code cleanup + added more comments for code readability

* Incorporated review comments.
2021-02-09 10:39:08 +05:30
Nidhi
973cd850e7
Modified documentation links for plugins (#2909)
* Modified documentation links for plugins

* Modified documentation links for plugins
2021-02-08 17:11:31 +05:30
Sumit Kumar
e6b77a1299
Stop logging some AppsmithPluginException to Sentry (#2351)
1. Move package  appsmith-interfaces/src/main/java/com/appsmith/external/pluginExceptions-> appsmith-interfaces/src/main/java/com/appsmith/external/exceptions/pluginExceptions
2. Move enum AppsmithErrorAction from appsmith-server/src/main/java/com/appsmith/server/exceptions/AppsmithError.java -> appsmith-interfaces/src/main/java/com/appsmith/external/exceptions/AppsmithErrorAction.java, so that both plugin exceptions and server exceptions could use the same enum.
3. Log exception based on the error action defined for each exception.
2021-02-04 15:24:30 +05:30
Shrikant Sharat Kandula
5c9f90fd59
Fix missing user name in first organization name (#2873) 2021-02-04 14:04:24 +05:30
Nikhil Nandagopal
8c5213b6fd
Merge pull request #2851 from appsmithorg/fix/docs-link
Fix/docs link
2021-02-03 21:31:33 +05:30
Nikhil Nandagopal
486a9da8dd updated all doc links 2021-02-03 20:45:16 +05:30
Shrikant Sharat Kandula
f950a9352b
Fix datasource hostnames being saved with spaces (#2844) 2021-02-03 16:46:09 +05:30
Shrikant Sharat Kandula
e9ba40f1f4
Analytics data point on action execution (#2740)
* Add analytics data point on action execution

* Include application details in action exec data point

* Only send action execution event on cloud

* Analytics is auto-disabled on self-hosted setups

* Move event name to AnalyticsEvents enum

* Move analytics Mono to separate method

* Use a common function to enqueue analytics message

* Provide analytics properties from caller method

* Use consistent casing in event names for analytics
2021-02-02 20:24:27 +05:30
Nidhi
c83fb70b95
Fixed ExecuteOnLoad not getting set for onPageLoad actions (#2801)
* Piped onpageload update function

* Added tests
2021-02-02 10:48:51 +05:30
Tim Dillon
91d5eb5860
Fix user email duplicated as name (#2787) 2021-02-01 14:51:44 +05:30
Nidhi
c17a2ea536
Modified error displayed to user on generic bad request (#2583)
* Modified error displayed to user on generic bad request

* Separate null check for cURL import
2021-01-28 12:14:34 +05:30
Shrikant Sharat Kandula
a6d76d1672
Fix organization slug computation clashes (#2725)
* Fix organization slug computation clashes

* Handle case where number-less slug is available
2021-01-27 14:35:43 +05:30
Shrikant Sharat Kandula
6bf2be65c0
Don't attempt to get structure for invalid datasources (#2730) 2021-01-27 13:44:15 +05:30
Trisha Anand
9e0f36a6f2
Improve Server thrown Error Messages' language (#2705)
* Improve Error Messages

* Added naming convention expansion for action name in the error

* Fixed failing test case assertion.

* Minor formatting.
2021-01-25 18:50:32 +05:30
Trisha Anand
3776e82fb8
Scheduling of parallel tasks implementation for on-page load actions (#2667)
* Proof of concept code which calculates the on load page actions.

* Refactored the field names introduced in Layout. Added a new field to keep a track of direct action names used in dynamic bindings in the DSL.

* Untested compute on on page load actions completed.

* Working page load actions computation.
TODO : Update the tests for correctness.

* Added fix for BFS starting from root nodes instead of arbitrary nodes.
Fixed a test case to assert for correct page load actions.

* Fixed the bug where the ids of the actions were not getting set in the layout. Also asserting the same in the test case for catching the future breaks.

* Minor refactor of function name to clear its purpose without reading the code.

* Incorporated review comments.

* Added conditional checks for unpublished action deleted and circular dependency of actions depending on each other.
2021-01-25 16:54:45 +05:30
Shrikant Sharat Kandula
468e84aabb
Fix calls to release notes from cloud instances (#2680) 2021-01-22 14:25:24 +05:30
Trisha Anand
48cfa2cea0
In case an action has been deleted in unpublished state, dont return it to the user in edit mode. (#2678) 2021-01-22 13:19:42 +05:30
Shrikant Sharat Kandula
6b406be39e
Fetch release notes for caching every two hours (#2657)
* Fetch release notes for caching every two hours

* Revert unrelated changes in Ping class
2021-01-21 11:59:35 +05:30
Shrikant Sharat Kandula
52c689efee
Add a migration to fix any remembered versions (#2651)
* Add a migration to fix any remembered versions

* Drop the userData collection instead
2021-01-21 07:39:41 +05:30
Shrikant Sharat Kandula
9ead9af5f6
Respond with empty string when no new versions (#2618) 2021-01-19 11:37:31 +05:30
Shrikant Sharat Kandula
f6845486d2
Handle snapshot versions as special (#2617)
This is needed for remembering when a user has viewed
release notes. Snapshot versions aren't a tagged marker
on the version timeline so aren't useful for this purpose.
2021-01-19 08:24:56 +05:30
Shrikant Sharat Kandula
3dc6f1107b
Send repo information when fetching release notes (#2615) 2021-01-18 21:21:22 +05:30
Shrikant Sharat Kandula
04d4812fc9
Fix getting release notes always resulting empty (#2609) 2021-01-18 15:21:50 +05:30
Nidhi
e6a0b00a25
Added Oauth2 functionality for REST APIs (#2509)
* Added Oauth2 functionality for REST APIs

* Encrypted response

* Missed file

* Review comments and tests

* Removed broken test
2021-01-15 16:41:13 +05:30
Trisha Anand
91b8922f1c
In case cs service returns an error, stop processing release notes and resume with the caller flow. (#2550)
* In case cs service returns an error, stop processing release notes and resume with the caller flow.

* In case the server was unable to exchange messages with the CS server, bail out of further processing gracefully since this is not a must have but rather a good to have feature.
2021-01-13 14:30:23 +05:30
Nidhi
9ea5c884e1
Null check for empty pagination next url (#2546) 2021-01-13 12:12:29 +05:30
Trisha Anand
c24bc826e0
When an application name is changed, the isPublic flag is reset to false. (#2539) 2021-01-12 20:06:33 +05:30
Shrikant Sharat Kandula
c6c128270c
Include version information when building Docker images for server and client (#2200)
* Include version information in backend builds

* Enable manual trigger of server workflow

* Add a dummy input field for manual trigger

* Fix secret checking in github actions

* Disable cron scheduling of sync job

* Build docker image on pushing a version tag

* Fix duplicated id and invalid id in release workflow

* Don't try to login to Docker

* Avoid download progress outputs from Maven

* Add version information for building client

* Calculate version number only once

* Enable push to DockerHub after building images

* Use Docker username from GitHub secrets

* Fix Docker username in tags when building image

* Use different secret for org name

* Minor refactoring in server workflow

* Update client build workflow to use version

* Enable manual triggering of client workflow

* Set snapshot version for server builds

* Push to docker for all branches (temp)

* Undo temp change to push all branches to DockerHub

* Use Docker org from secrets in client.yml

* Fix missing version reference in client.yml

* Remove debug command in dockerfile

* Save release notes in a resource file in Docker image

* Fix query serialization to get release notes

* Get releases of current repo instead of hard-coded repo

* Fix variable quoting for repo variables

* Exclude draft and prerelease nodes from image

* Fix call to any in release notes processor

* Fix syntax error in release notes script

* Implement API to get new release count and info

* Add missing ReleaseNotes component

* Have the release workflow run after a release is created

* Build server after generating release notes

* Change release trigger to "released"

* Change release trigger to "published"

* Change release trigger to released, edited and deleted

* Use JS script to get release notes, take 1

* Filter drafts and prereleases in script

* Fix syntax error in ES6

* Write release notes to file

* Create parent directory before writing release notes

* Log cwd in release notes script

* Log pwd along with release-notes content

* Handle case where working directory is incorrect

* Remove shell based release notes generator

* Don't show error when Sentry config is missing

* Check for sentry auth token to enable Sentry

* Carry build's exit code over to CI

* Mark out build result and add a note about it

* Add a small test to verify new versions computation

* Remove incorrect test assertion

* Remove generation of release notes file

* Connect to cloud services to fetch release notes data

* Fix missing runner for test class

* Handle missing cloud_services base URL

* Fix test failures due to missing mocks

* Enable sync-ee cron job

* Revert build.sh as there's no real change

* Add API to update release notes viewed version for users

* Fix prettier line-length errors

* Create UserData model for info unrelated to auth

* Fix field name calls

* Ensure we have a userId before setting userData

* Add tests for setting version number in UserData

* Include instanceId when fetching release notes
2021-01-12 18:15:15 +05:30
Shrikant Sharat Kandula
4fc6a7e763
Disable welcome email with an environment variable (#2527) 2021-01-12 16:50:26 +05:30
Shrikant Sharat Kandula
e4ba991114
Remove unused API endpoints for invite confirmation (#2532) 2021-01-12 16:20:48 +05:30
Trisha Anand
88e8723f37
Adding id and pluginType correctly for a user set on page load action (non referenced in the DSL) (#2523) 2021-01-12 14:39:53 +05:30
Shrikant Sharat Kandula
23cffc208f
Allow signup for admins, even if publicly disabled (#2520)
* Allow signup for admins, even if publicly disabled

* Use Set for admin email addresses

* Set two admin emails in test
2021-01-12 14:13:44 +05:30
Shrikant Sharat Kandula
9cd9edd3fa
Disable uninvited signups via environment variable (#2512)
* Disable signup API via environment variable

* Allow signup for invited users, even if disabled publicly

* Add test for signup when signup is disabled

* Run invite flow tests when signup is disabled

* Revert status annotation in signup API endpoint

* Remove unused tests on invite flow

* Change signup disabled error message
2021-01-11 20:10:50 +05:30
Nidhi
1fa7d46845
Fixed unreferenced actions not being triggered for execute on load (#2434)
* Fixed unreferenced actions not being triggered for execute on load

* WIP : Have to commit some minor cosmetic code formatting changes

* Comments and fix for action ordering

* modified test case

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2021-01-11 12:18:07 +05:30
Trisha Anand
527bac0827
Adding action execution time and logging the same (#2473) 2021-01-07 13:49:50 +05:30
Sumit Kumar
4748014cee
Redshift plugin (#2440)
* introduce redshift plugin
2021-01-06 17:51:07 +05:30
Trisha Anand
bd011c45ab
Removed unused organization setting, setting class, and query class. (#2464) 2021-01-06 17:30:09 +05:30
Trisha Anand
d5074ee7f7
Increased logs to debug future connection leaks. (#2437)
* Increased logs to debug future connection leaks.

* Fetch a connection from the pool only if a query exists.

* Minor comment added.

* Minor rewrite

* Code formatting.

* Update app/server/appsmith-plugins/postgresPlugin/src/main/java/com/external/plugins/PostgresPlugin.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Added hikari cp pool stats to get database structure function as well.

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-01-05 15:34:55 +05:30
Trisha Anand
d4640e01a2
Invite users once triggered should not be cancellable. (#2401)
* Invite users once triggered should not be cancellable.
2020-12-30 16:50:01 +05:30
Trisha Anand
712f41db92
Reducing the probability of getting pages out of order (Expected order is the order in which the pages were created and added to the application). This should : (#2391)
1. Get rid of cypress test failures which asserts a certain order till the cypress test case is fixed and unblocks the frontend team.
2. Uses a bulk API to fetch all the pages instead of fetching each page sequentially over different network calls with the database.
2020-12-29 19:10:01 +05:30
Trisha Anand
ea366b1d29 Fixed NPE in database migration 2020-12-29 17:06:30 +05:30
Trisha Anand
735a4398b2
Added a migration to old rest api datasources which adds the new mandatory key isSendSessionEnabled with value N (#2388) 2020-12-29 16:29:28 +05:30
Trisha Anand
ea0f9c159c
[Bug] Multi page applications return only a single page when fetching pages per application (#2383)
* Zipping flux with mono leads to mono not getting repeated and only the first emitted value of flux is processed further. This is leading to only a single page getting emitted in a multi page application.

* Added a test case to assert this for a multi page application
2020-12-29 13:38:47 +05:30
Trisha Anand
6210b9a0c0
All newly created applications now have a default published state. (#2309)
* All newly created applications now have a default published state.

* Added a test case to assert a new application comes up with default published states for both application and the default page.

* Function name changed.

* When trying to fetch a published version of a page when the page has not been published, throw a 404.

* WIP : Not working
2020-12-28 10:30:43 +05:30
Shrikant Sharat Kandula
d5e0fb18d8
Add migration to set isEncrypted field where missing (#2332) 2020-12-23 15:35:45 +05:30
Sumit Kumar
53a6160139
Revert "Redshift plugin (#2112)" (#2314)
This reverts commit 708ca7fedf.
2020-12-22 16:59:18 +05:30
Sumit Kumar
708ca7fedf
Redshift plugin (#2112)
1. Add new plugin to connect to AWS Redshift cluster and run query.
2. Add unit test cases.
2020-12-22 15:35:25 +05:30
Shrikant Sharat Kandula
cfcd7aa0bb
Fix Firestore datasources not encrypting secret key JSON when editing (#2296)
* Fix encrypted field not being ignored in JSON

* Don't mask error in decrypting

* Revert masking of error in decrypting
2020-12-21 17:43:15 +05:30
Nidhi
e3cf285d1e
Fixed encryption related bugs for empty/new datasource (#2287) 2020-12-21 10:41:57 +05:30
Shrikant Sharat Kandula
fdc4f7b200
Fix invalid templates and API breaking on invalid templates (#2286) 2020-12-19 13:00:24 +05:30
Shrikant Sharat Kandula
5e04ca5c9d
Add ability to configure order of templates of plugins (#2279) 2020-12-18 20:45:08 +05:30
Nidhi
5a36d17f7a
Fixed encryption related bugs for empty/new datasource (#2272) 2020-12-18 16:13:01 +05:30
Nidhi
a00c144e85
Subclassing authentication (#2215)
* Sublcassing authentication

* Removed TODO

* Review changes
2020-12-17 21:38:52 +05:30
Nidhi
9a9feff678
Reset execute on page load for new actions (copied or otherwise) (#2162) 2020-12-11 14:33:07 +05:30
Trisha Anand
74342f8598
Adding hikariCP for postgres (#2130) 2020-12-10 21:08:02 +05:30
Arpit Mohan
85d958c2c0
[CodeFactor] Apply automated fixes (#2131)
Co-authored-by: codefactor-io <support@codefactor.io>
2020-12-10 18:44:31 +05:30
Shrikant Sharat Kandula
4d24c8614f
Set random icons and colors for apps that are missing them (#2083) 2020-12-08 15:41:40 +05:30
Arpit Mohan
9d7a9d4aaf
Modifying the text for the roles in the share modal (#2045) 2020-12-07 16:16:43 +05:30
Trisha Anand
b8b24604a6
[Bug] Update of an action leads to userSetOnLoad getting reset. (#2023)
* Update of an action leads to userSetOnLoad getting reset.

* Added test case to assert the same.
2020-12-04 13:07:34 +05:30
Shrikant Sharat Kandula
4a57a739b6
Render templates directly without Mustache (#2010)
* Render templates directly without Mustache

* Remove an unused variable
2020-12-03 14:38:31 +05:30
Shrikant Sharat Kandula
74cd362057
Firestore Integration (#1799)
* Adding the skeleton for Firestore integration

* Adding the datasource & query editor forms

Also adding the database changelog for the firestore plugin

Commenting out the firestore.close() connection because that causes issues with multiple Firestore tenants running in the same JVM.

* Adding the code for fetching the structure of collections from Firestore

* Use single document path field for Firestore

* Fix potential NPE when datasource destroy timeouts

* Work in progress on collection level ops for Firestore

* Get documents in a collection now works

* Add collection level querying support

* Mild refactoring

* Fix NPE when some fields are missing

* Hide clientJSON as a password field for Firestore

* Make collection level querying reactive

* Make reactive

* Validate before connecting

* Add tests for all supported methods in Firestore

* Fix forms for Firestore with hidden fields

* Hide limit and order by fields when not needed

* Restore log entry deleted by mistake

* Use S3 URL for Firestore/Firebase logo

* Add comments detailing why some code is commented

* Make parsing JSON reactive and fix subscribe calls

* Fix reactive scheduler

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-11-23 18:42:33 +05:30
Trisha Anand
dc7a375543
Making postgres plugin blocking statements run on elastic threadpool. (#1821)
* Making postgres plugin blocking statements run on elastic threadpool.

* Moved the blocking calls to check for the connection validity, etc. also inside the Mono.fromCallable
2020-11-23 11:27:52 +05:30
Trisha Anand
c2d1ac973c
Adding thread name to the context of logs to allow for the thread names to be printed for each log. (#1824) 2020-11-23 10:45:15 +05:30
Trisha Anand
882df291d7
[Bug Fix] Indices not working for fetching actions during update layout (#1813)
Instead of using compound index, using single indices to ensure that both fetch actions by app id (during load of actions in edit/view mode) and fetch actions by page id (during update layout) are indexed queries.
2020-11-20 13:30:17 +05:30
Trisha Anand
63fe27fae1
[Bug Fix] : Clone Application creates corrupted clone when interrupted. (#1800)
* Doing a deep copy during clone application instead of updating the original application which may have been causing a concurrency bug.

* Ensuring that once the clone application flow is triggered, the flow completes eventually even if the client cancels the request before completion.

* Cloned application would not be public.

* Added parametrized Application constructor

* Removed lombok all args constructor

* Optimized import

* Incorporated review comments :
1. Updated the constructor for creating the application
2. Added a test case to assert that if during cloning of an application the flow gets cancelled, the cloning would still complete and ensure that the application created is sane.
2020-11-20 10:55:59 +05:30
Sumit Kumar
b03e815952
Change Sentry log 'environment' tag value. (#1789)
* Change Sentry log 'environment' tag value.

1. Change Sentry log 'environment' tag value to 'Properties' from 'properties'.
2020-11-19 17:29:48 +05:30
Arpit Mohan
9772d64c5b
Disable instance ping check when the disableTelemetry flag is set (#1776)
Also adding the APPSMITH_SEGMENT_CE_KEY as a build arg to the server Dockerfile. This will be used to set the environment variable in the Docker image itself.
2020-11-19 08:54:03 +05:30
Nidhi
941be8c58d
Fixed check for incorrect dynamic bindings (#1775)
* Fixed check for incorrect dynamic bindings
2020-11-18 14:25:55 +05:30
Shrikant Sharat Kandula
f36adeb6b5
Fix #1766: cURL parser eats backslashes in single-quotes (#1768) 2020-11-18 11:20:23 +05:30
Trisha Anand
fc3197b78f
Email sending is now non-blocking. The blocking code for email sending is triggered and then immediately returned. (#1762) 2020-11-18 00:31:39 +05:30
Arpit Mohan
c3a44651f2
Adding null check for dynamic binding path list (#1752)
* Adding null check for dynamic binding path list.

* Increased timeout duration for failing test

Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
2020-11-17 15:38:48 +05:30
Trisha Anand
6ac04d8a9e
Added SLA bucket for metric evaluation for 1 second (#1740) 2020-11-17 12:47:49 +05:30
Nidhi
9de085f264
Switched to using dynamicBindingPathList for generic scan, supports DB queries and nested structures
* Switched to using dynamicBindingPathList for generic scan
2020-11-17 11:26:08 +05:30
Trisha Anand
a722b08002
Adding index for unpublishedAction.pageId to bring down the number of documents fetched in mongo db query during update layouts' fetching actions on page load. (#1739) 2020-11-16 18:59:04 +05:30
Sumit Kumar
2dc2615311
Replace Rollbar with Sentry (#1606)
* Replace Rollbar with Sentry

1. Log exceptions using Sentry instead of Rollbar.
2. Remove all Rollbar infra.
2020-11-10 09:59:10 +05:30
Nidhi
1741e61ba0
Added user roles list to application fetcher (#1624)
* Added user roles list to application fetcher

* Fixed blanket import
2020-11-09 11:54:30 +05:30
Nidhi
62e4e28c8e
Fixed upload logo payload limit and added delete logo API (#1574)
Also changed name of default organization to xyz's apps
2020-11-09 07:52:08 +05:30
Trisha Anand
24582a2e58
Adding server side performance tooling using spring metrics. (#1562)
* Experimenting with spring metrics, prometheus

* Added prometheus config in application.properties.

* Added a few more configurations for spring metrics to improve performance tooling.

* Added basic authentication to allow prometheus to scrape our monitoring data in an authenticated fashion.

* Only exposing prometheus end point at this junction instead of other metric endpoints as well.

* Fixed test case which failed because of actuator instantiating bean.
2020-11-05 14:33:40 +05:30
Sumit Kumar
6db7101662
Report selective errors to rollbar. (#1516)
* Report selective errors to rollbar.

1. Assign an action attribute to each AppsmithError enum item. Take action based on the action attribute.

* Fixing the condition for organization name being empty

* Report selective errors to rollbar.

1. Assign an action attribute to each AppsmithError enum item. Take action based on the action attribute.

Co-authored-by: Sumit Kumar <sumitsum@Sumits-MacBook-Pro.local>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-11-04 17:32:43 +05:30
Nidhi
fc4fca8bf0
Added fallback email to new organization from user email (#1536) 2020-11-04 12:57:17 +05:30
Nidhi
c7efe55c9c
Fixed timeout error message, added new type of error for plugin timeout (#1519)
* Fixed timeout error message, added new type of error for plugin timeouts

* Switched error code and added test for a secondary StaleConnectionException
2020-11-04 12:56:52 +05:30
Trisha Anand
936ddc4fa0
Added indexes on NewPage and NewAction. Also made changes to the sorting order of actions when read in view and edit mode. (#1527) 2020-11-03 13:15:51 +05:30
Arpit Mohan
d087b8152d Fixing the condition for organization name being empty 2020-11-03 07:58:22 +05:30
Dmitriy Danilov
26da9ce60b
fix(organization-service): add check that organization is not empty (#1120)
Fixes ##774
2020-11-02 20:35:12 +05:30
imgbot[bot]
f5924c6895
[ImgBot] Optimize images (#1513)
*Total -- 1,942.96kb -> 1,638.83kb (15.65%)

/app/client/src/assets/icons/header/save-loading.gif -- 14.17kb -> 5.67kb (59.99%)
/app/client/src/assets/images/Postman.png -- 10.34kb -> 4.63kb (55.24%)
/app/client/src/assets/images/Google.png -- 11.18kb -> 5.62kb (49.76%)
/static/appsmith_logo_primary.png -- 8.02kb -> 4.06kb (49.34%)
/app/client/src/assets/images/appsmith_logo.png -- 8.02kb -> 4.06kb (49.34%)
/static/logo.png -- 13.20kb -> 7.77kb (41.11%)
/app/client/src/assets/images/no_image.png -- 4.94kb -> 2.97kb (39.97%)
/app/client/src/assets/images/query-image-outline.png -- 1.65kb -> 1.01kb (38.71%)
/app/client/src/assets/images/404-image.png -- 141.37kb -> 94.81kb (32.93%)
/app/server/appsmith-server/src/test/resources/test_assets/OrganizationServiceTest/my_organization_logo.png -- 1.77kb -> 1.20kb (32.41%)
/app/client/src/assets/images/appsmith_logo_white.png -- 1.88kb -> 1.29kb (31.17%)
/app/client/src/assets/icons/control/play-icon.png -- 2.00kb -> 1.39kb (30.15%)
/Query.png -- 219.82kb -> 155.18kb (29.41%)
/app/client/src/assets/images/Github.png -- 4.17kb -> 2.94kb (29.36%)
/API.png -- 332.87kb -> 239.07kb (28.18%)
/static/logo-no-padding.png -- 17.63kb -> 12.84kb (27.16%)
/app/client/src/assets/images/Curl.png -- 40.68kb -> 32.55kb (19.99%)
/app/client/src/assets/icons/ads/logout.svg -- 0.94kb -> 0.76kb (19.38%)
/app/client/src/assets/icons/menu/datasource-column.svg -- 0.64kb -> 0.52kb (19.15%)
/static/API2.png -- 167.58kb -> 140.36kb (16.24%)
/static/Query2.png -- 118.59kb -> 102.85kb (13.27%)
/app/client/src/assets/icons/ads/context-menu.svg -- 0.52kb -> 0.45kb (12.99%)
/app/client/src/assets/icons/help/github-icon.svg -- 2.63kb -> 2.34kb (10.85%)
/app/client/src/assets/icons/ads/search.svg -- 0.26kb -> 0.25kb (3.73%)
/app/client/src/assets/icons/widget/slash.svg -- 0.19kb -> 0.18kb (3.59%)
/app/client/src/assets/icons/widget/plus.svg -- 0.30kb -> 0.29kb (3.58%)
/app/client/src/assets/icons/widget/modal.svg -- 0.20kb -> 0.19kb (2.99%)
/app/client/src/assets/icons/ads/frame.svg -- 0.50kb -> 0.48kb (2.96%)
/app/client/src/assets/icons/menu/explorer.svg -- 0.19kb -> 0.18kb (2.11%)
/app/client/src/assets/icons/control/lightning.svg -- 0.23kb -> 0.23kb (2.1%)
/app/client/src/assets/icons/ads/product.svg -- 0.34kb -> 0.33kb (2.03%)
/app/client/src/assets/icons/widget/container.svg -- 0.20kb -> 0.19kb (1.99%)
/app/client/src/assets/images/placeholder-image.svg -- 0.15kb -> 0.14kb (1.99%)
/static/Share5.png -- 143.35kb -> 140.55kb (1.95%)
/app/client/src/assets/icons/form/info-outline.svg -- 1.77kb -> 1.73kb (1.93%)
/app/client/src/assets/icons/ads/file.svg -- 0.36kb -> 0.35kb (1.89%)
/app/client/src/assets/icons/ads/success.svg -- 0.26kb -> 0.25kb (1.88%)
/app/client/src/assets/icons/widget/input.svg -- 0.32kb -> 0.31kb (1.84%)
/app/client/src/assets/icons/ads/create-new.svg -- 0.23kb -> 0.22kb (1.73%)
/app/client/src/assets/icons/ads/book.svg -- 0.52kb -> 0.51kb (1.69%)
/app/client/src/assets/icons/control/email.svg -- 0.17kb -> 0.17kb (1.69%)
/app/client/src/assets/icons/ads/down_arrow.svg -- 0.18kb -> 0.18kb (1.63%)
/app/client/src/assets/icons/ads/upper_arrow.svg -- 0.18kb -> 0.18kb (1.63%)
/app/client/src/assets/icons/ads/bag.svg -- 0.42kb -> 0.42kb (1.61%)
/app/client/src/assets/icons/control/compact.svg -- 0.55kb -> 0.54kb (1.59%)
/app/client/src/assets/icons/help/openlink.svg -- 0.70kb -> 0.69kb (1.53%)
/app/client/src/assets/icons/help/document.svg -- 0.80kb -> 0.79kb (1.47%)
/app/client/src/assets/images/logo.svg -- 2.61kb -> 2.57kb (1.46%)
/app/client/src/assets/icons/ads/manage.svg -- 0.27kb -> 0.27kb (1.42%)
/app/client/src/assets/icons/ads/error.svg -- 0.35kb -> 0.34kb (1.4%)
/app/client/src/assets/icons/ads/view-all.svg -- 0.21kb -> 0.21kb (1.39%)
/app/client/src/assets/icons/control/pick-location-initial.svg -- 0.50kb -> 0.49kb (1.38%)
/app/client/src/assets/icons/menu/storage.svg -- 0.21kb -> 0.21kb (1.36%)
/app/client/src/assets/icons/ads/calender.svg -- 0.51kb -> 0.50kb (1.35%)
/app/client/src/assets/icons/menu/widgets-colored.svg -- 0.22kb -> 0.22kb (1.32%)
/app/client/src/assets/icons/control/input.svg -- 0.31kb -> 0.30kb (1.27%)
/app/client/src/assets/icons/header/share-white.svg -- 0.47kb -> 0.46kb (1.26%)
/app/client/src/assets/icons/control/pick-location-onclick.svg -- 0.48kb -> 0.48kb (1.21%)
/app/client/src/assets/icons/menu/datasource-table.svg -- 0.25kb -> 0.24kb (1.2%)
/app/client/src/assets/icons/form/add-new.svg -- 0.34kb -> 0.34kb (1.15%)
/app/client/src/assets/icons/ads/camera.svg -- 0.86kb -> 0.85kb (1.14%)
/app/client/src/assets/icons/widget/image.svg -- 0.35kb -> 0.35kb (1.11%)
/app/client/src/assets/icons/ads/shopper.svg -- 0.62kb -> 0.61kb (1.11%)
/app/client/src/assets/icons/control/sort-icon.svg -- 0.27kb -> 0.27kb (1.09%)
/app/client/src/assets/icons/menu/pages.svg -- 0.37kb -> 0.36kb (1.07%)
/app/client/src/assets/icons/ads/delete.svg -- 0.28kb -> 0.27kb (1.06%)
/app/client/src/assets/icons/menu/page.svg -- 0.37kb -> 0.37kb (1.06%)
/app/client/src/assets/icons/ads/workspace.svg -- 0.28kb -> 0.28kb (1.05%)
/app/client/src/assets/icons/control/download-table.svg -- 0.47kb -> 0.47kb (1.03%)
/app/client/src/assets/icons/control/help.svg -- 0.47kb -> 0.47kb (1.03%)
/app/client/src/assets/icons/control/close.svg -- 0.29kb -> 0.29kb (1.01%)
/app/client/src/assets/icons/control/move.svg -- 0.39kb -> 0.39kb (1%)
/app/client/src/assets/icons/ads/general.svg -- 0.29kb -> 0.29kb (1%)
/app/client/src/assets/icons/ads/duplicate.svg -- 0.30kb -> 0.30kb (0.96%)
/app/client/src/assets/icons/control/edit-white.svg -- 0.41kb -> 0.40kb (0.96%)
/app/client/src/assets/icons/control/view.svg -- 0.32kb -> 0.32kb (0.92%)
/app/client/src/assets/icons/header/feedback.svg -- 0.43kb -> 0.42kb (0.91%)
/app/client/src/assets/icons/control/remove.svg -- 0.33kb -> 0.33kb (0.89%)
/app/client/src/assets/icons/ads/heart.svg -- 0.79kb -> 0.79kb (0.86%)
/app/client/src/assets/icons/control/more-vertical.svg -- 1.02kb -> 1.01kb (0.86%)
/app/client/src/assets/icons/widget/rich-text.svg -- 1.60kb -> 1.58kb (0.86%)
/app/client/src/assets/icons/control/info.svg -- 0.34kb -> 0.34kb (0.85%)
/app/client/src/assets/icons/control/draggable.svg -- 0.47kb -> 0.47kb (0.83%)
/app/client/src/assets/images/API.svg -- 4.92kb -> 4.88kb (0.81%)
/app/client/src/assets/icons/widget/radio.svg -- 0.50kb -> 0.49kb (0.79%)
/app/client/src/assets/icons/ads/share.svg -- 0.37kb -> 0.37kb (0.79%)
/app/client/src/assets/images/EditPen.svg -- 0.38kb -> 0.37kb (0.78%)
/app/client/src/assets/icons/widget/collapse.svg -- 0.50kb -> 0.50kb (0.78%)
/app/client/src/assets/icons/control/edit.svg -- 0.65kb -> 0.65kb (0.75%)
/app/client/src/assets/icons/ads/user.svg -- 0.54kb -> 0.53kb (0.73%)
/app/client/src/assets/icons/widget/checkbox.svg -- 0.54kb -> 0.53kb (0.73%)
/app/client/src/assets/icons/ads/edit.svg -- 0.40kb -> 0.40kb (0.73%)
/app/client/src/assets/icons/control/collapse.svg -- 0.55kb -> 0.54kb (0.71%)
/app/client/src/assets/icons/menu/queries.svg -- 0.41kb -> 0.41kb (0.71%)
/app/client/src/assets/icons/ads/close.svg -- 0.42kb -> 0.42kb (0.7%)
/app/client/src/assets/images/NoSearchResult.svg -- 8.61kb -> 8.55kb (0.69%)
/app/client/src/assets/icons/widget/chart.svg -- 0.43kb -> 0.43kb (0.68%)
/app/client/src/assets/icons/control/decrease.svg -- 0.45kb -> 0.45kb (0.65%)
/app/client/src/assets/icons/menu/api.svg -- 1.51kb -> 1.50kb (0.65%)
/app/client/src/assets/icons/widget/filepicker.svg -- 0.61kb -> 0.60kb (0.64%)
/app/client/src/assets/icons/ads/launch.svg -- 0.61kb -> 0.61kb (0.64%)
/app/client/src/assets/icons/menu/homepage.svg -- 0.92kb -> 0.92kb (0.64%)
/app/client/src/assets/icons/control/launch.svg -- 0.62kb -> 0.61kb (0.63%)
/app/client/src/assets/icons/control/pick-location-selected.svg -- 0.48kb -> 0.48kb (0.61%)
/app/client/src/assets/icons/widget/video.svg -- 0.49kb -> 0.49kb (0.6%)
/app/client/src/assets/icons/control/currency.svg -- 0.50kb -> 0.49kb (0.59%)
/app/client/src/assets/icons/control/filter-icon.svg -- 0.84kb -> 0.84kb (0.58%)
/app/client/src/assets/icons/control/search.svg -- 0.55kb -> 0.54kb (0.54%)
/app/client/src/assets/icons/control/zoomout.svg -- 0.55kb -> 0.55kb (0.53%)
/app/client/src/assets/icons/form/lock.svg -- 0.56kb -> 0.56kb (0.52%)
/app/client/src/assets/icons/control/multiline.svg -- 1.51kb -> 1.50kb (0.52%)
/app/client/src/assets/icons/ads/flight.svg -- 1.33kb -> 1.32kb (0.51%)
/app/client/src/assets/icons/control/pick-my-location.svg -- 1.16kb -> 1.16kb (0.5%)
/app/client/src/assets/icons/ads/chat.svg -- 1.36kb -> 1.35kb (0.5%)
/app/client/src/assets/icons/widget/table.svg -- 0.78kb -> 0.78kb (0.5%)
/app/client/src/assets/icons/control/delete.svg -- 0.59kb -> 0.59kb (0.5%)
/app/client/src/assets/icons/control/phone.svg -- 0.59kb -> 0.59kb (0.5%)
/app/client/src/assets/icons/control/password.svg -- 1.97kb -> 1.96kb (0.49%)
/app/client/src/assets/icons/widget/alert.svg -- 0.81kb -> 0.81kb (0.48%)
/app/client/src/assets/icons/control/right-align.svg -- 0.62kb -> 0.61kb (0.48%)
/app/client/src/assets/icons/ads/invite-users.svg -- 0.64kb -> 0.64kb (0.46%)
/app/client/src/assets/icons/widget/tabs.svg -- 0.86kb -> 0.85kb (0.46%)
/app/client/src/assets/icons/control/columns-visibility.svg -- 1.08kb -> 1.07kb (0.45%)
/app/client/src/assets/icons/control/zoomin.svg -- 0.65kb -> 0.65kb (0.45%)
/app/client/src/assets/icons/control/left-align.svg -- 0.67kb -> 0.67kb (0.44%)
/app/client/src/assets/icons/control/underline.svg -- 0.68kb -> 0.68kb (0.43%)
/app/client/src/assets/icons/ads/globe.svg -- 1.60kb -> 1.59kb (0.43%)
/app/client/src/assets/icons/menu/widgets.svg -- 0.97kb -> 0.97kb (0.4%)
/app/client/src/assets/icons/widget/text.svg -- 0.99kb -> 0.98kb (0.4%)
/app/client/src/assets/icons/control/center-align.svg -- 0.76kb -> 0.76kb (0.38%)
/app/client/src/assets/icons/widget/location-picker.svg -- 1.02kb -> 1.02kb (0.38%)
/app/client/src/assets/icons/menu/overflow-menu.svg -- 1.05kb -> 1.05kb (0.37%)
/app/client/src/assets/icons/header/deploy.svg -- 1.59kb -> 1.59kb (0.37%)
/app/client/src/assets/icons/control/italics.svg -- 0.80kb -> 0.80kb (0.36%)
/app/client/src/assets/icons/control/increase.svg -- 0.81kb -> 0.81kb (0.36%)
/app/client/src/assets/icons/help/discord.svg -- 1.08kb -> 1.08kb (0.36%)
/app/client/src/assets/icons/widget/map.svg -- 1.10kb -> 1.09kb (0.36%)
/app/client/src/assets/images/email-not-configured.svg -- 28.71kb -> 28.61kb (0.35%)
/app/client/src/assets/icons/help/help.svg -- 1.15kb -> 1.15kb (0.34%)
/app/client/src/assets/icons/control/copy.svg -- 0.87kb -> 0.86kb (0.34%)
/app/client/src/assets/icons/control/bold.svg -- 0.88kb -> 0.88kb (0.33%)
/app/client/src/assets/icons/widget/dropdown.svg -- 1.21kb -> 1.21kb (0.32%)
/app/client/src/assets/icons/ads/billing.svg -- 0.96kb -> 0.95kb (0.31%)
/app/client/src/assets/icons/control/decimal.svg -- 0.98kb -> 0.97kb (0.3%)
/app/client/src/assets/icons/control/settings.svg -- 1.33kb -> 1.32kb (0.29%)
/app/client/src/assets/icons/control/chevron-down.svg -- 1.02kb -> 1.02kb (0.29%)
/app/client/src/assets/icons/widget/switch.svg -- 1.38kb -> 1.37kb (0.28%)
/app/client/src/assets/images/secure.svg -- 1.07kb -> 1.07kb (0.27%)
/app/client/src/assets/icons/menu/datasource-colored.svg -- 1.12kb -> 1.12kb (0.26%)
/app/client/src/assets/icons/menu/api-colored.svg -- 1.13kb -> 1.12kb (0.26%)
/app/client/src/assets/icons/menu/foreign-key.svg -- 1.15kb -> 1.15kb (0.26%)
/app/client/src/assets/icons/menu/org.svg -- 1.15kb -> 1.15kb (0.25%)
/app/client/src/assets/icons/control/redo.svg -- 1.17kb -> 1.16kb (0.25%)
/app/client/src/assets/icons/menu/primary-key.svg -- 1.17kb -> 1.17kb (0.25%)
/app/client/src/assets/icons/control/undo.svg -- 1.17kb -> 1.17kb (0.25%)
/app/client/src/assets/icons/form/trash.svg -- 2.75kb -> 2.74kb (0.25%)
/app/client/src/assets/icons/control/integer.svg -- 1.25kb -> 1.25kb (0.23%)
/app/client/src/assets/icons/widget/form.svg -- 1.32kb -> 1.32kb (0.22%)
/app/client/src/assets/icons/control/drag.svg -- 1.33kb -> 1.33kb (0.22%)
/app/client/src/assets/icons/header/save-failure.svg -- 1.45kb -> 1.44kb (0.2%)
/app/client/src/assets/icons/control/js-toggle.svg -- 1.97kb -> 1.96kb (0.2%)
/app/client/src/assets/images/Curl-logo.svg -- 5.33kb -> 5.32kb (0.18%)
/app/client/src/assets/icons/alert/info.svg -- 1.60kb -> 1.60kb (0.18%)
/app/client/src/assets/icons/alert/warning.svg -- 1.63kb -> 1.63kb (0.18%)
/app/client/src/assets/icons/header/save-success.svg -- 1.67kb -> 1.66kb (0.18%)
/app/client/src/assets/icons/alert/success.svg -- 1.67kb -> 1.67kb (0.18%)
/app/client/src/assets/icons/menu/data-sources.svg -- 1.74kb -> 1.73kb (0.17%)
/app/client/src/assets/icons/alert/error.svg -- 1.95kb -> 1.95kb (0.15%)
/app/client/src/assets/icons/widget/datepicker.svg -- 3.23kb -> 3.22kb (0.12%)
/app/client/src/assets/icons/widget/button.svg -- 3.75kb -> 3.75kb (0.1%)
/app/client/src/assets/icons/control/address.svg -- 3.37kb -> 3.37kb (0.09%)
/app/client/src/assets/icons/control/datepicker.svg -- 3.75kb -> 3.75kb (0.08%)
/app/client/src/assets/images/appsmith-datasource.svg -- 505.60kb -> 505.43kb (0.03%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
2020-11-02 19:44:01 +05:30
Trisha Anand
32301ae3b4
Printing the invalid messages of the action properly. (#1507) 2020-11-02 14:15:29 +05:30
Trisha Anand
13e2cc2a63
[Do Not Merge]Brought down cloud migration time from 122 minutes to 9.5 minutes (#1441)
* [Do Not Merge]Brought down cloud migration time from 122 minutes to 9.5 minutes

* Removed commented code.
TODO : Figure out if we want to change the migration order numbers once the release environment is reverted back to pre original migration data.

* Added plugin id for the migrated action.

* Renamed the createIndex functions for new action and new page and added a drop collection command before creating the index. This ensures that if any developer has pulled code in the last two days, this migration does not negatively impact them
2020-10-29 15:03:41 +05:30
Nikhil Nandagopal
2d7ccdc515
flipped user id and instance id so that the ping can be correlated with the email from the install script (#1461) 2020-10-29 14:17:45 +05:30
Arpit Mohan
470f2fafcd
Adding support for https endpoints for ES plugin (#1445)
* Adding host:port validation checks to ES plugin & Redis plugin

Also correcting the assertions in the RedisPluginTest so that the error message on test failure is accurate.

* Removing the endpoint validation from datasourceServiceImpl

Moving the endpoint validation to the plugin implementation classes because there are databases that require complete HTTP URL in their configuration. Checking for http/https at the platform level affects the UX for the user & plugin developer when using a new integration. Hence, all plugins must implement their own client/server validations in their own implementations

* Adding tests to assert hostname validation in mysql & postgres plugins
2020-10-28 19:06:10 +05:30
Trisha Anand
5197b17d8c
Bug Fix : Reading the datasource configuration incorrectly from actionDTO instead of datasource object. (#1415)
* Bug Fix : Reading the datasource configuration incorrectly from actionDTO instead of datasource object.

* Added test case to assert that datasource configuration and action configurations are not null when action execute is called.
2020-10-27 15:23:25 +05:30
Trisha Anand
230126ebcf
Remove unnecessary database migration (#1406) 2020-10-26 22:50:36 +05:30
Trisha Anand
fc9ea45e3b
[API breaking change : Automated Tests Will Fail] Page And Action Refactor (#549)
* Introduced new page which stores the published and unpublished pages as separate.

* Mid level commit to save the state.

* Parity of new page repository with old page repository (custom functions)

* WIP : Delete a page. This requires changes across application structure as well.

* Added publishedPages construct inside application to store the pages in the deployed view as well as isDefault so that the same changes (delete or isDefault) in unpublished view doesn't alter these fields for the published application

* Parity reached with PageService.

* Minor ActionService refactor to remove unnecessary code.
ApplicationPageService, LayoutActionService, LayoutService use the new page service to fetch the pages
Minor corrections in fetching the page from new page service in tests

* New save function which sets the PageDTO for unpublished page and then saves the new page into repository.

* Migration of page service functions to new page service functions across other services/tests/controller

* Finished migrating all the page service functions to the new page service functions

* Application Service Tests have been fixed.

* All the existing test cases are working now.

* Publish application implemented to store published pages as well. Added a basic test case to check that published pages is being set and that page's publishedPageDTO is being set accordingly.

* Minor TODOs added to add test cases for published application.

* A few tests to ascertain that published application page fields (deleted, isDefault) does not get changed when these statuses are changed for a page in edit mode.

* Added a new controller end point to fetch application in view mode.

* Added new endpoint for fetching an application in view mode on the client.

* Bug fix where get application in view mode API was not getting called.

* Fixed the get page names by application & archive pages which have been deleted in edit mode during publishing of application.

* During delete page, if a page was never published and it was deleted during edit, delete the entire page instead of just deleting the unpublished PageDTO

* Minor formatting.

* Non working client side code to fetch page list using view mode.

* revert unnecassary changes and streamlined view and edit actions

* Fix missed import

* Fixed a bug where if a page is not published, it should not be returned in view mode in list of page names api.

* Fixed update for a page which was not working in integration test.

* ActionDTO added.

* Solidified the new action structure.

* Migration added for NewAction index creation and NewAction per Action insertion in the database.

* Basic file structure added the new repository, custom repository, service, etc.

* Delete OldPage.java

* Repo functions added - TODO : Haven;t handled the published/edited views

* Helper functions added to convert Action to NewAction and vice-versa. Removed unused currentUserMono usage.

* Create & update action functionality added.

* Execute Action refactored. Removed dry run specific code.

* Repository migrated to handle new data structure. Execute action refactored to no longer support dry runs of actions.

* TODO added for special handling of change view of application to handle edge cases of pages/actions which either exist in published mode but don't exist in unpublished mode or vice versa.

* Migrated finding on load actions from spring repository to custom repository.

* In view mode, now actions are being fetched by application id directly instead of first fetching application and then using the page ids, fetching the actions. This reduces the db calls from 2 to 1 per fetch actions in view mode api call.

* Delete action and get all actions (used in edit mode on the client side) implemented.

* Updated CollectionService and ActionCollectionService to use the new action service instead of the old one.

* LayoutActionService refactored to now use the new service functions.

* ActionController now no longer used ActionService. The remaining service functions have been migrated to the new action service.

* Refactor across ACL code for addition/removal of policies during addition/removal of users to organization, making app public, refactor for services like policy utils, item service, etc.

* Removed the last of action repository and action service and replaced with new action repo and new action service.

* Compile and run time issues fixed. The server is coming up without any spring dependency errors.

* WIP in fixing fetching actions by page id.

* Finally!!! Fixed the fetch actions (both published and unpublished actions) by page id repository function.

* Fixed create action bug where null datasource in published actiondto (inside newly created action) leads to error.

* Fixed the execute action issues :
1. Removed the dry runs from the tests
2. Fixed the null pointer error in variable substituted action and datasource configurations.

* 1. Fixed the custom action repository field names.
2. Fixed the data structures used in ExamplesOrganizationClonerTests

* Fixed countByDatasourceId repository function which was querying the actions incorrectly.

* Fixed the clone example organization error where the id of the action was not getting updated in the page correctly. Yay!

* Fixed post merge compilation failure.

* Fixed more compilation time failures in ActionServiceTest

* Fixed failing test case for fetching actions in view mode.

* Minor changes to resolve merge changes and incorporate in the new refactored code.

* 1. Fixed compile time errors on Client code.
2. Fixed fetching of actions in view mode by application id. The repository function did not need name parameter. Removed the same.

* [Integration Testing Error Fix] : Added a new test case for refactor action name.

* Instead of fetching actions in the page, mistakenly used the base service which was fetching all the actions in the repository, barring none which led to the name refactor being blocked even though no action in the current page exists with the new proposed name,

* Added delete functionality to action service.

* Minor code cleanup

* Adding viewMode to action execution

* Replacing action with actionId.

* 1. Bug fix for deletion of unpublished action. In case of never published action, the entire action should be deleted. In case an action was published, only the unpublished action should be deleted.
2. In case of DB actions (external datasources), only the bare minimum fields should be stored inside the action (datasource id and datasource plugin id). The other fields should not be duplicated across code.

* Fixed yarn build compilation issues.

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/ActionController.java

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Changed the API path for GET applications in view mode. Some minor code formatting.

* Incorporated review comments.

* Some more unnecessary code removed.

* Instead of returning Page, now the interface object between client and server for Pages is PageDTO

* Migrated Page and Action to PageDTO and ActionDTO
Fixed the compilation issues.
TODO : Fix the test compilation issues.

* Fixed compilation time issues with all the tests by migrating Page and Action to PageDTO and ActionDTO respectively

* Action Controller and Page Controller no longer extend Base Controller. All the required functions have now been implemented and no base line API end points are being re-used from the base.

* Test case fixes.

* Bug Fix : Updating an action was not updating execute on load. Fixed the data flow leading to the error.

* Deprecating Page and Action domain objects. This is to ensure no new code is written with these till we remove this old code.

* Cloned example applications are now published before returning. This is to ensure that the applications are in ready to view mode when the new user signs up.

* Added a function comment to expand on the usage of new param introduced.

* When cloning a page, new actions were not being stored. Added that. Also updated the clonePage test to assert that the actions are also cloned when the pages are cloned.

* Updated a Api call

* removed extra slash

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Satbir Singh <satbir121@gmail.com>
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
Co-authored-by: nandan.anantharamu <nandan@thinkify.io>
2020-10-26 18:04:23 +05:30
Arpit Mohan
c6d4902e3d
Adding microsoft SQL server plugin integration (#1374) 2020-10-23 20:36:45 +05:30
Shinn Lok
4768fd3848
Fix organization ordering by name on the homepage (#1177) 2020-10-22 17:53:51 +05:30
Arpit Mohan
74fe08f8bf
Adding the database changelog for Redis (#1346)
1. Fixing the build by excluding the slf4j-api from redis-plugin pom.xml
2. Adding the editor.json and form.json for the query pane & datasource pane.
3. Adding array handling in the Redis response by feeding all the output into a "result" key
2020-10-22 16:40:19 +05:30
Shrikant Sharat Kandula
2a53abd8a6
Add DynamoDB Plugin (#1167)
* Added DynamoPlugin to integrate with DynamoDB

* Connection management for DynamoPlugin

* Process action from a single JSON object as input

* Moved ListTables command to separate class

* Add missing UI definition files

* Use reflection to build request objects for AWS SDK

* All DynamoDB actions are now run purely by reflection

* Serialize responses to JSON

* Remove some unused/commented code and some refactorings

* Add non-working test with generic dynamodb container

* Added working test for ListTables action

* Added test for PutItem action

* Add tests for get and update actions

* Added comments and some refactoring

* Removed unused Command class.

* Added more tests for map to SDK object conversion

* Add templates

* Add option to set an endpoint override

* Fix Dynamo plugin tests when ~/.aws is missing

* Add documentation link for DynamoDB plugin

* Fix validation checks

* Remove debug log

* Added comments on expected query structure

* Fix incorrect error condition with incorrect request format

* Add comment for converting action to method name

* Error out if region is missing

* Remove unused throws declaration

* Use rich form for action configuration

* Removed templates

* Use PNG for logo images

* Use PNG logos for all plugins

* Avoid hard-coded field names

* Change logo to PNG only for ElasticSearch for now

* Wrap errors in AppsmithPluginException

* Typo

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Fix changeset order number

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Minor refactoring and fixed error messaging

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-10-21 17:45:54 +05:30
Shrikant Sharat Kandula
fa1a0549ff
Add ElasticSearch integration (#1181)
* add elasticSearchPlugin

* Fix container startup in tests

* Add elasticsearch dependency

* Get plugin to a base working state

* Add templates and tests for all Document APIs

* Add support for bulk queries

* Add test and template for bulk operations

* Use rich form for action configuration

* Add test API for ElasticSearch

* Use rich form's values for plugin execution

* Add authorization header support

* Fix tests after config object use changes

* Add test for bulk requests with nd-json body

* Remove templates and minor refactoring

* Fix potential NPE with null body

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Add datasource validation for endpoint

* Wrap errors in AppsmithPluginException

Co-authored-by: Suman Patra <spatra@akamai.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-10-21 15:34:29 +05:30
Shinn Lok
014ff80548
Parameter missing for email template replace (#1323)
Co-authored-by: Trisha Anand <trisha1990@gmail.com>
2020-10-21 11:40:32 +05:30
Arpit Mohan
c89f5179b3 Removing db changelog for mssql 2020-10-20 22:46:59 +05:30
Trisha Anand
870a38af1c
[Bug Fix] Removed create_USER event during userCreate because this breaks OAUTH first user login. (#1292) 2020-10-19 22:51:26 +05:30
Arpit Mohan
7cb9583034 Making the request to oauth2 endpoints publicly accessible 2020-10-19 19:52:27 +05:30
Sufiyan Gani
f52a2500c1
Added sending email when the role of the member is (#1253)
Added sending email when the role of a member is changed
2020-10-19 17:53:12 +05:30
Trisha Anand
37aedcba24
User emails should be changed to lower case before creating/inviting user. (#1281) 2020-10-19 16:39:04 +05:30
Shrikant Sharat Kandula
a8d5138541
MS SQL Plugin implementation (#1272)
* Working version of MsSQL plugin

* Add tests for mssql-plugin
2020-10-19 15:06:08 +05:30
Akshay Avinash
4e99ab7ace
Fix 781 invalid message on password reset failure (#1234)
* Updated to add button to redirect to forgot password page
2020-10-16 19:48:03 +05:30
Daniel Shuy
a93bd52684
Don't append " Copy" suffix to cloned pages in cloned application (#1172)
* Add test to verify that Pages are cloned
2020-10-15 23:27:32 +05:30
Prashant Chaubey
7a1a2f55e1
Added an WebExceptionHandler to return JSON errors instead of HTML (#1178) 2020-10-15 17:47:13 +05:30
Shrikant Sharat Kandula
921c827817
Add isFromInvite field to create_USER event (#1223) 2020-10-15 17:42:37 +05:30
Prashant Chaubey
05380a9c43
Added email verification while creating user and sending email (#1208) 2020-10-15 12:19:20 +05:30
Prashant Chaubey
8d2701ed75
Made getAll operation of PageController unsupported (#1176) 2020-10-15 11:24:09 +05:30
Prashant Chaubey
67ef538409
Returning validation failures while creating organization (#1084)
* Returning validation failures while creating organization

* Added unit tests

* Changing the name of test security config

Co-authored-by: nitesh261193 <nitesh261193@gmail.com>
2020-10-15 09:07:57 +05:30
Shinn Lok
e85d5ed420
TTL must be set on date field (#1128)
The PasswordResetToken collection now expires the password reset request in 48 hours.
2020-10-15 09:01:30 +05:30
Shrikant Sharat Kandula
ff860e402c
Add logging to segment SDK (#1188) 2020-10-15 00:05:09 +05:30
Shrikant Sharat Kandula
8af1852b6a
Refactor tasks on first-login (#1190)
* Primarily doing example app cloning and analytics in parallel.

* Only create a examples organization, if not already done
2020-10-15 00:02:57 +05:30
Shrikant Sharat Kandula
02dc63840a
Don't send full object to analytics (#1186) 2020-10-14 14:56:09 +05:30
Shrikant Sharat Kandula
164824ca85
Add first_login event for analytics (#1184) 2020-10-14 12:40:47 +05:30
Prashant Chaubey
8a892b6e15
Removed invitation token from the invite email (#1180) 2020-10-14 10:30:19 +05:30
Trisha Anand
421b624cc4
Only mark applications as example applications if the application id exists in the template configuration. (#1093) 2020-10-09 15:21:28 +05:30
Shrikant Sharat Kandula
d872b3631b
Use username instead of object_id in analytics (#1082) 2020-10-09 12:47:27 +05:30
Trisha Anand
ffb1142b20
Adding a new email template for sending an email when an appsmith use… (#1077)
* Adding a new email template for sending an email when an appsmith user's role in an organization changes.

* Minor changes in text.
2020-10-08 14:48:41 +05:30
Shrikant Sharat Kandula
feda7ce022
Use email as id for users and fix signup events not being reported (#1067) 2020-10-07 21:06:58 +05:30
Shrikant Sharat Kandula
c77fcfa9ee
Send separate user create event for new users (#1066) 2020-10-07 18:28:17 +05:30
Shrikant Sharat Kandula
c4332b9a1c
Add source to user sign up event (#1065) 2020-10-07 18:07:30 +05:30
Prashant Chaubey
50072ff179
Fixed the ipify URL in PingScheduledTask (#1013) 2020-10-06 06:54:27 +05:30
Petro Popelyshko
e57615e3eb
Fix(backend): Wrong error message while resetting the password fixed, changed from id to email (#911)
Fixes #637
2020-10-05 09:49:05 +05:30
Dmitriy Danilov
4a26aee19f
Fix(sign-up): change in sign up error message (#908) 2020-10-05 09:42:39 +05:30
Shrikant Sharat Kandula
577e9a7017
Refactor ignoreCache parameter to use Boolean type (#681) 2020-09-23 11:01:58 +05:30
Shrikant Sharat Kandula
19bd7d272a
Use a unique instance ID for pinging home (#566)
* Use a unique instance ID for pinging home

* Fix event name
2020-09-18 06:38:53 +05:30
Arpit Mohan
e688f62378
Removing cacheResponse from the JSON response for actions (#564)
This is because this `cacheResponse` field is only used for auto-complete on the UI. The user can still run the action manually and get the auto-complete to work. The downside to sending the `cacheResponse` field in the JSON response is that for large responses, the client times out as our response times increase to 20 secs. Hence removing this for now.

In future, we'll extract the JSON schema structure from the response body and send that to the client for populating auto-complete.
2020-09-17 18:51:26 +05:30
Shrikant Sharat Kandula
65c247a10c
Add a scheduled task to ping home (#560)
* Add a scheduled task to ping home

* Removed commented logging code

* Add docstrings to ping scheduled task

* Move IP address API URI to a constant
2020-09-17 17:54:48 +05:30
Shrikant Sharat Kandula
75ba90928e
Add datasource structure caching and MySQL structure support (#553)
* Implement caching for datasource structure

* Avoid using final fields so spring-data can load objects

* Use type variable for getStructure method

* Initial version with base structure for MySQL plugin

* Add tests for MySQL plugin structure

* Add sorting for keys in Postgres structure as well

* Show "primary key" instead of just "primary"

* Refactor to reduce inline magic strings
2020-09-17 13:59:46 +05:30
Nikhil Nandagopal
cac15f2cac
Update welcomeUserTemplate.html 2020-09-16 18:40:43 +05:30
Trisha Anand
423b7eb176
Added confirmBeforeExecute field in action view dto which is returned only during view mode. (#547)
* Added `confirmBeforeExecute` field in action view dto which is returned only during view mode.

* Added test for fetch actions in view mode.
2020-09-15 15:22:35 +05:30
Shrikant Sharat Kandula
6c7e45d010
Add a connection type variable for Plugin implementations (#531)
* Add a connection type variable for Plugin implementations

This type variable is intended to represent the type of the
connection object, if any, that the plugin will use. This will
help make the implementations more robust by leveraging Java's
type checking instead of rudimentary type casts over the
connection objects.

* Fix missing typevar usage
2020-09-14 20:36:47 +05:30
Shrikant Sharat Kandula
3f5930e52e
Add datasource structure support for DB plugins (#523)
* Base interface for getting datasource structure for databases

* Add keys and constraints to structure for Postgres datasources

* Use connection from datasource context for computing structure

* Refactor context retrying into a separate method

* Add base datastructures for templates in entity explorer

* Fix spring circular dependency

* Add test for postgres datasource structure

* Generate column names and sample values for INSERT query

* Add LIMIT clause to generated SELECT query

* Fix tests for generated SELECT query

* Minor refactoring
2020-09-14 18:59:11 +05:30
Trisha Anand
069dd53e32
Changing spelling of colour to match the front-end used spelling. (#532) 2020-09-11 12:31:07 +05:30
Nikhil Nandagopal
3b4db07697
Update welcomeUserTemplate.html 2020-09-10 16:20:00 +05:30
Nikhil Nandagopal
5fbe993541
Update welcomeUserTemplate.html 2020-09-10 16:01:35 +05:30
Nikhil Nandagopal
9063488acf
Update welcomeUserTemplate.html 2020-09-10 14:50:44 +05:30
Trisha Anand
9dcb7d5522
When on page load setting is changed, update layout must be called to update the onPageLoadActions field in the layout. (#467) 2020-09-10 14:30:30 +05:30
Shrikant Sharat Kandula
42545d1e88
Add migration to fix incorrect action IDs for onLoad (#519)
* Add migration to fix incorrect action IDs for onLoad

* Remove redundant comments

* Fix migration to work with published onLoad actions as well

* Only update the action ID when correcting onLoad action IDs

* Fix migration name for correcting action IDs

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Fix migration id for correcting action IDs

* Reformat code

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-09-10 11:37:32 +05:30
Shrikant Sharat Kandula
f5f66229ec
Get list of application IDs to be cloned as examples from template config (#442)
* Get list of application IDs to be cloned as examples

* Fix tests so that apps to be cloned are explicit

* Add migration to set applicationIds for example cloning

* Fix example org cloning tests
2020-09-07 11:40:28 +05:30
Trisha Anand
a8a7955f41
Added new fields colour and icon in application required for homepage redesign project (#499) 2020-09-07 11:13:58 +05:30
Trisha Anand
437d04f045
Added a field to denote confirmBeforeExecute field whose functionality would be handled by the client. (#487) 2020-09-07 11:12:08 +05:30
Trisha Anand
3648a2b804
Returning an error in case the user tries to get all users. (#472) 2020-09-02 17:18:22 +05:30
Shrikant Sharat Kandula
54c75b26dd
Add a node.js script to dump examples organization (#448)
* Add a node.js script to dump examples organization

This dump file is used to setup initial examples organization
in a self-hosted setup.

* Remove unused variable

* Add npm run shortcut for dump script
2020-09-02 17:15:55 +05:30
Shrikant Sharat Kandula
91ad617904
Add validation for host values in DB datasources (#444)
* Add validation for host values in DB datasources

* Mild refactoring, for a dummy commit

* Add test for host name validation in datasources
2020-09-02 11:28:41 +05:30
Shrikant Sharat Kandula
223a735b87
Add API for uploading logo images for organizations (#376)
* Start with new controller for assets

* Progress on uploading logo image

* Saving and loading organization logo assets now works

* Remove existing logo asset before saving a new one

* Fix 500 when uploading logo for the first time

* Fix URL in response for uploading logo image

* Add test for uploading logo for ogranization

* Mild refactoring in tests
2020-09-02 11:28:15 +05:30
Trisha Anand
dfabda6009
GET API actions recognized as page load actions should also be update… (#450)
* GET API actions recognized as page load actions should also be updated as executeOnLoad actions.

* Update action during updateLayout only if executeOnLoad is not set or is false.
2020-08-27 20:05:07 +05:30
Trisha Anand
a806935f82
Use a new API to set (unset) execute on load for an action. (#443) (#446) 2020-08-27 16:22:50 +05:30
Shrikant Sharat Kandula
9534eeef0a
Add logs to alert when cloned action id is unavailable (#441) 2020-08-27 12:46:04 +05:30
Trisha Anand
11eac73013
Clone application within the same organization (#414)
* WIP : First draft of clone applications

* Cloning of application now works correctly.

* Fixed the failing test case for page cloning.

* Added test case to assert the clone of application successfully.

* Minor function renaming to avoid confusion.

* Minor code refactoring to remove duplicate code.
2020-08-25 14:08:52 +05:30
Trisha Anand
8c20aeb95b
Example app being cloned must be set to private instead of public because public permissions are not given during cloning. (#418) 2020-08-25 11:12:55 +05:30
Trisha Anand
c253b7430b
1. Fixed the bug where policies are being set to empty during organization update (#415)
1. Fixed the bug where policies are being set to empty during organization update.
2. Added email field in organization.

* Updated the test case for update organization to assert the organization policies being present post the update.
2020-08-25 08:13:37 +05:30
Trisha Anand
ce41fec346
Bug fix : Example applications should have make public permissions for the administrator. (#416) 2020-08-25 08:12:13 +05:30
Shrikant Sharat Kandula
ba72e21f7b
Add two more apps to examples org dump (#393)
* Add two more apps to examples org dump

* Fix undefined checks in example org dump
2020-08-21 19:53:16 +05:30
Shrikant Sharat Kandula
2a2dda0ab0
Fix race condition in setting default page in application (#394)
We are currently getting the *list* of all pages, updating the
`isDefault` fields inside, and then saving the whole *list* of
all pages. If a new page got added to that list in the DB during
this process, that page would be lost. This commit fixes this
problem.

This race condition was causing tests for cloning applications
to fail *sometimes*.
2020-08-21 16:31:40 +05:30
Shrikant Sharat Kandula
87f27c9182
Add two new/updated apps for self-hosted (#392)
* Add two new/updated apps for self-hosted

* Fix potential NPE when template org dump has API datasources
2020-08-21 14:37:35 +05:30
Shrikant Sharat Kandula
e97ceab412
Fix default page not being set for cloned applications (#383)
* Fix default page not being set for cloned applications

* Add test for setting default page in clone applications
2020-08-21 10:38:23 +05:30
Shrikant Sharat Kandula
27511c90d4
Users created won't have any orgs if a template is configured (#374) 2020-08-20 18:24:31 +05:30
Shrikant Sharat Kandula
3ae6c745b1
Initial implementation to import examples organization as a migration (#290) 2020-08-20 16:46:23 +05:30
Shrikant Sharat Kandula
bd670487a7
Redirect to forked application when signed up by clicking on Fork of a public example app (#335)
* Redirect to forked application works for direct login

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-08-20 14:15:54 +05:30
Shrikant Sharat Kandula
f57e2a2fb8
Refactor: Remove unused type parameter in AnalyticsService (#340)
* Move repeated code for analytics into functions inside AnalyticsService

* Fix type parameters in BaseService & BaseController
2020-08-20 10:47:22 +05:30
Trisha Anand
efab105e19
Clone Page feature inside an application (#357)
* Working version of cloning page given page id. The clone is created inside the same application and is in unpublished state.

* Added a test case for Clone Page feature

* Incorporated review comments.
2020-08-19 15:20:00 +05:30
Trisha Anand
82018547f5
Added tests to test invite user permissions for administrators and developers and make public app permissions for only administrators. Also added test to ensure that roles for an organization are being returned depending on the current user's roles. (#326) 2020-08-18 10:53:46 +05:30
Trisha Anand
336514344b
If an invited user follows the path of reset password (instead of sign up), this should be allowed. (#328) 2020-08-17 14:57:41 +05:30
Shrikant Sharat Kandula
a79951bae9
Don't always automatically create a blank personal org (#306)
* Don't always automatically create a blank personal org

It will still be created, only if a example template organization
has not been configured in the system.

* Name examples organization same as personal organization

* Minor fixes in tests

* Remove unused userService in clone tests
2020-08-14 15:30:52 +05:30
Shrikant Sharat Kandula
50e8ee7255
Fix link in invite emails to point to signup page (#268)
* Fix link in invite emails to point to signup page

* Auto-fill email in signup page and remove CreatePassword component
2020-08-14 11:31:50 +05:30
Trisha Anand
52e7ed4f02
Bug Fix : When role changes from developer to admin, the user was not being given make application public permission for the application (#302)
* During add role to an organziation, the application was only inheriting from subset of the organization permissions. Generalized this code to ensure that this doesnt happen again in the future when more permissions are introduced. Refactored some code as well.
2020-08-13 18:53:00 +05:30
Arpit Mohan
10f462b229
Adding a test for the valid scenario when returning the plugin form details (#295)
We use @SpyBean annotation to partially mock the PluginService class.
2020-08-12 20:09:56 +05:30
Shrikant Sharat Kandula
368ed79f4b
Removed OPA config (#291)
* Removed OPA config along with the bundle and rules files
2020-08-12 16:52:42 +05:30
Shrikant Sharat Kandula
30c595678d
Set transient fields when loading application by id (#287) 2020-08-12 15:35:50 +05:30
Trisha Anand
c3c8e532c6
Updated the invite and make public app migration script more performant so that it takes lesser time on big db (#289)
* Updated the migration script to make more db queries instead of searching in the local app memory

* Permission correction.
2020-08-12 15:35:04 +05:30
Trisha Anand
7ee21456d5
Share Changes : Adding users to organization permission updates (#262)
* Introduced new permissions for making app public and inviting users.

* WIP : Returning a subset of roles depending on the current user's role

* Added code and tests for generating hierarchical children given a role name

* Get all invite roles now returns roles depending on the current users permissions (aka - admin can invite users for all roles, developers can invite users for roles develoeprs and below)

* When invite api is called, check if the user has correct permissions ( invite permission) and check if the role for which the users are bieng invited is allowed (aka the current user has the permission to invite for the said role)

* Introduced a new permission at application level which is inherited from manage:organizations. This new permission gives the administrator of the organization to make any application public .

* Incorporated review comments.

* Minor code changes.

* Added migration script to add the new policies introduced as part of this new share modal changes.

* Null pointer exception handled due to improper data in the database.

* Integration testing bug fixes.
2020-08-12 13:23:44 +05:30
Trisha Anand
a6496bd5af
Correcting the Docker image for Appsmith server for Github actions test (#260)
* Correcting the Docker image for Appsmith server for Github actions test

* Also fixing the bug where the datasource config is not returned properly for restapi-plugin

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-08-11 16:53:47 +05:30
Shrikant Sharat Kandula
115bff546c
Replace class-level generics with method-level in PolicyUtils (#257) 2020-08-11 14:07:52 +05:30
Shrikant Sharat Kandula
0c344115c3
Add transient field on applications to indicate whether it's an example application (#256)
* Add transient field on application to indicate whether it's an example

* Add test for marking of example applications

* Remove unused constant
2020-08-11 14:00:41 +05:30
Shrikant Sharat Kandula
dc10f09906
Fix organization cloning gets stale action IDs inside onLoad actions (#245)
* Fix organization cloning gets stale action ids for onload

* Fix test for onload action's organization after cloning
2020-08-11 13:58:50 +05:30
Trisha Anand
43d633f007
Setting role name while adding a user to an organizaiton. (#258) 2020-08-11 09:45:23 +05:30
Trisha Anand
d2442eb815
DO NOT MERGE: Bulk invite user to organization (#182)
* WIP: Not working bulk invite.

* WIP : Non compilable.

* Current test cases running.
TODO : Code Cleanup and write new test cases for bulk invite.

* Code cleanup

* Added a test case for bulk invite of users to an organization.

* Incorporated review comment.

* Merged the latest release and incorporated review comments.

* Corrected the error thrown when usernames is empty or null for invite user API.
2020-08-11 09:24:21 +05:30
Shrikant Sharat Kandula
25b752843f
Auto-login on signup (#201)
* Auto-login on signup works!

* Support form-encoded data body for signup requests

* Remove debug log entry when getting session

* Refactoring and add some docs to UserSignup solution

* Move user object construction to UserSignup solution

* Redirect with error message on signup errors
2020-08-10 14:59:56 +05:30
Shrikant Sharat Kandula
b511c3ada9
Change return type of plugin execution to be more specific (#247) 2020-08-10 14:41:32 +05:30
Trisha Anand
b5841e96d2
GET plugin form now returns json to render both datasource configuration form and the editor query pane (#199)
Keeping the function to read plugin resource generic for any type of resource. Now the parent function can also conditionally decide which plugin would require to read which resources from the filesystem.

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-08-03 16:37:28 +05:30
Shrikant Sharat Kandula
cef1241bcb
Return 200 when action could not be executed (#202) 2020-08-03 07:35:14 +05:30
Shrikant Sharat Kandula
43304ca146
Fix form data not showing up in the right place when importing from curl (#198) 2020-07-30 16:30:39 +05:30
Trisha Anand
c6a9fc2bb4
Organization getById should use custom repository get function (#195)
* Overwriting the base service's getById for OrganizationService to ensure that the response contains userPermissions (by using custom repository instead of default mongo repository classes)

* Fixed the failing test cases.

* Minor code formatting.
2020-07-29 16:57:46 +05:30
Arpit Mohan
4475bc2b1e
Configuring dynamic redirect post login (#194)
The client will have to send a query parameter redirectUrl or a header X-Redirect-Url in order for the server to redirect the client to the appropriate URL post login. If neither of these parameters are present, the client is redirected to /applications by default.

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2020-07-29 16:07:40 +05:30
Trisha Anand
eba38ae1fa
During signup, if the user already exists, instead of throwing a generic duplicate key exception, request the user to sign in. (#192)
* During signup, if the user already exists, instead of throwing a generic duplicate key exception, request the user to sign in.

* Minor change in the error message.
2020-07-29 13:44:23 +05:30
Shrikant Sharat Kandula
60efdb998b
Fix: Datasource password gets double encrypted on cloning (#191)
* Decrypt sensitive fields before cloning a datasource

* Fix NPE in cloning datasource when configuration is missing
2020-07-29 11:12:04 +05:30
Trisha Anand
9c51ac3f8d
🔥 & forget asynchronous email sending (#187)
* Email sending is now an asynchronous function. It follows a 🔥 & forget strategy to make it run asynchronously.
2020-07-28 20:06:12 +05:30
Shrikant Sharat Kandula
66bf23106d
Fix cloning fails in some cases for organizations (#159)
* Fix cloning fails in some cases for organizations

Cloning currently fails in cases like the following:
- Application with no pages
- Pages with no actions
- Pages with more than one action

* Remove debug naming of cloned datasources

* Add test for organization cloning

* Add more tests for organization cloning

* Fix potential race condition in adding pages to an application

* Move db update call to add page to application, into repository

* Use `getIdCriteria` to query for document's _id
2020-07-28 17:54:06 +05:30
Shrikant Sharat Kandula
74da0f117e
Reuse layout that's automatically created with page (#163)
* Reuse layout that's automatically created with page

* Use correct API for updating a layout

* Commenting out organization cloning test.

* Removed organization cloning test

* Adding a dummy commit to run the pipeline.

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-07-25 18:13:29 +05:30
Shrikant Sharat Kandula
10ad639b28
Bug/layouts not updated on action change (#161)
* Fix layouts not be updated when an action is updated

* Add test for updating onLoadActions when action updated

* Split layout and action test to separate class

* Remove duplicated test in ActionServiceTest
2020-07-25 16:45:42 +05:30
Shrikant Sharat Kandula
5ee1c24224
Fix layouts not be updated when an action is updated (#160)
* Fix layouts not be updated when an action is updated

* Add test for updating onLoadActions when action updated
2020-07-25 15:43:22 +05:30
Shrikant Sharat Kandula
4a269efd4a
Reset default fields of User object before update (#158)
The policies of `User` objects is an empty set by default. So, when using a new `User` object to call `update`, it also updates existing policies to be an empty list.
2020-07-24 18:32:43 +05:30
Trisha Anand
9f8b5ca4d8
Adding execute action permissions policy to match read actions policy in existing actions. (#156)
* Fixing test cases failing due to non unique names.

* Adding execute action permissions policy to match read actions policy in existing actions.

* Only save the action if there are read actions permission present (and hence could have been updated)
2020-07-24 17:05:49 +05:30
Trisha Anand
61c62c9212
Datasource Test should test against the datasource object sent by the client (#155)
* Datasource test should always test the latest object given by the client (instead of fetching the same from the db). If it is a saved datasource, then we should decrypt and set the password in the datasource (unless the password is one of the changes that is being tested).

* Added function level comment to clarify that this function can no longer be used by just sending the datasource.id field set.
2020-07-24 15:53:40 +05:30
Shrikant Sharat Kandula
23dd84d9c8
Clear application pages list before cloning (#154) 2020-07-24 14:35:16 +05:30
Shrikant Sharat Kandula
dfcabab4cc
Handle stale database connection from datasources (#151)
* Handle stale database connection from datasources

* Fix potential secondary case of stale connection error

* Fix Postgres to MySQL

* Move validity check timeout to a constant field

* Add test for recovery when stale connection error is thrown
2020-07-24 12:18:25 +05:30
Arpit Mohan
36bf14f221
Adding dynamic redirect to form & OAuth2 login (#149)
The client can send the redirect URL in X-Redirect-Url header. The server will honour the value set and redirect the client browser to this particular url. By default the server will redirect to /applications if the custom header is missing. The redirect url can either be absolute or relative.

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2020-07-23 20:32:38 +05:30
Trisha Anand
3c30b38937
Bug fix : External datasources do not execute for public application (#143)
1. Bug fix for when actions for a public application use an external datasource (aka db queries). The db queries were not getting executed because the permission for execute datasource was not getting set for anonymousUser.

2. When using the Test endpoint for datasource, if the datasource is being read from the db and there are encrypted fields, first decrypt the field and then send to the plugin for testing the co
2020-07-23 20:31:36 +05:30
Shrikant Sharat Kandula
fd888e33c8
Add migration for updating plugin doc links to our own docs (#142) 2020-07-22 15:28:27 +05:30
Arpit Mohan
690c327f2c
Adding default values for mysql datasource (#140)
Also correcting icon details to mysql plugin migration.
2020-07-22 14:00:15 +05:30
nupur
d0e60a1890
Mysql plugin integration (#53)
This commit adds the Mysql plugin to the Appsmith server. We also add a migration to ensure that this plugin is installed by default for all existing organizations. The migration also adds the plugin details into the DB.

Also adding the test cases for mysql plugin.

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
Co-authored-by: Hetu Nandu <hetu@appsmith.com>
Co-authored-by: Arpit Mohan <me@arpitmohan.com>
Co-authored-by: Nupur Singhal <nupursinghal@Nupurs-MacBook-Air.local>
2020-07-21 16:01:42 +05:30
Shrikant Sharat Kandula
1fc582af08
When cloning examples organization, clone only public applications (#125)
* When cloning examples organization, clone only public applications

* Create template organization within the test

* Cleaned up test for cloning of examples organization

* Fix Mono chaning

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Create test apps and config simultaneously

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-07-21 13:39:07 +05:30
Trisha Anand
d1dd74018f
Bug fix : Update of datasource object leads to authentication field getting encrypted again. (#124)
* Datasource authentication object fields should only be encrypted during create or if the update object contains authentication object. Added a test case to check that update to any other field doesnt update the encrypted fields.

* Incorporated review comment
2020-07-21 10:53:03 +05:30
Shrikant Sharat Kandula
55a6cc6614
Clone examples organization for every new user (#78)
* Trying to clone the examples repo on new user signup

* Working implementation of cloning examples organization on user sign up

* Fix personal org not being created when template org is missing

* A working version of cloning of examples organization on first-login

* Add docs for methods in ExamplesOrganizationCloner

* Refactor computing user's first name into a method

* Add some menial tests for examples organization cloning

* Use explicit permissions when fetching applications and datasources

* Fix template organization config name hard-coding
2020-07-20 13:07:31 +05:30
Shrikant Sharat Kandula
f9e1d4f1ad
Chore/remove implicit permissions (#90)
* Refactor implicit permissions in service methods as function arguments

* Revert an unintended change that got committed

* Fix permission variable name

Co-authored-by: Trisha Anand <trisha@appsmith.com>

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-07-20 13:06:47 +05:30
Shrikant Sharat Kandula
140bfed24f
Disable the direct create methods for pages and applications (#109)
* Disable the direct `create` methods for pages and applications
* Create differently named versions of create methods to avoid ambiguity
* Removed unused pageService in DatasourceServiceTest
* Rename createPlain method to createDefault to better convey intent
2020-07-16 15:13:03 +05:30
Trisha Anand
04db3d4242
Bug Fix : Execute Action is not open for execution in public application. (#105)
* Opening the execute path & fetching db without permissions during execute path.
2020-07-15 21:36:35 +05:30
Trisha Anand
936c013b3b
Bug fixes : 401 for public applications + Empty set of actions for get in case cookies is anonymous (#104)
* Bug fixes :
1. Get actions in view mode should be open for unauthorized requests. Fixed that.
2. set transient fields in action is called post fetching all the actions (after taking care of all the permissions). At this point, we shouldnt be using permissions to fetch datasource.
2020-07-15 20:15:10 +05:30
Trisha Anand
20ae5fa546
Adding timeout in ActionViewDTO for the client to use to programmatically timeout on the execution request (#103)
* Adding timeout in ActionViewDTO for the client to use to programmatically timeout on the execution request.
2020-07-15 18:44:55 +05:30
Trisha Anand
6bfed87e40
Added pageId to action view dto (#101)
* Added pageId in the ActionViewDTO and NPE check for setting the json path keys.

* Checking for both json path keys being null and not empty before copying the json path keys into action view dto.
2020-07-15 17:53:38 +05:30
Trisha Anand
212e98c4ba
Fixing test cases failing due to non unique names. (#100) 2020-07-15 16:42:53 +05:30
Arpit Mohan
6c16cba4b9
Adding null checks before encrypting or decrypting the password in AuthenticationDTO object (#99)
This ensures that we don't run in NPE
2020-07-15 16:29:05 +05:30
Arpit Mohan
c15f83dbc3
Adding configuration variables for MAIL_FROM and REPLY_TO in EmailConfig (#97)
The MAIL_FROM & REPLY_TO addresses default to appsmith@localhost. This should be changed in the generated docker.env file during deployment to actual values.

Most email providers will not send emails unless they originate from a valid sender ID.
2020-07-15 15:47:33 +05:30
Trisha Anand
fd0f23b9cc
Database credentials encryption in MongoDB (#80)
* Encrypting the password stored in AuthenticationDTO for every db.

* Adding comment to the properties file to denote that adding encryption salt and password are mandatory to the server coming up.

* Added the encryption salt and password to server.yml to allow the github actions to succeed.

* Adding database migration to encrypt the existing passwords for authentication object (used for storing db connection username/password)

Changes to the installation script install.sh:

1. Instead of overwriting the existing encryption password or salt, giving the user an option to conserve the previous encryption credentials to ensure that the developer users do not lose access to their database configurations (passwords).
2. Added another file for writing encryption credentials (encryption.env) to ensure that we dont delete the encryption password and salt by mistake.
2020-07-14 14:45:08 +05:30
Trisha Anand
56acb5c9fd
New endpoint added to get actions by applicationId in view mode. (#88)
* New endpoint added to get actions by applicationId in view mode. Only id, name and jsonPathKeys are returned in view mode.
2020-07-13 23:27:49 +05:30
Trisha Anand
4a720b80e2
Removing the marketplace basic auth credentials which was hard coded into the code to environment variable. (#71) 2020-07-09 22:38:21 +05:30
trishaanand
9eedb15620
Updating anonymous user permissions for application and associated pages & actions when public access is modified (#57)
* On setting an application to public view, correct permissions are assigned to the application and its pages & actions.

* If anonymous user is allowed a certain permission, the all users (anonymous/logged in) should be allowed the certain permission.
2020-07-09 11:21:39 +05:30
trishaanand
53b61b4942
Skeleton code added for changing application view between public and private to help with client development. (#56) 2020-07-08 17:13:42 +05:30
trishaanand
a5a3a5f4a2
Bug fix - In case of invited user signing up on Appsmith, the password is getting doubly hashed leading to sign in breaking for this user. (#51)
* Bug fix is working. Added a test case which is not working.

* Code cleanup. Test case fixed. Now, when we set the user to enabled, we also store the password that has been passed to the flatMap.

* Minor code cleanup.
2020-07-08 13:16:13 +05:30
trishaanand
765f1c7164
Get user profile should return anonymousUser instead of 401 unauthorized in case the API is called without logging in. (#50)
This will help us display the 404 page on the client reliably.
2020-07-08 11:54:00 +05:30
trishaanand
c9703ea3b1
Special 404 handling and adding a few paths to the unauthenticated list to allow for public applications (#45)
* 404 error added for a few API calls which would be specially handled on the frontend to display an ACL 404 error.

* Putting everything except GET actions, GET pages, and GET applications behind authenticated. This ensures that in the future public applications (view only) would not lead to 401 but any other page would.

* Code formatted.
2020-07-06 20:21:07 +05:30
Shrikant Sharat Kandula
56547ec02f
Move application configuration to be loaded from environment variables (#23)
* Move application configuration to be loaded from environment variables
* Remove unused sentry.properties
* Make missing value sentinel a constant and ignore all *.env files
* Removed now-used ACL properties
* Prefix RapidAPI environment variable with APPSMITH_
* Fix application properties not being loaded into static fields
* Remove application-test.properties file
* Add required env variables for test in GitHub
* Quote URLs for MongoDB and Redis in test config
* Change RAPIDAPI to RAPID_API in environment variable names
* Source .env file in the root of repo in start script
2020-07-06 14:35:56 +05:30
trishaanand
4a05ba6ac5
An invited user on signup should be set to enabled and should not lead to duplicate key exception. (#36) 2020-07-06 12:46:46 +05:30
Arpit Mohan
3035ec9bef
Adding the Github action workflow for the server code (#24)
* Adding the Github action workflow for the server code

* Modifying the redis endpoint in application-test.properties to point to localhost because the Docker service exposes ports to the host
2020-07-03 14:40:57 +05:30
Arpit Mohan
fdeed757ff
Fixing the move action API by removing invocations to subscribe (#17)
* Fixing the move action API by removing invocations to subscribe

Calling subscribe() inside function calls is an anti-pattern and we shouldn't be doing it.
The reactiveContext is not called if the subscribe() function is called in the middle of execution flows. This breaks DB queries.

* Added test case for move action.

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-07-02 15:41:45 +05:30
Shrikant Sharat Kandula
95b9860bf9
Give appropriate error when method is invalid in cURL command (#1) 2020-07-01 12:37:59 +05:30
Trisha Anand
930e577f98 Bug Fix : When page name is updated, the policies should not get overwrritten. Changed the base service function to reset the empty policies to null in case the update is not used to update the policies. 2020-06-27 19:45:24 +00:00
Trisha Anand
76e3db497c Bug fix : Google SSO for sign up led to the organization id for personal organization not getting set up. 2020-06-26 11:59:33 +00:00
Arpit Mohan
bbf0aef450 Merge branch 'bug/embedded-datasource-without-organization-id' into 'release'
When organizationId is null in a datasource, fail with the right error message

The organization id is subsequently used to find a matching plugin (checking for installation essentially), but when organization id is missing, this query never returns. But the error message reads as if the plugin is not installed, whereas it should've been that organization id is missing.

See merge request theappsmith/internal-tools-server!406
2020-06-26 11:43:16 +00:00
Shrikant Kandula
d5921ea52d When organizationId is null in a datasource, fail with the right error message 2020-06-26 11:43:16 +00:00
Trisha Anand
779c79476d Merge branch 'bug/acl-update-role-race-condition' into 'release'
Race condition bug caught in remove user from organization flow where multiple applicaitons/pages/actions exist for an organization.

See merge request theappsmith/internal-tools-server!407
2020-06-25 10:15:07 +00:00
Trisha Anand
57f4f734dd Race condition bug caught in remove user from organization flow where multiple applicaitons/pages/actions exist for an organization. 2020-06-25 15:39:32 +05:30
Shrikant Kandula
3217daab14 Fix Mustache rendering to work on object fields directly 2020-06-25 09:58:20 +00:00
Trisha Anand
6d103b4939 Untested changes for fixing the bug where duplicate policies are getting created for the same permission. 2020-06-25 08:09:59 +00:00
Trisha Anand
a73d182d73 Merge branch 'bug/org-creation' into 'release'
Bug fix : Create Organization is failing because the user is read from the session and not from the repository. Now reading the user at appropriate places.

See merge request theappsmith/internal-tools-server!405
2020-06-24 12:14:25 +00:00
Trisha Anand
aebb50d216 Bug fix : Create Organization is failing because the user is read from the session and not from the repository. Now reading the user at appropriate places. 2020-06-24 17:30:24 +05:30
Arpit Mohan
b63ca6726d Merge branch 'feat/plugin-templates' into 'release'
Add server-side templates support for plugins

Two main themes in this MR:

1. Add support for saving query templates as resource files inside a plugin. This has been done for both Postgres and MongoDB plugins, based on current template contents.
2. Loading of form JSON is now reactive. The blocking call has been moved inside a `Mono.fromSupplier`.
3. The loading of from JSON as well as the templates is cached and are loaded on-demand. This means that the templates are loaded once for a plugin through the lifetime of the server process, and that they are loaded only at the first time they are needed.
4. If loading of these resources fails, we try again when they are needed the next time.

See merge request theappsmith/internal-tools-server!385
2020-06-24 11:08:25 +00:00
Shrikant Kandula
eee2cfcaff Add server-side templates support for plugins 2020-06-24 11:08:25 +00:00
Shrikant Kandula
d7655ebb3c Add image location and documentation link fields to plugins 2020-06-24 08:28:54 +00:00
Arpit Mohan
0be492e8e9 Fixing OAuth2 SSO login for new ACL flow 2020-06-23 13:19:22 +00:00
Trisha Anand
0603da29ee User test - Add request URL and http method to the execution result 2020-06-19 16:24:58 +00:00
Shrikant Kandula
5ce19962a3 Merge branch 'chore/sending-email-should-be-nonblocking' into 'release'
Sending emails is now done in a non-blocking way

See merge request theappsmith/internal-tools-server!396
2020-06-19 07:14:43 +00:00
Shrikant Kandula
5f0a3034b8 Sending emails is now done in a non-blocking way 2020-06-18 17:29:36 +05:30
Shrikant Kandula
70c312ca40 Merge branch 'bug/disallow-delete-datasource-with-actions' into 'release'
Fail deleting datasource if there's actions against it

See merge request theappsmith/internal-tools-server!388
2020-06-18 10:41:49 +00:00
Shrikant Kandula
9f6a4f6ea5 Fail deleting datasource if there's actions against it 2020-06-18 10:41:48 +00:00
Shrikant Kandula
45961ddcde Merge branch 'bug/fail-on-invalid-page-id-when-creating-action' into 'release'
Fail with an error if can't find page when creating an action

See merge request theappsmith/internal-tools-server!394
2020-06-18 10:25:13 +00:00
Trisha Anand
63852041de Merge branch 'bug/delete-application-app-viewer' into 'release'
Bug Fix : Application and page can only be deleted if you have manage application/page permissions respectively.

See merge request theappsmith/internal-tools-server!395
2020-06-18 10:20:50 +00:00
Shrikant Kandula
f19764ab99 Merge branch 'bug/space-not-needed-in-header-in-curl' into 'release'
Fix parse error when there's a space in header in curl command

See merge request theappsmith/internal-tools-server!390
2020-06-18 10:11:39 +00:00
Trisha Anand
4337e88934 Application and page can only be deleted if you have manage application/page permissions respectively. 2020-06-18 15:35:30 +05:30
Shrikant Kandula
1d5fa960db Fail with an error if can't find page when creating an action 2020-06-18 15:05:55 +05:30
Trisha Anand
ec8c63bfee For invitation, throw a bad request error in case all the invite dto fields are not set. 2020-06-18 14:05:48 +05:30
Trisha Anand
e5282dac11 In case a page is opened in edit mode, it should open with permission of MANAGE_PAGE. In case the user is a viewer, the page must not open. 2020-06-17 17:34:26 +05:30
Trisha Anand
893698f09e Merge branch 'release' into feature/acl-spring-object
# Conflicts:
#	appsmith-server/src/main/java/com/appsmith/server/constants/FieldName.java
2020-06-17 15:10:23 +05:30
Trisha Anand
8fc99cf0bd In case a user is invited to an organization as developer, correct top permissions are being assigned via Appsmith role. 2020-06-17 09:33:00 +00:00
Shrikant Kandula
8e40240f25 Fix parse error when there's a space in header in curl command 2020-06-17 12:32:08 +05:30
Arpit Mohan
c6af229a97 Merge branch 'bug/default-page-action-refactor' into 'release'
Adding the widget names set to the default layout for a page

During action name refactor, we require the widget names to exist in the layout. Hence all default layouts must have the widgetName set.

See merge request theappsmith/internal-tools-server!387
2020-06-16 05:25:54 +00:00
Arpit Mohan
a4132d5845 Adding the widget names set to the default layout for a page 2020-06-16 10:50:07 +05:30
Shrikant Kandula
dd0ba857c2 Fix cURL import when using --url argument
Also fixes cases where there's a space between `-X` and `POST` and
similar cases.
2020-06-16 09:59:43 +05:30
Trisha Anand
9dfb72720e Fixed the broken test cases. 2020-06-12 19:35:01 +05:30
Trisha Anand
bb6dc61015 Build fix 2020-06-12 19:16:31 +05:30
Trisha Anand
73757c3425 Merge branch 'release' into feature/acl-spring-object
# Conflicts:
#	.gitignore
#	appsmith-plugins/mongoPlugin/plugin.properties
#	appsmith-plugins/postgresPlugin/plugin.properties
#	appsmith-plugins/rapidApiPlugin/plugin.properties
#	appsmith-plugins/restApiPlugin/plugin.properties
#	appsmith-plugins/restApiPlugin/src/main/java/com/external/plugins/RestApiPlugin.java
#	appsmith-server/src/main/java/com/appsmith/server/constants/FieldName.java
#	appsmith-server/src/main/java/com/appsmith/server/repositories/ActionRepository.java
#	appsmith-server/src/main/java/com/appsmith/server/services/ActionServiceImpl.java
#	appsmith-server/src/main/java/com/appsmith/server/services/DatasourceContextServiceImpl.java
#	appsmith-server/src/main/java/com/appsmith/server/services/DatasourceServiceImpl.java
#	appsmith-server/src/test/java/com/appsmith/server/services/ActionServiceTest.java
#	appsmith-server/src/test/java/com/appsmith/server/services/ApplicationServiceTest.java
#	appsmith-server/src/test/java/com/appsmith/server/services/LayoutServiceTest.java
#	appsmith-server/src/test/java/com/appsmith/server/services/PageServiceTest.java
#	build.sh
2020-06-12 19:14:31 +05:30
Shrikant Kandula
b391f46e2c ACL Migration Script 2020-06-12 11:54:21 +00:00
Trisha Anand
4eab663c8e Bug fix for forgot password error "user not found". During reset password, the user is not logged in and hence the permissions can not be applied during repository findByEmail 2020-06-12 13:57:57 +05:30
Trisha Anand
3dafccba2e In case of sending email for an existing user, fixed the URL. 2020-06-12 13:30:53 +05:30
Shrikant Kandula
ab83bc0223 Fix problem where not all apps were getting policies when invited. 2020-06-11 20:56:52 +05:30
Trisha Anand
e7e008dcd2 Fixed the repository function which was failing for fetching actions during updateLayout. 2020-06-11 07:22:16 +00:00
Shrikant Kandula
1ce336257c Mark any 2xx status code in REST API plugin as successful execution. 2020-06-10 10:51:07 +00:00
Trisha Anand
7a658ce5ea App viewer user in an organization should have read:organizations permission. 2020-06-10 15:55:29 +05:30
Trisha Anand
491afc3599 In case of global datasource, no need to check for organizationId during action create. 2020-06-10 09:08:01 +00:00
Trisha Anand
a89355a5ec Fixes bugs : 1. read:datasource permission should not be applied to application; 2. A user shouldn't be added to an organization if the user already exists in the organization. 2020-06-10 06:22:16 +00:00
Trisha Anand
ac06cc9668 1. user permissions during create/update of actions and datasources would now be set.
2. During update, policies are set to null in the update object to ensure that the policies are not overwritten to empty set.
2020-06-09 20:25:13 +05:30
Arpit Mohan
bbd33c2968 Removing the query field in ActionConfiguration and using String body as the field to store the query
This is to simplify the query pane on the frontend client. The client doesn't need to have separate interfaces for sql and non-sql plugins. All queries will be sent to the server in the form of a String that is parsed in different formats based on the plugin.

Also adding test cases for PostgresPlugin. Used TestContainers to simulate the postgres db in Docker inside the Java test itself. Very useful.
2020-06-09 12:12:27 +00:00
Trisha Anand
061577d2c9 Bug : When the user tries to invite without selecting the role user, this leads to null pointer exception.
Fix : A user CAN NOT be invited to an organization without specifying the role.
2020-06-08 14:56:12 +00:00
Trisha Anand
a888d54059 Changed the get all actions function to fix the bug where find by Example is not working. Instead the same has now been implemented using criteria. 2020-06-08 12:05:49 +00:00
Trisha Anand
9ac7e817cc Merge branch 'feature/acl-remove-getCurrentOrganization' into 'feature/acl-spring-object'
Removed the usage of get current organization id. Added organization id to a few api calls.

See merge request theappsmith/internal-tools-server!367
2020-06-08 06:45:04 +00:00
Trisha Anand
a31796a216 Removed the usage of get current organization id. Requires addition of organization id to a few api calls. 2020-06-08 06:45:04 +00:00
Trisha Anand
f9d63f9881 Adding a 3P Api to a page now also expects the client to send the organization id. 2020-06-05 16:14:15 +05:30
Trisha Anand
87aafd6cf4 Adding test case for testDatasource
Refactoring the testDatasource code by moving the business logic to the service layer.
2020-06-05 10:05:23 +00:00
Arpit Mohan
1a68b7f561 Fixing the DSL Json for default layouts in new pages. 2020-06-04 16:13:47 +05:30
Trisha Anand
9e1742c289 Add OrgId to the output of the api used to return all the page ids and names given an application (id or name) 2020-06-04 08:08:15 +00:00
Arpit Mohan
1ac69bab50 Modifying the default page name to Page1
Also creating a default empty layout when a new page is created. This ensures that the client can show the default message on new page creations.
2020-06-04 13:05:34 +05:30
Trisha Anand
f8cf87e3c8 Invite existing user to an organization works. Updated the test case for adding user to an organization as well to use the new API. 2020-06-01 17:39:27 +00:00
Trisha Anand
f1e1e6959a Bug : New users aren't able to read their own user object and hence homepage doesnt load.
Fix : Added lateral permissions for user on create.
2020-05-29 05:28:30 +00:00
Trisha Anand
d6670c70cc Bug Root Cause : New users have no applications inside the organizations(s). In this case, get all applications does not return back organizationApplications object.
Fix : In getAllApplications, instead of iterating over collections of applications which could be empty, we iterate over organizations where we are guaranteed to have atleast one organization.
2020-05-28 13:31:24 +05:30
Trisha Anand
6475be63d1 Baseline code added for cascading the org level permissions to applications, pages and eventually actions. 2020-05-27 14:36:57 +00:00
Arpit Mohan
d20e92a587 Modifying the Action object to include an array of Property for dynamicBindingPathList 2020-05-27 13:16:38 +05:30
Arpit Mohan
9f82bde92c Adding statusCode from AppsmithPluginErrors when plugins error out
This ensures that we can always display a status code on the client.
2020-05-26 11:50:09 +00:00
Trisha Anand
59a83d414b Added description to roles for organization appsmith roles. 2020-05-26 10:49:42 +05:30
Arpit Mohan
a569156029 Merge branch 'hotfix/action-error' into 'release'
Creating the actionExecutionResult object for error scenarios as well.

See merge request theappsmith/internal-tools-server!354
2020-05-23 07:23:13 +00:00
Arpit Mohan
e6b7ffca9c Creating the actionExecutionResult object for error scenarios as well.
This ensures that we can populate the request fields for all action executions
2020-05-23 12:49:01 +05:30
Trisha Anand
0c9c95bc9a Fixed the findAll repository function which was leading to get all actions via application id to throw an internal server error. 2020-05-22 15:56:09 +05:30
Trisha Anand
d98fce3d09 WIP: adding helper functions for adding/removing roles from an organization. Adding role updates the organization right now. Removing role -> added a helper.
TODO : finish the above code flows + cascade these to the children objects of the organization -> Applications/Pages/Actions.
2020-05-21 15:05:43 +00:00
Shrikant Kandula
7037d99cfa Use sequences for numbering new datasources. 2020-05-20 11:21:32 +00:00
Trisha Anand
e95b680169 create application now expects organization id. Fixed the test cases which broke because of this basic change in the way applications are created. 2020-05-19 17:09:51 +00:00
Shrikant Kandula
b13a7a5df3 Fix incorrect call to updatedAt. 2020-05-19 19:25:32 +05:30
Shrikant Kandula
329587f5ff Fix NPE when using datasources without updatedAt. 2020-05-19 13:48:58 +00:00
Arpit Mohan
14c1778645 Merge branch 'bug/curl-auto-add-protocol' into 'release'
Automatically add protocol to URL provided to cURL command.

Notion ref: <https://www.notion.so/appsmith/CURL-import-for-incomplete-but-valid-URLs-like-www-google-com-leads-to-the-URL-not-getting-read-Th-9191456cb1b24cd68b92072c1a6f3ab6>.

See merge request theappsmith/internal-tools-server!343
2020-05-19 04:23:59 +00:00
Shrikant Kandula
db0532941d Automatically add protocol to URL provided to cURL command. 2020-05-19 04:23:58 +00:00
Arpit Mohan
85ea6563db Merge branch 'hotfix/server-use-forward-headers' into 'release'
Adding the ForwardedHeaderTransform bean to enable spring to parse...

Adding the ForwardedHeaderTransform bean to enable spring to parse X-Forwarded-* headers from Nginx proxy

See merge request theappsmith/internal-tools-server!344
2020-05-19 03:56:40 +00:00
Arpit Mohan
158f5c8203 Adding the ForwardedHeaderTransform bean to enable spring to parse X-Forwarded-* headers from Nginx proxy 2020-05-19 09:22:33 +05:30
Shrikant Kandula
bffd68b1a9 Merge branch 'bug/postgres-empty-result' into 'release'
Don't fail after executing a non-SELECT query on Postgres.

See merge request theappsmith/internal-tools-server!341
2020-05-18 13:42:24 +00:00
Shrikant Kandula
c4d3d535a1 Rename isExecuteOnLoad to executeOnLoad.
The `is` prefix apparently makes Spring unhappy.
2020-05-18 12:13:54 +00:00
Shrikant Kandula
c18c344f4b Don't fail after executing a non-SELECT query on Postgres. 2020-05-15 18:13:36 +05:30
Shrikant Kandula
180002a984 Handle errors when destroying stale connections.
This happens when the stale connection is an invalid connection object,
like when if it's created with invalid credentials etc.
2020-05-15 03:26:35 +00:00
Arpit Mohan
4fa254a449 Adding error log message whenever an action execution fails because of invalid datasource 2020-05-14 15:26:05 +05:30
Arpit Mohan
a9580effa7 Using the last value of duplicate headers as that is the behaviour displayed by webclient and other clients as well. 2020-05-14 08:49:06 +05:30
Arpit Mohan
71d8812feb Fixing bug where duplicate headers were being set in the action execution result
Also removing empty headers from being sent to the action
2020-05-14 08:11:24 +05:30
Arpit Mohan
fb9e9fbf4c Request body and header in Action Execution Response 2020-05-14 02:08:46 +00:00