Annotation Interface NpmPackage


Annotation for defining an npm package dependency on a Component class which includes one or more JS modules. The JS Modules can be defined using JsModule annotation on the same Component. For adding multiple npm packages files for a single component, you can use this annotation multiple times.

Declared npm packages will be bundled by flow-maven-plugin in a package.json file, making sure that only one dependency is created.

Since:
2.0
Author:
Vaadin Ltd
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static @interface 
    Internal annotation to enable use of multiple NpmPackage annotations.
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    npm package to install before loading any JS modules declared using JsModule.
    Defines the npm package version.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
    Whether the package should be installed as a dev dependency.
  • Element Details

    • value

      String value
      npm package to install before loading any JS modules declared using JsModule.
      Returns:
      an npm JavaScript package
    • version

      String version
      Defines the npm package version. It should meet the 'd.d.d' or the 'd.d.d-suffix' pattern.

      Troubleshooting: when two or more annotations with the same package value are found in the class-path, and their versions do not match, the build process will print a warning message informing about found versions and which one will be used.

      Returns:
      npm package version
    • dev

      boolean dev
      Whether the package should be installed as a dev dependency.
      Returns:
      true if the package should be installed as a dev dependency, false otherwise.
      Default:
      false