2023-11-27 10:39:51 -05:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!--
|
|
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
|
|
this work for additional information regarding copyright ownership.
|
|
|
|
The ASF licenses this file to You 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.
|
|
|
|
-->
|
|
|
|
|
2024-06-07 16:25:07 -04:00
|
|
|
<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">
|
2023-11-27 10:39:51 -05:00
|
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
|
|
|
|
<parent>
|
|
|
|
<groupId>org.apache.nifi</groupId>
|
2024-06-07 16:25:07 -04:00
|
|
|
<artifactId>nifi</artifactId>
|
2024-01-25 19:11:30 -05:00
|
|
|
<version>2.0.0-SNAPSHOT</version>
|
2023-11-27 10:39:51 -05:00
|
|
|
</parent>
|
|
|
|
|
2024-06-07 16:25:07 -04:00
|
|
|
<artifactId>nifi-frontend</artifactId>
|
|
|
|
<packaging>jar</packaging>
|
|
|
|
|
2023-11-27 10:39:51 -05:00
|
|
|
<properties>
|
2024-06-07 16:25:07 -04:00
|
|
|
<frontend.source>${basedir}/src/main/frontend</frontend.source>
|
2023-11-27 10:39:51 -05:00
|
|
|
<frontend.working.dir>${project.build.directory}/frontend-working-directory</frontend.working.dir>
|
2024-05-09 16:05:44 -04:00
|
|
|
<copy-rename-maven-plugin.version>1.0.1</copy-rename-maven-plugin.version>
|
2024-01-30 08:54:56 -05:00
|
|
|
<!--
|
|
|
|
String name of the theme file to be used.
|
[NIFI-12956] rename palettes and introduce semenatic color classes (#8608)
* [NIFI-12956] rename palettes and introduce semenatic color classes
* remove warn-default
* remove disabled class and replace with semantic material-theme-primary-palette-default
* remove running class and replace with semantic nifi-theme-success-palette-lighter
* replace up-to-date class with semantic nifi-theme-success-palette-default
* replace transmitting class and replace with semantic nifi-theme-success-palette-default
* replace stopped class with semantic material-theme-warn-palette-lighter
* replace locall-modified and sync-failure classes with semantic material-theme-accent-palette-lighter
* replace validating, blank, unset, and sensitive classes with semantic nifi-theme-surface-palette-default
* cleanup and rename _canvas.component-theme.scss semantic classes
* fix typo
* more improvements and adding some documentation for utils
* shorten semantic class names
* rename mixin
* remove value and refresh-timestamp class and introduce on default surface and on darker surface material primary/accent/warn semantic classes
* always calculate the material color based on the surface
* restore blank, unset, empty, sensitive, ghost, validating
* restore sync-failure, stale, locally-modified, locally-modified-and-stale, and up-to-date colors. Also use nifi theme warn palette where appropriate
* remove validating, locally-modified, sync-failure, and replase with nifi-surface-default. remove stale, locally-modified-and-stale and replace with nifi-warn-light
* simplfy semantic material theme class names
* fix erroneous colors
* update purple theme
* update comments in theme files to accurately list light mode usage, remove unused vars, move semantic classes from _canvas.component-theme.scss to global _app.scss, fix a few incorrect colors
* fix typ0
* update pom to overwrite the correct file
* restore class names with no styles to assist in understanding state
* update blank, unset, ghost, sensitive, empty
* update default theme name to match renamed file
* move border to class in birdseye
* review feedback
* enabled now nifi-success-default color
* final touches
* use mat-warn for bulletin error
* fix search and flow status
This closes #8608
2024-04-09 14:50:08 -04:00
|
|
|
Ex: 'purple' // will overwrite the 'material' theme file with the 'purple' theme.
|
2024-01-30 08:54:56 -05:00
|
|
|
-->
|
[NIFI-12956] rename palettes and introduce semenatic color classes (#8608)
* [NIFI-12956] rename palettes and introduce semenatic color classes
* remove warn-default
* remove disabled class and replace with semantic material-theme-primary-palette-default
* remove running class and replace with semantic nifi-theme-success-palette-lighter
* replace up-to-date class with semantic nifi-theme-success-palette-default
* replace transmitting class and replace with semantic nifi-theme-success-palette-default
* replace stopped class with semantic material-theme-warn-palette-lighter
* replace locall-modified and sync-failure classes with semantic material-theme-accent-palette-lighter
* replace validating, blank, unset, and sensitive classes with semantic nifi-theme-surface-palette-default
* cleanup and rename _canvas.component-theme.scss semantic classes
* fix typo
* more improvements and adding some documentation for utils
* shorten semantic class names
* rename mixin
* remove value and refresh-timestamp class and introduce on default surface and on darker surface material primary/accent/warn semantic classes
* always calculate the material color based on the surface
* restore blank, unset, empty, sensitive, ghost, validating
* restore sync-failure, stale, locally-modified, locally-modified-and-stale, and up-to-date colors. Also use nifi theme warn palette where appropriate
* remove validating, locally-modified, sync-failure, and replase with nifi-surface-default. remove stale, locally-modified-and-stale and replace with nifi-warn-light
* simplfy semantic material theme class names
* fix erroneous colors
* update purple theme
* update comments in theme files to accurately list light mode usage, remove unused vars, move semantic classes from _canvas.component-theme.scss to global _app.scss, fix a few incorrect colors
* fix typ0
* update pom to overwrite the correct file
* restore class names with no styles to assist in understanding state
* update blank, unset, ghost, sensitive, empty
* update default theme name to match renamed file
* move border to class in birdseye
* review feedback
* enabled now nifi-success-default color
* final touches
* use mat-warn for bulletin error
* fix search and flow status
This closes #8608
2024-04-09 14:50:08 -04:00
|
|
|
<frontend.theme>material</frontend.theme>
|
2024-05-06 17:24:08 -04:00
|
|
|
<frontend.skipTests>true</frontend.skipTests>
|
2023-11-27 10:39:51 -05:00
|
|
|
</properties>
|
|
|
|
|
|
|
|
<build>
|
|
|
|
<plugins>
|
|
|
|
<plugin>
|
|
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
|
|
<executions>
|
|
|
|
<!--
|
|
|
|
Copy src into frontend working directory.
|
|
|
|
-->
|
|
|
|
<execution>
|
|
|
|
<id>copy-source</id>
|
2024-06-07 16:25:07 -04:00
|
|
|
<phase>generate-resources</phase>
|
2023-11-27 10:39:51 -05:00
|
|
|
<goals>
|
|
|
|
<goal>copy-resources</goal>
|
|
|
|
</goals>
|
|
|
|
<configuration>
|
|
|
|
<outputDirectory>${frontend.working.dir}</outputDirectory>
|
|
|
|
<resources>
|
|
|
|
<resource>
|
|
|
|
<directory>${frontend.source}</directory>
|
|
|
|
<filtering>false</filtering>
|
|
|
|
<excludes>
|
|
|
|
<exclude>.angular/**/*</exclude>
|
2024-05-30 09:57:06 -04:00
|
|
|
<exclude>.nx/**/*</exclude>
|
2023-11-27 10:39:51 -05:00
|
|
|
<exclude>node_modules/**/*</exclude>
|
2024-06-07 16:25:07 -04:00
|
|
|
<exclude>coverage/**/*</exclude>
|
|
|
|
<exclude>dist/**/*</exclude>
|
2023-11-27 10:39:51 -05:00
|
|
|
</excludes>
|
|
|
|
</resource>
|
|
|
|
</resources>
|
|
|
|
</configuration>
|
|
|
|
</execution>
|
|
|
|
<!--
|
2024-06-07 16:25:07 -04:00
|
|
|
Stage the final bundle of the application. Each application needs its own configuration.
|
2023-11-27 10:39:51 -05:00
|
|
|
-->
|
|
|
|
<execution>
|
2024-06-07 16:25:07 -04:00
|
|
|
<id>copy-built-apps</id>
|
|
|
|
<phase>process-resources</phase>
|
2023-11-27 10:39:51 -05:00
|
|
|
<goals>
|
|
|
|
<goal>copy-resources</goal>
|
|
|
|
</goals>
|
|
|
|
<configuration>
|
2024-06-07 16:25:07 -04:00
|
|
|
<outputDirectory>${project.build.directory}/${project.build.finalName}/nifi</outputDirectory>
|
2023-11-27 10:39:51 -05:00
|
|
|
<resources>
|
|
|
|
<resource>
|
2024-03-18 08:56:30 -04:00
|
|
|
<directory>${frontend.working.dir}/dist/nifi/browser</directory>
|
2023-11-27 10:39:51 -05:00
|
|
|
<filtering>false</filtering>
|
|
|
|
<includes>
|
|
|
|
<include>**/*</include>
|
|
|
|
</includes>
|
|
|
|
</resource>
|
2024-05-22 12:28:14 -04:00
|
|
|
<resource>
|
|
|
|
<directory>${frontend.working.dir}/dist/nifi</directory>
|
|
|
|
<filtering>false</filtering>
|
|
|
|
<includes>
|
|
|
|
<include>3rdpartylicenses.txt</include>
|
|
|
|
</includes>
|
|
|
|
</resource>
|
2023-11-27 10:39:51 -05:00
|
|
|
</resources>
|
|
|
|
</configuration>
|
|
|
|
</execution>
|
2024-06-07 16:25:07 -04:00
|
|
|
<!--
|
|
|
|
Copy the staged applications into the bundle. Each application requires its own configuration.
|
|
|
|
-->
|
|
|
|
<execution>
|
|
|
|
<id>bundle-built-apps</id>
|
|
|
|
<phase>prepare-package</phase>
|
|
|
|
<goals>
|
|
|
|
<goal>copy-resources</goal>
|
|
|
|
</goals>
|
|
|
|
<configuration>
|
|
|
|
<outputDirectory>${project.build.outputDirectory}/nifi</outputDirectory>
|
|
|
|
<resources>
|
|
|
|
<resource>
|
|
|
|
<directory>${project.build.directory}/${project.build.finalName}/nifi</directory>
|
|
|
|
<filtering>false</filtering>
|
|
|
|
<includes>
|
|
|
|
<include>**/*</include>
|
|
|
|
</includes>
|
|
|
|
</resource>
|
|
|
|
</resources>
|
|
|
|
</configuration>
|
|
|
|
</execution>
|
2023-11-27 10:39:51 -05:00
|
|
|
</executions>
|
|
|
|
</plugin>
|
2024-01-30 08:54:56 -05:00
|
|
|
<plugin>
|
|
|
|
<groupId>com.coderplus.maven.plugins</groupId>
|
|
|
|
<artifactId>copy-rename-maven-plugin</artifactId>
|
|
|
|
<version>${copy-rename-maven-plugin.version}</version>
|
|
|
|
<executions>
|
|
|
|
<!--
|
|
|
|
Copy theme.
|
|
|
|
-->
|
|
|
|
<execution>
|
2024-05-30 09:57:06 -04:00
|
|
|
<id>copy-theme-nifi</id>
|
2024-06-07 16:25:07 -04:00
|
|
|
<phase>generate-resources</phase>
|
2024-01-30 08:54:56 -05:00
|
|
|
<goals>
|
|
|
|
<goal>copy</goal>
|
|
|
|
</goals>
|
|
|
|
<configuration>
|
2024-05-30 09:57:06 -04:00
|
|
|
<sourceFile>${frontend.working.dir}/apps/nifi/src/assets/themes/${frontend.theme}.scss</sourceFile>
|
|
|
|
<destinationFile>${frontend.working.dir}/apps/nifi/src/assets/themes/material.scss</destinationFile>
|
2024-01-30 08:54:56 -05:00
|
|
|
</configuration>
|
|
|
|
</execution>
|
|
|
|
</executions>
|
|
|
|
</plugin>
|
2023-11-27 10:39:51 -05:00
|
|
|
<plugin>
|
|
|
|
<groupId>com.github.eirslett</groupId>
|
|
|
|
<artifactId>frontend-maven-plugin</artifactId>
|
|
|
|
<version>${frontend.mvn.plugin.version}</version>
|
|
|
|
<configuration>
|
|
|
|
<installDirectory>${frontend.working.dir}</installDirectory>
|
|
|
|
</configuration>
|
|
|
|
<executions>
|
|
|
|
<!--
|
|
|
|
Install node and npm.
|
|
|
|
-->
|
|
|
|
<execution>
|
|
|
|
<id>install-node-and-npm</id>
|
|
|
|
<goals>
|
|
|
|
<goal>install-node-and-npm</goal>
|
|
|
|
</goals>
|
|
|
|
<phase>initialize</phase>
|
|
|
|
<configuration>
|
|
|
|
<nodeVersion>${node.version}</nodeVersion>
|
|
|
|
</configuration>
|
|
|
|
</execution>
|
|
|
|
<!--
|
|
|
|
Install node_modules (build, test, AND client side dependencies).
|
|
|
|
-->
|
|
|
|
<execution>
|
|
|
|
<id>npm-install</id>
|
|
|
|
<goals>
|
|
|
|
<goal>npm</goal>
|
|
|
|
</goals>
|
2024-06-07 16:25:07 -04:00
|
|
|
<phase>generate-resources</phase>
|
2023-11-27 10:39:51 -05:00
|
|
|
<configuration>
|
|
|
|
<arguments>run ci</arguments>
|
|
|
|
<workingDirectory>${frontend.working.dir}</workingDirectory>
|
|
|
|
</configuration>
|
|
|
|
</execution>
|
2024-01-30 12:26:18 -05:00
|
|
|
<!--
|
|
|
|
Run the code linter
|
|
|
|
-->
|
|
|
|
<execution>
|
|
|
|
<id>lint</id>
|
|
|
|
<goals>
|
2024-03-27 16:34:23 -04:00
|
|
|
<goal>npx</goal>
|
2024-01-30 12:26:18 -05:00
|
|
|
</goals>
|
|
|
|
<phase>generate-resources</phase>
|
|
|
|
<configuration>
|
2024-06-11 13:02:28 -04:00
|
|
|
<arguments>env-cmd -f .build.env nx run-many -t lint</arguments>
|
2024-01-30 12:26:18 -05:00
|
|
|
<workingDirectory>${frontend.working.dir}</workingDirectory>
|
2024-05-06 17:24:08 -04:00
|
|
|
<skip>${frontend.skipTests}</skip>
|
2024-01-30 12:26:18 -05:00
|
|
|
</configuration>
|
|
|
|
</execution>
|
2023-11-27 10:39:51 -05:00
|
|
|
<!--
|
2024-03-26 14:54:31 -04:00
|
|
|
Run the unit tests
|
|
|
|
-->
|
|
|
|
<execution>
|
|
|
|
<id>unit-tests</id>
|
|
|
|
<goals>
|
2024-03-27 16:34:23 -04:00
|
|
|
<goal>npx</goal>
|
2024-03-26 14:54:31 -04:00
|
|
|
</goals>
|
|
|
|
<phase>test</phase>
|
|
|
|
<configuration>
|
2024-06-11 13:02:28 -04:00
|
|
|
<arguments>env-cmd -f .build.env nx run-many -t test --maxWorkers=2</arguments>
|
2024-03-26 14:54:31 -04:00
|
|
|
<workingDirectory>${frontend.working.dir}</workingDirectory>
|
2024-05-06 17:24:08 -04:00
|
|
|
<skip>${frontend.skipTests}</skip>
|
2024-03-26 14:54:31 -04:00
|
|
|
</configuration>
|
|
|
|
</execution>
|
|
|
|
<!--
|
2023-11-27 10:39:51 -05:00
|
|
|
Bundle, minify, and gzip compress all the javascript.
|
|
|
|
-->
|
|
|
|
<execution>
|
|
|
|
<id>package-web-ui</id>
|
|
|
|
<goals>
|
2024-03-27 16:34:23 -04:00
|
|
|
<goal>npx</goal>
|
2023-11-27 10:39:51 -05:00
|
|
|
</goals>
|
|
|
|
<phase>generate-resources</phase>
|
|
|
|
<configuration>
|
2024-06-11 13:02:28 -04:00
|
|
|
<arguments>env-cmd -f .build.env nx run-many -t build</arguments>
|
2023-11-27 10:39:51 -05:00
|
|
|
<workingDirectory>${frontend.working.dir}</workingDirectory>
|
|
|
|
</configuration>
|
|
|
|
</execution>
|
|
|
|
</executions>
|
|
|
|
</plugin>
|
|
|
|
<plugin>
|
|
|
|
<groupId>org.apache.rat</groupId>
|
|
|
|
<artifactId>apache-rat-plugin</artifactId>
|
|
|
|
<configuration>
|
|
|
|
<excludes combine.children="append">
|
2024-06-07 16:25:07 -04:00
|
|
|
<exclude>src/main/frontend/coverage/**/*</exclude>
|
|
|
|
<exclude>src/main/frontend/node_modules/**/*</exclude>
|
|
|
|
<exclude>src/main/frontend/apps/nifi/src/assets/fonts/**/*</exclude>
|
|
|
|
<exclude>src/main/frontend/.editorconfig</exclude>
|
2024-06-11 13:02:28 -04:00
|
|
|
<exclude>src/main/frontend/.build.env</exclude>
|
2024-06-07 16:25:07 -04:00
|
|
|
<exclude>src/main/frontend/README.md</exclude>
|
|
|
|
<exclude>src/main/frontend/apps/nifi/proxy.config.mjs</exclude>
|
|
|
|
<exclude>src/main/frontend/.prettierrc</exclude>
|
|
|
|
<exclude>src/main/frontend/.prettierignore</exclude>
|
|
|
|
<exclude>src/main/frontend/dist/**/*</exclude>
|
|
|
|
<exclude>src/main/frontend/.angular/**/*</exclude>
|
|
|
|
<exclude>src/main/frontend/.nx/**/*</exclude>
|
2023-11-27 10:39:51 -05:00
|
|
|
</excludes>
|
|
|
|
</configuration>
|
|
|
|
</plugin>
|
|
|
|
</plugins>
|
|
|
|
</build>
|
|
|
|
</project>
|