Skip to content

feat: add signal bind methods to flow components#8728

Draft
Artur- wants to merge 1 commit intomainfrom
bind-methods
Draft

feat: add signal bind methods to flow components#8728
Artur- wants to merge 1 commit intomainfrom
bind-methods

Conversation

@Artur-
Copy link
Member

@Artur- Artur- commented Feb 18, 2026

Add bindX(Signal/WritableSignal) methods across multiple components for signal bindings that keep component state synchronized with signal values while attached.

One-way bindings (Signal → component):

  • CheckboxGroup.bindRequired
  • ComboBoxBase.bindRequired
  • ProgressBar.bindIndeterminate
  • BigDecimalField.bindLocale
  • Details.bindOpened (WritableSignal, two-way)
  • Markdown.bindContent + Markdown(Signal) constructor
  • Grid.bindColumns, Column.bindHeader/bindFooter, bindEmptyStateText
  • Tooltip.bindText

Two-way bindings (WritableSignal ↔ component):

  • AppLayout.bindDrawerOpened
  • Checkbox.bindIndeterminate
  • Crud.bindDirty
  • MenuItemBase.bindChecked
  • SideNav.bindExpanded
  • SplitLayout.bindSplitterPosition
  • Tabs.bindSelectedIndex
  • Map.bindCenter, Map.bindZoom (via moveend event write-back)

Includes unit tests for all bind methods.

Add bindX(Signal/WritableSignal) methods across multiple components
for signal bindings that keep component state synchronized with signal
values while attached.

One-way bindings (Signal → component):
- CheckboxGroup.bindRequired
- ComboBoxBase.bindRequired
- ProgressBar.bindIndeterminate
- BigDecimalField.bindLocale
- Details.bindOpened (WritableSignal, two-way)
- Markdown.bindContent + Markdown(Signal<String>) constructor
- Grid.bindColumns, Column.bindHeader/bindFooter, bindEmptyStateText
- Tooltip.bindText

Two-way bindings (WritableSignal ↔ component):
- AppLayout.bindDrawerOpened
- Checkbox.bindIndeterminate
- Crud.bindDirty
- MenuItemBase.bindChecked
- SideNav.bindExpanded
- SplitLayout.bindSplitterPosition
- Tabs.bindSelectedIndex
- Map.bindCenter, Map.bindZoom (via moveend event write-back)

Includes unit tests for all bind methods.
@vaadin-bot
Copy link
Collaborator

TC Format Checker Report - 13:00 - 18 - Feb

BLOCKER There are 2 files with format errors

  • To see a complete report of formatting issues, download the differences file

  • To fix the build, please run mvn spotless:apply in your branch and commit the changes.

  • Optionally you might add the following line in your .git/hooks/pre-commit file:

    mvn spotless:apply
    

Here is the list of files with format issues in your PR:

vaadin-app-layout-flow-parent/vaadin-app-layout-flow/pom.xml
vaadin-crud-flow-parent/vaadin-crud-flow/pom.xml

@yuriy-fix
Copy link
Contributor

@Artur-, are the draft signal PRs going to be closed? Are those for the testing purposes?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 🔎Iteration reviews

Development

Successfully merging this pull request may close these issues.

3 participants