Commit Graph

221 Commits

Author SHA1 Message Date
Apeksha Bhosale
79e165af96
feat: Settings js editor (#9984)
* POC

* Closing channels

* WIP

* v1

* get working with JS editor

* autocomplete

* added comments

* try removing an import

* different way of import

* dependency map added to body

* triggers can be part of js editor functions hence

* removed unwanted lines

* new flow chnages

* Resolve conflicts

* small css changes for empty state

* Fix prettier

* Fixes

* flow changes part 2

* Mock web worker for testing

* Throw errors during evaluation

* Action execution should be non blocking on the main thread to evaluation of further actions

* WIP

* Fix build issue

* Fix warnings

* Rename

* Refactor and add tests for worker util

* Fix response flow post refactor

* added settings icon for js editor

* WIP

* WIP

* WIP

* Tests for promises

* settings for each function of js object added

* Error handling

* Error handing action validation

* Update test

* Passing callback data in the eval trigger flow

* log triggers to be executed

* WIP

* confirm before execution

* Remove debugging

* Fix backwards compatibility

* Avoid passing trigger meta around

* fix button loading

* handle error callbacks

* fix tests

* tests

* fix console error when checking for async

* Fix async function check

* Fix async function check again

* fix bad commit

* Add some comments

* added clientSideExecution flag for js functions

* css changes for settings icon

* unsued code removed

* on page load PART 1

* onPageLoad rest iof changes

* corrected async badge

* removed duplicate test cases

* added confirm modal for js functions

* removed unused code

* small chnage

* dependency was not getting created

* Fix confirmation modal

* unused code removed

* replaced new confirmsaga

* confirmaton box changes

* Fixing JSEditor Run butn locator

* corrected property

* dependency map was failing

* changed key for confirmation box

Co-authored-by: hetunandu <hetu@appsmith.com>
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-03-17 17:35:17 +05:30
Favour Ohanekwu
3f9e1a34eb
do not show errors for private widgets (#11883) 2022-03-16 15:27:22 +01:00
Apeksha Bhosale
46541bd9e7
allow functions inside loop (#11588) 2022-03-14 10:57:52 +05:30
Anand Srinivasan
ae733ca2f0
fix: unrelated widgets in loading state (#11370)
* log loading actions

* isLoading: check entity properties

* rename variables

* unit tests

* add descriptions

* clean test data

* include JS_Object self-dependencies

* add comment

* fix basic tests

* fix unit tests

* updated unit tests

* add test case

* update comment

* console - disable lint errors

* code clean up

* change folder

* find loading entites as a method

* updated unit tests

* check if entity exists in dataTree

* update test cases

* getEntityDependants - add specific path test case
2022-03-08 13:56:03 +00:00
Anand Srinivasan
d89e12e3a5
fix: warning message - if child property doesn't exist in data tree (#10351)
* makeParentsDependOnChild - return if child doesn't exist in allKeys

* add unit tests

* add nested object to unit test

* fix unit tests

* fix unit tests

* add warning messages

* add comments for mock
2022-03-03 10:59:52 +00:00
Apeksha Bhosale
eb34255b18
fix: removing unnecessary paths to evaluate (#11341)
* removing unnecessary paths to evaluate

* created regex and small refactor
2022-03-03 13:12:23 +05:30
Hetu Nandu
ac7a73f667
fix: table button multi-line execution (#11525) 2022-03-02 12:07:20 +05:30
Hetu Nandu
06bf4696b4
fix: Promises in Table buttons (#11239) 2022-02-28 15:05:43 +05:30
Ayush Pahwa
fe2d625f5e
fix: Updated drop down control memo usage (#11218)
* Stopped props drilling of eval state

* Connect drop down to redux state

* Added extra check to formcontrol memo function

* Reduced modification of section at top

* Stopped mutating the initial state

* Created selector to get dynamic fetched values

* <refactor> Added comments and refactors

- Added key to the ES fragment
- Cleaned drop down component from redundant code
- Added comments

* <refactor> Removed test files

- Removed testing JSON configs

* <fix> Added null check for form eval output

- Added check to prevent null evalOutput in forms

* <chore> Removed console error

- Removed console error which is causing the vercel builds to fail
2022-02-26 22:41:38 +05:30
Favour Ohanekwu
d2c96b9727
fix: suppress warnings about the use of expressions where assignments are expected (#11343) 2022-02-23 21:49:44 +05:30
balajisoundar
5dc5cff722
fix: Update date ISO string validations (#11399) 2022-02-23 20:48:58 +05:30
Tolulope Adetula
24293ced76
fix: select widget accept string and object in the defaultOption property (#11082)
* fix: Select widget accept string and object

* fix: JSON object case

* Fix: make Multiselect Defaukt option Array of strings

* fix: Select and Multiselect

* fixes and test cases

* comments

* fix: Select option value

* fix: mutiselect and test case

* fix: failing test

* fix: reset select widget

* fix: PR issues

* fix: Select widget Reset

* fix: failing Test

* fix: test

* fix: tests

* FIX: EVALUATION TESTS

* fix: getting Select Value in form

* fix: Test cases

* fix: add more test cases

Co-authored-by: balajisoundar <balaji@appsmith.com>
2022-02-22 00:43:35 -08:00
Favour Ohanekwu
46810e832a
fix: remove dependencies from trigger fields (#11163) 2022-02-17 21:27:23 +05:30
Apeksha Bhosale
980c8cbf57
fix: added new library and reduced function calls for global data (#11001) 2022-02-11 16:22:27 +05:30
Favour Ohanekwu
1ed7e9086c
keep linting in trigger field in sync with the state of the datatree (#10941) 2022-02-10 23:32:16 +05:30
Abhinav Jha
9d21ccf52f
fix: Remove references of messages.ts in worker files (#11004) 2022-02-08 20:53:25 +05:30
Abhinav Jha
aee5816a54
fix: limit validation errors in debugger (#10886)
* Add a limit to the number of error messages sent from validations to be rendered in the debugger
2022-02-08 17:13:25 +05:30
Anand Srinivasan
c2a6e089db
fix: passing params from JS to API/SQL query (#10826)
* Revert "fix: revert this.params solution (#10322)"

This reverts commit 2bcd73e41d.

* replace 'this.params' with 'executionParams'

* replace 'this?.params' also with 'executionParams'

* fix unit test lint errors

* added unit tests for params handling

* evaluateActionBindings unit test - add default value case

* comments update

* remove un-necessary `executionparams` assigment to `evalTree`
2022-02-04 17:58:46 +05:30
Rishabh Rathod
1bcf344154
fix: Race condition issue of meta reducer update (#10837)
* Fix race condition issue of meta reducer update

* refactor comment

* Fix logic to update meta state
2022-02-04 17:52:25 +05:30
rashmi rai
e73ccc7f25
fix: props is now required in type Validator (#10854) 2022-02-03 15:27:08 +05:30
Tolulope Adetula
bb2f7da823
feat: Select and Multiselect V2 (#10359)
* fix: Select V2

* Fix: CI Fail

* fix: failing test

* fix: failing test

* Fix: MultiSelect

* Fix: loading issue

* Fix: loadin state

* Fix: loading

* fix: failing test

* fix: evaluation tests

* Fix: failing tests

* Fix: failing test

* fix: failing tests

* Fix: Failing tests

* fix: select All

* fix: filtering

* Fix: filtering

* fix: refactor Select widget

* fix: hide MultiSelect

* fix: select options

* Fix: failing tests

* fix: failing tests

* Fix: issues

* Update system-themes.json

* Update system-themes.json

* Update system-themes.json

* Update system-themes.json

* fix: PR reviews

* Update EntityDefinitions.ts

* Fix: issues

* fix: console

* fix: QA issues

* fix: options issues

* fix: add widget icons

* fix: update Selectv2

* empty commit to fix CI

* fix: failing test
2022-02-02 06:15:07 -08:00
Favour Ohanekwu
caca4131e7
fix: Evaluate PrivateWidgets to fix list widget children evaluation issue (#10737) 2022-02-01 10:48:57 +05:30
Rishabh Rathod
b61ceab94b
fix: Add meta to eval cycle and update it when default changes (#10401)
* Rearrange data tree widget factory

* Remove existing handling of default value override

* Altternate way of meta property override

* Fix tests

Co-authored-by: hetunandu <hetu@appsmith.com>
2022-01-28 16:40:05 +05:30
Favour Ohanekwu
d5a459be30
fix: show lint warning when unused variable is present in code (#10599) 2022-01-28 09:18:19 +01:00
rashmi rai
10b3fe3800
feat: Validations for Action Forms (#10457) 2022-01-27 15:20:05 +05:30
Apeksha Bhosale
5f91f2d20f
added functions while checking isAsync (#10425) 2022-01-25 13:53:53 +00:00
Favour Ohanekwu
1b858bcf5c
fix: Remove private widgets from autocompletion (#10535) 2022-01-21 13:08:40 +01:00
Favour Ohanekwu
f7ce277e4c
fix: currentItem showing error in debugger for list widgets (#10338) 2022-01-20 11:59:03 +01:00
balajisoundar
02785b90b2
feat: Input, Phone no., Currency input widget (#10259)
* feat: Input, Phone no., Currency Widget

* cypress tests, jest test, QA and CR callouts

* fix tests

* Cypress and jest test fixes
2022-01-18 13:22:24 +05:30
Ayush Pahwa
a6d2d6fd89
feat: 5705 entity selector component (#10400)
* Added new files for entity selector component

* Add error handling to data fetched via API

* Added init eval for schemas in entity selector

* Extracting conditionalOutput for schema from state and passing it to individual schema

* Removed unnecessary loop

* Fixed CSS of ES, added new Icon

* Minor refactor
2022-01-18 07:10:58 +00:00
Anand Srinivasan
2bcd73e41d
fix: revert this.params solution (#10322)
* revert changes

* code clean up

Co-authored-by: Apeksha Bhosale <7846888+ApekshaBhosale@users.noreply.github.com>
2022-01-14 11:50:01 +05:30
Ayush Pahwa
16ad07fa68
feat: 5701 dynamic value fetch for forms (#10324)
* Added new condition type

* Added new variables to cater to enable/disable conditionals

* Adding functionality to disable the drop down control

* Added ability to enable/disable to dynamic input text fields

* Updated input text control to have enabled/disabled feature

* Added enable/disable functionality to FixedKeyInputControl

* Added enable/disable func to switch control and stanrdasied var name

* Added disable functionality for file picker

* Added enable/disable functionality to QUER_DYNAMIC_TEXT

* Added new state and object for evaluating conditionals

* Connected the output to the final source

* Updating loading state on the final component

* Tied fetched data to the options of dropdown component

* Added declaration to make API call

* Added loading state for dropdown

* Updated types in reducer

* Added implementation to extract API calls from the response and setting the output

* Removed extra variables

* Moved all calculation logic to the class component

* Refactors and added comments

* Added flag to store when the value fetch fails

* Reduced usage of spread operators
2022-01-13 13:37:30 +05:30
Ayush Pahwa
8c141ed2cd
chore: Added null check on eval output and started using standard call for pluginId (#10290) 2022-01-10 21:36:52 +05:30
Ayush Pahwa
3ab11fa942
feat: Add enable/disable functionality to form components (#10215)
* Added new condition type

* Added new variables to cater to enable/disable conditionals

* Adding functionality to disable the drop down control

* Added ability to enable/disable to dynamic input text fields

* Updated input text control to have enabled/disabled feature

* Added enable/disable functionality to FixedKeyInputControl

* Added enable/disable func to switch control and stanrdasied var name

* Added disable functionality for file picker

* Added enable/disable functionality to QUER_DYNAMIC_TEXT
2022-01-06 20:09:21 +05:30
Hetu Nandu
656c9a5fa5
Fix action.run signature check (#10214) 2022-01-06 13:51:53 +00:00
Ayush Pahwa
a0252da451
feat: Moving form evaluations to separate thread (8051) (#9437)
* Registering new eval types

* Moving code from saga to thread execution

* Added a loading state while thread is working

* Added types and comments

* Code refactor for final render

* Added custom spinner

* Instead of spawning a new thread, working on the same one

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2022-01-06 10:49:01 +00:00
arunvjn
5af8112fbe
fix: Fixed undo redo cyclic dependency bug (#9884) 2021-12-25 04:55:22 +00:00
Vicky Bansal
d40226e937
fix: Default date to remain empty value when binding value is empty (#9823) 2021-12-23 21:21:28 +05:30
Hetu Nandu
39b0a4e5a6
feat: Native promises support in Appsmith (#8988)
Co-authored-by: Apeksha Bhosale <7846888+ApekshaBhosale@users.noreply.github.com>
2021-12-23 14:17:20 +00:00
Anand Srinivasan
3a4658c8f5
fix: unexpected return error (#9432)
* assign undefined for empty scripts during evaluation

* add unit tests

* handle anonymous_function when undefined

* update unit tests

* remove unwanted assignments in evaluation scripts

* update unit tests

* Update app/client/src/workers/evaluate.test.ts

* fix lint cypress tests

* remove semicolon

* fix API_bugs_spec

* undo anonymous function change

* Update app/client/src/workers/evaluate.ts

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>

* add comment

* return back when JS is empty

* Update app/client/src/workers/evaluate.ts

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-12-21 20:00:19 +05:30
Tolulope Adetula
831c0cb685
fix: chart validation (#9718) 2021-12-16 22:19:44 -08:00
Favour Ohanekwu
84a627aaeb
fix: properly lint triggerfields (#9773)
Properly lint trigger fields
2021-12-15 06:18:45 +01:00
Hetu Nandu
4c54ea21fb
feat: Add support for custom 'this' and 'global' variables during evaluation (#9651) 2021-12-14 14:00:43 +05:30
Apeksha Bhosale
9a7a5e06af
fix: changed conditions for variables as variables were undefined (#9748) 2021-12-14 13:01:40 +05:30
Tolulope Adetula
3e51c1173c
fix: negative spacing in list widget (#9571)
* fix: add validation for negative numbers and allow negative spacing

* fix: add validation test for negative numbers

* fix: validation tests

* fix: validation test

* fix: errors

* fix: grid gap

* fix: validation test
2021-12-09 02:01:11 -08:00
Aswath K
177df5cc68
fix: table icon selector js mode toggle issue (#9396)
* fix: ARRAY validation with allowedValues

* Adds TABLE_PROPERTY validation

* Add test

* fix: Table icon JS mode toggle issue

* remove unused variable

* Make use of constant for icon

* Adds comment

* better validation

* fix: failed cypress test

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-12-09 11:45:59 +05:30
Hetu Nandu
7143bba134
feat: Geolocation APIs on appsmith (#9295)
Co-authored-by: Anand Srinivasan <66776129+eco-monk@users.noreply.github.com>
2021-12-07 15:49:33 +05:30
arunvjn
f62247b468
feat: Action undo redo (#9045) 2021-12-07 09:45:18 +00:00
Aswath K
eed6ad9166
fix: empty string validation if required is set (#9476) 2021-12-02 16:45:18 +05:30
Anand Srinivasan
4ced0954db
feat: Syntax parsing through AST (#9115)
* ast changes

* ast fix for cyclic dependency

* jest test updates for ast

* feat: Extract references in code with AST (#8617)

Co-authored-by: Nidhi <nidhi@appsmith.com>

* undo debugger changes

* code clean up and comments

* update type checks for literal nodes

* include tests for IIFE and direct object access

* fix - dependency map not updated on IIFE/direct object access

* update tslib

* unescape on AST parsing

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Nidhi <nidhi@appsmith.com>
2021-12-02 15:33:43 +05:30