Commit Graph

137 Commits

Author SHA1 Message Date
Pranav Kanade
3c0b33763e
fix: Collab feedback fixes (#7298)
* hide the widget names

* blocking multiselect in comment mode

* wrapped the name

* the latest comment will be on top

* isolated a condition for selection canvas

* added unresolve tooltip

* added resolved thread tooltip

* updated sorted comment cards when user gets the update/insert/delete events
2021-09-10 16:17:17 +05:30
Rishabh Saxena
928242d79b
fix: center alignment for profile placeholder (#7197) 2021-09-07 18:15:04 +05:30
Ashok Kumar M
370a4800c2
fix: resize breaks DnD (#7174)
This is an important fix for a blocker in release. Force merging
2021-09-07 13:13:25 +05:30
Rishabh Saxena
685aa3b98c
feat: make comments publicly available (#7143) 2021-09-06 18:04:40 +05:30
albinAppsmith
3d85575979
style: Removed dark/light. theme switcher and made light theme default (#6979)
* Removed Theme switcher

* Changed default theme to light

* Auth screen dark theme changes

* auth screen ui ix

* Theme change Ui test removed

* bug fix
2021-09-06 14:37:52 +05:30
Pranav Kanade
b1a399b64a
fix: comment pins related issues (#7081)
* fix: the thread with the latest comment will be at the top.

* fixed the z index of unpublished pin

* making the layout control absolute

* removed comments

* reversed the ids order

* made sorting logic generic to work with list of ids

* minor refactor

* putting layout controller on top of canvas
2021-09-06 14:27:47 +05:30
Ashok Kumar M
83147afdc5
feat: Widget grouping Extended Features (#6538)
- [x] Draw to select from outside of the editor.
- [x] Cmd + A to select child widgets inside containers, forms, list, tabs, and modals.

Fixes #5995
Fixes #6102
2021-08-24 17:08:20 +05:30
Pranav Kanade
ca0b08e482
Fix: background rect width of usernames, of other realtime users (pointer sharing) (#6703)
* updated collab event names

* added a canvas to record the mouse movement

* can show pointers

* temp

* can draw multiple pointers using canvas, moved multiplayer canvas to artboard level

* using constants to draw the cursors on canvas

* can show pointers with different colors

* showing proper username

* added constants for collab events and namespace

* updated the page socket var name

* defined a id constant, and resizing the canvas if needed on window resizing, and then clearing it

* minor refactor

* hide pointer of users leaving the page

* moved our the share pointer func

* defined separate types

* added minor comment

* using requestAnimationFrame to improve performance.

* added connection checks before emitting events. Added mechanism to try to reconnect manually

* using ref to keep animation step id

* updated the way using requestAnimationFrame

* passing pageId as prop to canvas and pointer canvas

* emitting events only if there are more than one realtime editors

* added pageId dependency

* removed unnecessary prop and using reactive state

* remove explicit connection event

* maintaining connection state of page level socket

* fixed the multipointer text background width
2021-08-19 11:13:53 +05:30
Pranav Kanade
7a75d400ab
Feature: Sharing pointers of concurrent editors (#6540)
* updated collab event names

* added a canvas to record the mouse movement

* can show pointers

* temp

* can draw multiple pointers using canvas, moved multiplayer canvas to artboard level

* using constants to draw the cursors on canvas

* can show pointers with different colors

* showing proper username

* added constants for collab events and namespace

* updated the page socket var name

* defined a id constant, and resizing the canvas if needed on window resizing, and then clearing it

* minor refactor

* hide pointer of users leaving the page

* moved our the share pointer func

* defined separate types

* added minor comment

* using requestAnimationFrame to improve performance.

* added connection checks before emitting events. Added mechanism to try to reconnect manually

* using ref to keep animation step id

* updated the way using requestAnimationFrame

* passing pageId as prop to canvas and pointer canvas

* emitting events only if there are more than one realtime editors

* added pageId dependency

* removed unnecessary prop and using reactive state

* remove explicit connection event

* maintaining connection state of page level socket
2021-08-18 15:59:52 +05:30
Ashok Kumar M
b2ade8e17e
Fix: disable widget selections when widget dragging is in progress. (#6573)
* Fix: disable widget selections when widget dragging is in progress.

* new widget select

* fixing jest tests.
2021-08-16 14:54:42 +05:30
Ashok Kumar M
f19ebbafe9
[Feature] Widget grouping - Allow Drag and Drop of multiple widgets. (#5389)
* dip

* dip

* scroll

* fixes

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* solve for canvas glitches

* dip

* dip

* dip

* adjust scroll speed

* dip

* dip(code clean up)

* dip

* dip

* ---dip

* dip

* dip

* dip

* middle ware for dropping multiple widgets.

* adding scroll to drag for canvas selection.

* fixing drag disabled and modal widget(detach from layout) drops

* firefox and safari fixes

* rebase conflicts.

* fixing broken specs.

* fixing specs and adding jest tests.

* show border and disable resize when multiple widgets are selected.

* selection box grab cursor

* merge conflicts.

* code clean up

* fixing specs.

* fixed a bug and failed specs.

* fixing rerenders.

* code clean up

* code review comments

* always have the drag point inside the widget.

* fetching snap spaces instead of calculating.

* remove widget_move action

* fixing bugs with add widget parent height updation.

* fixing specs.

* List widget conflict fixes.

* fixing canvas drop persistence.

* Adding click to drag for modals and fixing few issues.
2021-08-12 11:15:38 +05:30
Yash Vibhandik
fddf2aece0
FIX #5254 : dropdown height fixed and made scrollable (#6170) 2021-08-10 18:10:21 +05:30
Rishabh Saxena
e4255f6773
Minor fixes for comments on the modal widget (#6368) 2021-08-06 14:47:56 +05:30
Rishabh Saxena
f0bf799b67
Use feature flag api to enable/disable comments (#6322) 2021-08-05 11:40:19 +05:30
balajisoundar
0bd9753fef
Fix #5075 Retain search keyword and search results when user navigates (#6091)
away from homepage and comes back.
2021-07-23 13:01:16 +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
Hetu Nandu
c2a1c1feb4
Don't log debug level logs in prod (#5527) 2021-07-05 11:19:43 +05:30
Ashok Kumar M
cf19b8e44d
[Feature] Widget Grouping Phase - 3 (Cut Copy Paste) (#5083)
* Cut copy paste first cut

* removed different parent groups logic

* mouseup on the outer canvas removes selections.

* bug fix

* remove unwanted dead code.

* Adding tests

* build fix

* min height fixes

* fixing specs.

* fixing specs.
2021-06-28 12:41:47 +05:30
Ashok Kumar M
a76b8cad9b
Feature: Widget Grouping Phase II (#4825)
* dip

* dip

* Cleaning up grid density positioning.

* dip

* dip

* dip

* dip

* code clean up

* dip

* dip(restructuring widget selection)

* Deselect parents and children of a widget when user multi selects.

* dip

* dip

* dip

* dip

* dip

* fixing a bad merge

* fixing tests

* adding jest tests.

* common util

* dip

* dip

* fixes

* restrict in deploy mode.

* fixing dynamic layout.

* fixing tests.

* on paste fix.

* fixing specs.

* addressing code review comments

* dip

* dip

* dip

* fixing specs.
2021-06-17 18:56:54 +05:30
Rishabh Saxena
1b2f01ed2a
Profile image updates (#4783) 2021-06-17 00:06:34 +05:30
Rishabh Saxena
9c75596957
Init notifications (#4839) 2021-06-09 20:02:17 +05:30
Rishabh Saxena
8964aea9df
[Feature] Comments feature updates (#4579) 2021-05-20 17:33:08 +05:30
Shrikant Sharat Kandula
1e052a9462
Fix redirectUrl not being encoded (#4546) 2021-05-18 11:22:54 +05:30
Satish Gandham
8ad7eecdeb - Auto fix sort ddestructured props rule 2021-05-13 14:05:39 +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
Satish Gandham
7f7f6f666b
Development: Add eslint rules for code consistency (#4083)
Co-authored-by: Satish Gandham <satish@appsmith.com>
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
2021-04-28 15:58:39 +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
ram-primathon
3b0fb539d5
Property Pane re design (#3057)
Co-authored-by: devrk96 <rohit.kumawat@primathon.in>
Co-authored-by: hetunandu <hetu@appsmith.com>
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Vicky Bansal <67091118+vicky-primathon@users.noreply.github.com>
Co-authored-by: nandan.anantharamu <nandan.anantharamu@thoughtspot.com>
2021-03-15 17:47:56 +05:30
Arpit Mohan
660c194009
Moving all toast messages to messages.ts file (#2798)
Co-authored-by: hetunandu <hetu@appsmith.com>
2021-03-13 19:54:45 +05:30
akash-codemonk
1e4878f983
Support editing user's name field (#3306) 2021-03-04 15:07:02 +05:30
Hetu Nandu
3237950d97
End to cyclical dependency woes (#3380)
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
2021-03-04 10:54:47 +05:30
devrk96
ac23629647
Feature: API Pane Redesign (#2218)
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2021-02-11 18:24:00 +05:30
Pawan Kumar
3e53df8b64
Update Default styles of Widgets (#2823)
* update default styling of widgets

* [CodeFactor] Apply fixes

* update widgets styles

* fix eslint bug

* update button colors

* update primary button color

* update primary button color

* remove px in 0px in css

* incorporate abhinav review feedbacks

* fixed global styling of popover

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
Co-authored-by: codefactor-io <support@codefactor.io>
2021-02-08 13:00:01 +05:30
Rishabh Saxena
32b641c118
Implement new designs for the editor and viewer's navbar (#2750) 2021-02-04 12:32:36 +05:30
Rishabh Saxena
ca052e7515
minor updates for auth pages: polish UI, hide empty email error message (#2743) 2021-01-28 12:50:09 +05:30
Rishabh Saxena
a2528286a3
bump blueprint core to 3.36 for using async control prop (#2491) 2021-01-13 10:53:16 +05:30
Piyush Mishra
1521f7445c
Fix eslint warnings (#2510) 2021-01-12 06:52:31 +05:30
Pawan Kumar
563c32d203
[Fix] - Authentication after 404 not redirecting back to the original page (#2423)
* add redirect issue

* add check for crash code

* redirect anonymous user to login page

* remove unused selector

* move redirection logic to error saga level

* update action type name

* replace occurance of redirectTo to redirectUrl

* remove unused selector in PagenoutFound + change saga name

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2021-01-06 16:54:16 +05:30
Rishabh Saxena
6dd97a6f09
fix stacking order of popover and app header (#2338) 2020-12-30 14:36:24 +05:30
Piyush Mishra
806a139ddb
Make prettier changes (#2337) 2020-12-24 10:02:25 +05:30
Pawan Kumar
e63f0a9d2a
Fix: 404 error page shows server unavailable (#2195)
* mount error wise route

* remove log

* add test case

* fix wrong error page

* fix typescript error + remove unused variable

* remove 404 + 500 routes

* remove unused imports

* fix typo in test case

* remove history replace in utils

* remove unused variable

* add error codes for safe crash

* remove unused variables

* add error codes in all api rejects + update error reducer code type

* update error codes in init saga

* add selectors for error safe crash + take error logic out of app router

* remove unused variables

* remove extra line

* add header in error pag

* refactor page header on error page

* remove unused import

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2020-12-17 12:33:59 +05:30
Hetu Nandu
04e963c599
Fix for 502 errors from the server (#1949) 2020-12-09 00:43:48 +05:30
Rohit Kumawat
175d43aad3 limit added for showing user icons in an organization 2020-11-12 15:01:51 +05:30
Hetu Nandu
a51082fb54 Merge branch 'master' into release 2020-11-11 18:51:03 +05:30
devrk96
73869eee69
Feature: Show org user icons on homepage (#1685)
* Displaying org user icons feature is implemented

* using username if name not found in user details

* Share user icon cypress test implemented
2020-11-11 18:42:05 +05:30
Hetu Nandu
20ef86f118
Improve app initialisation for timeouts (#1412)
Fixes: #1510 

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2020-11-04 17:10:59 +05:30
Abhinav Jha
543b7ec72d
Entity Explorer Render (#1354)
* WIP: Performance improvements in entity explorer

* WIP: Achieve feature parity for entity explorer with release

* Update unit tests

* Add sentry profiling to current page entity properties component

* Fix page add/delete not showing up on entity explorer issue. Update memoization logic for pagegroup entity

* Deal with the ban-ts-ignore eslint issues

* Update unit tests

* Fix widget entity children visibility

* Fix tests and code

* Fix tests for scenarios where the collapsed entities are unmount, as this is a part of the performance optimization

* Filter undefined children when generating structureDSL

* Remove rule from eslintrc

Consolidate createPage test command

* Update CreatePage tests to remove redundant dsl updates

* Revert CreatePage test changes, as adding more checks within this command globally causes other tests to have issues.

* re-enable eslint rule, as without it CI tests fail

* Revert to ban-ts-comment

* Fix typescript ban-ts-ignore issue by upgrading react-scripts and fixing typescript issue across the application

* Typescript errors handled

Co-authored-by: vicky-primathon.in <vicky.bansal@primathon.in>
2020-11-03 18:35:40 +05:30
Automated Github Action
4a754f526b Merge branch 'release' of https://github.com/appsmithorg/appsmith into release 2020-10-28 11:07:52 +00:00
Hetu Nandu
44725c983e
Use global history on 500 page (#1446) 2020-10-28 16:29:34 +05:30
Automated Github Action
ab0f016f03 Merge branch 'release' of https://github.com/appsmithorg/appsmith into release 2020-10-28 08:11:24 +00:00