Commit Graph

397 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
87beed34d6
[Bugfix] Empty object creation in published pages for application object fixed 2021-08-09 11:43:51 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Anagh Hegde
bd3369dd03 Remove * import statements 2021-06-18 10:25:36 +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
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
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
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
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
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
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
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
Sumit Kumar
c156560313
[Bug] fix NPE (#4613)
* fix NPE
* add ip check for localhost
2021-05-21 13:47:51 +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
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
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
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
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
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
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
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
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