com.vaadin.flow.theme.

Annotation Type Theme


  • @Target(value=TYPE)
     @Retention(value=RUNTIME)
     @Inherited
     @Documented
    public @interface Theme

    Defines that there is a theme to use and defines the theme handler implementation.

    The theme allows to define a way to translate base component url to the themed component url (@see AbstractTheme), which specifies components styles.

    By default com.vaadin.flow.theme.lumo.Lumo theme is used if it's in the classpath. You may disable theming with NoTheme annotation.

    Theme annotation should be added to the AppShellConfigurator implementation.

    Only a single theme can be defined and having multiple instances will throw an exception.

    Here is an example:

     
    
     @Theme(Lumo.class)
     public class MyAppShell implements AppShellConfigurator {
     }
     
     

    Since:

    1.0

    Author:

    Vaadin Ltd

    See Also:

    AbstractTheme, NoTheme

    • Required Element Summary

      Required Elements
      Modifier and Type Required Element and Description
      Class<? extends AbstractTheme> value

      The theme translation handler.

    • Optional Element Summary

      Optional Elements
      Modifier and Type Optional Element and Description
      String variant

      The theme variant, if any.

    • Element Detail

      • value

        public abstract Class<? extends AbstractTheme> value

        The theme translation handler.

        Returns:

        theme handler

      • variant

        public abstract String variant

        The theme variant, if any.

        Returns:

        the theme variant

        Default:

        ""