Commit Graph

327 Commits

Author SHA1 Message Date
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
Rishabh Saxena
a69c8b7484
feat: callouts for wip features (#8080) 2021-10-04 13:31:46 +05:30
Pranav Kanade
a1488a73f6
refactor: client side rts (#7837)
* moved constants to a proper files

* added new action constants

* updated websocket reducers and actions

* updated websocket saga to handle proper socket events

* updated initialization

* updated multi pointer arena + realtime app editors components

* minor feedback update

* updated events list by socket level

* removed e.persist

* passing socket obj rather than just id
2021-10-01 16:44:19 +00:00
Pranav Kanade
b261efc511
fix: skip bot comment when user skips comments tour (#7693)
* setup for skipping the bot comments if user skips the comments tour

* Using the onboarding status api

* removed comments

* fixed typos

* added test cases

* small fixes

* updated the tests

* minor update to a test case
2021-10-01 21:55:55 +05:30
Apeksha Bhosale
222f0e04c3
sending collectionName instead id in refactor (#7930) 2021-09-29 20:10:49 +05:30
Apeksha Bhosale
a1e5b39b49
fix: Debugger logs and errors related to js editor (#7749)
* added errors

* small change url

* messages created

* few logs for debugger

* after merge
2021-09-28 13:01:46 +05:30
Rishabh Rathod
90a275a502
fix: On connect Tab Switch error (#7740)
fix: On connect Tab Switch error
Add Git local config API
2021-09-23 08:47:09 +00:00
Rishabh Rathod
48dabf9efd
feat: Add Git push API & UI Updates (#7704)
Add Git push API & UI Updates
-  Add Global Config fetch in git connection
-  Add Success Toast Msg for commit and push API
-  Fix generate and fetch SSHKey API
-  Fix Close button UI
-  Add Tick Icon when SSH Key is copied
- Add Direct Deploy option
-  Hide Merge Tab
- Add Commit success and push success msg
- Add the Latest Deploy Preview option
2021-09-23 00:18:50 +05:30
arunvjn
3cd93e11a7
feat: snippets discoverablity (#7689) 2021-09-22 16:59:47 +00:00
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
rahulramesha
0b37812b56
feat: resizable modal (#7312)
* dip

* resizable modal full working commit

* resizable modal minor fixes

* code restructuring

* fix canvas small size bugs and add migration to remove modal type

* moving resize modal to modal sagas

* layoutResize and last column width

* fix warning

* setResizible if resizing

* fix incorrect import

* fixing cypress tests

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
2021-09-20 22:36:13 +05:30
akash-codemonk
9877fe4b05
fix: Switch to the debugger error tab when clicked on the debug button in toast (#7455) 2021-09-20 16:50:22 +05:30
Rishabh Rathod
373f64c9ca
feat: git sync ui update (#7486)
- fix commit & push functionality
- Add Link to docs
- Add user settings toggle

Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
2021-09-17 22:28:04 +05:30
Rishabh Saxena
819f0c2753
feat: add git config to user profile settings (#7538) 2021-09-17 16:18:38 +05:30
Rishabh Saxena
f277fe92e0
feat: minor bottom bar UI updates (#7456) 2021-09-15 19:31:32 +05:30
Apeksha Bhosale
3dd6c14b5f
create js action default with js collection (#7388) 2021-09-15 11:58:25 +05:30
Rishabh Rathod
a6c2a63ce9
feat: Git connection (#7269)
Add git connection UI

Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
2021-09-13 18:56:24 +05:30
balajisoundar
e2ef262f05
feat: Improved onboarding flow on user signup (#7089)
This commit introduces new improved onboarding flow for new users. 

fixes: #4057
2021-09-13 12:52:51 +05:30
balajisoundar
95c729d7d1
feat: Introduce a Welcome screen and a form to create a super user, on a fresh installation (#6806)
This commit introduces a super user signup form, that appears only on an empty instance, to create a super user.

fixes: #6934
2021-09-12 22:06:43 +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
Rishabh Saxena
b61be1eb66
fix: persist draft comments on clicking outside (#7156) 2021-09-07 20:53:40 +05:30
Rishabh Saxena
ea1d49775c
fix: handle resolved/deleted comment threads after they're fetched (#7185) 2021-09-07 18:25:38 +05:30
Rishabh Saxena
685aa3b98c
feat: make comments publicly available (#7143) 2021-09-06 18:04:40 +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
Hetu Nandu
3380227cbb
feat: Enable Promises in Appsmith (#6253) 2021-08-27 14:55:28 +05:30
Pranav Kanade
a1ba69adfc
feat: draggable comment pins (#6742)
* made inline comment pins draggable and added wrapper around overlay comments wrapper

* moved drag hook to pin

* can drag on canvas

* Properly updating the thread to be able to properly move the pin

* always passing the ref to container

* updating BE to save the new pins position

* minor fix

* changed a file name

* minor improvement to fix unit test

* fix, updated dragging reducer function to not expect appId

* removing unrelated change

* added drag and drop for comment pins without react dnd

* updated unit tests

* minor fix

* added a grab pointer and minor offset when user moves the pin

* removed unnecessary store states

* moved drop from onDragEnd to onDrop to reset everything.

* using state selector and dispatch hook

* removed use of anchor widget

* removed pointer change from comments wrapper

* verifying if current pin is being dragged

* updated action creator name

* moved dragging in comments reducer.

* using dragging thread id from store itself

* using relative positioning of pointer to predict the location of pin

* unit test cases fixed

* minor fix

* removed the dependency of off set from callback
2021-08-27 14:27:18 +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
Ayush Pahwa
5d30cb3537
feat: Changing evaluations for UQI from hidden type to js objects (#6792)
* Added a new type of UIComponent for DB editor forms

* Added a new state for UQI evals and connected it to the rendering form

* Added sagas to init and run the UQI eval

* Exporting fetch function as a selector

* Moved selector code to the formSelector file

* Added type to state config holder, removed custom diff function and fixed imports

* Fixed path, added the type for plugin in selector

* Created new enum, abstracted function for render and fixed var names

Co-authored-by: Apeksha Bhosale <7846888+ApekshaBhosale@users.noreply.github.com>
2021-08-26 11:07:07 +05:30
Pawan Kumar
960159eef3
Grouping widgets into container (#5704)
* 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.

* fix merge conflcits

* fix border positioning

* fix canvas widgets incorrect bouding box

* fix bounding box position issue

* fix bounding box position issue

* fix

* border issue fix

* update test case

* add colors in theme

* use layers + use click capture on actions

* add icon for grouping

* fix overflow issue in contextmenu in containers

* fix context menu display issue

* update position of context menu

* fix container box-shadow issue

* fix container box-shadow issue

* revert container box shadow

* stop opening of property pane on shift clicking a widget

* remove console.log

* fix multiselect box issue

* add container on copy

* add analytics middleware

* refactor paste widget saga

* change flash element to accept array + revert refactor

* add logic to create containers from selected widgets

* update positions of grouped widgets

* fix comments + remove console

* update flashElementbyId to flashElementsById

* remove analytics middleware + remove unecessary imports

* add shorcut for grouping

* fix position issue when pasting

* allow grouping only when multi widgets are selected

* fix ux issues with widget grouping

* fix help text for grouping actions

* filter out the modal widget when calculting next row

* fix delete issue when grouping

* persist positin when grouping if there is no collision

* fix typo for new position

* changes for review comments

* changes for review comments

* fix position issue when pasting

* fix new container position issue

* move utils function to utils

* fix import issue

* fix the composite widget grouping issue

* fix table name bug

* remove repeated code

* move copied groups existence check;

* fix copied group check

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: root <root@DESKTOP-9GENCK0.localdomain>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2021-08-25 10:30:31 +05:30
akash-codemonk
95c60bafeb
fix: Hide debugger errors until onPageLoadActions are run (#6786) 2021-08-25 10:04:42 +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
akash-codemonk
bb1c5ab9a3
Send errorType as part of analytics payload for action execution errors (#6754) 2021-08-23 19:17:17 +05:30
Rishabh Rathod
652950d239
Add Gsheets support for generate CRUD page (#6301)
* Add s3 support for generate CRUD
- Dropdown enhancement to open options on initial load
- Hide column selection option for s3

* Refactor the prop name

* Dropdown enchancement & Fix small issues

* Add fetch all sheets query

* Fix issues related to dropdown

* Add hooks to fetch sheets and spreadsheets

* Resolve warnings

* complete gheets basic support

* Add UI changes for Gsheet column names
- Fix Page Scroll issue

* Add debounce to avoid to many API calls

* Add request object formation via plugin config

* Resolve comments & remove executingDatasourceQuery

* Send sheetName in the tableName key.

* Add loader and Column name UI Fix

* Add Column Headers Label

* Fix logic to show comma separator btn column names
- Make "Column Header Fetched" text Bold

* Add tooltip info for searchable column

* Add value prop to TextInput
- Fix Table header Index Invalid Input issue

* Hotfix validator logic
2021-08-20 15:25:59 +05:30
Rishabh Rathod
12e7ee0c94
Add s3 support for generate CRUD (#6264)
* Add s3 support for generate CRUD
- Dropdown enhancement to open options on initial load
- Hide column selection option for s3

* Refactor the prop name

* Add useS3BucketList hook WIP

* Dropdown enchancement & Fix small issues

* Add fetch all sheets query

* Add Query to get all S3 buckets

* Fix dropdown open issue

* Remove defaultIsOpen prop from dropdown

* Resolve comments
- Remove debugger
- mockSheetUrl -> getSheetUrl

* Add S3 cypress test

* Fix cypress test yml config

* Fix generate page cypress test
2021-08-20 12:27:01 +05:30
Rishabh Saxena
74bff938b5
Init git sync modal (#6641) 2021-08-18 15:10:31 +05:30
Rishabh Saxena
a1daa7e3f8
Handle deletion for comments and threads in realtime (#6605) 2021-08-18 12:51:21 +05:30
Rishabh Rathod
63ef562edb
Add Generate CRUD page Info Modal (#6557)
* Add Info Modal (WIP)
- Added modal skeleton without content

* Add generate CRUD Info Modal

* Add dialog heading to messages constants
2021-08-16 23:34:54 +05:30
akash-codemonk
8e08e778d4
Update debugger error message CTA's (#6416) 2021-08-16 16:33:27 +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
Pawan Kumar
946ca3afb9
[Feature] Page Properties (#4989)
* disable delete icon for default

* page properties style updates

* minor style updates

* remove uneccessary imports

* update draggable list api

* style updates

* remove unused variable

* style updates

* update edit icon

* integrate sorting page api

* fix colors

* remove console.log

* add link to switch page in page list item

* remove unused import

* revert draggable list code

* remove console.log

* fix draggablelist component reorder issue

* remove draggablepagelist

* fix rerender of draggablelist

Co-authored-by: root <root@DESKTOP-9GENCK0.localdomain>
2021-08-13 17:08:26 +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
arunvjn
6402cd4add
Fix/omnibar landing bug (#6513) 2021-08-11 12:18:57 +05:30
Pranav Kanade
2ae0c8c836
Feature: Show a list of realtime app editors (#6286)
* Added support for showing realtime app editors

* emitting an event only when socket is connected

* added a tooltip to show username/email

* using proper selector

* using theme

* created the separate component for listing editors

* created a separate hook for app collab events

* moved collab user type to /entities

* moved user visible strings to message constants

* Revert "moved user visible strings to message constants"

This reverts commit 04ac18a188b0117dd364ad764a4e0103bfd28ef6.

* made provision to reset the concurrent editors list
2021-08-09 14:34:24 +05:30
arunvjn
83249275a7
Omnibar redesign (#6288)
Omni bar would now have the categories navigation and documentation.
2021-08-09 11:52:37 +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
Rishabh Rathod
a9f16d75bd
Enable Autocomplete for Static Objects (#6302)
* Remove type from COLORS constant

* Remove type from InputTypes in InputWidget

* Remove type from ReduxActionTypes

* Remove type from ReduxErrorActionTypes

* Remove type from SocialLoginTypes

* Fix widget actions issues

* Remove OPEN_SUB_PANE commented redux action
2021-08-03 13:36:48 +05:30
Rishabh Rathod
76dfcd0163
[Feature] Generate template page from datasource (#5513)
- Add Generate CRUD page feature
- Modify the Datasource card UI in the `INTEGRATION.ACTIVE` tab to directly delete and edit.
- Add `renderOption` , `errorMsg`, `isLoading` props in Dropdown component.
If `renderOption` prop is not defined, it will show default option UI.
- Add getDatasourcesStructure [new entity Selector]
( This will provide all fetched structure of datasources)

> Commit Messages ⬇️

* Show disabled GenPage Button for unsupported DS

* Add Icon in Select Table and Column dropdown

* Add Error message when datasource config has error

* Fix the continous loading state issue

* Add Not supported datasource in select Table

* Add ignoreCache when fetching DS struct

* Go to generate page if initiator=generate-page

* Fix connect new datasource button disabled

* Modify error message for invalid datasource struct

* Add snowflake to supported plugin for template

* Fix Show More option width

* Fix incorrect error msg for valid dS config

* Generate page UI improvements

* Refactor navigation

* Fix Datasource Card UX

* Remove semi-colon from Icon loader

* Refactor contants

* Add executeDatasourceQuery & fetchPluginForm API
- WIP google sheet form UI and functionality
- Implemented fetch all spreadsheet with mock data

* disable S3 and google sheet for generate page

* Update yarn.lock

* Resolve review comments
- Add Messages to `constants/messages`
- Add default value for `fetchActionsForPage` 2nd param
- Add comment
- Remove `onFinishCallback` from `handleFetchedPage`

* move string literal to constants/messages

* Remove hardcoded pluginId implementation

* Refactor getGenerateCRUDEnabledPluginMap selector

* Fix CreateAppInFirstListedOrg test command

* Add getIsGeneratePageInitiator helper func

* Fix Entity explorer Edit option test

* Fix CreateAppForOrg test command
- Add click on build from scratch in generatePage

* Fix deleteDatasource command test
- Click on Datasource Name to Edit, Datasource Card handles the click

* Fix DynamicLayout spec test issue

* Fix pageLoadSpec test

* Disable google plugin & Refactor
- Add useDatasourceOptions hook

* Add datasourceCardMenu in DatasourceEditor.json

* Fix issues
- Add Icon hover clickable control
- Auth API click handler

* Fix Createpage test command

* Add cypress test for generate page flow

* Fix cypress test

* Add Analytics

* Add comments in CloseEditor

* Rename initiator to isGeneratePageMode

* Disable S3 for generate CRUD page

* Fix generate page from existing datasource issue

* Enhance test to verify if data is fetched properly

* Wait for get Actions before execute actions

* Change the cypress route for excute api

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-07-29 13:43:10 +05:30
Pranav Kanade
3547976dc7
[Feature] new nav sniping mode (#5746)
* added sniping mode toggle option to header

* added cover to components on hover in sniping mode

* fixed the transition time

* using filled icon

* Show dependencies in action pane

* Added a wrapper to make a widget snipeable

* removed older parts of sniping from Positioned Container

* removed onclick action from snipeable wrapper

* Showing widget name in different color

* Added a mechanism to send user to sniping mode from successful API screen

* created new property pane saga to bind the data

* Fix datasource list width issue

* Fix sidebar going out of view when the response is a table

* Minor refactor

* Show add widgets section on the sidebar

* Stop showing autocomplete option after adding a widget

* fetching pageId, appId from store

* Get suggested widget from response

* Fix table data not getting evaluated after adding binding

* Fix property pane going below the entity explorer while navigating from query/api pane

* Fix width of sidepane shifting for apis

* Fix vertical margins of connections

* Fix api pane suggested widget showing up for errors

* Fix margins

* can show select in canvas btn in sidebar

* can get the action object at the end to bind the data

* updated saga and action names

* can bind data to table

* Use themes

* Use new image url for Table widget

* Added conditional mapping for sniping mode binding.

* updated the widget name tags and seq of calls to open property pane

* pushed all sniping mode decoration to header

* moved setting sniping mode logic to editor reducer

* Added keyboard short cut to get out of sniping mode

* updated reset sniping mechanism

* removed a divider line

* if there are no relationships, will not show the complete section

* Connect Data will automatically show relevant tab in integrations

* Update list and dropdown image urls

* Remove create table button

* no wrapping bind to text

* minor review considerations

* showing the widget name to left in sniping mode

* can set data to datepicker

* will not show snipe btn if there are no widgets in canvas

* Changes for multiple suggested widgets

* removed dependency of sniping from suggested widgets

* Added analytics events for sniping mode

* logic for binding data to a widget, moved to snipeable component

* changed binding widget func from capture to onClick and took care of sniping from widget wrapper too.

* added tests to check sniping mode for table

* updated test spec

* minor fix

* Fix copy changes

* Update test to use table widget from suggested widget list

* if fails to bind will generate warning and keep user in sniping mode

* in sniping mode will only show name plate if it is under focus

* fixed the test case

* added a comment

* minor fix to capture on click event in sniping mode

* updated text

* Hide connections UI when there are no connections

* Increase width to 90%

* Show placeholder text and back button in sidepane

* Show tooltip on hover

* Add analyitcs events for suggested widgets and connections

* Update label based on whether widgets are there or not

* binding related changes

* renamed the saga file containing sinping mode sagas

* Changes for inspect entity

* Revert "binding related changes" temporarily

This reverts commit 54ae9667fecf24bc3cf9912a5356d06600b25c84.

* Update suggested widgets url

* Update table url

* Fix chart data field not getting evaluated

* a minor fix to show proper tool tip when user hovers on widget name

* Show sidepane when there is output

* Update locators

* Use constants for messages

* Update file name to ApiRightPane

* Remove delay

* Revert "Revert "binding related changes" temporarily"

This reverts commit ee7f75e83218137250b4b9a28fcf63080c185150.

* Fix width

* Fix overlap

Co-authored-by: Akash N <akash@codemonk.in>
2021-07-26 22:14:10 +05:30
akash-codemonk
f1e829fe4a
Feature: Show error state in property pane connections if associated connection has errors (#5877) 2021-07-21 18:10:46 +05:30
Hetu Nandu
ba06d797de
Improve autocomplete sorting (#5798) 2021-07-20 15:32:56 +05:30
Vicky Bansal
6f91c1afd8
Feature/draggable filters in table widget (#5886)
The filter pane in the table widget was fixed to top which would hinder the viewport for the end user. We have now changed the filter pane to a draggable component such that the user can place it anywhere on the canvas while they apply filters to see data change in realtime.

* FEATURE #4088 : added draggable filterpane for table widget

* FEATURE #4088 : update icons, editMode prop and added renderDragBlock support in popper

* FIX #5329: added close button for close filter pane

* FIX #5332 : updated zindex for table filter pane

* fix list widget test

* Fix drag icon position and cypress failing tests

* Fix endsWidth comparator function
2021-07-20 10:48:58 +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
8f7165b5fe
Update comments onboarding tour (#5903) 2021-07-16 14:01:26 +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
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
akash-codemonk
1265105970
Analytics for debugger errors (#5660) 2021-07-08 11:01:08 +05:30
Rishabh Saxena
93ec3c17c3
Init and update unread comment threads count and show indicator (#5674) 2021-07-07 20:43:44 +05:30
Aswath K
2c6e8a388e
Shows 'last saved' time on hovering over the 'saved' icon (#5092) 2021-07-07 18:17:01 +05:30
Pranav Kanade
f414285201
[Feature] Unified New Nav (#5558)
* temp commit

* using onsubmit to continue using action on form

* added recaptcha site key to env example file

* moved the recaptcha lib loading logic to signup page

* removed unnecessary edit

* handle the case where the recaptcha token is not provided as env var

* added proper env var config for client

* recaptcha config for ansible

* recaptcha config for heroku

* recaptcha config for k8s

* updated app.json

* fixed the typos

* added more description for env vars

* removed api key

* minor typo fix

* added new integration button

* updated the add int default link

* added active and create new tabs

* added the empty components to tabs. will control the section manually.

* added proper grid for integrations page

* added vertical tabs

* Added secondary tabs to integrations page

* added separate page for new apis

* classname changes

* added new components for active queries, new queries etc.

* added a separate component for data source list

* adding screen component conditionally, to be showing upon user's choice

* 1. Added grid styling to datasource home
2. Added connect buttons to em

* fixed data source security banner

* updated the styling for new api page

* added tertiary menu for active integrations

* updated styling for active connections

* updated collapse component to work properly

* added show more option to active data sources

* Slash commands feature init commit

* Added more commands

* Introduced JSX to render custom commands

* Merge conflict fix

* Spacing changes

* removed apis/db tabs and replaced em with integrations tab

* removed the unnecessary + integrations btn

* Added slash commands button

* Adjust styles for better ui

* Ordered the action entries under integrations

* Added new datasource command

* updated the getURL with proper params

* updated the link of create datasource btn

* updated the back btn link from data source editor

* Show connect data cta in property pane

* Styling fixes

* Fix margin

* added scrollable content to create new

* added on click scroll to create new page

* fixed a bug, creating new datasource twice

* added new action creator for integrations.

* Minor changes to add new bindings command.
Changed ui behaviour of / button

* UI style change

* updated the query editor to match the over all theme

* updated the query editor tabs

* Added the run btn to empty response screens

* minor fix

* updated the bg color of api type drop down

* updated the url being visited after delete api/query

* removed log

* Insert binding command UI change

* More UI changes

* removed unnecessary junk from integrations editor index

* clean up, removed unnecessary files

* removed useless routes

* for debugger only checking if integrations editor

* Removed all the links for api/query home pages

* Move command actions to a saga
Added support to binding the data back to the widget when are new API is created from widget

* Added reverse binding for DB queries

* Show / button only on hover

* not routing to integrations on create query/api

* Hide actions from suggestions in action pages

* removed the query/datasource/api home pages

* Changes widget.data to widget in slash commands

* Show dependencies in property pane

* Fix warning

* fixed scrolling issue

* will show a list of queries and apis for action picker

* showing icons for each action under integrations

* Fix dropdown not showing up

* Minor refactoring.
Changed commands

* added a way to list data sources in action creators

* Update query page url

* cam show icons for datasources

* Removed unused code

* Feature/slash commands (#5002)

* Slash commands feature init commit

* Added more commands

* Introduced JSX to render custom commands

* Merge conflict fix

* Spacing changes

* Added slash commands button

* Adjust styles for better ui

* Added new datasource command

* Minor changes to add new bindings command.
Changed ui behaviour of / button

* UI style change

* Insert binding command UI change

* More UI changes

* Move command actions to a saga
Added support to binding the data back to the widget when are new API is created from widget

* Added reverse binding for DB queries

* Show / button only on hover

* Hide actions from suggestions in action pages

* Changes widget.data to widget in slash commands

* Minor refactoring.
Changed commands

* Removed unused code

* remove more unusued code

* Added support to generate new api from a datasource in quick commands

* Code correction to use types

* Refactored commands code

* Minor bug fixes

* Remove new integrations command for actions.
Fixed autocomplete not showing up

* Changes to prevent autocomplete trigger for navigation commands

* Prevent hinter execution when show hint is open already.

* Show hinter on focus

* Update text to be called in the omnibar

* updated the copy for empty active datasources

* Update url

* Fix text decoration

* updated the redirection for back btns

* Use themes

* Add cypress test

* fixed back btn nav

* fetching form configs for datasources

* a callback fixed

* Fix slash command not executed on click (#5540)

* Replace the value if not a string else append

* Log commands menu events

* updated mock data base navigation

* updated mock data base navigation

* updated the close editors and back buttons

* All back btns from editors will go back to data sources and back from data source will go back to canvas

* fixed bg colors

* minor styled updates

* removed margin from header of generic datasource

* warnings fixes

* If user is already on the location not redirecting em

* when editing, will check if the coming from data source and redirect accordingly

* updated redirection for newly created api/queries

* updated back btn for newly created datasources

* back for new curl goes to data sources

* Revert "[Fix] revert new nav (#5533)"

This reverts commit 1647815d

* remaining original reverted chagnes

* fixed the width of incoming/outgoing entity bar in property pane

* removing residue from resolved merge conflicts

* Fix widget icons not visible in dropdown menu

* minor fix to use proper integration URL

* updated the URLs for unified datasources

* converted back and close to btns from banners

* on accessing data source from sidebar, it'll always go to view mode

* updated the edit path for saas editors

* Added saved state for google sheet

* on google sheet delete redirecting to create new

* minor fix

* fixed the redirection call on saving a datasource

* removed save and test cmd as it wasn't needed

* Removing test cases to be fixed by Arun

* commenting more tests to be fixed by Arun

* updated call api cy command

* Fix extra margin issue

* fixed the update datasource saga

* fixed video spec

* Revert "commenting more tests to be fixed by Arun"

This reverts commit 42087a95ad77107401a1619e4c2d4c541a81d6c3.

* Revert "Removing test cases to be fixed by Arun"

This reverts commit f6fad67e558d22045114a90409428ef9b737478f.

* fixed the entity explorer query datasource spec

* cautious fix

* update widget locators

* fixed leave org test

* fixes for FormWidgets

* updated the image spec

* Use memo

* Fix debugger url checks

* for copy and delete widget pointing directly to svgs

* Fix entity text

* Fix styling and show tooltip for property pane dependencies

* removed the unnecessary callback

* added a separate saga to to redirect to new integrations using onSuccess

* Bug Fixes - New nav (#5629)

* will show scrollbar only on hover

* made mock data cards clickable

* fixed the grid view

* fixed the cursor position when clicking on / btn

* updated the hint for `/` command

* binding prompt will close on focus change

* hiding / command for api body

* hiding / command for query pane

* Added 2 new icons

* Fix cursor position on selecting a binding and clicking on the slash menu button

* trying out fix to copyWidget cy command

* removing zero width space characters from the property pane text

Co-authored-by: arunvjn <arun@appsmith.com>
Co-authored-by: Akash N <akash@codemonk.in>
Co-authored-by: arunvjn <32433245+arunvjn@users.noreply.github.com>
Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
2021-07-07 09:16:16 +05:30
Pranav Kanade
1647815d24
[Fix] revert new nav (#5533)
* Revert "[Bug] Mock data section is missing (#5517)"

This reverts commit be48f2f5

* Revert "[Feature #4542] : simple nav unify api/datasource (#4987)"

This reverts commit 8d8b9ed2
2021-07-01 18:14:41 +05:30
Pranav Kanade
8d8b9ed203
[Feature #4542] : simple nav unify api/datasource (#4987)
* temp commit

* using onsubmit to continue using action on form

* added recaptcha site key to env example file

* moved the recaptcha lib loading logic to signup page

* removed unnecessary edit

* handle the case where the recaptcha token is not provided as env var

* added proper env var config for client

* recaptcha config for ansible

* recaptcha config for heroku

* recaptcha config for k8s

* updated app.json

* fixed the typos

* added more description for env vars

* removed api key

* minor typo fix

* added new integration button

* updated the add int default link

* added active and create new tabs

* added the empty components to tabs. will control the section manually.

* added proper grid for integrations page

* added vertical tabs

* Added secondary tabs to integrations page

* added separate page for new apis

* classname changes

* added new components for active queries, new queries etc.

* added a separate component for data source list

* adding screen component conditionally, to be showing upon user's choice

* 1. Added grid styling to datasource home
2. Added connect buttons to em

* fixed data source security banner

* updated the styling for new api page

* added tertiary menu for active integrations

* updated styling for active connections

* updated collapse component to work properly

* added show more option to active data sources

* removed apis/db tabs and replaced em with integrations tab

* removed the unnecessary + integrations btn

* Ordered the action entries under integrations

* updated the getURL with proper params

* updated the link of create datasource btn

* updated the back btn link from data source editor

* added scrollable content to create new

* added on click scroll to create new page

* fixed a bug, creating new datasource twice

* added new action creator for integrations.

* updated the query editor to match the over all theme

* updated the query editor tabs

* Added the run btn to empty response screens

* minor fix

* updated the bg color of api type drop down

* updated the url being visited after delete api/query

* removed log

* removed unnecessary junk from integrations editor index

* clean up, removed unnecessary files

* removed useless routes

* for debugger only checking if integrations editor

* Removed all the links for api/query home pages

* not routing to integrations on create query/api

* removed the query/datasource/api home pages

* fixed scrolling issue

* will show a list of queries and apis for action picker

* showing icons for each action under integrations

* added a way to list data sources in action creators

* cam show icons for datasources

* linked integration tab movement to URL

* fixed the create new query bug

* removed search

* added the auto redirection mode

* added new mode to support showing mock data bases

* on click show more works properly

* removed extra padding

* removed height

* showing all the data sources on active tab

* fixed the creation of google sheet

* updated the proper routing for curl

* fixed page height

* removed loader

* added a spinner for creating a new api

* will be showing edit/add query permanantly

* updated the redirection on save and delete datasource

* fixed the redirection logic on delete

* will not show security banner

* added empty state for active data sources

* updated the hover state

* minor fix to redirect on delete from entity pane

* fixed a cy command to create new api

* fixed a command to select api/query from lightning menu

* updated the navigate to data source editor

* removed add btns for new int creation

* updated the testSaveDeleteDatasource command

* fixed bind table text pagination spec

* more test case fixes for deleting a query using context menu

* update curl test

* updated curl post import spec

* fixed click from apis to integrations

* updated execute db query command + updated delete query mech

* updated CreationOfUniqueAPIcheck command

* updated query datasource spec

* fixed an action creator bug.

* fixed curl api creation bug

* removed irrelavent part of the test

* fixed the button colors

* updated back link from datasource page

* Revert url validation changes for the debugger since this is used to check whether we are on a query or an api and show its dependencies

* updated a test case to open integrations option in action selectors

* Update app/client/src/pages/Editor/IntegrationEditor/DatasourceCard.tsx

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

* separated msg

* styling fixes for collapse component

* renamed a file

* declared a new const in theme

* updated border

* removed a faint line from collapse card

* removed unnecessary condition

* updated component name

* log removed

* split action creator file

* updated the icon usage in action creators

* can properly fetch mock data sources

* can show mock databases in create new

* can use mock db sources

* fixed the scrollbars

* updated the api icon for both global search + action creator

* updated integrations name in datasources

* added a back to canvas ribbon

* updated query and api editor to show back to canvas ribbon

* added a ribbon to go back

* updated button styles

* updated the action creator and test commands/classes

* updates to show the proper mock databases

* added proper type for mock datasources

* removed unnecessary log

* updated a test case to work with new nav

* minor updates for tests

* updated a command to properly delete a datasource

* minor redirection fix

* made the mock db api call unblocking

* fixed scroll bars all over

* fixed bg colors for back ribbons

* declared a constant for thin scrollbar

* removed unnecessary action.

Co-authored-by: Akash N <akash@codemonk.in>
Co-authored-by: Rishabh Saxena  <rishabh.robben@gmail.com>
2021-06-30 23:51:52 +05:30
Aswath K
ad9319980f
Fix page load actions not triggering when switching pages in edit mode (#5430) 2021-06-30 12:49: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
Rishabh Saxena
b24dd8f8b2
Minor collab fixes (#5271) 2021-06-24 14:34:27 +05:30
Rishabh Saxena
c351643f57
Notification updates (#5239) 2021-06-23 21:12:07 +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
9c75596957
Init notifications (#4839) 2021-06-09 20:02:17 +05:30
Tolulope Adetula
89ca5b6da0 fix: isRetry bug in Page saga 2021-06-07 15:33:20 +01:00
Kaushik Varanasi
3a6da2d797
Feature/import applications (#4483)
* Added export option to app menu. TODO: call api to download app file

* Added checkbox component and removed unused code

* Added import app without filepicker. Opens modal

* added ability to fetch the exported app

* can download exported application as a json file

* Updated the file picker component to accept other file formats

* WIP import app

* Added functionality to import application json file

* minor fixes

* Made the file type prop mandatory for file picker

* added a test suite for export app

* Test added to check if on import application click, it open a modal

* added a dummy application file for cypress testing

* Added end to end integration test suite
to verify import app feature

* added test to verify the export api status and download file.

* added a linked btn to carry exporting.
- according to latest BE changes

* Removed old redux and saga mechanism for app export

* updated cypress test to validate new flow

* fixed minor linting errors

* updated test case title

* updated the test cases for import/export app feat

* review changes

* added prop to facilitate delayed upload

* added new application file to fixtures. Minor fix to take care of loading state.

* Removed export app modal. Added one click action, to download the file.

* Updated File picker to work with all other files acc to the design.

* Updated the import modal

* updated the import application test

* Added remove upload tooltip

* updated the icons for import/export actions

* removed unused logs

* added hard coded feature flag to hide/show import export feature

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-06-03 11:48:08 +05:30
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
arunvjn
9e8e432a1f
Feature/cmd enter to execute actions (#4774)
Added new global hotkey to trigger Run on cmd+enter

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Apple <nandan@thinkify.io>
2021-05-31 21:10:21 +05:30
akash-codemonk
cbca6bedd4
Clear debugger errors on page switch (#4672) 2021-05-28 19:44:44 +05:30
Rishabh Saxena
9f76218306
Trigger invite flow via comments (#4602) 2021-05-27 11:51:36 +05:30
Rishabh Saxena
8964aea9df
[Feature] Comments feature updates (#4579) 2021-05-20 17:33:08 +05:30
Ashok Kumar M
8c8141650a
Feature: Widget grouping Phase I (Multi select and Bulk Delete) + Canvas Enhancements. (#4219)
* Feature: Canvas layer enhancements(DIP)

* feedback fixes

* fixing build

* dip

* dip

* dip

* fixing build

* dip

* dev fixes

* dip

* Fixing top bottom resize handles

* dip

* reposition widget name on top edges.

* dip

* dip

* dip

* dip

* renaming selectedWidget to lastSelectedWidget

* code clean up

* Fixing list widget as per grid scale.

* Fixing existing specs.

* Adding migration test cases.

* dip

* FIxing proppane in modal.

* fixing modal z-indedx.

* fix for modal name.

* dip

* dip

* dip

* adding test cases for hotkeys.

* dip

* dip

* fixing build

* Trying some performance improvements for jests.

* 17 mins with runinband lets try without it.

* minor bug fixes.

* code clean up

* save migrated app on fetch.

* fixing few cypress tests

* fixing cypress tests

* fixing cypress tests.

* fixing cypress

* updated DSL

* Addressing code review comments.

* test fails

* dip

* eslint fixes.

* fixing debugger cypress tests.

* updating latest page version.

* updating migration changes to cypress dsl's.

* updating chart data fixes for cypress tests.

Co-authored-by: Apple <nandan@thinkify.io>
2021-05-18 23:59:39 +05:30
akash-codemonk
51b98eed2f
Fix: Debugger shows errors for evaluations done on page load (#4552) 2021-05-18 17:21:32 +05:30
akash-codemonk
cbace9d5d7
Fix: Debugger showing previous application logs (#4455) 2021-05-17 15:31:22 +05:30
Apeksha Bhosale
8473226382
app crashes when moving from google to rest api (#4282)
* app crashes when moving from google to rest api

* wrong url for test
2021-05-04 18:38:20 +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
Ashok Kumar M
8f7cc87801
Fix: Tabs widget refactor with new nested property validation (#4014)
* dip

* test cases first commit

* Adding Tabs migrator.

* fixing tests.

* bug fix.

* selected tab fix

* missed commit

* fixing bugs

* Fixing tab name bugs.

* close property pane when dragging or resizing

* migration changes.

* release rebase changes.

* adding List factory

* remove dynamic bindings on deleting tabs.

* Adding validation messages for nested properties as well

* fixing validation issue.

* tabs visibility validation.

* missed commit

* Fixing broken cypress tests.

* Fixing broken tests.
2021-04-27 12:46:54 +05:30
Hetu Nandu
c92eb0e5a4
Introduce different evaluation types for different binding fields (#3834) 2021-04-26 11:11:32 +05:30
akash-codemonk
36532cbcc8
[Feature] Debugger logs (#3633) 2021-04-23 19:20:55 +05:30
Pawan Kumar
1717b0e392
[Feature] Grid Widget (#2389)
* Updated test

* updated assertions

* Resizing image to take full width of table cell

* updated assertion

* Stop updating dynamicBindingPathList directly from widget

* Fix selectedRow and selectedRows computations

* Fix primaryColumns computations

* Updated test for derived column

* Added tests for computed value

* Added check clear data

* Reordering of test

* updated common method

* Made image size as 100% of table cell size

* add templating logic

* Updated flow and dsl

* Clear old primary columns

* Updated testname

* updated assertion

* use evaluated values for children

* Fix primary columns update on component mount and component update

* add isArray check

* remove property pane enhancement reducer

* add property pane enhancement reducer

* disable items other than template + fix running property enchancment on drop of list widget

* disbled drag, resize, settingsControl, drag for items other than template

* add grid options

* uncomment the widget operation for add child for grid children

* handle delete scenario for child widget in list widget

* WIP: Use the new delete and update property features

* add listdsl.json for testcases

* add test cases for correct no. of items being rendered

* add test cases currentItem binding in list widget

* change dragEnabled to dragDisabled

* change resizeEnabled to resizeDisabled

* change settingsControlEnabled to settingsControlDisabled

* change dropEnabled to dropDisabled

* update settingsControlDisabled default value

* Use deleteProperties in propertyControls

* Fix unsetting of array indices when deleting widget properties

* remove old TableWidget.tsx file

* Fix derived column property update on primary column property update

* Handle undefined primary columns

* Fix filepicker immutable prop issue

* Fix object.freeze issue when adding ids to the property pane configuration

* fix widget issue in grid

* Fix column actions dynamicBindingPathList inclusion issue

* remove consoles + fix typo around batch update

* Remove redundant tests

* js binding test for date picker

* hydate enhancement map on copy list widget

* check for dynamicleaf

* fixes

* improve check

* fix getNextWidgetName

* update template in list widget when copying

* updating template copy logic when copying widget

* update dynamicBindingPathList in copied widget

* Add path parameter to hidden functions in property pane configs

* fix copy bug when copying list widget

* add computed list property control

* Remove time column type

Fix editor prompt for currentRow

Fix undefined derivedColumns scenario

Remove validations for primaryColums and derivedColumns

Fix section toggle for video, image and button column types

* Fix table widget actions and custom column migrations

* Add logs for cyclical dependency map ♻️

* Process array differences

* add property control for list widget

* Fix onClick migrations

* Property pane config parity

* binding and trigger paths from the property pane config (#2920)

* try react virtualized library

* Fix unit test

* Fix unit test 

* Fix minor issues in table widget

* Add default meta props to binding paths to ensure eval and validation

* Dummy commit 🎉

* Remove unnecessary datepicker test

Fix chart data as string issue

* Achieve table column sorting and resizing parity with release

* handle scenario where last column isn't available to access

* Fix for panel config path not existing in the widget

* Fix bindings in currentRow (default)

Add dummy property pane config for canvas widget

* Update canvas widgets with dynamicPathLists on delete of property paths

* Add all diffs to change paths and trim later

* Add back default properties 🚶🏻‍♂️

* Use object based paths instead of arrays for primaryColumns and derivedColumns

* Fix issue in reordered columns

* Fix inccorect update order

* add virtualized list

* Fix failing property pane tests

* minor change

* minor list widget change

* Remove .vscode from git

* Rename ads to alloy

Fix isVisible in list widget

* move grid component to widget folder

* fix import in widget registry

* add sticky row in virtualized list

* add sticky container

* Fix Height of grid widget items container

* fix dragging of items in children other than template children

* update list widget

* update list widget

* Fix padding in list widget

* hide scrollbar in list widget list

* fix copy bug in list widget

* regenrate enhancement map on undo delete widget

* Use enhancementmap for autocomplete in list widget

Basic styles for list widget scrollbar

* add custom control in widget config

* minor commit

* update scrollbar styles

* remove unused variable

* fix typo in custom control

* comment out test cases

* remove unused imports

* remove unused imports

* add JSON stringify in interweave

* add noPad styling in dragLayer for noPad prop

* implement grid gap

* add list item background color prop

* add white color in color picker control

* fix gap in last list item

* remove onBeforeParse in textcomponent

* remove virtualization in grid widget

* allow overflow-y

* add onListItemClick action

* add beta label

* add pagination

* fix actions in pagination in list widget

* add list widget icon

* add list background color default value

* remove extra div

* fix pagination issue

* fix list widget crashing on perpage change

* extract child operation function to widgetblueprint saga

* refactor enhancements

* add enhancement hook

* refactor propertyUpdate hook enhancment

* remove enhacement map

* revert renaming ads to alloy

* add autopagination

* Cleanup unused vars

Re-write loop using map

Fix binding with external input widget

* update default background color

* remove unnessary scrol + fix pagination per page

* remove console.log

* use grid gap in pixel instead of snap

* fix list widget tests for binding

* add tests for on click action and pagination

* remove unnecessary imports

* remove overflow hidden in list component

* Add feature to enable template actions

* update property pane help text for list widget

* disable pagination in editor view

* update property pane options

* add test case for action

* uncomment tests

* fix grid gap validation

* update test cases

* fix property pane opening issue for list tempalte

* Disable form widgets in list widget

* fix template issue for actions

* add validation tests for list data

* update starting template

* add selectedRow + enable pagination in edit mode

* remove extra padding in list widget + popper fix on settingDisabled

* add stop propagation for button click

* fix click event in edit mode

* disallow filepicker widget for list widget

* add test for list widget entity definition for selectItem

* remove unused imports

* fix test

* remove evaluated value for list child widgets

* add comment

* remove log

* fix copying bug in list widget

* add check for not allowing template to copy

* fix test

* add test for property pane actions

* remove unused import

* add draglayercomponent test

* add test for draggable component

* add test for evaluatedvalue popup

* add test for messages.ts

* add test for widgeticons

* add test for property pane selector

* add test for widget config response

* start testing widget configresponse

* add test for enhancements in widget config

* add test for codeeditor

* add test for base widget + list widget

* add test for executeWidgetBlueprintChildOperations

* remove unused import

* add test for widget operation utils

* remove unused import

* add test for handleSpecificCasesWhilePasting

* remove unused function

* remove unused import

* add empty list styling

* resolve all review comments

* fix message test

* add test for widget operation utils

* fix merge conflicts

* move validations in property config

Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
Co-authored-by: nandan.anantharamu <nandan.anantharamu@thoughtspot.com>
Co-authored-by: vicky-primathon.in <vicky.bansal@primathon.in>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
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: root <root@DESKTOP-9GENCK0.localdomain>
2021-04-23 11:13:13 +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
Hetu Nandu
59ad172d81
Hot fix redirection race in oAuth autorisation flow (#4052) 2021-04-19 18:47:27 +05:30
Hetu Nandu
363bee8ec9
Fix action field evaluation for editor (#3701) 2021-03-30 10:59:03 +05:30
Ashok Kumar M
bf21c15ba9
Feature: Property pane enhancements(Bug fixes + Draggable popper) (#3748)
* Fix: On renaming a widget via entity explorer the canvas gets resized

* Fix: Close prop pane on resize start of unselected widget.

* Fix: Match all - corejs polyfill

* Fix: Proppane not updated properly when same type widgets are selected.

* Feature: Draggable Proppane.

* Bug fixes for draggable popup.

* Fix: Property pane editor when selecting another widget.

* resolve rebase bad merges.

* cytest fix

* cytest fix

* cytest fix

* cytest fix

* cytest fix

* cytest fix

* cytest fixes

* cytest fix

* fixing draggable components inside porp pane.

* Adding cypress test.

* refactored Draggable list POC version

* reverting unwanted changes.

* prop pane bug fix

* unwanted dependencies.

* double click to open prop pane.

* Fixing bugs in draggable prop pane.

* one click prop pane open.

* ignore drag/resize click captures

* make prop pane draggable only via drag handler.

* Fixed property pane title.

* converting layer to hook and adding it to top most layer.

* removing irrelevant comments.

* close panel when widget changes.

* fixing cytests.

* bug fix

* fixing cytest

* Addressing code review comments.

* bug fix
2021-03-29 21:17:22 +05:30
hetunandu
b0580e9ee0 Revert "Feature: Property Pane improvements (#3561)"
This reverts commit 3437c16ef0.
2021-03-29 16:58:22 +05:30
Ashok Kumar M
3437c16ef0
Feature: Property Pane improvements (#3561)
* Fix: On renaming a widget via entity explorer the canvas gets resized

* Fix: Close prop pane on resize start of unselected widget.

* Fix: Match all - corejs polyfill

* Fix: Proppane not updated properly when same type widgets are selected.

* Feature: Draggable Proppane.

* Bug fixes for draggable popup.

* Fix: Property pane editor when selecting another widget.

* resolve rebase bad merges.

* cytest fix

* cytest fix

* cytest fix

* cytest fix

* cytest fix

* cytest fix

* cytest fixes

* cytest fix

* fixing draggable components inside porp pane.

* Adding cypress test.

* refactored Draggable list POC version

* reverting unwanted changes.

* prop pane bug fix

* unwanted dependencies.

* double click to open prop pane.

* Fixing bugs in draggable prop pane.

* one click prop pane open.

* ignore drag/resize click captures

* make prop pane draggable only via drag handler.

* Fixed property pane title.

* converting layer to hook and adding it to top most layer.

* removing irrelevant comments.

* close panel when widget changes.

* fixing cytests.

* bug fix

* fixing cytest

* Addressing code review comments.

* bug fix
2021-03-29 15:28:52 +05:30
Abhinav Jha
1ccece69e1
Custom FusionCharts Config (#2670)
* Property pane enhancements

- Property pane sections are collapsible
- Property pane controls can be hidden conditionally
- Property pane configurations now come from the widget instead of a global config file
- Property pane property updates can be hooked with other related updates
- Property pane control and section ids are generated dynamically now.

* Add chart type: "Custom FusionChart" (#2996)

Co-authored-by: Zeger Hoogeboom <zegerhoogeboom@users.noreply.github.com>
Co-authored-by: zeger <zeger@equinoxai.com>
2021-03-25 03:35:04 +05:30
Hetu Nandu
9a4c317f20
Store value improvements (#3663) 2021-03-24 10:39:47 +05:30
Ashok Kumar M
fc34901be8
Fix: Dynamic Canvas Height based on bottom most widget. (#3398)
* Fix: Dynamic Canvas Height based on bottom most widget.

* Checking cytest failure reason.

* Revert "Checking cytest failure reason."

This reverts commit 2e3aaa882b282e10e1cf491633101293b72ffa89.

* Using UPDATE_CANVAS_LAYOUT to update the layout.

* Remove unwanted declarations.

* Adding comments.
2021-03-16 10:31:37 +05:30
Abhinav Jha
0a7bf6d0d3
Deprecate UPDATE_WIDGET_PROPERTY action (#3392)
* Deprecate UPDATE_WIDGET_PROPERTY action

* Handle JS property toggle independently
2021-03-09 11:00:57 +05:30
Rishabh Saxena
99b3fa6bb8
Omnibar global search (#2903) 2021-03-08 13:54:12 +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
Ashok Kumar M
a7e0990cf8
Feature: Canvas Layout Options(max width config) (#3141)
* Feature: Canvas Layout Options(max width config)

* Fixing css issues.

* Changing Default Device option to Desktop.

* Changed Implementation to maintain resize updates within the client.

* Addressing code review changes.

* Updating device resolutions.

* updating cytests

* Fixing resize bug.
2021-03-03 10:56:47 +05:30
Rishabh Saxena
d48e00422e
Minor code cleanups (#3165) 2021-03-02 11:25:45 +05:30
Hetu Nandu
0b08edf5cc
Fix further cyclical dependencies in actions (#3259) 2021-03-01 20:27:15 +05:30