diff --git a/.github/workflows/deploy-classifiers.yml b/.github/workflows/deploy-classifiers.yml index e38345f2..715a0407 100644 --- a/.github/workflows/deploy-classifiers.yml +++ b/.github/workflows/deploy-classifiers.yml @@ -19,7 +19,7 @@ jobs: packages: write strategy: matrix: - branch: [ "development", "vaadin-23" ] + branch: [ "development", "vaadin-24.3", "vaadin-23" ] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 8b3b328b..8c6ff6a6 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -10,6 +10,7 @@ on: default: 'development' options: - "development" + - "vaadin-24.3" - "vaadin-23" version: description: "Version to release (e.g. 1.1.0 or 1.2.0-alpha1)" diff --git a/.github/workflows/validation-nightly.yml b/.github/workflows/validation-nightly.yml index 8523026f..040580ac 100644 --- a/.github/workflows/validation-nightly.yml +++ b/.github/workflows/validation-nightly.yml @@ -12,7 +12,7 @@ jobs: fail-fast: false matrix: java: [21, 17] - branch: [ development, vaadin-23 ] + branch: [ development, vaadin-24.3, vaadin-23 ] include: - branch: vaadin-23 java: 11 diff --git a/pom.xml b/pom.xml index 10851e5d..9f0d59f7 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.github.mcollovati.vertx vertx-vaadin-root - 24.3-SNAPSHOT + 24.4-SNAPSHOT pom Vertx Vaadin root Pom @@ -109,9 +109,9 @@ 2.41.1 4.3.8 - 24.3.15 - 24.3.13 - 2.5.7 + 24.4.10 + 24.4.6 + 24.4.6 6.0.0 1.14.11 @@ -137,13 +137,6 @@ pom import - - dev.hilla - hilla-bom - ${hilla.version} - pom - import - io.vertx diff --git a/tools/release_flow.sh b/tools/release_flow.sh index 3548f5b8..9e1c3d61 100755 --- a/tools/release_flow.sh +++ b/tools/release_flow.sh @@ -4,8 +4,4 @@ _base_dir="$(dirname $(realpath $0))/.." _newVersion=${1:?New version is missing} _mvn="$_base_dir/mvnw -f $_base_dir/pom.xml" -$_mvn -Prelease-flow -pl :vaadin-flow-sockjs versions:set -DnewVersion=${_newVersion} -$_mvn -Prelease-flow -pl :vertx-vaadin-flow versions:set -DnewVersion=${_newVersion} -$_mvn -Prelease-flow -pl :vertx-vaadin-flow-jandex versions:set -DnewVersion=${_newVersion} -$_mvn -Prelease-flow -pl :vertx-vaadin-quarkus-extension-parent versions:set -DnewVersion=${_newVersion} -$_mvn -Prelease-flow,flow-ui-tests -pl :vertx-vaadin-test versions:set -DnewVersion=${_newVersion} +$_mvn -Pflow-ui-tests versions:set -DnewVersion=${_newVersion} diff --git a/vaadin-flow-sockjs/pom.xml b/vaadin-flow-sockjs/pom.xml index 69435e18..8e8067e9 100644 --- a/vaadin-flow-sockjs/pom.xml +++ b/vaadin-flow-sockjs/pom.xml @@ -5,7 +5,7 @@ com.github.mcollovati.vertx vertx-vaadin-root - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml diff --git a/vertx-vaadin-flow-jandex/pom.xml b/vertx-vaadin-flow-jandex/pom.xml index e46536a6..b1b59865 100644 --- a/vertx-vaadin-flow-jandex/pom.xml +++ b/vertx-vaadin-flow-jandex/pom.xml @@ -5,7 +5,7 @@ com.github.mcollovati.vertx vertx-vaadin-root - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml diff --git a/vertx-vaadin-flow/frontend/generated/vaadin.ts b/vertx-vaadin-flow/frontend/generated/vaadin.ts index 59fcb1c2..84f32926 100644 --- a/vertx-vaadin-flow/frontend/generated/vaadin.ts +++ b/vertx-vaadin-flow/frontend/generated/vaadin.ts @@ -3,18 +3,30 @@ import 'Frontend/generated/jar-resources/copilot/copilot.js'; if (import.meta.hot) { // @ts-ignore import.meta.hot.on('vite:afterUpdate', () => { - (window as any).Vaadin.copilotPlugins._internals.copilotEventBus.emit('vite-after-update',{}); + const eventbus = (window as any).Vaadin.copilot.eventbus; + if (eventbus) { + eventbus.emit('vite-after-update',{}); + } }); } -import '@vaadin/vertical-layout/src/vaadin-vertical-layout.js'; -import '@vaadin/context-menu/src/vaadin-context-menu.js'; +import '@vaadin/vertical-layout/theme/lumo/vaadin-vertical-layout.js'; +import '@vaadin/horizontal-layout/theme/lumo/vaadin-horizontal-layout.js'; +import '@vaadin/context-menu/theme/lumo/vaadin-context-menu.js'; +import '@vaadin/text-field/theme/lumo/vaadin-text-field.js'; +import '@vaadin/text-area/theme/lumo/vaadin-text-area.js'; +import '@vaadin/menu-bar/theme/lumo/vaadin-menu-bar.js'; +import '@vaadin/grid/theme/lumo/vaadin-grid.js'; +import '@vaadin/grid/theme/lumo/vaadin-grid-tree-column.js'; +import '@vaadin/details/theme/lumo/vaadin-details.js'; +import '@vaadin/select/theme/lumo/vaadin-select.js'; +import '@vaadin/overlay/theme/lumo/vaadin-overlay.js'; +import '@vaadin/list-box/theme/lumo/vaadin-list-box.js'; +import '@vaadin/combo-box/theme/lumo/vaadin-combo-box.js'; +import '@vaadin/item/theme/lumo/vaadin-item.js'; +import '@vaadin/dialog/theme/lumo/vaadin-dialog.js'; import '@vaadin/icons/vaadin-iconset.js'; -import '@vaadin/menu-bar/src/vaadin-menu-bar.js'; import '@vaadin/icon/vaadin-icon.js'; -import '@vaadin/text-field/src/vaadin-text-field.js'; -import '@vaadin/grid/src/vaadin-grid.js'; -import '@vaadin/grid/src/vaadin-grid-tree-column.js'; import './vaadin-featureflags.js'; import './index'; diff --git a/vertx-vaadin-flow/pom.xml b/vertx-vaadin-flow/pom.xml index 40ee1b6f..07739ca1 100644 --- a/vertx-vaadin-flow/pom.xml +++ b/vertx-vaadin-flow/pom.xml @@ -5,7 +5,7 @@ com.github.mcollovati.vertx vertx-vaadin-root - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml @@ -77,10 +77,9 @@ provided - dev.hilla - endpoint + com.vaadin + hilla-endpoint provided - ${hilla.version} diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VaadinVerticle.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VaadinVerticle.java index 75da9657..92f9e36a 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VaadinVerticle.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VaadinVerticle.java @@ -50,7 +50,7 @@ import com.vaadin.flow.server.startup.WebComponentConfigurationRegistryInitializer; import com.vaadin.flow.server.startup.WebComponentExporterAwareValidator; import com.vaadin.flow.shared.ApplicationConstants; -import dev.hilla.startup.EndpointsValidator; +import com.vaadin.hilla.startup.EndpointsValidator; import io.github.classgraph.ClassGraph; import io.github.classgraph.ClassInfo; import io.github.classgraph.ClassInfoList; diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadin.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadin.java index a88f5d0d..a5a0db8f 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadin.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadin.java @@ -34,6 +34,7 @@ import com.vaadin.base.devserver.ViteHandler; import com.vaadin.flow.function.DeploymentConfiguration; import com.vaadin.flow.internal.ApplicationClassLoaderAccess; +import com.vaadin.flow.internal.BrowserLiveReloadAccessor; import com.vaadin.flow.internal.CurrentInstance; import com.vaadin.flow.internal.DevModeHandler; import com.vaadin.flow.internal.DevModeHandlerManager; @@ -298,8 +299,10 @@ private void initRouters() { vaadinRouter.routeWithRegex("/.*\\.js").handler(proxy::forward); vaadinRouter.routeWithRegex("/(index|web-component)\\.html").handler(proxy::forward); + BrowserLiveReloadAccessor.getLiveReloadFromService(service); VertxDebugWindowConnection windowConnection = service.getContext().getAttribute(VertxDebugWindowConnection.class); + windowConnection.attachService(service); } diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadinInstantiator.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadinInstantiator.java new file mode 100644 index 00000000..45730f53 --- /dev/null +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadinInstantiator.java @@ -0,0 +1,90 @@ +package com.github.mcollovati.vertx.vaadin; + +import java.util.stream.Stream; + +import org.slf4j.LoggerFactory; + +import com.vaadin.flow.component.Component; +import com.vaadin.flow.component.HasElement; +import com.vaadin.flow.component.UI; +import com.vaadin.flow.di.Instantiator; +import com.vaadin.flow.i18n.I18NProvider; +import com.vaadin.flow.router.NavigationEvent; +import com.vaadin.flow.server.DependencyFilter; +import com.vaadin.flow.server.VaadinServiceInitListener; +import com.vaadin.flow.server.auth.MenuAccessControl; +import com.vaadin.flow.server.communication.IndexHtmlRequestListener; + +public class VertxVaadinInstantiator implements Instantiator { + + private static Class copilotInitListener; + static { + try{ + copilotInitListener = VertxVaadinInstantiator.class.getClassLoader().loadClass("com.vaadin.copilot.CopilotIndexHtmlLoader"); + } catch (Exception ex) { + LoggerFactory.getLogger(VertxVaadinInstantiator.class).debug("Copilot not present"); + } + } + + @Override + public Stream getServiceInitListeners() { + return delegate.getServiceInitListeners() + // Disable Copilot because of hard-coded Servlet API usage + .filter(listener -> copilotInitListener == null || !copilotInitListener.isInstance(listener)); + } + + @Override + public Stream getIndexHtmlRequestListeners(Stream indexHtmlRequestListeners) { + return delegate.getIndexHtmlRequestListeners(indexHtmlRequestListeners); + } + + @Override + public Stream getDependencyFilters(Stream serviceInitFilters) { + return delegate.getDependencyFilters(serviceInitFilters); + } + + @Override + public T getOrCreate(Class type) { + return delegate.getOrCreate(type); + } + + @Override + public Class getApplicationClass(Object instance) { + return delegate.getApplicationClass(instance); + } + + @Override + public Class getApplicationClass(Class clazz) { + return delegate.getApplicationClass(clazz); + } + + @Override + public T createRouteTarget(Class routeTargetType, NavigationEvent event) { + return delegate.createRouteTarget(routeTargetType, event); + } + + @Override + public T createComponent(Class componentClass) { + return delegate.createComponent(componentClass); + } + + public static Instantiator get(UI ui) { + return Instantiator.get(ui); + } + + @Override + public I18NProvider getI18NProvider() { + return delegate.getI18NProvider(); + } + + @Override + public MenuAccessControl getMenuAccessControl() { + return delegate.getMenuAccessControl(); + } + + private final Instantiator delegate; + + public VertxVaadinInstantiator(Instantiator delegate) { + this.delegate = delegate; + } +} diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadinService.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadinService.java index 9e7f1165..55fd3d61 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadinService.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/VertxVaadinService.java @@ -30,6 +30,20 @@ import java.util.Objects; import java.util.Optional; +import com.github.mcollovati.vertx.support.BufferInputStreamAdapter; +import com.github.mcollovati.vertx.vaadin.communication.RequestHandlerReplacements; +import com.github.mcollovati.vertx.vaadin.communication.VertxIndexHtmlRequestHandler; +import io.vertx.core.Context; +import io.vertx.core.Vertx; +import io.vertx.core.file.FileSystem; +import io.vertx.core.file.impl.FileResolverImpl; +import io.vertx.core.http.impl.MimeMapping; +import io.vertx.core.impl.VertxInternal; +import io.vertx.core.spi.file.FileResolver; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.vaadin.flow.di.Instantiator; import com.vaadin.flow.function.DeploymentConfiguration; import com.vaadin.flow.internal.DevModeHandler; import com.vaadin.flow.internal.DevModeHandlerManager; @@ -44,23 +58,9 @@ import com.vaadin.flow.server.VaadinService; import com.vaadin.flow.server.VaadinSession; import com.vaadin.flow.server.communication.FaviconHandler; -import com.vaadin.flow.server.communication.IndexHtmlRequestHandler; import com.vaadin.flow.server.communication.WebComponentProvider; import com.vaadin.flow.server.startup.ApplicationRouteRegistry; import com.vaadin.flow.shared.ApplicationConstants; -import io.vertx.core.Context; -import io.vertx.core.Vertx; -import io.vertx.core.file.FileSystem; -import io.vertx.core.file.impl.FileResolverImpl; -import io.vertx.core.http.impl.MimeMapping; -import io.vertx.core.impl.VertxInternal; -import io.vertx.core.spi.file.FileResolver; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.github.mcollovati.vertx.support.BufferInputStreamAdapter; -import com.github.mcollovati.vertx.vaadin.communication.RequestHandlerReplacements; -import com.github.mcollovati.vertx.vaadin.communication.VertxIndexHtmlRequestHandler; /** * Created by marco on 16/07/16. @@ -110,12 +110,10 @@ protected PwaRegistry getPwaRegistry() { return PwaRegistry.getInstance(vertxVaadin.servletContext()); } - /* @Override protected Instantiator createInstantiator() throws ServiceException { return new VertxVaadinInstantiator(super.createInstantiator()); } - */ @Override protected List createRequestHandlers() throws ServiceException { diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/communication/VertxDebugWindowConnection.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/communication/VertxDebugWindowConnection.java index d4fb5908..5b3272f4 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/communication/VertxDebugWindowConnection.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/communication/VertxDebugWindowConnection.java @@ -33,31 +33,26 @@ import java.util.function.Consumer; import java.util.stream.Collectors; +import com.github.mcollovati.vertx.vaadin.VertxVaadinService; +import com.github.mcollovati.vertx.vaadin.sockjs.communication.VertxVaadinLiveReload; +import io.vertx.core.json.Json; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import com.vaadin.base.devserver.DebugWindowMessage; import com.vaadin.base.devserver.DevToolsInterface; import com.vaadin.base.devserver.DevToolsMessageHandler; import com.vaadin.base.devserver.FeatureFlagMessage; -import com.vaadin.base.devserver.IdeIntegration; import com.vaadin.base.devserver.ServerInfo; import com.vaadin.base.devserver.stats.DevModeUsageStatistics; -import com.vaadin.base.devserver.themeeditor.ThemeEditorCommand; -import com.vaadin.base.devserver.themeeditor.ThemeEditorMessageHandler; -import com.vaadin.base.devserver.themeeditor.messages.BaseResponse; import com.vaadin.experimental.FeatureFlags; -import com.vaadin.flow.component.Component; -import com.vaadin.flow.dom.Element; import com.vaadin.flow.server.VaadinContext; -import com.vaadin.flow.server.VaadinSession; import com.vaadin.flow.server.startup.ApplicationConfiguration; +import com.vaadin.pro.licensechecker.BuildType; import com.vaadin.pro.licensechecker.LicenseChecker; import com.vaadin.pro.licensechecker.Product; -import elemental.json.JsonObject; -import io.vertx.core.json.Json; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import com.github.mcollovati.vertx.vaadin.VertxVaadinService; -import com.github.mcollovati.vertx.vaadin.sockjs.communication.VertxVaadinLiveReload; +import elemental.json.JsonObject; public class VertxDebugWindowConnection implements VertxVaadinLiveReload { @@ -66,10 +61,6 @@ public class VertxDebugWindowConnection implements VertxVaadinLiveReload { private VertxVaadinService service; private final Map> liveReload = new ConcurrentHashMap<>(); - private IdeIntegration ideIntegration; - - private ThemeEditorMessageHandler themeEditorMessageHandler; - private List plugins; public VertxDebugWindowConnection() {} @@ -81,8 +72,6 @@ public VertxDebugWindowConnection(VertxVaadinService service) { public void attachService(VertxVaadinService service) { this.service = service; VaadinContext context = service.getContext(); - this.themeEditorMessageHandler = new ThemeEditorMessageHandler(context); - this.ideIntegration = new IdeIntegration(ApplicationConfiguration.get(context)); findPlugins(); } @@ -107,9 +96,6 @@ public void onConnect(String websocketId, Consumer producer) { new FeatureFlagMessage(FeatureFlags.get(service.getContext()).getFeatures().stream() .filter(feature -> !feature.equals(FeatureFlags.EXAMPLE)) .collect(Collectors.toList()))); - if (themeEditorMessageHandler.isEnabled()) { - send(websocketId, ThemeEditorCommand.STATE, themeEditorMessageHandler.getState()); - } } private DevToolsInterface getDevToolsInterface(String websocketId) { @@ -136,7 +122,7 @@ public void onMessage(String websocketId, String message) { String errorMessage = ""; try { - LicenseChecker.checkLicense(product.getName(), product.getVersion(), keyUrl -> { + LicenseChecker.checkLicense(product.getName(), product.getVersion(), BuildType.DEVELOPMENT, keyUrl -> { send(websocketId, "license-check-nokey", new ProductAndMessage(product, keyUrl)); }); ok = true; @@ -150,28 +136,6 @@ public void onMessage(String websocketId, String message) { ProductAndMessage pm = new ProductAndMessage(product, errorMessage); send(websocketId, "license-check-failed", pm); } - } else if ("showComponentCreateLocation".equals(command) || "showComponentAttachLocation".equals(command)) { - int nodeId = (int) data.getNumber("nodeId"); - int uiId = (int) data.getNumber("uiId"); - VaadinSession session = VaadinSession.getCurrent(); - session.access(() -> { - Element element = session.findElement(uiId, nodeId); - Optional c = element.getComponent(); - if (c.isPresent()) { - if ("showComponentCreateLocation".equals(command)) { - ideIntegration.showComponentCreateInIde(c.get()); - } else { - ideIntegration.showComponentAttachInIde(c.get()); - } - } else { - getLogger() - .error( - "Only component locations are tracked. The given node id refers to an element and not a component"); - } - }); - } else if (themeEditorMessageHandler.canHandle(command, data)) { - BaseResponse resultData = themeEditorMessageHandler.handleDebugMessageData(command, data); - send(websocketId, ThemeEditorCommand.RESPONSE, resultData); } else { boolean handled = false; for (DevToolsMessageHandler plugin : plugins) { @@ -180,8 +144,10 @@ public void onMessage(String websocketId, String message) { break; } } - if (!handled) { - getLogger().info("Unknown command from the browser: {}", command); + if (!handled && command != null + && !command.startsWith("copilot-")) { + getLogger() + .info("Unknown command from the browser: " + command); } } } diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/BaseVaadinConnectEndpointService.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/BaseVaadinConnectEndpointService.java index 30678f0f..a83043fb 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/BaseVaadinConnectEndpointService.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/BaseVaadinConnectEndpointService.java @@ -49,10 +49,10 @@ import com.vaadin.flow.internal.CurrentInstance; import com.vaadin.flow.server.VaadinRequest; import com.vaadin.flow.server.VaadinService; -import dev.hilla.EndpointRegistry; -import dev.hilla.ExplicitNullableTypeChecker; -import dev.hilla.exception.EndpointException; -import dev.hilla.exception.EndpointValidationException; +import com.vaadin.hilla.EndpointRegistry; +import com.vaadin.hilla.ExplicitNullableTypeChecker; +import com.vaadin.hilla.exception.EndpointException; +import com.vaadin.hilla.exception.EndpointValidationException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.lang.NonNullApi; diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinConnectEndpointService.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinConnectEndpointService.java index 97056e39..d16a373e 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinConnectEndpointService.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinConnectEndpointService.java @@ -22,7 +22,7 @@ */ package com.github.mcollovati.vertx.vaadin.connect; -import dev.hilla.Endpoint; +import com.vaadin.hilla.Endpoint; /** * The service that is responsible for processing Vaadin Connect requests. diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinConnectHandler.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinConnectHandler.java index 28b15811..22cc4891 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinConnectHandler.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinConnectHandler.java @@ -25,8 +25,8 @@ import com.vaadin.flow.internal.CurrentInstance; import com.vaadin.flow.server.VaadinRequest; import com.vaadin.flow.server.VaadinService; -import dev.hilla.EndpointNameChecker; -import dev.hilla.ExplicitNullableTypeChecker; +import com.vaadin.hilla.EndpointNameChecker; +import com.vaadin.hilla.ExplicitNullableTypeChecker; import io.vertx.core.http.HttpServerResponse; import io.vertx.core.json.jackson.DatabindCodec; import io.vertx.ext.web.Router; diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinEndpointRegistry.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinEndpointRegistry.java index fa8514a8..398d9c34 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinEndpointRegistry.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VaadinEndpointRegistry.java @@ -22,7 +22,7 @@ */ package com.github.mcollovati.vertx.vaadin.connect; -import dev.hilla.EndpointRegistry; +import com.vaadin.hilla.EndpointRegistry; public interface VaadinEndpointRegistry { diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxEndpointRegistry.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxEndpointRegistry.java index 07798b17..7e246a6a 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxEndpointRegistry.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxEndpointRegistry.java @@ -26,8 +26,8 @@ import java.lang.invoke.MethodHandles; import java.lang.reflect.Method; -import dev.hilla.EndpointNameChecker; -import dev.hilla.EndpointRegistry; +import com.vaadin.hilla.EndpointNameChecker; +import com.vaadin.hilla.EndpointRegistry; public class VertxEndpointRegistry extends EndpointRegistry implements VaadinEndpointRegistry { diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxEndpointRegistryInitializer.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxEndpointRegistryInitializer.java index 0064b1e1..82a12833 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxEndpointRegistryInitializer.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxEndpointRegistryInitializer.java @@ -22,6 +22,7 @@ */ package com.github.mcollovati.vertx.vaadin.connect; +import java.util.HashSet; import java.util.Set; import jakarta.servlet.ServletContext; import jakarta.servlet.ServletException; @@ -30,12 +31,13 @@ import com.vaadin.flow.server.VaadinServletContext; import com.vaadin.flow.server.frontend.scanner.ClassFinder; import com.vaadin.flow.server.startup.ClassLoaderAwareServletContainerInitializer; -import dev.hilla.Endpoint; -import dev.hilla.EndpointNameChecker; +import com.vaadin.hilla.BrowserCallable; +import com.vaadin.hilla.Endpoint; +import com.vaadin.hilla.EndpointNameChecker; import com.github.mcollovati.vertx.support.HillaWorkAround; -@HandlesTypes({Endpoint.class}) +@HandlesTypes({Endpoint.class, BrowserCallable.class}) public class VertxEndpointRegistryInitializer implements ClassLoaderAwareServletContainerInitializer { @Override @@ -46,7 +48,9 @@ public void process(Set> set, ServletContext ctx) throws ServletExcepti } HillaWorkAround.install(); ClassFinder finder = new ClassFinder.DefaultClassFinder(set); - Set> endpoints = finder.getAnnotatedClasses(Endpoint.class); + Set> endpoints = new HashSet<>(); + endpoints.addAll(finder.getAnnotatedClasses(Endpoint.class)); + endpoints.addAll(finder.getAnnotatedClasses(BrowserCallable.class)); vaadinServletContext.setAttribute(VaadinEndpointRegistry.class, fromClasses(endpoints)); } diff --git a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxVaadinConnectEndpointService.java b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxVaadinConnectEndpointService.java index 136f5183..8da6c541 100644 --- a/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxVaadinConnectEndpointService.java +++ b/vertx-vaadin-flow/src/main/java/com/github/mcollovati/vertx/vaadin/connect/VertxVaadinConnectEndpointService.java @@ -32,7 +32,7 @@ import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import com.vaadin.flow.server.VaadinRequest; import com.vaadin.flow.server.VaadinService; -import dev.hilla.ExplicitNullableTypeChecker; +import com.vaadin.hilla.ExplicitNullableTypeChecker; import io.vertx.core.json.jackson.DatabindCodec; import io.vertx.ext.web.RoutingContext; diff --git a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/VertxVaadinConnectEndpointServiceTest.java b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/VertxVaadinConnectEndpointServiceTest.java index 45a0326e..3d7f8c79 100644 --- a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/VertxVaadinConnectEndpointServiceTest.java +++ b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/VertxVaadinConnectEndpointServiceTest.java @@ -46,12 +46,12 @@ import com.fasterxml.jackson.databind.type.TypeFactory; import com.vaadin.flow.server.VaadinService; import com.vaadin.flow.server.auth.AnonymousAllowed; -import dev.hilla.Endpoint; -import dev.hilla.EndpointNameChecker; -import dev.hilla.EndpointRegistry; -import dev.hilla.ExplicitNullableTypeChecker; -import dev.hilla.exception.EndpointException; -import dev.hilla.exception.EndpointValidationException; +import com.vaadin.hilla.Endpoint; +import com.vaadin.hilla.EndpointNameChecker; +import com.vaadin.hilla.EndpointRegistry; +import com.vaadin.hilla.ExplicitNullableTypeChecker; +import com.vaadin.hilla.exception.EndpointException; +import com.vaadin.hilla.exception.EndpointValidationException; import io.vertx.core.Future; import io.vertx.core.Handler; import io.vertx.core.http.HttpServerRequest; diff --git a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/CrudEndpoint.java b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/CrudEndpoint.java index 02e67e25..6f385b6a 100644 --- a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/CrudEndpoint.java +++ b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/CrudEndpoint.java @@ -23,7 +23,7 @@ package com.github.mcollovati.vertx.vaadin.connect.generator.endpoints.superclassmethods; import com.vaadin.flow.server.auth.AnonymousAllowed; -import dev.hilla.EndpointExposed; +import com.vaadin.hilla.EndpointExposed; /** * Source taken from Vaadin Flow (https://github.com/vaadin/flow) diff --git a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/PagedData.java b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/PagedData.java index bc8c0761..8a12420c 100644 --- a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/PagedData.java +++ b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/PagedData.java @@ -25,7 +25,7 @@ import java.util.Collections; import java.util.List; -import dev.hilla.EndpointExposed; +import com.vaadin.hilla.EndpointExposed; /** * Source taken from Vaadin Flow (https://github.com/vaadin/flow) diff --git a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/PersonEndpoint.java b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/PersonEndpoint.java index f1bc02d6..9e5f4a64 100644 --- a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/PersonEndpoint.java +++ b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/PersonEndpoint.java @@ -22,7 +22,7 @@ */ package com.github.mcollovati.vertx.vaadin.connect.generator.endpoints.superclassmethods; -import dev.hilla.Endpoint; +import com.vaadin.hilla.Endpoint; /** * Source taken from Vaadin Flow (https://github.com/vaadin/flow) diff --git a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/ReadOnlyEndpoint.java b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/ReadOnlyEndpoint.java index 04aa5301..304a2266 100644 --- a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/ReadOnlyEndpoint.java +++ b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/generator/endpoints/superclassmethods/ReadOnlyEndpoint.java @@ -24,7 +24,7 @@ import java.util.Optional; -import dev.hilla.EndpointExposed; +import com.vaadin.hilla.EndpointExposed; /** * Source taken from Vaadin Flow (https://github.com/vaadin/flow) diff --git a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/rest/EndpointWithVertxHandlerTest.java b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/rest/EndpointWithVertxHandlerTest.java index 71bf1050..30df0c0f 100644 --- a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/rest/EndpointWithVertxHandlerTest.java +++ b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/rest/EndpointWithVertxHandlerTest.java @@ -25,8 +25,8 @@ import java.util.HashSet; import java.util.function.Consumer; -import dev.hilla.EndpointNameChecker; -import dev.hilla.ExplicitNullableTypeChecker; +import com.vaadin.hilla.EndpointNameChecker; +import com.vaadin.hilla.ExplicitNullableTypeChecker; import io.vertx.core.Vertx; import io.vertx.core.http.HttpServer; import io.vertx.core.json.Json; diff --git a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/rest/VaadinConnectEndpoints.java b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/rest/VaadinConnectEndpoints.java index aa710f8a..e3463ca4 100644 --- a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/rest/VaadinConnectEndpoints.java +++ b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/rest/VaadinConnectEndpoints.java @@ -25,12 +25,12 @@ import java.time.LocalTime; import java.time.ZonedDateTime; -import dev.hilla.Endpoint; +import com.vaadin.hilla.BrowserCallable; /** * Source taken from Vaadin Flow (https://github.com/vaadin/flow) */ -@Endpoint +@BrowserCallable public class VaadinConnectEndpoints { public BeanWithZonedDateTimeField getBeanWithZonedDateTimeField() { diff --git a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/testendpoint/BridgeMethodTestEndpoint.java b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/testendpoint/BridgeMethodTestEndpoint.java index 4197a3f5..eff73de3 100644 --- a/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/testendpoint/BridgeMethodTestEndpoint.java +++ b/vertx-vaadin-flow/src/test/java/com/github/mcollovati/vertx/vaadin/connect/testendpoint/BridgeMethodTestEndpoint.java @@ -22,7 +22,7 @@ */ package com.github.mcollovati.vertx.vaadin.connect.testendpoint; -import dev.hilla.Endpoint; +import com.vaadin.hilla.Endpoint; /** * Source code adapted from Vaadin Flow (https://github.com/vaadin/flow) diff --git a/vertx-vaadin-quarkus-extension/deployment/pom.xml b/vertx-vaadin-quarkus-extension/deployment/pom.xml index b8ea2ed1..f679c513 100644 --- a/vertx-vaadin-quarkus-extension/deployment/pom.xml +++ b/vertx-vaadin-quarkus-extension/deployment/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-extension-parent - 24.3-SNAPSHOT + 24.4-SNAPSHOT vertx-vaadin-quarkus-extension-deployment Vertx Vaadin Extension - Deployment diff --git a/vertx-vaadin-quarkus-extension/integration-tests/common-test-code/pom.xml b/vertx-vaadin-quarkus-extension/integration-tests/common-test-code/pom.xml index f4f28d87..3cd9c15f 100644 --- a/vertx-vaadin-quarkus-extension/integration-tests/common-test-code/pom.xml +++ b/vertx-vaadin-quarkus-extension/integration-tests/common-test-code/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-integration-tests - 24.3-SNAPSHOT + 24.4-SNAPSHOT vertx-vaadin-quarkus-extension-common-test-code Vertx Vaadin Extension - Common code for dev and prod diff --git a/vertx-vaadin-quarkus-extension/integration-tests/development/pom.xml b/vertx-vaadin-quarkus-extension/integration-tests/development/pom.xml index 266a9403..28f6ac44 100644 --- a/vertx-vaadin-quarkus-extension/integration-tests/development/pom.xml +++ b/vertx-vaadin-quarkus-extension/integration-tests/development/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-integration-tests - 24.3-SNAPSHOT + 24.4-SNAPSHOT vertx-vaadin-quarkus-development-tests diff --git a/vertx-vaadin-quarkus-extension/integration-tests/pom.xml b/vertx-vaadin-quarkus-extension/integration-tests/pom.xml index fe3c4dbe..6ecf02fb 100644 --- a/vertx-vaadin-quarkus-extension/integration-tests/pom.xml +++ b/vertx-vaadin-quarkus-extension/integration-tests/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-extension-parent - 24.3-SNAPSHOT + 24.4-SNAPSHOT vertx-vaadin-quarkus-integration-tests diff --git a/vertx-vaadin-quarkus-extension/integration-tests/production/pom.xml b/vertx-vaadin-quarkus-extension/integration-tests/production/pom.xml index 29511ef5..097d36ba 100644 --- a/vertx-vaadin-quarkus-extension/integration-tests/production/pom.xml +++ b/vertx-vaadin-quarkus-extension/integration-tests/production/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-integration-tests - 24.3-SNAPSHOT + 24.4-SNAPSHOT vertx-vaadin-quarkus-production-tests diff --git a/vertx-vaadin-quarkus-extension/integration-tests/reusable-theme/pom.xml b/vertx-vaadin-quarkus-extension/integration-tests/reusable-theme/pom.xml index e2298df2..f88e6078 100644 --- a/vertx-vaadin-quarkus-extension/integration-tests/reusable-theme/pom.xml +++ b/vertx-vaadin-quarkus-extension/integration-tests/reusable-theme/pom.xml @@ -5,7 +5,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-integration-tests - 24.3-SNAPSHOT + 24.4-SNAPSHOT 4.0.0 diff --git a/vertx-vaadin-quarkus-extension/integration-tests/test-addons/addon-with-jandex/pom.xml b/vertx-vaadin-quarkus-extension/integration-tests/test-addons/addon-with-jandex/pom.xml index 3125706e..08830dc5 100644 --- a/vertx-vaadin-quarkus-extension/integration-tests/test-addons/addon-with-jandex/pom.xml +++ b/vertx-vaadin-quarkus-extension/integration-tests/test-addons/addon-with-jandex/pom.xml @@ -7,7 +7,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-integration-tests - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../../pom.xml diff --git a/vertx-vaadin-quarkus-extension/integration-tests/test-addons/addon-without-jandex/pom.xml b/vertx-vaadin-quarkus-extension/integration-tests/test-addons/addon-without-jandex/pom.xml index 7f2cee77..6db1d50f 100644 --- a/vertx-vaadin-quarkus-extension/integration-tests/test-addons/addon-without-jandex/pom.xml +++ b/vertx-vaadin-quarkus-extension/integration-tests/test-addons/addon-without-jandex/pom.xml @@ -7,7 +7,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-integration-tests - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../../pom.xml diff --git a/vertx-vaadin-quarkus-extension/pom.xml b/vertx-vaadin-quarkus-extension/pom.xml index a384177b..9119785f 100644 --- a/vertx-vaadin-quarkus-extension/pom.xml +++ b/vertx-vaadin-quarkus-extension/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx vertx-vaadin-root - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml diff --git a/vertx-vaadin-quarkus-extension/runtime/pom.xml b/vertx-vaadin-quarkus-extension/runtime/pom.xml index 43489291..a413878b 100644 --- a/vertx-vaadin-quarkus-extension/runtime/pom.xml +++ b/vertx-vaadin-quarkus-extension/runtime/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx vertx-vaadin-quarkus-extension-parent - 24.3-SNAPSHOT + 24.4-SNAPSHOT vertx-vaadin-quarkus-extension Vertx Vaadin Extension - Runtime diff --git a/vertx-vaadin-tests/pom.xml b/vertx-vaadin-tests/pom.xml index 4ae84c3e..9ce1e687 100644 --- a/vertx-vaadin-tests/pom.xml +++ b/vertx-vaadin-tests/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx vertx-vaadin-root - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml com.github.mcollovati.vertx.tests diff --git a/vertx-vaadin-tests/test-common/pom.xml b/vertx-vaadin-tests/test-common/pom.xml index c9c6fd76..df0117a0 100644 --- a/vertx-vaadin-tests/test-common/pom.xml +++ b/vertx-vaadin-tests/test-common/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx.tests vertx-vaadin-test - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml vertx-vaadin-test-common diff --git a/vertx-vaadin-tests/test-frontend/addon-with-templates/pom.xml b/vertx-vaadin-tests/test-frontend/addon-with-templates/pom.xml index 0af5012b..8d7aefa9 100644 --- a/vertx-vaadin-tests/test-frontend/addon-with-templates/pom.xml +++ b/vertx-vaadin-tests/test-frontend/addon-with-templates/pom.xml @@ -7,7 +7,7 @@ com.github.mcollovati.vertx.tests test-frontend - 24.3-SNAPSHOT + 24.4-SNAPSHOT addon-with-templates diff --git a/vertx-vaadin-tests/test-frontend/pom.xml b/vertx-vaadin-tests/test-frontend/pom.xml index 00c88bd0..d3907eb4 100644 --- a/vertx-vaadin-tests/test-frontend/pom.xml +++ b/vertx-vaadin-tests/test-frontend/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx.tests vertx-vaadin-test - 24.3-SNAPSHOT + 24.4-SNAPSHOT test-frontend Frontend build (npm + Webpack + Vite) diff --git a/vertx-vaadin-tests/test-frontend/vite-basics/package.json b/vertx-vaadin-tests/test-frontend/vite-basics/package.json index 21f9b14f..49693ab5 100644 --- a/vertx-vaadin-tests/test-frontend/vite-basics/package.json +++ b/vertx-vaadin-tests/test-frontend/vite-basics/package.json @@ -12,33 +12,37 @@ "@vaadin/bundles": "../vite-test-assets/packages/@vaadin/bundles", "@vaadin/common-frontend": "0.0.19", "@vaadin/polymer-legacy-adapter": "24.3.2", - "@vaadin/router": "1.7.5", "@vaadin/text-field": "24.3.2", "@vaadin/vaadin-lumo-styles": "24.3.2", "@vaadin/vaadin-themable-mixin": "24.3.2", "construct-style-sheets-polyfill": "3.1.0", "copy-to-clipboard": "^3.3.1", - "lit": "3.1.0", + "lit": "3.1.4", "package-outside-npm": "file:../vite-test-assets/packages/package-outside-npm", - "package2-outside-npm": "../vite-test-assets/packages/package2-outside-npm" + "package2-outside-npm": "../vite-test-assets/packages/package2-outside-npm", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-router-dom": "6.23.1" }, "devDependencies": { - "@rollup/plugin-replace": "5.0.4", - "@rollup/pluginutils": "5.0.5", - "@vitejs/plugin-react": "4.2.0", - "@vitejs/plugin-react-swc": "3.5.0", - "async": "3.2.4", - "glob": "10.3.3", + "@babel/preset-react": "7.24.7", + "@rollup/plugin-replace": "5.0.7", + "@rollup/pluginutils": "5.1.0", + "@types/react": "18.3.3", + "@types/react-dom": "18.3.0", + "@vitejs/plugin-react": "4.3.1", + "async": "3.2.5", + "glob": "10.4.1", "rollup-plugin-brotli": "3.1.0", - "rollup-plugin-visualizer": "5.9.2", + "rollup-plugin-visualizer": "5.12.0", "strip-css-comments": "5.0.0", "transform-ast": "2.4.4", - "typescript": "5.3.3", - "vite": "5.0.13", - "vite-plugin-checker": "0.6.2", - "workbox-build": "7.0.0", - "workbox-core": "7.0.0", - "workbox-precaching": "7.0.0" + "typescript": "5.4.5", + "vite": "5.3.3", + "vite-plugin-checker": "0.6.4", + "workbox-build": "7.1.1", + "workbox-core": "7.1.0", + "workbox-precaching": "7.1.0" }, "overrides": { "@testscope/all": "$@testscope/all", @@ -55,43 +59,50 @@ "@vaadin/common-frontend": "$@vaadin/common-frontend", "construct-style-sheets-polyfill": "$construct-style-sheets-polyfill", "lit": "$lit", - "@vaadin/router": "$@vaadin/router", "@polymer/polymer": "$@polymer/polymer", "@vaadin/polymer-legacy-adapter": "$@vaadin/polymer-legacy-adapter", "@vaadin/vaadin-themable-mixin": "$@vaadin/vaadin-themable-mixin", "@vaadin/vaadin-lumo-styles": "$@vaadin/vaadin-lumo-styles", - "@vaadin/text-field": "$@vaadin/text-field" + "@vaadin/text-field": "$@vaadin/text-field", + "react-dom": "$react-dom", + "react-router-dom": "$react-router-dom", + "react": "$react" }, "vaadin": { "dependencies": { "@polymer/polymer": "3.5.1", "@vaadin/common-frontend": "0.0.19", "@vaadin/polymer-legacy-adapter": "24.3.2", - "@vaadin/router": "1.7.5", "@vaadin/text-field": "24.3.2", "@vaadin/vaadin-lumo-styles": "24.3.2", "@vaadin/vaadin-themable-mixin": "24.3.2", "construct-style-sheets-polyfill": "3.1.0", - "lit": "3.1.0" + "lit": "3.1.4", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-router-dom": "6.23.1" }, "devDependencies": { - "@rollup/plugin-replace": "5.0.4", - "@rollup/pluginutils": "5.0.5", - "@vitejs/plugin-react": "4.2.0", - "@vitejs/plugin-react-swc": "3.5.0", - "async": "3.2.4", - "glob": "10.3.3", + "@babel/preset-react": "7.24.7", + "@rollup/plugin-replace": "5.0.7", + "@rollup/pluginutils": "5.1.0", + "@types/react": "18.3.3", + "@types/react-dom": "18.3.0", + "@vitejs/plugin-react": "4.3.1", + "async": "3.2.5", + "glob": "10.4.1", "rollup-plugin-brotli": "3.1.0", - "rollup-plugin-visualizer": "5.9.2", + "rollup-plugin-visualizer": "5.12.0", "strip-css-comments": "5.0.0", "transform-ast": "2.4.4", - "typescript": "5.3.3", - "vite": "5.0.13", - "vite-plugin-checker": "0.6.2", - "workbox-build": "7.0.0", - "workbox-core": "7.0.0", - "workbox-precaching": "7.0.0" + "typescript": "5.4.5", + "vite": "5.3.3", + "vite-plugin-checker": "0.6.4", + "workbox-build": "7.1.1", + "workbox-core": "7.1.0", + "workbox-precaching": "7.1.0" }, - "hash": "18874f8100abf21e2ac7778cc31363d48b1be72e1b5c77c5adbf6c3b532d893e" - } + "hash": "4768838e20dd8ee5b1acae4ba8d1cc7fbce88ef1384d616dce43cb054d6c5699" + }, + "type": "module" } diff --git a/vertx-vaadin-tests/test-frontend/vite-basics/pom.xml b/vertx-vaadin-tests/test-frontend/vite-basics/pom.xml index 3d1f77c5..bbdf5d35 100644 --- a/vertx-vaadin-tests/test-frontend/vite-basics/pom.xml +++ b/vertx-vaadin-tests/test-frontend/vite-basics/pom.xml @@ -5,7 +5,7 @@ com.github.mcollovati.vertx.tests test-frontend - 24.3-SNAPSHOT + 24.4-SNAPSHOT vite-basics Vite dev mode functionality diff --git a/vertx-vaadin-tests/test-frontend/vite-basics/src/test/java/com/vaadin/viteapp/BasicsIT.java b/vertx-vaadin-tests/test-frontend/vite-basics/src/test/java/com/vaadin/viteapp/BasicsIT.java index 87f536a5..305b278e 100644 --- a/vertx-vaadin-tests/test-frontend/vite-basics/src/test/java/com/vaadin/viteapp/BasicsIT.java +++ b/vertx-vaadin-tests/test-frontend/vite-basics/src/test/java/com/vaadin/viteapp/BasicsIT.java @@ -57,16 +57,6 @@ public void imageFromThemeShown() { }); } - @Test - public void debugWindowShown() { - DevToolsElement devTools = $(DevToolsElement.class).waitForFirst(); - devTools.expand(); - Assert.assertNotNull(devTools.$("div") - .attributeContains("class", "window") - .attributeContains("class", "visible") - .waitForFirst()); - } - @Test public void canImportJson() { $("button").id(MainView.LOAD_AND_SHOW_JSON).click(); diff --git a/vertx-vaadin-tests/test-frontend/vite-basics/tsconfig.json b/vertx-vaadin-tests/test-frontend/vite-basics/tsconfig.json index 1d3096d9..f6d7afac 100644 --- a/vertx-vaadin-tests/test-frontend/vite-basics/tsconfig.json +++ b/vertx-vaadin-tests/test-frontend/vite-basics/tsconfig.json @@ -4,7 +4,7 @@ // You might want to change the configurations to fit your preferences // For more information about the configurations, please refer to http://www.typescriptlang.org/docs/handbook/tsconfig-json.html { - "_version": "9", + "_version": "9.1", "compilerOptions": { "sourceMap": true, "jsx": "react-jsx", diff --git a/vertx-vaadin-tests/test-frontend/vite-basics/types.d.ts b/vertx-vaadin-tests/test-frontend/vite-basics/types.d.ts index 250302bd..eff230be 100644 --- a/vertx-vaadin-tests/test-frontend/vite-basics/types.d.ts +++ b/vertx-vaadin-tests/test-frontend/vite-basics/types.d.ts @@ -3,8 +3,15 @@ // This is needed for TypeScript compiler to declare and export as a TypeScript module. // It is recommended to commit this file to the VCS. // You might want to change the configurations to fit your preferences -declare module '*.css' { - import { CSSResultGroup } from 'lit'; +declare module '*.css?inline' { + import type { CSSResultGroup } from 'lit'; const content: CSSResultGroup; export default content; } + +// Allow any CSS Custom Properties +declare module 'csstype' { + interface Properties { + [index: `--${string}`]: any; + } +} diff --git a/vertx-vaadin-tests/test-frontend/vite-production/pom.xml b/vertx-vaadin-tests/test-frontend/vite-production/pom.xml index fe28efaa..a180422f 100644 --- a/vertx-vaadin-tests/test-frontend/vite-production/pom.xml +++ b/vertx-vaadin-tests/test-frontend/vite-production/pom.xml @@ -5,7 +5,7 @@ com.github.mcollovati.vertx.tests test-frontend - 24.3-SNAPSHOT + 24.4-SNAPSHOT vite-production Vite production mode functionality diff --git a/vertx-vaadin-tests/test-frontend/vite-test-assets/pom.xml b/vertx-vaadin-tests/test-frontend/vite-test-assets/pom.xml index 724be035..41df4577 100644 --- a/vertx-vaadin-tests/test-frontend/vite-test-assets/pom.xml +++ b/vertx-vaadin-tests/test-frontend/vite-test-assets/pom.xml @@ -21,7 +21,7 @@ com.github.mcollovati.vertx.tests test-frontend - 24.3-SNAPSHOT + 24.4-SNAPSHOT 4.0.0 diff --git a/vertx-vaadin-tests/test-lumo/pom.xml b/vertx-vaadin-tests/test-lumo/pom.xml index fbc0fabb..3b4540be 100644 --- a/vertx-vaadin-tests/test-lumo/pom.xml +++ b/vertx-vaadin-tests/test-lumo/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx.tests vertx-vaadin-test - 24.3-SNAPSHOT + 24.4-SNAPSHOT flow-test-lumo Lumo class for use in test modules requiring LUMO diff --git a/vertx-vaadin-tests/test-resources/pom.xml b/vertx-vaadin-tests/test-resources/pom.xml index 373eba33..a3adf4c6 100644 --- a/vertx-vaadin-tests/test-resources/pom.xml +++ b/vertx-vaadin-tests/test-resources/pom.xml @@ -5,7 +5,7 @@ com.github.mcollovati.vertx.tests vertx-vaadin-test - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml vertx-vaadin-test-resources diff --git a/vertx-vaadin-tests/test-root-context/pom.xml b/vertx-vaadin-tests/test-root-context/pom.xml index a4e1047a..195439c3 100644 --- a/vertx-vaadin-tests/test-root-context/pom.xml +++ b/vertx-vaadin-tests/test-root-context/pom.xml @@ -6,7 +6,7 @@ com.github.mcollovati.vertx.tests vertx-vaadin-test - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml vertx-vaadin-test-root-context diff --git a/vertx-vaadin-tests/test-root-context/src/test/java/com/vaadin/flow/uitest/ui/NavigationTriggerIT.java b/vertx-vaadin-tests/test-root-context/src/test/java/com/vaadin/flow/uitest/ui/NavigationTriggerIT.java index 4c1e58f7..2a802a67 100644 --- a/vertx-vaadin-tests/test-root-context/src/test/java/com/vaadin/flow/uitest/ui/NavigationTriggerIT.java +++ b/vertx-vaadin-tests/test-root-context/src/test/java/com/vaadin/flow/uitest/ui/NavigationTriggerIT.java @@ -33,6 +33,8 @@ import org.openqa.selenium.WebElement; public class NavigationTriggerIT extends ChromeBrowserTest { + + @Ignore("https://github.com/vaadin/flow/issues/19494") @Test public void testNavigationTriggers() { String url = getTestURL() + "/abc/"; diff --git a/vertx-vaadin-tests/test-scalability/pom.xml b/vertx-vaadin-tests/test-scalability/pom.xml index b7ba5f51..032cdbd3 100644 --- a/vertx-vaadin-tests/test-scalability/pom.xml +++ b/vertx-vaadin-tests/test-scalability/pom.xml @@ -5,7 +5,7 @@ com.github.mcollovati.vertx.tests vertx-vaadin-test - 24.3-SNAPSHOT + 24.4-SNAPSHOT ../pom.xml vertx-vaadin-test-scalability