Remove recipes superseded by built-in APIs or documentation - #445
Draft
totally-not-ai[bot] wants to merge 6 commits into
Draft
totally-not-ai[bot] wants to merge 6 commits into
totally-not-ai[bot] wants to merge 6 commits into
Conversation
These recipes work around limitations that no longer exist or just demonstrate a single built-in API that is already covered by the component and Flow documentation: - Dialog position / drag event: Dialog#setTop/setLeft, addDraggedListener - Scrollable dialog with fixed header/footer: Dialog#getHeader/getFooter - SplitLayout splitter position: getSplitterPosition, addSplitterDragEndListener - Scroll TreeGrid to item and expand: TreeGrid#scrollToItem - Dense Grid: GridVariant.LUMO_COMPACT - Empty Grid message: Grid#setEmptyStateText/setEmptyStateComponent - Frozen selection column: GridMultiSelectionModel#setSelectionColumnFrozen - OS light/dark theme: Page#setColorScheme / @colorscheme - DatePicker custom pattern: DatePickerI18n#setDateFormats - Copy to/from clipboard: Clipboard API - Local storage: WebStorage - TabSheet, Popover, Svg: dedicated components - Avoid double click: Button#setDisableOnClick - aria-label: HasAriaLabel#setAriaLabel - Scroll into view: Component#scrollIntoView - Byte array to image: Image with DownloadHandler Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
These recipes are covered by the component and building-apps documentation, either already or through the examples added in vaadin/docs#6183, #6184, #6185, #6186 and #6187: - Grid styling: dynamic cell/row background, cell styling, row height, editable cells, ComboBox item background and item spacing - Grid columns and renderers: hyperlinks, images, sorting with renderers, locale-aware numbers, details table, column toggle, responsive columns, records, Map items with Binder - Grid interaction: arrow-key selection, drag-and-drop reordering, drill down, lazy loading errors, CSV import and export - TreeGrid: filtering, recursive selection, icons, file tree - Forms: auto-applied converters, upload validation, leaving a dirty form, form tabs, editable labels, locale from cookie, lazy Details - Styling and layout: progress bar color, resizable components, dialog slide animation, printing selectively, dialog shortcuts, weekend highlighting, split button bar, overflowing MenuBar The CSV file shared with the "Download text area contents as a file" recipe moves to that recipe's package. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The related Grid CSV export recipe has been removed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Superseded by components or APIs: external and interactive template renderers (LitRenderer), large upload area (Upload), collapsable layout (Details), vertical menu (SideNav), auto-complete ComboBox, formatted and streamed text (Markdown, MessageList) - Vaadin 8 emulations: AbsoluteLayout, CustomLayout - Trivial or plain Java: display version, hostname, visibly clicked button, context menu as single select, tabs with routes, undoable send, lazy component, preserve state, UI event bus, long running task, vibrate, closable side panel - TypeScript views: circular progress indicator, client-side upload, client-side live data, shortcut listener, geolocation, and the endpoints backing them Drop the viritin and opencsv dependencies, which are no longer used. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Disable other buttons on click: triggers use case (vaadin/use-cases#344) - Show a notification to active users: signals use case (vaadin/use-cases#343) - Native OS-level notification: web-notifications module (vaadin/use-cases#345) - Log browser errors: observability module - Show real-time updating content: signals stock ticker and dashboard Drop the reactor-core dependency, which is no longer used. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR removes about 110 old recipes from the cookbook. Some are now covered by the Vaadin use-cases app or the Vaadin documentation. Others show something Vaadin now does out of the box, or are outdated or too simple to keep. This makes the cookbook smaller and easier to maintain.
What changed
Behavior change: The routes of the removed recipes no longer exist, so links or bookmarks to them will return "not found". Only people who use the recipes site or link to these pages are affected. No library code changes.
TreeGrid#scrollToItem. Compact Grid, empty Grid message and frozen selection column. Color scheme, DatePicker date formats, Clipboard, WebStorage, TabSheet, Popover, Svg,setDisableOnClick,setAriaLabel,scrollIntoView, and Image with aDownloadHandler.input.csvfile moved into its own package.opencsv,viritinandreactor-coredependencies are removed. The resource filtering andapp.version-style properties from the version display recipe are removed too.API Changes
Removed recipe classes
The following classes are removed, together with all their public members. They are demo views and helpers in this app, not a library API.