diff --git a/pom.xml b/pom.xml index c2c4e18..6db80fc 100644 --- a/pom.xml +++ b/pom.xml @@ -15,6 +15,7 @@ UTF-8 UTF-8 ${project.basedir}/drivers + 4.0.0 11.0.14 @@ -54,6 +55,11 @@ import ${vaadin.version} + + com.flowingcode.vaadin.addons.demo + commons-demo + ${flowingcode.commons.demo.version} + @@ -105,6 +111,11 @@ 6.1.14 true + + com.flowingcode.vaadin.addons.demo + commons-demo + test + org.slf4j slf4j-simple diff --git a/src/test/java/com/flowingcode/addons/applayout/ApplayoutDemoView.java b/src/test/java/com/flowingcode/addons/applayout/ApplayoutDemoView.java index b8c7960..7d34a32 100644 --- a/src/test/java/com/flowingcode/addons/applayout/ApplayoutDemoView.java +++ b/src/test/java/com/flowingcode/addons/applayout/ApplayoutDemoView.java @@ -46,9 +46,8 @@ import org.junit.Ignore; @SuppressWarnings("serial") -@Route(value = "applayout", layout = DemoLayout.class) +@Route(value = "applayout-full", layout = DemoLayout.class) @StyleSheet("context://frontend/styles/app-layout/demo-styles.css") -@Ignore public class ApplayoutDemoView extends VerticalLayout { private VerticalLayout container = new VerticalLayout(); @@ -232,7 +231,7 @@ private Component[] createMenuItems() { new MenuItem("Toggle", VaadinIcon.BACKSPACE).configure(mi -> mi.add(new PaperToggle())), new MenuItem("Toggle", MenuItem.BLANK).configure(mi -> mi.add(new PaperToggle())), new MenuItem("External link").setHref("http://www.google.com"), - new MenuItem("Internal Link", InternalView.class), + new MenuItem("Internal Link", SampleInternalView.class), // icon as VaadinIcon enum new MenuItem("Content", VaadinIcon.BOOK, () -> showHamletContent()) diff --git a/src/test/java/com/flowingcode/addons/applayout/AbstractLayoutDemo.java b/src/test/java/com/flowingcode/addons/applayout/CustomAppLayout.java similarity index 94% rename from src/test/java/com/flowingcode/addons/applayout/AbstractLayoutDemo.java rename to src/test/java/com/flowingcode/addons/applayout/CustomAppLayout.java index d399e6e..d7188b1 100644 --- a/src/test/java/com/flowingcode/addons/applayout/AbstractLayoutDemo.java +++ b/src/test/java/com/flowingcode/addons/applayout/CustomAppLayout.java @@ -23,9 +23,10 @@ import com.vaadin.flow.component.html.Image; import com.vaadin.flow.component.html.Span; -public class AbstractLayoutDemo extends AppLayout { +@SuppressWarnings("serial") +public class CustomAppLayout extends AppLayout { - public AbstractLayoutDemo() { + public CustomAppLayout() { setMenuItems(new MenuItem("Item 1"), new MenuItem("Item 2")); // menu header diff --git a/src/test/java/com/flowingcode/addons/applayout/InternalView.java b/src/test/java/com/flowingcode/addons/applayout/SampleInternalView.java similarity index 89% rename from src/test/java/com/flowingcode/addons/applayout/InternalView.java rename to src/test/java/com/flowingcode/addons/applayout/SampleInternalView.java index 63f0e06..7deb75b 100644 --- a/src/test/java/com/flowingcode/addons/applayout/InternalView.java +++ b/src/test/java/com/flowingcode/addons/applayout/SampleInternalView.java @@ -24,11 +24,12 @@ import com.vaadin.flow.router.Route; import org.junit.Ignore; +@SuppressWarnings("serial") @Route("internal-view") @Ignore -public class InternalView extends Div { +public class SampleInternalView extends Div { - public InternalView() { + public SampleInternalView() { add(new Span("Internal view")); } } diff --git a/src/test/java/com/flowingcode/addons/applayout/AbstractLayoutView.java b/src/test/java/com/flowingcode/addons/applayout/SampleView.java similarity index 88% rename from src/test/java/com/flowingcode/addons/applayout/AbstractLayoutView.java rename to src/test/java/com/flowingcode/addons/applayout/SampleView.java index 184f569..7da47b8 100644 --- a/src/test/java/com/flowingcode/addons/applayout/AbstractLayoutView.java +++ b/src/test/java/com/flowingcode/addons/applayout/SampleView.java @@ -24,9 +24,9 @@ import com.vaadin.flow.router.Route; import org.junit.Ignore; -@Route(value = "view", layout = AbstractLayoutDemo.class) -@Ignore -public class AbstractLayoutView extends Div { +@SuppressWarnings("serial") +@Route(value = "view", layout = CustomAppLayout.class) +public class SampleView extends Div { { add(new Span("Hello world")); diff --git a/src/test/java/com/flowingcode/vaadin/addons/applayout/AppLayoutDemo.java b/src/test/java/com/flowingcode/vaadin/addons/applayout/AppLayoutDemo.java new file mode 100644 index 0000000..2a38576 --- /dev/null +++ b/src/test/java/com/flowingcode/vaadin/addons/applayout/AppLayoutDemo.java @@ -0,0 +1,24 @@ +package com.flowingcode.vaadin.addons.applayout; + +import com.flowingcode.vaadin.addons.demo.DemoSource; +import com.vaadin.flow.component.html.Div; +import com.vaadin.flow.component.html.IFrame; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; + +@DemoSource("/src/test/java/com/flowingcode/addons/applayout/ApplayoutDemoView.java") +@DemoSource("/frontend/styles/app-layout/demo-styles.css") +@PageTitle("AppLayout Full Demo") +@SuppressWarnings("serial") +@Route(value = "applayout/applayout-demo", layout = AppLayoutDemoView.class) +public class AppLayoutDemo extends Div { + + public AppLayoutDemo() { + setClassName("wrap-iframe"); + IFrame iframe = new IFrame("/applayout-full"); + iframe.setClassName("frame"); + iframe.setSizeFull(); + iframe.getElement().setAttribute("frameBorder", "0"); + add(iframe); + } +} diff --git a/src/test/java/com/flowingcode/vaadin/addons/applayout/AppLayoutDemoView.java b/src/test/java/com/flowingcode/vaadin/addons/applayout/AppLayoutDemoView.java new file mode 100644 index 0000000..52d870d --- /dev/null +++ b/src/test/java/com/flowingcode/vaadin/addons/applayout/AppLayoutDemoView.java @@ -0,0 +1,40 @@ +/*- + * #%L + * Template Add-on + * %% + * Copyright (C) 2023 Flowing Code + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ +package com.flowingcode.vaadin.addons.applayout; + +import com.flowingcode.vaadin.addons.DemoLayout; +import com.flowingcode.vaadin.addons.GithubLink; +import com.flowingcode.vaadin.addons.demo.TabbedDemo; +import com.vaadin.flow.router.ParentLayout; +import com.vaadin.flow.router.Route; + +@SuppressWarnings("serial") +@ParentLayout(DemoLayout.class) +@Route("applayout") +@GithubLink("https://github.com/FlowingCode/AppLayoutAddon") +public class AppLayoutDemoView extends TabbedDemo { + + public AppLayoutDemoView() { + addDemo(AppLayoutDemo.class); + addDemo(ExtendingAppLayoutDemo.class); + + setSizeFull(); + } +} diff --git a/src/test/java/com/flowingcode/addons/applayout/DemoView.java b/src/test/java/com/flowingcode/vaadin/addons/applayout/DemoView.java similarity index 91% rename from src/test/java/com/flowingcode/addons/applayout/DemoView.java rename to src/test/java/com/flowingcode/vaadin/addons/applayout/DemoView.java index 679e720..1faf6d5 100644 --- a/src/test/java/com/flowingcode/addons/applayout/DemoView.java +++ b/src/test/java/com/flowingcode/vaadin/addons/applayout/DemoView.java @@ -17,7 +17,7 @@ * limitations under the License. * #L% */ -package com.flowingcode.addons.applayout; +package com.flowingcode.vaadin.addons.applayout; import com.vaadin.flow.component.orderedlayout.VerticalLayout; import com.vaadin.flow.router.BeforeEnterEvent; @@ -30,6 +30,6 @@ public class DemoView extends VerticalLayout implements BeforeEnterObserver { @Override public void beforeEnter(BeforeEnterEvent event) { - event.forwardTo(ApplayoutDemoView.class); + event.forwardTo(AppLayoutDemoView.class); } } diff --git a/src/test/java/com/flowingcode/vaadin/addons/applayout/ExtendingAppLayoutDemo.java b/src/test/java/com/flowingcode/vaadin/addons/applayout/ExtendingAppLayoutDemo.java new file mode 100644 index 0000000..0718557 --- /dev/null +++ b/src/test/java/com/flowingcode/vaadin/addons/applayout/ExtendingAppLayoutDemo.java @@ -0,0 +1,24 @@ +package com.flowingcode.vaadin.addons.applayout; + +import com.flowingcode.vaadin.addons.demo.DemoSource; +import com.vaadin.flow.component.html.Div; +import com.vaadin.flow.component.html.IFrame; +import com.vaadin.flow.router.PageTitle; +import com.vaadin.flow.router.Route; + +@DemoSource("/src/test/java/com/flowingcode/addons/applayout/CustomAppLayout.java") +@DemoSource("/src/test/java/com/flowingcode/addons/applayout/SampleView.java") +@PageTitle("Extending AppLayout Demo") +@SuppressWarnings("serial") +@Route(value = "applayout/extending-applayout-demo", layout = AppLayoutDemoView.class) +public class ExtendingAppLayoutDemo extends Div { + + public ExtendingAppLayoutDemo() { + setClassName("wrap-iframe"); + IFrame iframe = new IFrame("/view"); + iframe.setClassName("frame"); + iframe.setSizeFull(); + iframe.getElement().setAttribute("frameBorder", "0"); + add(iframe); + } +}