PromucFlow_constructor/app/client/src/components/formControls
Ayush Pahwa fdf77936eb
feat: select widget lazy loading (#38867)
## Description
This PR adds capability of server side pagination to the dropdown form
component. There is another PR in works to add server side search. To
ensure both grouping and pagination work correctly, the dropdown control
component is refactored by adding memoization and fixing some rendering
issues.


Fixes #38079 

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/13306719132>
> Commit: 01f464953b487f2f066af6fe53ae2c79577b7fd3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=13306719132&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 13 Feb 2025 12:58:12 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enabled dynamic pagination for form options, allowing users to load
additional choices smoothly.
- Enhanced dropdown controls for both single and multi-select modes with
improved responsiveness and clearer grouping.
- Improved form evaluation processes for a more seamless and performant
user experience.
- Introduced new functionality for fetching paginated dynamic values,
enhancing the overall data handling experience.
- Added new function to retrieve conditional output based on form
configuration.

- **Bug Fixes**
- Improved error handling and logging for dynamic value fetching
processes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-02-13 18:49:44 +05:30
..
BaseControl.tsx chore: integrate file association query API for Appsmith API (#39098) 2025-02-07 09:35:36 +05:30
CheckboxControl.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
DropDownControl.test.tsx feat: select widget lazy loading (#38867) 2025-02-13 18:49:44 +05:30
DropDownControl.tsx feat: select widget lazy loading (#38867) 2025-02-13 18:49:44 +05:30
DynamicInputTextControl.test.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
DynamicInputTextControl.tsx chore: Remove style from editor and setting config (#38756) 2025-01-23 13:29:03 +05:30
DynamicTextFieldControl.tsx chore: Remove style from editor and setting config (#38756) 2025-01-23 13:29:03 +05:30
EntitySelectorControl.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
FieldArrayControl.tsx chore: Remove style from editor and setting config (#38756) 2025-01-23 13:29:03 +05:30
FilePickerControl.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
FixedKeyInputControl.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
FormTemplateControl.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
InputTextControl.tsx chore: Remove style from editor and setting config (#38756) 2025-01-23 13:29:03 +05:30
KeyValueArrayControl.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
MultiFilePickerControl.tsx fix: Separate Plugin Entity from Action (#38582) 2025-01-15 11:29:32 +05:30
PaginationControl.tsx fix: adjust spacing for filter/sort/pagination form controls (#37221) 2024-11-06 17:29:58 +03:00
RadioButtonControl.test.tsx chore:remove space b/w form and CTA onboarding page (#35985) 2024-10-09 09:57:44 +05:30
RadioButtonControl.tsx fix: gsheets all sheets option enabled behind a feature flag (#37942) 2024-12-13 14:09:53 +05:30
SegmentedControl.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
SliderControl.tsx chore: add slider control (#39058) 2025-02-06 11:27:21 +03:00
SortingControl.tsx fix: adjust spacing for filter/sort/pagination form controls (#37221) 2024-11-06 17:29:58 +03:00
SwitchControl.tsx chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
utils.test.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
utils.ts chore: add grafana faro sdk (CE) (#38301) 2024-12-26 10:37:41 +05:30
WhereClauseControl.tsx fix: adjust spacing for filter/sort/pagination form controls (#37221) 2024-11-06 17:29:58 +03:00