Skip to content

Vaadin Flow 24.6.0.beta1

Pre-release
Pre-release
Compare
Choose a tag to compare
@vaadin-bot vaadin-bot released this 20 Nov 14:04
· 79 commits to main since this release
bd8c796

All Changes since Vaadin Flow 24.5

Changes since 24.6.0.alpha6

Breaking changes

  • Upgrade minimum supported Gradle version to 8.7
    Commit · Pull request

    Jackson 2.18 is incompatible with Gradle 8.4 because it contains classes compiled with Java 22. This change bumps Gradle minumum supported version to 8.7 that supports Java 22.

  • WebPush Subscription Wrapper and feature flag removal
    Commit · Pull request

New features

  • Add drag image for DragSource
    Commit · Pull request · Issue · Docs

    Adds DragSource#setDragImage(ComponentDragImage ) and DragSource#setDragImage(Component dragImage, int offsetX, int offsetY). API is used to set image component as a drag image for drag source component. Follows specification of HTML Drag and Drop API for DataTransfer#setDragImage() method.
    Examples:

    CardComponent card = new CardComponent();
    // use Image component as a drag image
    card.setDragImage(new Image("/cards/ace_of_spades.png", "Ace of Spades"));
    // use an arbitrary Flow component as a drag image
    // needs to be present in the DOM
    Span dragImage = new Span("Drag Image Component");
    Style dragImageStyle = dragImage.getElement().getStyle();
    dragImageStyle.setPosition(Style.Position.ABSOLUTE);
    dragImageStyle.setTop("-100px");
    dragImageStyle.setLeft("-100px");
    add(dragImage);
    dragSource.setDragImage(dragImage);
  • Extend WebPushMessage with the custom settings
    Commit · Pull request · Issue · Docs

    Adds a Java API for setting the custom options as described in https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/showNotification#parameters.
    Note that this isn't an experimental feature anymore.

    WebPushAction webPushAction = new WebPushAction("dashboard", "Open Dashboard");
    WebPushOptions webPushOptions = new WebPushOptions(body, List.of(webPushAction), "This is my data", "https://example.com/my-icon.png");
    webPush.sendNotification(subscription, new WebPushMessage(title, webPushOptions));
  • Enable easier override for SpringServlet
    Commit · Pull request · Issue · Docs

    Can be done by providing a custom Spring configuration class, see linked docs for more details.

  • Add support for customizable projectFileExtensions
    Commit · Pull request · Issue

  • Opt-out web components from package.json
    Commit · Pull request · Docs

    Adds new property npm.excludeWebComponents (or npmExcludeWebComponents in Maven configurations). By default, it's false and everything works as before. true will exclude all Vaadin web component dependencies from package.json for development mode (Vite/dev bundle) and production bundle build. Excluded dependencies are all Vaadin core components (e.g. button, grid, login, etc.) and commercial components (e.g. charts, rich-text-editor, etc.), but not lumo/material themes.

  • Fire an event when all hotswap operations have completed
    Commit · Pull request

Contributions 🏅