* -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
* 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
* 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>
* -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
* 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>
* -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
* 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
* Added field to autogenerate values in DB column
* Added comment and refactor
* Autogenerate field update according to names instead of type for ArangoDB
* 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>
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
* -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
* -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>
* 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
* 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
* 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
* 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
* 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
* 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>
* 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>
* -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
* 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
* 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
* 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>
* 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
* 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
* 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
* -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
* 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
* 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>
* -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
* Added permission export:applications for admin role
* Only admins are allowed to export applications
Co-authored-by: Pranav Kanade <pranav@appsmith.com>
* [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>
* 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
* 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