<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2019 Open Networking Foundation
  ~
  ~ 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.
  -->
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>${groupId}</groupId>
    <artifactId>${artifactId}</artifactId>
    <version>${version}</version>
      <relativePath>../../</relativePath>
  </parent>

  <artifactId>${artifactId}-gui</artifactId>
  <packaging>pom</packaging>

  <build>
    <plugins>
      <plugin>
        <groupId>com.github.eirslett</groupId>
        <artifactId>frontend-maven-plugin</artifactId>
        <version>1.7.6</version>
        <configuration>
          <workingDirectory>${angular.project.location}</workingDirectory>
          <installDirectory>${angular.project.nodeinstallation}</installDirectory>
        </configuration>
        <executions>

          <execution>
            <id>install node and npm</id>
            <goals>
              <goal>install-node-and-npm</goal>
            </goals>
            <configuration>
              <!-- See https://nodejs.org/en/download/ for latest node and npm (lts) versions -->
              <nodeVersion>v8.11.1</nodeVersion>
              <npmVersion>5.6.0</npmVersion>
            </configuration>
          </execution>

          <execution>
            <id>npm install</id>
            <goals>
              <goal>npm</goal>
            </goals>
            <!-- Optional configuration which provides for running any npm command -->
            <configuration>
              <arguments>install</arguments>
            </configuration>
          </execution>

          <execution>
            <id>npm build</id>
            <goals>
              <goal>npm</goal>
            </goals>
            <configuration>
              <arguments>run build ${artifactId}-gui-lib</arguments>
            </configuration>
          </execution>

<!--          <execution>-->
<!--            <id>npm lint</id>-->
<!--            <goals>-->
<!--              <goal>npm</goal>-->
<!--            </goals>-->
<!--            <configuration>-->
<!--              <arguments>run lint ${artifactId}-gui-lib</arguments>-->
<!--            </configuration>-->
<!--          </execution>-->

<!--          <execution>-->
<!--            <id>npm test</id>-->
<!--            <goals>-->
<!--              <goal>npm</goal>-->
<!--            </goals>-->
<!--            <configuration>-->
<!--              <arguments>run test</arguments>-->
<!--            </configuration>-->
<!--          </execution>-->

          <execution>
            <id>npm pack</id>
            <goals>
              <goal>npm</goal>
            </goals>
            <configuration>
              <arguments>pack ./dist/${artifactId}-gui-lib</arguments>
            </configuration>
          </execution>
        </executions>
      </plugin>

    </plugins>
  </build>

</project>
