Commit Graph

242 Commits

Author SHA1 Message Date
Pranav Kanade
23078215df
fix: unread indicator behaviour (#8290)
* fix: unread indicator behaviour

* minor fixes

* no need to deep copy the state

* removed state update of show indicator

* refactor to handle delete & insert thread cases and getting rid of unnecessary state

* removing unnecessary updates to store

* with update event if the thread is not there we'll put it in

* fetching the comments when user starts to edit the app

* updated tests

* typo fixed

* using memo to get the unread comments flag

* removed dependency from global state

* storing last updated comment thread id for each application.

* updated a few test cases
2021-10-19 15:56:56 +05:30
Paul Li
a9e2eac8c3
fix: After using an app with AudioRecorder widget, Appsmith always shows the mic symbol in the tab (#8424)
-- Upgrade underlying package, react-media-recorder to the latest one
2021-10-13 18:10:04 +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
Pranav Kanade
db02756173
fix: upgraded socket.io client package to latest stable version (#7845)
* upgraded socket io client to latest stable version

* auto update enabled

Co-authored-by: Rishabh Saxena  <rishabh.robben@gmail.com>

Co-authored-by: Rishabh Saxena  <rishabh.robben@gmail.com>
2021-09-27 16:59:47 +05:30
Satish Gandham
eb2cbb383d
perf: Optimize list widget renders by memoizing part of renderChildren (#7681)
* - Optimze list widget renders by memoizing part of renderchildren

* - Fix failing tests and add more dependecnies to memo

* - Fix issue with repositioning widgets inside list.

* comment out the moving of widgets test

* Remove stray import

* Fix the failing jest test

Co-authored-by: Satish Gandham <satish@appsmith.com>
2021-09-24 17:00:26 +05:30
rahulramesha
6cefc6dbea
feat: Undo/Redo (#6654)
* Scaffolding for undo-redo

* undo redo working Poc commit

* memory performance improvements by diffing

* dont run update on undo/redo"

* merging widget postion update and canvas bottom row update into one dsl update.

* fix tabs widget

* Visible updates per undo redo action (#6838)

Co-authored-by: Rahul R <rahulramesha@Rahuls-MacBook-Pro.local>

* resize atomic operation

* fix switch control state issue

* disallow undo/redo for snipping and comment mode

* disallow undo/redo for snipping and comment mode

* fix color picker issue in undo/redo

* add test for replayDSL

* option control fix, adding logs

* minor position change undo redo updates

* add test cases for replayHelpers

* property Upade visual change

* remove unused code

* global hot key jest test for undo redo

* Fixing batch updates on property change..

* add tests for toggle control in property pane

* unwanted utils.

* add tests for text control

* add tests for deletion

* add tests for dropping a new widget

* adding jest test for replayUtils

* add move widget tests

* add tests for color picker control

* add analytics for undo/redo

* add analytics for undo/redo

* tab addition atomic

* cypress tests for propertyPane, toasts and radiowidget optionControl

* replayDSL end of redo stack fix

* property update changes

* menu option control debounce input

* color picker empty undo fix

* fix cypress tests

* widget add/remove atomic

* revert alternative approach to handle atomic operations

* update replayDSL test

* add some comments

* addressing review comments

* flash color for property pane controls

* Fixing adding of tabs widget as well.

* code review comments.

* merging widget postion update and canvas bottom row update into one dsl update.

* fix ordering of tabs property control

* meta property update canvas min height.

* fixing failed specs.

* Fixing entity explorer update on deleting tab from entity explorer.

* address review comments and minor property update changes

* fixing failing tests

* merge conflicts

* changes to cater widget api.

* fix suggested widget table issue

* draggable list for undo redo

* fix widget name focus

* excluding canvas updates.

* fixing codeEditor update on propertySection collapse

* fixed failing test case

Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
Co-authored-by: Rahul R <rahulramesha@Rahuls-MacBook-Pro.local>
Co-authored-by: root <root@DESKTOP-9GENCK0.localdomain>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2021-09-21 13:25:56 +05:30
Vinod
2bd324a5aa
feat: address few bug with linting and improve highlighting (#7287)
* show lint errors as warnings

* add initial code

* adjust editor positions

* update pr comments

* mark jshint errors

* reset changes

* remove unused prop

* fix test errors

* remove unused imports

* dont show warning in the error counter

* show yellow if warning

* remove active error functionality

* update linter to use async functionality

* update linter messages

* update binding positions

* fix evaluate tests

* dont show undefined errors in debugger

* move lint code to separate file

* update testes

* remove unused import

* update tests

* address pr comments

* add comment to explain why

* replace proper regex

* fix undefined message error

* Update styling for warnings

* address position issue in the linter

* Fix failing tests

* Merge 'release' on to  'Feature/linting-errors'

* add console as global object

* address lint issues

* fix requested linting erros for release

* fix breaking issue

* remove unwanted code

* revert unrelated changes

* remove unnecessary file

* add extra libraries to jshint data

* import lodash functions that are used

* update jshint settings

* Fix failing test

* don't show lint errors if there is a parsing issue

* update jshint to latest version
2021-09-17 16:01:45 +05:30
Tolulope Adetula
15b26f823e
feat: Tree Select widget (#6271)
* feat: Tree Select

* feat: styling multiselect

* fix: selected values

* fix: remove console statement

* fix: popup position

* fix: selection types

* fix: Form validation using TreeSelect

* feat: Add Label to TreeSelect

* fix: styling

* fix: Dropdown search

* fix: Add Entity Definitions

* fix: Entity Definition

* Feat: Add clear icon

* fix: validation

* fix: options validation

* fix: Styling issues

* fix: build error

* Fix: Separate Tree Select widget

* fix: issues and add validation

* fix: Options Validation

* fix: issues with build

* fix: yarn

* fix: changes

* fix

* Fix: select component

* fix: PR issues

* fix: merge conflicts

* fix: issues

* fix: all issues

* test: added test

* fix: failing test
2021-09-17 02:08:35 -07:00
Abhinav Jha
b49f5097c6
refactor: Widget Development API (#6405) 2021-09-09 20:40:22 +05:30
Paul Li
4c6fb4fcb6
feat: New widget - Audio Recorder widget (#6702)
User can record audio / play it as feedback and then use the data in any API with the help of this new widget
2021-09-08 16:30:36 +05:30
Snyk bot
b7e149958e
fix: app/client/package.json & app/client/yarn.lock to reduce vulnerabilities (#7044)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-IMMER-1540542
2021-09-06 02:47:11 +05:30
Arpit Mohan
c078976616
chore: Minor refactoring changes for RTS (#7011)
* Checking for anonymousUser when performing session check

* Using the custom path /rts instead of the default /socket.io. This makes the endpoint more readable & scalable for future websocket endpoints as well.
2021-09-02 08:47:42 +05:30
Tolulope Adetula
5dd083665c
fix: update @blueprintjs/datetime package (#6719) 2021-08-31 15:11:37 +05:30
arunvjn
d119737de9
feat: Introducing JS Snippets (#6453)
Users should be able to look up relevant snippets based on where they trigger snippets from, narrow down the filter results based on entities, customize the snippet with custom data, evaluate and see its real time value.
2021-08-29 09:20:16 +05:30
NandanAnantharamu
530735e13f
test: CypressNewVersion (#6116)
* Upgrade Cypress Version

* Upgrade to 7.6

* update moment library with Dayjs

* updated a test

* Added tests for copy to clipboard

* Added a missing dsl
2021-08-25 19:31:04 +05:30
Paul Li
cb4242e7e5
Feat: Style customisation in the button widget (#6052)
Added multiple style props to the button widget:
- Button styles
- The background colour can change with a hex code
- elevation (box-shadow & colour)
- There are button variant contained (solid button), outlined (only borders), text (text buttons)
- Button can have an end icon or start icon
2021-08-24 19:23:15 +05:30
Ashok Kumar M
de73e847ae
[Enhancement] Adding Webpack bundle analyser for CRA, removing source map explorer for better visualisation. (#6793)
* Enhancement: Adding better build visualiser(Webpack build analyser)
2021-08-24 17:44:23 +05:30
Tolulope Adetula
24b78d1e2b
Multiselect Widget (#5228)
We have now separated the multi-select from the select widget, This has simplified the implementation and helped us resolve any issues we where facing because of the complexity bought by both under the same hood and has  also increased the discoverability of the widget for our end users. We have also simultaneously taken up multiple enhancements related to the select and multi-select widget.
2021-08-03 12:08:01 +05:30
Abhinav Jha
1391b55bae
Widget Property Validation structure (#5270) 2021-07-26 11:20:46 +05:30
rahulramesha
f5e079f040
[Perf] prevent un-necessry re-renders of resizable Component on property control keyPress (#5885)
prevent un-necessry re-renders of resizable Component on property control keyPress
2021-07-23 12:10:39 +05:30
Vicky Bansal
718c257286
Support for Google reCaptcha v2 in Button Widget (#5638)
* Handle google recaptcha v2 in button component

* Use same code for recaptcha v2 and v3

* Updated error handling comments

* Added toggle to use google recaptcha v2 with button

* Create separate components for Google recaptcha v2 and v3

* Extract click function from google recaptch v3 component

* Hide recaptcha error badge and show invalid site key error on button key

* Fix isInvalidKey name
2021-07-08 17:32:08 +05:30
Hetu Nandu
d4f3d49681
Add node-forge crypto libraries (#5597) 2021-07-05 17:15:21 +05:30
Hetu Nandu
c2a1c1feb4
Don't log debug level logs in prod (#5527) 2021-07-05 11:19:43 +05:30
Paul Li
38ffe86290
Rate widget (#4891)
* FEATURE-3357 : Rate Widget

-- Create the first MVP of rate widget

* FEATURE-3357 : Rate Widget

-- Change the widget name into rating
-- Change the widget icon
-- Fix the overflow issue in case max count is big
-- Fix the issue in case default rate is zero
-- Add validations for maxCount and defaultRate

* FEATURE-3357 : Rate Widget

-- Fix an issue : Stars is cut off if maxCount is greater than 20
-- Add test cases for two validation types, RATE_DEFAULT_RATE and RATE_MAX_COUNT

* FEATURE-3357 : Rate Widget

-- Add expected data type for tooltip field

* FEATURE-3357 : Rate Widget

-- Expose maxCount

* FEATURE-3357 : Rate Widget

-- Change contents of isAllowHalf property
-- Adjust alignment of stars dynamically
-- Decrease default widget width

* FEATURE-3357 : Rate Widget

-- Remove a unnecessary comment block
2021-07-02 15:25:50 +05:30
dependabot[bot]
f5cb70e06c
Bump prismjs from 1.23.0 to 1.24.0 in /app/client (#5458)
Bumps [prismjs](https://github.com/PrismJS/prism) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/PrismJS/prism/releases)
- [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PrismJS/prism/compare/v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: prismjs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-29 15:32:18 +05:30
Snyk bot
9ab1113763
Security upgrade node-sass from 4.14.1 to 6.0.1
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-TRIMNEWLINES-1298042
2021-06-28 01:04:39 +05:30
Hetu Nandu
441f42c72f
Generate linting errors via JSHint (#5034) 2021-06-21 16:39:51 +05:30
Rishabh Saxena
07a292328a
Comments feature fixes (#4738) 2021-06-09 16:05:10 +05:30
Satish Gandham
7c0f46a189
Merge pull request #4605 from appsmithorg/perf/ui/optimize-editableText-component
[Perf] Patch for bluperint to optimize editable text component
2021-06-07 20:11:54 +05:30
Rishabh Saxena
2e6b262f29
Revert specific handling at setup for macs with apple chips (#4591) 2021-06-07 16:23:18 +05:30
Satish Gandham
5152f2ad57 Merge branch 'release' into perf/ui/optimize-editableText-component 2021-06-07 10:25:22 +05:30
Somangshu Goswami
29262ecbd5
Merge pull request #4309 from appsmithorg/fix/text-parsing
Fix email parsing issue in text widget
2021-06-04 16:06:29 +05:30
abhishek nayak
8a1ed9773b
Merge pull request #4383 from appsmithorg/snyk-upgrade-a64f1aa8c6960bf68ab55f4ece93ec96
[Snyk] Upgrade flow-bin from 0.91.0 to 0.148.0
2021-06-03 13:03:28 +05:30
Satish Gandham
899b7f2f24 Merge branch 'release' into perf/ui/optimize-editableText-component 2021-06-01 22:54:56 +05:30
dependabot[bot]
d65dcdc72c
Bump lodash from 4.17.20 to 4.17.21 in /app/client (#4438)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.20 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.20...4.17.21)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-31 14:15:01 +05:30
Rishabh Saxena
9f76218306
Trigger invite flow via comments (#4602) 2021-05-27 11:51:36 +05:30
vicky.bansal@primathon.in
042ee3fa46 Merge branch 'release' of https://github.com/appsmithorg/appsmith into fix/text-parsing 2021-05-26 08:57:40 +05:30
vicky.bansal@primathon.in
dcebd1103e Fix for email parse 2021-05-26 08:47:46 +05:30
Satish Gandham
7ef5f70596 Merge branch 'release' into perf/ui/optimize-editableText-component 2021-05-24 06:53:35 +05:30
Satish Gandham
c5133fca87 - Patch the blueprint core module with the editabletext performance optimization 2021-05-21 00:55:05 +05:30
Rishabh Saxena
8964aea9df
[Feature] Comments feature updates (#4579) 2021-05-20 17:33:08 +05:30
Somangshu Goswami
41419e0406
Merge pull request #4199 from appsmithorg/feature/table-excel-export
Allow table data to download as Excel
2021-05-18 20:17:16 +05:30
snyk-bot
02d1231d60
fix: upgrade flow-bin from 0.91.0 to 0.148.0
Snyk has created this PR to upgrade flow-bin from 0.91.0 to 0.148.0.

See this package in npm:


See this project in Snyk:
https://app.snyk.io/org/nikhil-nu4/project/d17f040d-321b-4afe-b115-70b9f45067b1?utm_source=github&utm_medium=upgrade-pr
2021-05-09 04:59:13 +00:00
Satish Gandham
611a07af75 Add eslint rule to sort destructure keys 2021-05-04 19:45:29 +05:30
vicky-primathon.in
3d79900290 Merge branch 'release' of https://github.com/appsmithorg/appsmith into feature/table-excel-export 2021-04-29 19:56:21 +05:30
Somangshu Goswami
64961dde16
Merge pull request #4006 from appsmithorg/fix/native-scrollbars-experience
Fix-Native scrollbar UX with custom scrollbars
2021-04-29 16:27:14 +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
vicky-primathon.in
92764c8f5c Used zipcelx instaed of xlsx lib to download table data as excel 2021-04-29 14:50:43 +05:30
vicky-primathon.in
fcc4ad18f6 Merge branch 'release' of https://github.com/appsmithorg/appsmith into fix/native-scrollbars-experience 2021-04-29 01:42:47 +05:30
vicky-primathon.in
e78b4db3b2 Merge branch 'release' of https://github.com/appsmithorg/appsmith into feature/table-excel-export 2021-04-28 18:54:26 +05:30