PromucFlow_constructor/app/client/cypress/e2e/Regression/ClientSide/Widgets
srix d34edec1f4
feat: assistive binding (#27070)
> Pull Request Template

## Description
An assistive Binding feature is added. A new code editor hinter menu
will pop up once three characters is pressed, and they match with any
entities. This assistance is expected to help many new app builders
discover binding features.

PRD: [Widget binding &
success](https://www.notion.so/appsmith/Widget-binding-success-bc2f559b67194891992c6163eb8ac457)
UI Design :
[Zeplin](https://app.zeplin.io/project/64df0f50e3f9570e8dcfc803/screen/64df0fa0e771af22508f2267)
POC: [POC for Binding Success -
Engineering](https://www.notion.so/appsmith/POC-for-Binding-Success-Engineering-07157e8e90c7451a850d6d054d975f36)
ERD : [Engineering Requirement - Assistive
Binding](https://www.notion.so/appsmith/Engineering-Requirement-Assistive-Binding-b04e41f07e3b4c998be7b8b49f8324ba)


#### PR fixes following issue(s)
Fixes # (issue number)

When a users input within a property of a widget matches any
query/api/jsobject of their application, a dropdown menu will appear
with possible binding options for users to select from. #26682

When the user adds a new binding from the menu the cursor should be
present in between the moustache bindings #26683

When a user toggles JS mode for the input, bindings with the cursor in
between them should be present by default (incase input has no value)
#26685

#### Media

#### Type of change
> Please delete options that are not relevant.
- New feature (non-breaking change which adds functionality)


## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [x] Manual
- [x] Cypress
>
>
#### Test Plan
https://github.com/appsmithorg/TestSmith/issues/2507
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)

- [x]
https://github.com/appsmithorg/appsmith/pull/27070#issuecomment-1710094372
- [x]
https://github.com/appsmithorg/appsmith/pull/27070#issuecomment-1711189712
- [x]
https://github.com/appsmithorg/appsmith/pull/27070#issuecomment-1711209028
- [x]
https://github.com/appsmithorg/appsmith/pull/27070#issuecomment-1711214677
- [x]
https://github.com/appsmithorg/appsmith/pull/27070#issuecomment-1711311082
- [x]
https://github.com/appsmithorg/appsmith/pull/27070#issuecomment-1711321208
- [x]
https://github.com/appsmithorg/appsmith/pull/27070#issuecomment-1711336112

## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [x] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [x] Test plan has been peer reviewed by project stakeholders and other
QA members
- [x] Manually tested functionality on DP
- [x] We had an implementation alignment call with stakeholders post QA
Round 2
- [x] Cypress test cases have been added and approved by SDET/manual QA
- [x] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed

---------

Co-authored-by: arunvjn <arun@appsmith.com>
Co-authored-by: Favour Ohans <fohanekwu@gmail.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-09-15 21:23:51 +05:30
..
Audio test: Cypress - exclude test for Airgap (#26644) 2023-08-25 12:20:06 +05:30
Button chore: Remove position props from widgets (#26781) 2023-09-13 19:27:42 +05:30
Camera test: Cypress - Fix Flaky Tests (#26694) 2023-08-28 21:53:25 +05:30
Chart feat: ECharts Phase 2 - Custom ECharts (#25980) 2023-08-30 14:28:26 +05:30
Checkbox test: Cypress | CI Stabilize (Skipped tests fixes) + Cypress upgrade to v13.0.0 (#26583) 2023-08-30 16:24:37 +05:30
CodeScanner test: Cypress | CI Stabilize (Skipped tests fixes) + Cypress upgrade to v13.0.0 (#26583) 2023-08-30 16:24:37 +05:30
CurrencyInput test: Cypress | CI Stabilize (Skipped tests fixes) + Cypress upgrade to v13.0.0 (#26583) 2023-08-30 16:24:37 +05:30
Datepicker test: Cypess | Oracle DS validations added (Part 2) + CI Stabilize (#27282) 2023-09-14 16:53:42 +05:30
Divider test: Cypress -Divider widget automation (#26748) 2023-08-30 18:26:36 +05:30
DocumentViewer test: cypress - added tests for Document Viewer (#26199) 2023-08-14 18:02:08 +05:30
Dropdown feat: Integrate one click binding to sourceData of select and multi select widget (#25750) 2023-08-10 10:51:19 +05:30
Filepicker test: Cypress | (DI) Arango added validations + CI Stabilize (#26243) 2023-08-18 10:48:35 +05:30
Form test: cypress - updated tests which were flaky in nature (#26577) 2023-08-24 14:10:24 +05:30
Iframe test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
Image test: Cypress | (DI) SMTP & Airtable validations + CI Stabilize (#26991) 2023-09-08 14:42:27 +05:30
Input test: Cypress - Select , Text , Input widget automation (#27009) 2023-09-07 23:48:33 +05:30
JSONForm test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
List test: Cypress | CI Stabilize (#26186) 2023-08-10 12:36:03 +05:30
ListV2 test: cypress - updating listv2 tests for regression (#27181) 2023-09-14 19:52:45 +05:30
Modal test: Cypress - Modal, Radio widget automation (#27330) 2023-09-15 21:20:00 +05:30
Multiselect test: Updated test for MultiSelect (#26816) 2023-09-02 05:46:23 +05:30
Others feat: assistive binding (#27070) 2023-09-15 21:23:51 +05:30
PhoneInput test: cypress - Added regression tests for PhoneInput (#26720) 2023-09-01 21:58:39 +05:30
Radio test: Cypress - Modal, Radio widget automation (#27330) 2023-09-15 21:20:00 +05:30
Rating test: Cypress - Modal, Radio widget automation (#27330) 2023-09-15 21:20:00 +05:30
RTE test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
Select test: Cypress - Select label value spec fix (#27101) 2023-09-08 18:06:17 +05:30
Sliders test: updated tests for flaky behaviour (#26395) 2023-08-19 07:06:22 +05:30
Switch test: cypress - switch group cases - 1 (#26208) 2023-08-16 11:29:22 +05:30
Tab test: cypress - updated tests for Tab (#26210) 2023-08-10 19:42:19 +05:30
TableV1 chore: remove feature flag for ramps (#26448) 2023-09-05 15:23:44 +07:00
TableV2 test: Cypress - fixing table test cases (#27014) 2023-09-11 12:13:43 +05:30
Text test: Cypress - Select , Text , Input widget automation (#27009) 2023-09-07 23:48:33 +05:30
TreeSelect test: cypress - updating listv2 tests for regression (#27181) 2023-09-14 19:52:45 +05:30
Video test: Cypress - Fix Flaky Tests (#26765) 2023-08-31 16:10:42 +05:30
Container_spec.js fix: color picker validation for empty state (#26414) 2023-08-22 12:50:03 +03:00
deprecatedWidgets_spec.js test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
Disabled_Widgets_drag_validation_spec.js test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
Migration_Spec.js test: Cypress | Flaky fixes (#24508) 2023-06-17 00:10:10 +05:30
Tab_reset_spec.js test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
WidgetCanvas_spec.js test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
WidgetCopyPaste_spec.js test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
WidgetGrouping_spec.js test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30
WidgetPropertySetters_spec.ts test: Cypess | Oracle DS validations added (Part 1) + CI Stabilize (#27161) 2023-09-13 22:33:14 +05:30
Widgets_Labels_spec.js test: Cypress | Folder structure correction (#23568) 2023-05-21 02:01:50 +05:30
WidgetSelection_spec.js test: Cypress | Simplifying AddDsl method (#24991) 2023-07-04 22:03:31 +05:30