Commit Graph

1805 Commits

Author SHA1 Message Date
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
akash-codemonk
5f39dfd88b
Fix new query flag value (#55) 2020-07-08 15:04:50 +05:30
trishaanand
a5a3a5f4a2
Bug fix - In case of invited user signing up on Appsmith, the password is getting doubly hashed leading to sign in breaking for this user. (#51)
* Bug fix is working. Added a test case which is not working.

* Code cleanup. Test case fixed. Now, when we set the user to enabled, we also store the password that has been passed to the flatMap.

* Minor code cleanup.
2020-07-08 13:16:13 +05:30
trishaanand
765f1c7164
Get user profile should return anonymousUser instead of 401 unauthorized in case the API is called without logging in. (#50)
This will help us display the 404 page on the client reliably.
2020-07-08 11:54:00 +05:30
Arpit Mohan
930d802475 Merge branch 'release' of github.com:appsmithorg/appsmith into release 2020-07-08 11:09:09 +05:30
Abhinav Jha
94b28311c6
Use injected configuration from Nginx at runtime instead of build time (#30)
* Use envsubst and nginx templates to generate nginx configs which can substitute environment variables and inject into the index.html file

* Fix path in dockerfile. Add .gitignore and .env.example files. Fix nginx-linux template.

* Add all environment variables. Add prefix to all environment variables. Update scripts to attempt to substitute all environment variables with the prefix

* Setup dockerfile to execute a bash script. use env.example for fetching environment variables in development

* Toggle features based on injected configs. Fix nginx template substitution script.

* Update env.example file

* Remove debug code from start-nginx.sh

* Fix nginx config templates by adding quotes by default. Fix sed regex to include numerals. Toggle social login buttons on Login page based on the config.

* Update rapid api environment variable name. Toggle oauth buttons based on config in SignUp page. Update .env.example to be a union of server and client environment variables

* Adding a Map disabled message on Map widget

* Adding links to Privacy policy and TNC

* Use REACT_APP_ env variables with higher priority over injected config variables for toggling features

* Update netlify.toml by commenting out the build environment variables

* Remove env variables not required by the client

* Remove start-storybook entry from package.json

* Fix netlify.toml. Fallback algolia configs

* Add contexts to netlify.toml for successful deploys. Swith to using APPSMITH_MARKETPLACE_URL as the toggle for RapidAPI feature on the client. Remove comments in nginx config templates. Fix template used in dockerfile.

Co-authored-by: Satbir Singh <apple@apples-MacBook-Pro.local>
Co-authored-by: Satbir Singh <satbir121@gmail.com>
2020-07-07 15:52:17 +05:30