commit | 3272c2d72033faee150bf0f161f20ea89c1cf10d | [log] [tgz] |
---|---|---|
author | Christopher Keim <keim@develop-group.de> | Tue Sep 22 08:34:56 2020 +0200 |
committer | Christopher Keim <keim@develop-group.de> | Tue Sep 22 08:34:56 2020 +0200 |
tree | 97d01fb14bf97e222cc2ee7b723d92c162263532 | |
parent | 98facd6057891c40bd7e21ccb57032434a7407a1 [diff] |
[TOB-245] feat: Add statement editor * Add pipe for extracting form arrays * Add value observable to abstract form component * Add standard projector functions to store util * Add rxjs operator to catch specific HttpErrorResponses * Add injection token for global URL object * Add action and effect for opening files in new tab * Add directive for toggling global css class on body * Reorganize statement config data in store * Add back end model and API calls for statement editor * Extend statement store for statement editor * Add components for statement editor form * Integrate store in statement editor form [TOB-314] feat: Add attachment functionality to statement editor * Add tagging functionality to already existing attachment components * Reorganize attachment store module * Add attachment component to statement editor [TOB-292] test: Increase test coverage to 80% * Add test cases for attachment effects * Add test cases for contact effects * Add test cases for process effects [TOB-291] chore: Update dependencies * Update several dependencies in package.json * Add webpack plugin to generate license file Signed-off-by: Christopher Keim <keim@develop-group.de>
This application represents a user module for the Eclipse openK User Modules project.
With npm
in the path variable, run first npm install
to download and install all dependencies of this module. After that, all npm scripts for deploying, developing and testing are available.
Additionally, archiving the build as WAR file requires also the Java Archiver command line tool in the path variable.
The whole application can be configured via certain properties in the ./package.json
. The following options are available:
routes.spaFrontend
: Route on which the website is servedroutes.spaBackend
: Route on which the website's backend is servedroutes.portal
: Route on which the main portal is servedChanges to these properties take only effect after rebuilding the application.
Building the application is done via the Angular CLI or by the provided scripts in the ./package.json
(which also provide all necessary configuration steps):
npm run build
Build the application via the Angular CLI to the ./dist/statement-public-affairs
foldernpm run archive
Archive the build as WAR file to ./dist/statement-public-affairs-frontend.war
Note that the archiving script requires the Java Archiver (jar
) command line tool in the path variable.
Run npm run start
for setting up a local dev server which is served on http://localhost:4200/. The local dev server is also a proxy which can be configured by the file ./proxy.conf.json
. It redirects all calls to the back end to a specific location.
Run npm run test
to execute all tests via Karma and Jasmine. This also sets up a local dev server with live reload.
Run npm run test:report
instead to generate a coverage report at the folder ./coverage/statement-public-affairs
.
Run npm run lint
for linting all source files, both typescript and (s)css code.
Run npm run lint:report
to generate instead linting report files at ./lint.ts.report.json
and ./lint.styles.report.json
.
Run npm run sonar
to upload the test and linting reports to a sonarqube instance via the sonar-scanner. This can be configured either by the ./sonar-projects.properties
file or by arguments on the command line. For example, uploading the reports to a different port can be done via:
npm run sonar -- -Dsonar.host.url=http://localhost:9001
Run start:storybook
for setting up a local storybook server.
Run build:storybook
instead for building the storybook webpage for later use.
Run npm run list-licenses
to generate a listing of all packages and their licenses used for production. A file is created at ./licenses.txt
. The content of this file is required in the ./NOTICE.md
file.
Run npm run check-legal-headers
to check if all source files have a specific legal header.
Run npm run pre-commit
to check if a commit passes the pre-commit script. This script concatenates npm run lint
and npm run check-legal-headers
.