Skip to content

docs: document CRUD customization API and editor behavior (#5894) (CP: v25.2) - #5896

Merged
peholmst merged 1 commit into
v25.2from
cherry-pick-5894-to-v25.2-1787831004462
Aug 28, 2026
Merged

docs: document CRUD customization API and editor behavior (#5894) (CP: v25.2)#5896
peholmst merged 1 commit into
v25.2from
cherry-pick-5894-to-v25.2-1787831004462

Conversation

@vaadin-bot

Copy link
Copy Markdown
Contributor

No description provided.

* docs: document CRUD customization API and editor behavior

Addresses vaadin/agentic-dx-improvement#103, which reported that the Flow
CRUD documentation under-documents the component's extension points, forcing
readers to inspect the jar to make an adoption decision.

- Document the CrudEditor interface as a public extension point, with a
  non-Binder editor example that validates itself and renders a top-of-form
  error summary.
- Specify the Save button enablement rules, the role of setDirty(), and how
  to keep Save enabled at all times via getSaveButton().setEnabled(true).
- Document the getSaveButton()/getCancelButton()/getDeleteButton()/
  getNewButton() accessors, with an example of hiding Delete for datasets
  that archive rather than remove records.
- Collect the programmatic editor controls (edit, setOpened,
  setEditorPosition, setEditOnClick) into one table.
- Note that CRUD has no manual row reordering, and point at grid replacement.
- Explain how CrudFilter maps sorting and filtering onto a lazy backend.
- Surface the no-border variant and CrudVariant on the main page, and link
  to the styling page.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CvBbsmxH7A3F8WyMz2hfZZ

* docs: use the CRUD product name in the styling page title

Vaadin.ProductName flagged "= Crud Styling". The sibling styling pages all
spell out the component name in their titles, as does the CRUD index page.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CvBbsmxH7A3F8WyMz2hfZZ

* docs: fix CRUD anchors and drop a stray render attribute

- Add explicit [#save-button-state] and [#editor-button-access] anchors.
  The [badge-flow]#Flow# suffix leaks into the generated heading ids
  ("save-button-state-flow"), so the two cross-references pointed at
  anchors that don't exist. Verified in a browser: the page now has no
  broken in-page links.
- Include PersonCrudEditor.java without `render`. It isn't a Component,
  so there's nothing to render; the convention for a supporting class is
  a plain listing, as in articles/flow/binding-data/index.adoc.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CvBbsmxH7A3F8WyMz2hfZZ

* docs: address review feedback on the CRUD page

- Remove the Styling section; it duplicated styling.adoc.
- Drop frontend/demo/component/crud/crud-imports.ts and point the two
  Flow-only examples at the existing crud-editor-content.ts instead. It
  already imports crud, email-field, form-layout, and text-field, so no
  new file is needed.
- Frame hiding the Delete Button as a workaround rather than a technique,
  and warn against setVisible(false), which CRUD undoes when the editor
  opens for an existing item.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CvBbsmxH7A3F8WyMz2hfZZ

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
@peholmst
peholmst merged commit b8b4e60 into v25.2 Aug 28, 2026
5 checks passed
@peholmst
peholmst deleted the cherry-pick-5894-to-v25.2-1787831004462 branch August 28, 2026 07:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants