Commit Graph

1810 Commits

Author SHA1 Message Date
Trisha Anand
d1dd74018f
Bug fix : Update of datasource object leads to authentication field getting encrypted again. (#124)
* Datasource authentication object fields should only be encrypted during create or if the update object contains authentication object. Added a test case to check that update to any other field doesnt update the encrypted fields.

* Incorporated review comment
2020-07-21 10:53:03 +05:30
NandanAnantharamu
1d726dac20
Create Org related usecases (#84)
* Create Org related usecases

* Review comments incorporated

* Updated with env variables for test users and routes

Co-authored-by: Nandan Anantharamu <Nandan@thinkify.com>
2020-07-20 15:08:35 +05:30
Shrikant Sharat Kandula
55a6cc6614
Clone examples organization for every new user (#78)
* Trying to clone the examples repo on new user signup

* Working implementation of cloning examples organization on user sign up

* Fix personal org not being created when template org is missing

* A working version of cloning of examples organization on first-login

* Add docs for methods in ExamplesOrganizationCloner

* Refactor computing user's first name into a method

* Add some menial tests for examples organization cloning

* Use explicit permissions when fetching applications and datasources

* Fix template organization config name hard-coding
2020-07-20 13:07:31 +05:30
Shrikant Sharat Kandula
f9e1d4f1ad
Chore/remove implicit permissions (#90)
* Refactor implicit permissions in service methods as function arguments

* Revert an unintended change that got committed

* Fix permission variable name

Co-authored-by: Trisha Anand <trisha@appsmith.com>

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-07-20 13:06:47 +05:30
vicky-primathon
4f47a8ad3f
Feature/table ui download data (#52)
* Created header for common functionalities in Table Widget

* Client side searching added in Table Widget. Action created for server side searching also.

* Columns visibility feature initial commit

* Column visibility list added in Table Widget

* Changed pagination designs in accordance with new layout. This enable user to jump page as well.

* Using colors values from constants

* Table widget pagination, numeric input page number clamped between 1 and total pages

* Adding tool tip to truncated values in table widget. Added AutoToolTipComponent that adds tooltip when text is truncated.

* Table data download changes. Added downlaod icon and button to table widget.

* Table data download changes

* Download table data as CSV implemented

* table data download, unused code removed

* Code review changes

* code review changes

Co-authored-by: Arpit Mohan <me@arpitmohan.com>
2020-07-20 11:34:05 +05:30
Hetu Nandu
b6c710cfa2
Add support for run time params in action execution (#98)
Adds a third parameter to the Action.run function that can be referenced inside an action config
Usage
`{{ Api1.run(...,...,{key: value}) }}` inside property pane
`{{this.params.key}}` inside action pane

* You can reference data tree properties in the params values:
`{{ Api1.run(..., ..., { key: "Input1.text.toUpperCase()" })`
* Bindings can have both params and data tree values referenced. 
* Param values can be javascript functions
`body: {{ this.params.list.map(i => Input1.text + i ) }}`
2020-07-17 18:25:34 +05:30
Nikhil Nandagopal
70c4dd5964
Fix/deploy script (#111)
* Added information to setup domain

* Fixed incorrect var reference

* Updated documentation message

* Updated env template

* updated template

* removed debug echo

* Updated Script

* Updated Text

Co-authored-by: Nikhil Nandagopal <nikhil@appsmith.com>
2020-07-17 15:29:28 +05:30
vicky-primathon
290bb8d57c
Table UI breakages on scroll and empty cells fixed (#60)
* Added Button component in Table widget for actions

* Action button state loading added for Table widget

* Action button font-weight made as normal

* Table button loading state fixed. Table code refactored, rendering from props instead of state in ReactTableComponent

* Table widget action button alignment fixed

* Handled actions column changes

* added proper keys to useMemo for react table widget

* Code refactors and added dependency map with meta props and table data for computing columns

* Table UI breakages on scroll and empty cells fixed

* Handled empty rows in table widget

* Fixed last row cut issue

* Code review changes

* Added table widget component heights as enum

Co-authored-by: Arpit Mohan <me@arpitmohan.com>
2020-07-16 16:09:07 +05:30
Shrikant Sharat Kandula
140bfed24f
Disable the direct create methods for pages and applications (#109)
* Disable the direct `create` methods for pages and applications
* Create differently named versions of create methods to avoid ambiguity
* Removed unused pageService in DatasourceServiceTest
* Rename createPlain method to createDefault to better convey intent
2020-07-16 15:13:03 +05:30
Arpit Mohan
13d3fe3076
Changing the CSS locator for the Share button (#110) 2020-07-16 12:25:54 +05:30
Arpit Mohan
1060423b99
Modifying deploy script to replace nginx configuration at runtime (#106)
* Getting the script to work on Mac OS X Bash Version 3

* Correcting the nginx template configuration and Dockerfile for the appsmith-editor. Now any replaced environment variables will be replaced when the Nginx Docker container restarts.
2020-07-16 11:47:45 +05:30
Arpit Mohan
a9ed054cbb
Adding Github Action workflow to the client code base (#66)
This PR adds the build, test & package workflow to the client code base as well.

In order for us to run the Cypress tests, we also spin up a local server in a Docker container and run all our tests against that server. This ensures that our tests are faster to run as well.

We also introduce the concept of stubbing network requests by stubbing the API that fetches the property pane configuration from the server.

Results for the Cypress tests can be viewed at: https://dashboard.cypress.io/projects/eyxvp8/runs/
2020-07-16 11:20:46 +05:30
NandanAnantharamu
daeb39a8ce
Apipane fix (#108)
Co-authored-by: Nandan Anantharamu <Nandan@thinkify.com>
2020-07-16 10:30:51 +05:30
Trisha Anand
04db3d4242
Bug Fix : Execute Action is not open for execution in public application. (#105)
* Opening the execute path & fetching db without permissions during execute path.
2020-07-15 21:36:35 +05:30
Trisha Anand
936c013b3b
Bug fixes : 401 for public applications + Empty set of actions for get in case cookies is anonymous (#104)
* Bug fixes :
1. Get actions in view mode should be open for unauthorized requests. Fixed that.
2. set transient fields in action is called post fetching all the actions (after taking care of all the permissions). At this point, we shouldnt be using permissions to fetch datasource.
2020-07-15 20:15:10 +05:30
Trisha Anand
20ae5fa546
Adding timeout in ActionViewDTO for the client to use to programmatically timeout on the execution request (#103)
* Adding timeout in ActionViewDTO for the client to use to programmatically timeout on the execution request.
2020-07-15 18:44:55 +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
Trisha Anand
6bfed87e40
Added pageId to action view dto (#101)
* Added pageId in the ActionViewDTO and NPE check for setting the json path keys.

* Checking for both json path keys being null and not empty before copying the json path keys into action view dto.
2020-07-15 17:53:38 +05:30
Trisha Anand
212e98c4ba
Fixing test cases failing due to non unique names. (#100) 2020-07-15 16:42:53 +05:30
Arpit Mohan
6c16cba4b9
Adding null checks before encrypting or decrypting the password in AuthenticationDTO object (#99)
This ensures that we don't run in NPE
2020-07-15 16:29:05 +05:30
Arpit Mohan
c15f83dbc3
Adding configuration variables for MAIL_FROM and REPLY_TO in EmailConfig (#97)
The MAIL_FROM & REPLY_TO addresses default to appsmith@localhost. This should be changed in the generated docker.env file during deployment to actual values.

Most email providers will not send emails unless they originate from a valid sender ID.
2020-07-15 15:47:33 +05:30
Tejaaswini Narendra
2956f1b3d0
Feat: Share application publicly (#89)
* Feat:  Share application publically

* fix: eslint warnings and code refactor
2020-07-15 15:17:39 +05:30
akash-codemonk
b1e8e83e5d
Show error toast for delete datasource (#93) 2020-07-15 13:30:34 +05:30
Nikhil Nandagopal
de151e1b46
Fix/deploy script (#94)
* Added information to setup domain

* Fixed incorrect var reference

* Updated documentation message

* Updated env template

Co-authored-by: Nikhil Nandagopal <nikhil@appsmith.com>
2020-07-15 12:49:52 +05:30
dependabot[bot]
204e65924f
Bump websocket-extensions from 0.1.3 to 0.1.4 in /app/client (#70)
Bumps [websocket-extensions](https://github.com/faye/websocket-extensions-node) from 0.1.3 to 0.1.4.
- [Release notes](https://github.com/faye/websocket-extensions-node/releases)
- [Changelog](https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md)
- [Commits](https://github.com/faye/websocket-extensions-node/compare/0.1.3...0.1.4)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-07-15 11:36:02 +05:30
akash-codemonk
b45cc8f35e
Fix autocomplete for special cases (#31)
* Fix autocomplete for special cases

-  Send the currently focused dynamic binding to tern instead of the entire editor value

* Add tests for TernServer methods

- Make request callback a seperate so that it could be testable
- Add tests for getFocusedDynamicValue, buildRequest and requestCallback

* Keep input and expected values together
2020-07-14 16:00:33 +05:30
Trisha Anand
fd0f23b9cc
Database credentials encryption in MongoDB (#80)
* Encrypting the password stored in AuthenticationDTO for every db.

* Adding comment to the properties file to denote that adding encryption salt and password are mandatory to the server coming up.

* Added the encryption salt and password to server.yml to allow the github actions to succeed.

* Adding database migration to encrypt the existing passwords for authentication object (used for storing db connection username/password)

Changes to the installation script install.sh:

1. Instead of overwriting the existing encryption password or salt, giving the user an option to conserve the previous encryption credentials to ensure that the developer users do not lose access to their database configurations (passwords).
2. Added another file for writing encryption credentials (encryption.env) to ensure that we dont delete the encryption password and salt by mistake.
2020-07-14 14:45:08 +05:30
vicky-primathon
7114936554
Fix/action btn loading in table widget (#28)
* Added Button component in Table widget for actions

* Action button state loading added for Table widget

* Action button font-weight made as normal

* Table button loading state fixed. Table code refactored, rendering from props instead of state in ReactTableComponent

* Table widget action button alignment fixed

* Handled actions column changes

* added proper keys to useMemo for react table widget

* Code refactors and added dependency map with meta props and table data for computing columns

* RenameColumnHeader function renamed to TableHeaderCell

Co-authored-by: Arpit Mohan <me@arpitmohan.com>
2020-07-14 13:25:46 +05:30
vicky-primathon
86b4ec562c
Table column show column fixed. Show icon changed. Columns list made … (#54)
* Table column show column fixed. Show icon changed. Columns list made static in visibility dropdown

* Code review comments handled

* Hiding visibililty options in published mode
2020-07-14 13:10:52 +05:30
Hetu Nandu
612f01b04a
Fix params not saving after url update (#85) 2020-07-14 12:23:33 +05:30
Trisha Anand
56acb5c9fd
New endpoint added to get actions by applicationId in view mode. (#88)
* New endpoint added to get actions by applicationId in view mode. Only id, name and jsonPathKeys are returned in view mode.
2020-07-13 23:27:49 +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
vicky-primathon
0a1a3e5589
Lightning menu dropdown popper placement fixed in query editor (#59) 2020-07-13 18:36:44 +05:30
NandanAnantharamu
1b3e8c91a7
Fixing Cypress test cases (#32)
* Removed saveQuery method part for query

* login from env variables

Co-authored-by: Nandan Anantharamu <Nandan@thinkify.com>
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Arpit Mohan <me@arpitmohan.com>
2020-07-11 12:12:53 +05:30
Shrikant Sharat Kandula
4796b6edba
Add maven-license-plugin to the project (#73) 2020-07-10 15:58:04 +05:30
Hetu Nandu
3d9962adfa
Add @appsmith namespace (#74)
Adds an @appsmtih alias for managing imports with the EE repo
2020-07-10 14:54:06 +05:30
Abhinav Jha
5ec134eae7
Use Google Maps API key from configs (#76) 2020-07-10 13:05:27 +05:30
Tejaaswini Narendra
a3ec3b3854
Adding CSS class names for testing (#75) 2020-07-10 12:12:51 +05:30
Trisha Anand
4a720b80e2
Removing the marketplace basic auth credentials which was hard coded into the code to environment variable. (#71) 2020-07-09 22:38:21 +05:30
Trisha Anand
8734067cad
Resolving the dependabot vulnerabilities. (#69) 2020-07-09 21:12:16 +05:30
Nikhil Nandagopal
3ef53b15f3
Feature/query help (#64)
* bumped up codemirror version

* minor fix

Co-authored-by: Nikhil Nandagopal <nikhil@appsmith.com>
2020-07-09 19:03:34 +05:30
Arpit Mohan
c31fb9acd4 Correcting the Github Action for the client Docker image build 2020-07-09 18:53:13 +05:30
Arpit Mohan
9c6b2967de Adding the step to add the release tag based on the branch in the client Docker image 2020-07-09 18:51:31 +05:30
Arpit Mohan
7dbda01ba4 Removing extra lines from client README 2020-07-09 18:40:35 +05:30
Arpit Mohan
ed00c59068 Adding instructions on how to test the code in app/server/README 2020-07-09 17:54:12 +05:30
Arpit Mohan
449b94d59a Merge branch 'release' of github.com:appsmithorg/appsmith into release 2020-07-09 17:50:43 +05:30
trishaanand
9eedb15620
Updating anonymous user permissions for application and associated pages & actions when public access is modified (#57)
* On setting an application to public view, correct permissions are assigned to the application and its pages & actions.

* If anonymous user is allowed a certain permission, the all users (anonymous/logged in) should be allowed the certain permission.
2020-07-09 11:21:39 +05:30
Arpit Mohan
bb59a555b1 Merge branch 'release' of github.com:appsmithorg/appsmith into release 2020-07-08 20:25:09 +05:30
trishaanand
53b61b4942
Skeleton code added for changing application view between public and private to help with client development. (#56) 2020-07-08 17:13:42 +05:30
Tejaaswini Narendra
7737b57667
Feat/page not found (#37)
* Feat: Implement page not found UI

* fix: check user login status and minor code refactoring

 - Check if user is logged in or not in page header.
 - Based on login status show relevant CTAs
 - Fix ESLint errors
 - Move RoleNameCell and DeleteActionCell as seperate components.

* fix: Add catch all for pagenotfound

* fix: Use constants and update css syntax.

Co-authored-by: Arpit Mohan <me@arpitmohan.com>
2020-07-08 15:44:03 +05:30