Commit Graph

279 Commits

Author SHA1 Message Date
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
Pranav Kanade
599996fbfa
bug/duplicate application name error will be handled (#5316)
* will show last saved app name if save app name action results in error

* handled duplicate appname update for editing cards

* fixed the app icon update bug

* updated list widget dsl
2021-06-24 12:02:09 +05:30
Rishabh Saxena
c351643f57
Notification updates (#5239) 2021-06-23 21:12:07 +05:30
Hetu Nandu
441f42c72f
Generate linting errors via JSHint (#5034) 2021-06-21 16:39:51 +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
9c99f36bd6
Comments feature fixes (view mode) (#5081) 2021-06-17 13:07:27 +05:30
Rishabh Saxena
9c75596957
Init notifications (#4839) 2021-06-09 20:02:17 +05:30
Rishabh Saxena
07a292328a
Comments feature fixes (#4738) 2021-06-09 16:05:10 +05:30
Apeksha Bhosale
179d5ae8a9
Improve JS error reporting in the debugger (#4854) 2021-06-04 12:39:36 +05:30
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
Rishabh Saxena
9f76218306
Trigger invite flow via comments (#4602) 2021-05-27 11:51:36 +05:30
Apeksha Bhosale
4825ce2a2a
Show JS eval errors in evaluated value pane and debugger (#4463)
Co-authored-by: jsartisan <pawankumar2901@gmail.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
2021-05-26 18:02:43 +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
Satish Gandham
8ad7eecdeb - Auto fix sort ddestructured props rule 2021-05-13 14:05:39 +05:30
Rishabh Saxena
a0d2e8533d
Initialise comments (#3328)
* Initial scaffolding for comments CRUD APIs

* add actions

* add assets

* state management for existing comments and creating new

* add ui components

* add overlay comments wrapper to baseWidget

* add toggle comment mode button at editor header

* trigger tests

* Disallow commenting as someone else

* Add applicationId for comments

* lint

* Add overlay blacklist to prevent component interaction while adding comments

* Comment thread style updates

* Placeholder comment context menu

* Controlled comment thread visibility for making new comments visible by default

* Update comment type description

* Reset input on save

* Resolve comment thread button ui

* fix close on esc key, dont create new comment on outside click

* Submit on enter

* add emoji picker

* Attempt at adding a websocket server in Java

* CRUD APIs for comment threads

* Add API for getting all threads in application

* Move types to a separate file

* Initial commit for real time server (RTS)

* Add script to start RTS

* Fix position property

* Use create comment thread API

* Use add comment to thread API

* Add custom cursor

* Dispatch logout init on 401 errors

* Allow CORS for real time connection

* Add more logs to RTS

* Fix construction of MongoClient

* WIP: Real time comments

* Enable comments

* Minor updates

* Read backend API base URL from environment

* Escape to reset comments mode

* Set popover position as auto and boundary as scroll parent

* Disable warning

* Added permissions for comment threads

* Add resolved API for comment threads

* Migration to set commenting permission on existing apps

* Fix updates bringing the RTS down

* Show view latest button, scroll to bottom on creating a new comment

* Cleanup comment reducer

* Move to typescript for RTS

* Add missing server.ts and tsconfig files

* Resolve / unresolve comment

* Scaffold app comments

* Minor fixes: comment on top of all widgets, add toggle button at viewer header

* Reconnect socket on creating a new app, set connected status in store

* Retry socket connection flow

* Integration tests for comments with api mocks using msw

* Fix circular depependency

* rm file

* Minor cleanup and comments

* Minor refactors: move isScrolledToBottom to common hooks, decouple prevent interactions overlay from comments wrapper

* Use policies when pushing updates in RTS

* ENV var to set if comments are enabled

* Fix: check if editor/viewer is initialised before waiting for init action

* Add tests for comments reducer

* Revert "ENV var to set if comments are enabled"

This reverts commit 988efeaa69d378d943a387e1e73510334958adc5.

* Enable comments for users with appsmith email

* lint

* fix

* Try running a socket.io server inside backend

* Update comment reducer tests

* Init mentions within comments

* Fix comment thread updates with email rooms

* Minor fixes

* Refactors / review suggestions

* lint

* increase cache limit for builds

* Comment out tests for feature that's under development

* Add Dockerfile for RTS

* Fix policies missing for first comment in threads

* Use draftJS for comments input with mentions support

* fix fixtures

* Use thread's policies when querying for threads

* Update socket.io to v4

* Add support for richer body with mentions

* Update comment body type to RawDraftContentState

* fix stale method

* Fix mentions search

* Minor cleanups

* Comment context menu and thread UI updates

* revert: Scaffold app comments

* Yarn dependencies

* Delete comment using id api added

* Init app comments

* Add test for creating thread

* Api for delete comment with id

* Test comment creation response and policies

* Copy comment links

* Fix reset editor state

* Delete valid comment testcase added

* Delete comment TC : code refactor

* Don't allow creating comments with an empty body

* Pin comments WIP[]

* Ignore dependency-reduced-pom.xml files from VCS

* Cleanup of some dev-only files, for review

* Delete comment

* Update socket.io to v4 in RTS

* Pin and resolve comment thread object added in commentThread

* Pin and resolve comment thread object added in commentThread

* Update comment thread API

* Added creationTime and updationTime in comment thread response

* Added creationTime and updationTime in comment thread response

* Added human readable id to comment threads, fallback to username for null name in user document

* Refactor

* lint

* fix test, rm duplicate selector

* comment out saga used for dev

* CommentThread viewed status, username fallback for getName=null, username field added in pin & resolve status

* lint

* trigger tests

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
2021-04-29 16:03:51 +05:30
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
4d73e7e0b3
Widget validation for nested property paths (#3947) 2021-04-21 20:04:25 +05:30
Hetu Nandu
0c77051944
Improve performance monitoring (#3790) 2021-03-31 13:10:59 +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
Rishabh Saxena
99b3fa6bb8
Omnibar global search (#2903) 2021-03-08 13:54:12 +05:30
Ashok Kumar M
af6b3dfdbb
Fix: Drop overlay widgets anywhere and add them as main container child (#3332)
* Fix: Drop overlay widgets anywhere and add them as main container child

* Using detachFromLayout config.
2021-03-04 10:26:00 +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
akash-codemonk
7fa5e3b1af
Hide pages in publish mode (#3106) 2021-02-24 19:17:37 +05:30
Piyush
faea2f36ff
Add support for setting.json for pluginType DB (#3156) 2021-02-23 13:57:37 +05:30
Piyush Mishra
a4fe0a461e
Table Widget New Features (#2816)
- Each column has more options and can be configured in the property pane instead of the table
- Table level styles can now be set in the property pane
- Property sections are collapsible

Co-authored-by: vicky-primathon.in <vicky.bansal@primathon.in>
Co-authored-by: nandan.anantharamu <nandan.anantharamu@thoughtspot.com>
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
2021-02-16 15:59:08 +05:30
devrk96
ac23629647
Feature: API Pane Redesign (#2218)
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2021-02-11 18:24:00 +05:30
Rishabh Saxena
1a593e1981
add default values to payload while creating a new action (#2976)
Fix default values not sent as payload while creating a new action
2021-02-11 17:17:21 +05:30
Rishabh Saxena
32b641c118
Implement new designs for the editor and viewer's navbar (#2750) 2021-02-04 12:32:36 +05:30
Rishabh Saxena
aea3b3d4db
Revamping UI on the Login/Signup page (#2696) 2021-01-27 11:42:32 +05:30
Hetu Nandu
2b8bae158c
Batch action evaluation calls (#2561) 2021-01-14 20:07:21 +05:30
Piyush Mishra
148497a1bc
Refactor datasources and actions for stronger type checking (#2167) 2021-01-12 09:47:28 +05:30
Piyush Mishra
1521f7445c
Fix eslint warnings (#2510) 2021-01-12 06:52:31 +05:30
Pawan Kumar
fcac402789
Fix - 502 in save layout is abruptly taking me to an error screen (#2475)
* remove crash:true in api + add error icon on page save

* remove crash true in api

* add crash on user init request fail

* dispatch safe crash action on user init call error

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2021-01-11 10:58:10 +05:30
Hetu Nandu
4387200262
Sub tree evaluation (#1841)
Co-authored-by: Trisha Anand <trisha@appsmith.com>
Co-authored-by: Piyush Mishra <piyush@codeitout.com>
Co-authored-by: Nikhil Nandagopal <nikhil@appsmith.com>
Co-authored-by: Akash N <akash@codemonk.in>
2021-01-04 15:46:08 +05:30
akash-codemonk
1a35bb1e75
Onboarding flow (#2311) 2020-12-30 13:01:20 +05:30
Piyush Mishra
806a139ddb
Make prettier changes (#2337) 2020-12-24 10:02:25 +05:30
Rishabh Saxena
396b12b024
reorder widgets alphabetically, autofocus search input (#2325) 2020-12-23 17:02:30 +05:30
Rishabh Saxena
778b82f9ae
enable hotkeys only when a widget is selected (#2262) 2020-12-23 16:58:29 +05:30
a
61e12235b2 Revert "reorder widget locale wise, autofocus search input"
This reverts commit 0bcc8872eb.
2020-12-23 11:08:52 +05:30
a
0bcc8872eb reorder widget locale wise, autofocus search input 2020-12-23 11:01:00 +05:30
Arpit Mohan
a942dc198e Revert "Onboarding flow (#1960)"
This reverts commit e84699e7ba.

Reverting this commit because this flow requires more changes before it's ready for prime-time.
Will continue development on this feature in a different branch
2020-12-22 13:02:02 +05:30
akash-codemonk
e84699e7ba
Onboarding flow (#1960)
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2020-12-18 18:48:47 +05:30
Pawan Kumar
e63f0a9d2a
Fix: 404 error page shows server unavailable (#2195)
* mount error wise route

* remove log

* add test case

* fix wrong error page

* fix typescript error + remove unused variable

* remove 404 + 500 routes

* remove unused imports

* fix typo in test case

* remove history replace in utils

* remove unused variable

* add error codes for safe crash

* remove unused variables

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

* update error codes in init saga

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

* remove unused variables

* remove extra line

* add header in error pag

* refactor page header on error page

* remove unused import

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2020-12-17 12:33:59 +05:30
Hetu Nandu
04e963c599
Fix for 502 errors from the server (#1949) 2020-12-09 00:43:48 +05:30
satbir121
8afa900044
Filepicker component and logo upload for org (#250) 2020-12-02 03:31:27 +05:30
devrk96
461b662c7a
Feature: Rename organization in homepage (#1201) 2020-11-25 17:54:14 +05:30
Pawan Kumar
ad52842e1c
Fix/entity name coincide issue 1396 (#1781)
* Fixing the telemetry on self-hosted instances (#1714)

* Fix issue where creating a new application twice does not work (#1713)

* add check if name is conflicting with internal fn

* use already existing selector

* add conflicting names checks on api/queries/widget names

* add test cases for invalid widget/api/query names

* refactor

* change array to map

* remove getDataTreeKeys selector

* refactor

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2020-11-23 14:57:00 +05:30
Hetu Nandu
20ef86f118
Improve app initialisation for timeouts (#1412)
Fixes: #1510 

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

* WIP: Achieve feature parity for entity explorer with release

* Update unit tests

* Add sentry profiling to current page entity properties component

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

* Deal with the ban-ts-ignore eslint issues

* Update unit tests

* Fix widget entity children visibility

* Fix tests and code

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

* Filter undefined children when generating structureDSL

* Remove rule from eslintrc

Consolidate createPage test command

* Update CreatePage tests to remove redundant dsl updates

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

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

* Revert to ban-ts-comment

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

* Typescript errors handled

Co-authored-by: vicky-primathon.in <vicky.bansal@primathon.in>
2020-11-03 18:35:40 +05:30
Hetu Nandu
4cba17ab82
Add post eval action support (#1529)
Fixes #1504
2020-11-03 15:46:11 +05:30
Trisha Anand
fc9ea45e3b
[API breaking change : Automated Tests Will Fail] Page And Action Refactor (#549)
* Introduced new page which stores the published and unpublished pages as separate.

* Mid level commit to save the state.

* Parity of new page repository with old page repository (custom functions)

* WIP : Delete a page. This requires changes across application structure as well.

* Added publishedPages construct inside application to store the pages in the deployed view as well as isDefault so that the same changes (delete or isDefault) in unpublished view doesn't alter these fields for the published application

* Parity reached with PageService.

* Minor ActionService refactor to remove unnecessary code.
ApplicationPageService, LayoutActionService, LayoutService use the new page service to fetch the pages
Minor corrections in fetching the page from new page service in tests

* New save function which sets the PageDTO for unpublished page and then saves the new page into repository.

* Migration of page service functions to new page service functions across other services/tests/controller

* Finished migrating all the page service functions to the new page service functions

* Application Service Tests have been fixed.

* All the existing test cases are working now.

* Publish application implemented to store published pages as well. Added a basic test case to check that published pages is being set and that page's publishedPageDTO is being set accordingly.

* Minor TODOs added to add test cases for published application.

* A few tests to ascertain that published application page fields (deleted, isDefault) does not get changed when these statuses are changed for a page in edit mode.

* Added a new controller end point to fetch application in view mode.

* Added new endpoint for fetching an application in view mode on the client.

* Bug fix where get application in view mode API was not getting called.

* Fixed the get page names by application & archive pages which have been deleted in edit mode during publishing of application.

* During delete page, if a page was never published and it was deleted during edit, delete the entire page instead of just deleting the unpublished PageDTO

* Minor formatting.

* Non working client side code to fetch page list using view mode.

* revert unnecassary changes and streamlined view and edit actions

* Fix missed import

* Fixed a bug where if a page is not published, it should not be returned in view mode in list of page names api.

* Fixed update for a page which was not working in integration test.

* ActionDTO added.

* Solidified the new action structure.

* Migration added for NewAction index creation and NewAction per Action insertion in the database.

* Basic file structure added the new repository, custom repository, service, etc.

* Delete OldPage.java

* Repo functions added - TODO : Haven;t handled the published/edited views

* Helper functions added to convert Action to NewAction and vice-versa. Removed unused currentUserMono usage.

* Create & update action functionality added.

* Execute Action refactored. Removed dry run specific code.

* Repository migrated to handle new data structure. Execute action refactored to no longer support dry runs of actions.

* TODO added for special handling of change view of application to handle edge cases of pages/actions which either exist in published mode but don't exist in unpublished mode or vice versa.

* Migrated finding on load actions from spring repository to custom repository.

* In view mode, now actions are being fetched by application id directly instead of first fetching application and then using the page ids, fetching the actions. This reduces the db calls from 2 to 1 per fetch actions in view mode api call.

* Delete action and get all actions (used in edit mode on the client side) implemented.

* Updated CollectionService and ActionCollectionService to use the new action service instead of the old one.

* LayoutActionService refactored to now use the new service functions.

* ActionController now no longer used ActionService. The remaining service functions have been migrated to the new action service.

* Refactor across ACL code for addition/removal of policies during addition/removal of users to organization, making app public, refactor for services like policy utils, item service, etc.

* Removed the last of action repository and action service and replaced with new action repo and new action service.

* Compile and run time issues fixed. The server is coming up without any spring dependency errors.

* WIP in fixing fetching actions by page id.

* Finally!!! Fixed the fetch actions (both published and unpublished actions) by page id repository function.

* Fixed create action bug where null datasource in published actiondto (inside newly created action) leads to error.

* Fixed the execute action issues :
1. Removed the dry runs from the tests
2. Fixed the null pointer error in variable substituted action and datasource configurations.

* 1. Fixed the custom action repository field names.
2. Fixed the data structures used in ExamplesOrganizationClonerTests

* Fixed countByDatasourceId repository function which was querying the actions incorrectly.

* Fixed the clone example organization error where the id of the action was not getting updated in the page correctly. Yay!

* Fixed post merge compilation failure.

* Fixed more compilation time failures in ActionServiceTest

* Fixed failing test case for fetching actions in view mode.

* Minor changes to resolve merge changes and incorporate in the new refactored code.

* 1. Fixed compile time errors on Client code.
2. Fixed fetching of actions in view mode by application id. The repository function did not need name parameter. Removed the same.

* [Integration Testing Error Fix] : Added a new test case for refactor action name.

* Instead of fetching actions in the page, mistakenly used the base service which was fetching all the actions in the repository, barring none which led to the name refactor being blocked even though no action in the current page exists with the new proposed name,

* Added delete functionality to action service.

* Minor code cleanup

* Adding viewMode to action execution

* Replacing action with actionId.

* 1. Bug fix for deletion of unpublished action. In case of never published action, the entire action should be deleted. In case an action was published, only the unpublished action should be deleted.
2. In case of DB actions (external datasources), only the bare minimum fields should be stored inside the action (datasource id and datasource plugin id). The other fields should not be duplicated across code.

* Fixed yarn build compilation issues.

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/ActionController.java

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Changed the API path for GET applications in view mode. Some minor code formatting.

* Incorporated review comments.

* Some more unnecessary code removed.

* Instead of returning Page, now the interface object between client and server for Pages is PageDTO

* Migrated Page and Action to PageDTO and ActionDTO
Fixed the compilation issues.
TODO : Fix the test compilation issues.

* Fixed compilation time issues with all the tests by migrating Page and Action to PageDTO and ActionDTO respectively

* Action Controller and Page Controller no longer extend Base Controller. All the required functions have now been implemented and no base line API end points are being re-used from the base.

* Test case fixes.

* Bug Fix : Updating an action was not updating execute on load. Fixed the data flow leading to the error.

* Deprecating Page and Action domain objects. This is to ensure no new code is written with these till we remove this old code.

* Cloned example applications are now published before returning. This is to ensure that the applications are in ready to view mode when the new user signs up.

* Added a function comment to expand on the usage of new param introduced.

* When cloning a page, new actions were not being stored. Added that. Also updated the clonePage test to assert that the actions are also cloned when the pages are cloned.

* Updated a Api call

* removed extra slash

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Satbir Singh <satbir121@gmail.com>
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
Co-authored-by: nandan.anantharamu <nandan@thinkify.io>
2020-10-26 18:04:23 +05:30
Hetu Nandu
655b160922
Web worker evaluation (#706)
- Adds Web workers and does evaluations in off the main thread
- Removes any need to store functions in the data tree and only keeps them around while evaluating
- Maintains a stored data tree in the redux state
- Evaluates based on editor events instead of state changes
2020-10-21 09:55:32 +05:30
akash-codemonk
380da11ef0
Query home page with datasource information (#1237) 2020-10-20 14:30:02 +05:30
Akshay Avinash
d90d420035
Added no search result image and text on applicaitons (#1240) 2020-10-19 17:41:14 +05:30
devrk96
539253f17e
Feature: Create new-app flow (#926)
* create new app flow

* uncontrolled component error fixed

* loader added when user is deleting or user role is updating

* home page loader and create-new-app loader added

* user role changing and use deleting state fixed

* PR feeback changes added

* orgname loader added

* warnings removed

* fixed create-new-app flow and delete app test cases

* beforeAll test case condition fixed

* Initial navigation condition fixed in createOrg test cases

* app card loading state fixed
2020-10-14 16:05:19 +05:30
Nikhil Nandagopal
c550e9202f Merge branch 'master' into release 2020-10-12 19:08:23 +05:30
akash-codemonk
25285033d6
Feat/add query flow (#1146)
* Add datasource connected page

* Default to show connected screen in datasource editor

* Update UI

* Fixes

- Change text from connected to saved
- Show key with empty values if there are no values
- After creating a new datasource go to edit mode

* Stop calling test on save

* Fix tests

* Fix test

* Dummy commit

* Always be in view mode unless clicked on edit mode

* Fixes

- Update datasource connected page for rest api datasource
- Fix empty array values not resetting

* Fix create new api crashing

- While creating new datasource show form in edit mode

* Fix tests
2020-10-12 19:07:18 +05:30
Abhinav Jha
76ae0103bf
Upgrade npm packages (#1079)
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2020-10-12 18:36:05 +05:30
Nikhil Nandagopal
194f27aabb
Feature/analytics (#1022)
* added appname to PAGE_LOAD data and fixed getCurrentApplication method

* Fixed analytics to save and test datasources

* fixed analytics for create action

* added event for action execution

* added a type for event location
2020-10-06 20:40:21 +05:30
Nikhil Nandagopal
662098d771
Manual Performance Tracking utility (#696)
- Created Performance Tracker to use a queue internally to make synchronous logging easy
- Bump sentry sdk versions
- Added performance tracking for 
  - GENERATE_VIEW_MODE_PROPS
  - GENERATE_API_PROPS
  - ENTITY_EXPLORER_ENTITY
  - GENERATE_PROPERTY_PANE_PROPS
  - GENERATE_WIDGET_EDITOR_PROPS
  - CLOSE_API
    - SYNC_PARAMS_SAGA
    - CHANGE_API_SAGA
  - CONSTRUCT_UNEVAL_TREE
  - DATA_TREE_EVALUATION
    - CREATE_DEPENDENCIES
    - SORTED_DEPENDENCY_EVALUATION
    - SET_WIDGET_LOADING
    - VALIDATE_DATA_TREE
  - CONSTRUCT_CANVAS_DSL
 

Co-authored-by: Nikhil Nandagopal <nikhil@appsmith.com>
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2020-09-24 10:17:37 +05:30
satbir121
b9154f6ea9
Homepage redesign with themes (#482)
* Updating homepage body color

* WIP: Fixing scrolls and adding anchors

* Removing divider from bottom of the page.

* Adding hover background color to app card

* Changing edit and launch icons.

* Fixing app name paddding in card.

* Fixing workspaces overflow

* Adding right padding to applications view

* Adding share icon to share btn

* Fixing Application card styles.

* Fixing text decoration in button.

* Adding new workspace button

* Fixing new workspace and new app styles.

* Adding icon sizes.

* Fixing Org Name and Org settings menu.

* Application menu working

* Fixing overlay visibility on app card

* Fixing settings page content width.

* Fixing workspace icon

* Changing app card colors.

* Removing debugger

* Adding app icon.

* Fixing the spaces in application card

* Adding storybook-static folder to gitignore.

* Adding other storybook files.

* Adding menu items for app

* Removing cypress selector from text.

* Menu width issue fixed

* Default app icon color added

* Removing hardcoded colors

* Removing hardcoded colors.

* Light Mode on!

* Showing correct icon and color in menu

* Update color working properly.

* Updating appIcon

* Editable text working.

* Adding validator

* Adding edit permissions to menu

* Removing box shadow on app card.

* Fixing context menu fill color

* Fixing Menu hover issues.

* Fixing menu open close hover issues.

* Fixing settings pages

* Changed Workspace to org.

* Fix: State management in EditableText Component (#540)

* Error state height is fixed as per design

* savingState prop condition fixed

* Fixing createnew.

* Fixing saving state for application card.

* Fixed application card editable text error.

* Fixing issue caused during merge.

* Fixing tests in create org.

* Removing commented code.

* Removing unwanted vars.

* Fixing delete duplicate tests.

* Latest color palette.

* Fixing form and table widget.

* Removing switcher from header

* Removing unused files

* Fixing app card context dropdown

* Show overlay fix

* Adding localStorage support to theme.

* Making dark mode the default.

Co-authored-by: Rohit Kumawat <rohit.kumawat@primathon.in>
2020-09-16 17:20:47 +05:30
Abhinav Jha
436f190555
Feature: Widgets: Cut-Copy-Paste-Delete shortcuts, undo-delete facility (#500) 2020-09-16 15:58:01 +05:30
akash-codemonk
aa068e3596
Add duplicate application option (#465) 2020-09-01 12:46:54 +05:30
satbir121
e2b939416a
Members and org settings page (#424)
* Members and org settings page.

* Adding link back to applications

* Making UI look better.

* Fixing some more css

* Table dropdown onBlur, UI transparency, Popover issue fixed. Added sort arrow (#413)

* table dropdown ui issue and onblur click fixed

* position props value fixed

* tabs tripple click fixed

* Position props in table dropdown made optional

* tabs background color bug removed

* General settings page is bug free.

* Getting the manage users page to work.

* Moving general settings into its own file.

* Removing some unwanted URLs

* User cant change their role or remove themselves

* Changing onClick prop for Icon.

* Fixing tests

* Added loading states to text inputs.

* Added validators for text input

* Fixed border of skeleton for text input

* Adding a loader for Members screen

* Adding Noop to icon button

* Removing console.log

* Fixing imports.

* Moving org reducer to immer.

* Using utils email validator.

* Removing placeholder from text input props.

Co-authored-by: devrk96 <rohit.kumawat@primathon.in>
2020-08-29 00:21:16 +05:30
akash-codemonk
4f8a3b5968
Save datasource name on change (#373) 2020-08-26 10:54:44 +05:30
Hetu Nandu
7f8befc365
Update support menu (#259)
Add a default help menu with
* Report a Github issues link
* Documentation link
* Github discussions link
* Intercom link support
* App version id support
2020-08-14 15:17:47 +05:30
Hetu Nandu
d24d0ed17c
Fixes to data tree appsmith entities (#307)
* Fixes to data tree appsmith entities
* Add app mode `appsmith.mode`
* Add a common app data state for appsmith namespace entities
* Add autocomplete entries for btoa and atob
* Add urlString property in appsmith.url for full url
2020-08-14 13:13:01 +05:30
Tejaaswini Narendra
c77452775b
update: Invite user dropdown UI (#267) 2020-08-12 12:47:15 +05:30
akash-codemonk
a0351bfe81
Get query ui from form config (#205)
* Get query ui from form config

* Update editor config selector

* Show error message when config is undefined

* Move FormLabel to components

* Show dark theme in query editor

* Allow query name to be focused
2020-08-12 11:57:35 +05:30
NandanAnantharamu
05f190c102
Feature/entity browse (#220)
# New Feature: Entity Explorer
- Entities are actions (apis and queries), datasources, pages, and widgets
- With this new feature, all entities in the application will be available
  to view in the new entity explorer sidebar
- All existing application features from the api sidebar, query sidebar, datasource sidebar and pages sidebar
  now are avialable on the entity explorer sidebar
- Users are now able to quickly switch to any entity in the application from the entity explorer sidebar.
- Users can also search all entities in the application from the new sidebar. Use cmd + f or ctrl + f to focus on the search input
- Users can rename entities from the new sidebar
- Users can also perform contextual actions on these entities like set a page as home page, copy/move actions, delete entity, etc from the context menu available alongside the entities in the sidebar
- Users can view the properties of the entities in the sidebar, as well as copy bindings to use in the application.
2020-08-10 14:22:45 +05:30
Hetu Nandu
42ab557aca
Add url and user inside data tree (#240)
* Add url and user inside data tree

* Cleanup

* change key to URL

* add email and username instead of name
2020-08-07 19:54:26 +05:30
Hetu Nandu
955e9a2f2b
App Edit top bar (#232) 2020-08-07 12:26:47 +05:30
Hetu Nandu
a29dccbaf0
First time page load performance (#144)
* WIP

* Chunk names

* Add auth call

* add auth

* WIP

* Auth management setup

* fix a test

* fix cypress machine count

* some more changes

* fix header link

* check for auth

* fix import

* fix imports

* Use auth class

* WIP

* Better loading

* Remove unused

* Remove qs

* Auth loader

* Redirect for login

* Third part auth

* 404 redirects

* 404 page handling

* Adding custom docker image for performance fixes

* Correcting the workflow to get package step to run

* Clean up

* lazy auth load

* remove assertions from delete app and logout calls

* remove github workflow changes

* roll back lazy auth

* Error handling

* test editor chunk suspense

* Show header in editor before initialization

* Changes for app view

* Login header fixes

* Loader fixes

* Fix base login routes

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-08-03 19:48:48 +05:30
Tejaaswini Narendra
fa329c742f
fix: Table scroll issue, application share issue, eslint errors (#120)
* fix: Table scroll issue, application share issue, eslint errors

- Settings page: whole page should scroll not the table
- Application name to be displayed to user on share
- Fix eslint errors

* fix: Get Application details and pass it to as props.
2020-07-23 17:58:42 +05:30
akash-codemonk
36258786c9
Show all db datasources in query pane (#134) 2020-07-21 17:42:35 +05:30
akash-codemonk
30b8d3581b
Query pane refactor and fixes (#87)
* Query pane refactor and fixes

* Check if body exists

* Get pluginId from the datasource

* Move plugin image logic to selector

* Show info in new line on the datasource form page

* Update link text to Docs

* Handle string as run api response body

* Remove harcoded height

* Remove all references to ImageAlt except in selector

* Updata info text
2020-07-21 16:06:53 +05:30
Hetu Nandu
af65e1ca9f
Add property checks in evaluated widget (#95) 2020-07-21 12:29:49 +05:30
Hetu Nandu
70955de703
Create fetch actions workflow for view mode (#102)
* Create fetch actions workflow for view mode

* Remove config from autocomplete results
2020-07-15 18:31:35 +05:30
Tejaaswini Narendra
b035241013
fix: error page and get applications API (#77)
* fix: error page and get applications API

* fix: apptoaster check for show variable instead of error code.

* fix: Update naming and combine currentOrgId and OrgDetails.
2020-07-13 19:24:26 +05:30
Hetu Nandu
13e173fa77
Action save fixes (#33)
- Increased timeout for move action
- Table header typescript fix
- Fix data tree selectors for better performance
- Debounce update action saga by 500 ms
- Query delete fix
- Query save fix
2020-07-06 19:05:31 +05:30
Hetu Nandu
4a6717889c
Streamline action save with widgets (#10)
- Remove drafts from actions
- Direct update action from forms
- Debounced saving of actions
- Add org id in default datasource
- Merge query and api run saga
2020-07-03 14:28:58 +05:30
Hetu Nandu
fb65b204a8 JSON stringify fixes 2020-06-25 10:04:57 +00:00
Hetu Nandu
64fc1dc3f3 Merge branch 'master' into 'release'
Backmerge Master to release

See merge request theappsmith/internal-tools-client!760
2020-06-19 13:09:03 +00:00
Hetu Nandu
2d956644df Hot fixes 2020-06-19 13:06:45 +00:00
Satbir Singh
e2a30da1c3 Merge branch 'master' into 'release'
Backmerge master to release.

See merge request theappsmith/internal-tools-client!754
2020-06-18 16:24:21 +00:00
Hetu Nandu
ded1a130e3 Action draft fixes 2020-06-18 14:16:49 +00:00
Abhinav Jha
fdd826d929 Remove console warnings like react hook dependency warnings and unused vars 2020-06-17 19:23:01 +05:30
Arpit Mohan
fc8e43da1f Query pane fixes
- Show mongo execute response in seperate cards for each record
- Update postgres read template
- Show query execute error message in the UI.
2020-06-17 10:19:56 +00:00
Satbir Singh
7e3df81302 Api name editable. 2020-06-16 10:23:19 +00:00
Satbir Singh
13422048e4 Save api on edit. 2020-06-10 17:42:51 +00:00
Hetu Nandu
e401844014 Fix Chart series data 2020-06-05 16:20:23 +00:00
Hetu Nandu
d9540f8927 Evaluated value popup 2020-06-04 13:49:22 +00:00
Akash N
62f003df6e Embedded Datasource
- Show path along with url in the api pane for embedded datasource
- Add store as datasource menu option for embedded datasource
- Allow users to type the  path for global datasources
- Show the base url as a tag along with the path for global datasource.
2020-06-03 05:40:48 +00:00
Satbir Singh
b7b74ffd02 Feature/help 2020-05-28 18:10:26 +00:00
Hetu Nandu
010b48d7fa Tern autocomplete 2020-05-20 11:30:53 +00:00
Akash N
2630eaa4ca Feature/datasources draft 2020-05-19 06:10:59 +00:00
Abhinav Jha
e617957ce8 Back to editor button 2020-05-14 06:06:20 +00:00
Hetu Nandu
d19f86ffee Untitled datasources are named by the server 2020-05-12 15:14:29 +00:00
Hetu Nandu
2426d2cac9 Filter plugins 2020-05-05 09:03:03 +00:00
Hetu Nandu
0bdb9bea4c feat: dynamic post body in api form
- add info icon
- display helper text and placeholders dynamically
2020-05-05 07:50:30 +00:00
Akash N
cf0da78dd4 Merge branch 'release' of https://gitlab.com/theappsmith/internal-tools-client into feature/form-config-api 2020-04-29 16:21:11 +05:30
Abhinav Jha
7b0f659ff2 Widget Name Restrictions 2020-04-29 10:20:12 +00:00
Abhinav Jha
299c2fbbb2 Remove use of reselect in editorSelectors. Rename action from UPDATE_CURRENT_PAGE to SWITCH_CURRENT_PAGE_ID. Update new page name in bread crumbs 2020-04-29 09:41:30 +00:00
Akash N
9c1991aaa3 Get form configs from api 2020-04-29 14:53:23 +05:30
Hetu Nandu
89ab91361e fix: provider cards ui fixes
- alignment of provider cards in api home screen fixes
- do not load the providers if already present
- fix 'Add to page' button moving on cliick in provider templates
2020-04-28 10:47:59 +00:00
Hetu Nandu
13c59ee80f Datasource bug fixes
- Prefill datasource title
- Decrease field width
- Save button should have loading state
- Back button in form screen
- Right align save button
- Add new plugin images
and other fixes
2020-04-28 06:52:53 +00:00
Satbir Singh
a2086d2b5f Action selector refactor 2020-04-20 05:42:46 +00:00
Hetu Nandu
af3b5d212f fix: ui fixes and type defination fixes
- avoid using any or undefined types in the code
- fix ui issues for api home screen
- update naming convensions
- remove unwanted code
- use color variables
2020-04-14 12:34:14 +00:00
Hetu Nandu
378242e5e8 remove url from data tree 2020-04-07 13:31:34 +05:30
Abhinav Jha
dc877288bc Modal Fixes 1 2020-04-03 09:32:13 +00:00
Satbir Singh
bb9fc29409 Page Params 2020-04-01 08:09:57 +00:00
Satbir Singh
80c449e227 Not passing evaluated data to property pane 2020-03-31 22:11:07 +05:30
Satbir Singh
70243829d5 Nav to Url validation fixed 2020-03-31 10:40:52 +00:00
Abhinav Jha
a0872b97f2 Generate widgets from blueprint. Close previously open modals when showing a modal. Fix unicode page name issue in pagelist sidebar 2020-03-27 09:02:11 +00:00
Hetu Nandu
80db9eb030 Performance instrumentation 2020-03-23 12:40:17 +00:00
Hetu Nandu
1e86690b52 data tree only contains current page actions 2020-03-19 08:55:52 +05:30
Satbir Singh
43a35c2162 Removed the extra call to fetch application data before load. 2020-03-09 05:46:32 +00:00
Hetu Nandu
d9dee9b16d Form Widget 2020-03-06 09:45:21 +00:00
Satbir Singh
0b9a0cc6ab More events 2020-03-06 04:59:24 +00:00
Abhinav Jha
37c96ab839 Fix - P0 issues 2020-03-04 08:10:40 +00:00
Abhinav Jha
4d68e9a167 Remove unused variables. Remove missed console.log statement. 2020-02-27 09:29:28 +05:30
Hetu Nandu
5e0beb9fe7 Property Pane - Convert control to dynamic 2020-02-26 12:44:56 +00:00
Hetu Nandu
0a40cebf79 function support 2020-02-25 14:20:40 +05:30
Hetu Nandu
fb80c4b576 Action refactor 2020-02-18 10:41:52 +00:00
Abhinav Jha
12c8bfe374 Focus widget only if not already focused. Remove routerparams reducer, we have the info in editorReducer. Change anchor link to button to remove accessibility warnings. 2020-02-12 15:06:08 +05:30
Satbir Singh
24bca16cf6 Pagination enhancements. 2020-02-07 11:34:57 +00:00
Satbir Singh
84d35aced6 Feature/server side pagination 2020-02-07 02:32:52 +00:00
Abhinav Jha
e2ceaed1db Merge branch 'fix/delete-app-order' into 'release'
Delete application after api response

- When user clicks on delete application -show toast
- When delete api response returns, remove toast as well as application card.

See merge request theappsmith/internal-tools-client!277
2020-02-05 07:00:54 +00:00
Satbir Singh
6987b392d7 Revert "Merge branch 'feature/server-side-pagination' into 'release'"
This reverts merge request !271
2020-02-04 09:41:12 +00:00
Satbir Singh
7edad01821 Server side pagination 2020-02-04 08:59:46 +00:00
Abhinav Jha
1dcdf8694f Delete application after api response 2020-02-03 17:49:10 +05:30
Hetu Nandu
ef245c1c8d P0 fixes 2020-02-03 11:49:20 +00:00
Hetu Nandu
0dd25ba2ef Refactor Widget loading 2020-01-30 13:23:04 +00:00
Hetu Nandu
729599009a Api page association 2020-01-24 09:54:40 +00:00
Abhinav Jha
aaf07ae583 Applications Page and Text Widget Truncation 2020-01-20 08:07:00 +00:00
Hetu Nandu
cc50beb0a0 Add back derived properties 2020-01-17 09:28:26 +00:00
Abhinav Jha
2e8f5a982f Fix - Invite Users 2020-01-14 09:47:45 +00:00
Abhinav Jha
c6906e1781 Merge branch 'release' of gitlab.com:theappsmith/internal-tools-client into feature/fix-71 2020-01-06 16:33:42 +05:30