rebase

parent f500578f
File mode changed from 100755 to 100644
File mode changed from 100755 to 100644
...@@ -4,6 +4,8 @@ ...@@ -4,6 +4,8 @@
/dist /dist
/tmp /tmp
/out-tsc /out-tsc
# Only exists if Bazel was run
/bazel-out
# dependencies # dependencies
/node_modules /node_modules
...@@ -41,19 +43,3 @@ testem.log ...@@ -41,19 +43,3 @@ testem.log
# System Files # System Files
.DS_Store .DS_Store
Thumbs.db Thumbs.db
/.gradle/
/.gradle/buildOutputCleanup/buildOutputCleanup.lock
/.gradle/checksums/checksums.lock
/.gradle/6.7/executionHistory/executionHistory.bin
/.gradle/6.7/executionHistory/executionHistory.lock
/.gradle/6.7/fileHashes/fileHashes.bin
/.gradle/6.7/fileHashes/fileHashes.lock
/.gradle/checksums/md5-checksums.bin
/.gradle/checksums/sha1-checksums.bin
/build/tmp/war/MANIFEST.MF
/build/
/.gradle/
/.angular/
/.angular/cache/13.2.6/babel-webpack/
/.angular/cache/13.2.6/angular-webpack/
/.angular/
No preview for this file type
#Fri Feb 17 18:28:47 CET 2023 #Sun May 30 15:06:06 CEST 2021
gradle.version=7.6 gradle.version=6.7
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
File mode changed from 100755 to 100644
File mode changed from 100755 to 100644
File mode changed from 100755 to 100644
{ {
"$schema": "./node_modules/@angular/cli/lib/config/schema.json", "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"cli": {
"analytics": false
},
"version": 1, "version": 1,
"newProjectRoot": "projects", "newProjectRoot": "projects",
"projects": { "projects": {
"ipmworks-web": { "ipmworks-web": {
"i18n": {
"sourceLocale": "en",
"locales": {
"sr": {
"translation": "src/locale/messages.sr.xlf"
},
"it": {
"translation": "src/locale/messages.it.xlf"
},
"pt": {
"translation": "src/locale/messages.pt.xlf"
},
"pl": {
"translation": "src/locale/messages.pl.xlf"
},
"fi": {
"translation": "src/locale/messages.fi.xlf"
},
"fr": {
"translation": "src/locale/messages.fr.xlf"
},
"el": {
"translation": "src/locale/messages.el.xlf"
},
"sl": {
"translation": "src/locale/messages.sl.xlf"
},
"es": {
"translation": "src/locale/messages.es.xlf"
},
"nl": {
"translation": "src/locale/messages.nl.xlf"
},
"da": {
"translation": "src/locale/messages.da.xlf"
},
"de": {
"translation": "src/locale/messages.de.xlf"
}
}
},
"projectType": "application", "projectType": "application",
"schematics": { "schematics": {
"@schematics/angular:application": { "@schematics/angular:application": {
...@@ -61,11 +17,8 @@ ...@@ -61,11 +17,8 @@
"build": { "build": {
"builder": "@angular-devkit/build-angular:browser", "builder": "@angular-devkit/build-angular:browser",
"options": { "options": {
"localize": true,
"aot": true,
"outputPath": "dist/ipmworks-web", "outputPath": "dist/ipmworks-web",
"index": "src/index.html", "index": "src/index.html",
"baseHref": "/toolbox/",
"main": "src/main.ts", "main": "src/main.ts",
"polyfills": "src/polyfills.ts", "polyfills": "src/polyfills.ts",
"tsConfig": "tsconfig.app.json", "tsConfig": "tsconfig.app.json",
...@@ -74,30 +27,22 @@ ...@@ -74,30 +27,22 @@
"src/assets" "src/assets"
], ],
"styles": [ "styles": [
"src/styles.css", "src/styles.css"
"./node_modules/primeicons/primeicons.css",
"./node_modules/primeng/resources/themes/mdc-light-indigo/theme.css",
"./node_modules/primeng/resources/primeng.css",
"./node_modules/primeflex/primeflex.css",
"./node_modules/quill/dist/quill.core.css",
"./node_modules/quill/dist/quill.snow.css"
], ],
"scripts": [] "scripts": []
}, },
"configurations": { "configurations": {
"production": { "production": {
"buildOptimizer": true,
"optimization": false,
"budgets": [ "budgets": [
{ {
"type": "initial", "type": "initial",
"maximumWarning": "10mb", "maximumWarning": "500kb",
"maximumError": "10mb" "maximumError": "1mb"
}, },
{ {
"type": "anyComponentStyle", "type": "anyComponentStyle",
"maximumWarning": "10mb", "maximumWarning": "2kb",
"maximumError": "10mb" "maximumError": "4kb"
} }
], ],
"fileReplacements": [ "fileReplacements": [
...@@ -109,7 +54,7 @@ ...@@ -109,7 +54,7 @@
"outputHashing": "all" "outputHashing": "all"
}, },
"development": { "development": {
"buildOptimizer": true, "buildOptimizer": false,
"optimization": false, "optimization": false,
"vendorChunk": true, "vendorChunk": true,
"extractLicenses": false, "extractLicenses": false,
......
plugins { plugins {
id 'java' id 'java'
id "com.github.node-gradle.node" version "2.2.4"
id 'war'
} }
group 'org.example'
version '1.0-SNAPSHOT'
repositories { repositories {
mavenCentral() mavenCentral()
} }
node { dependencies {
version = '18.13.0' testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0'
npmVersion = '9.4.0' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'
download = true
} }
war.dependsOn 'npm_run_build' test {
useJUnitPlatform()
war { }
from 'dist/ipmworks-web' \ No newline at end of file
enabled = true
}
File mode changed from 100755 to 100644
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
File mode changed from 100755 to 100644
File mode changed from 100755 to 100644
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -10,42 +10,30 @@ ...@@ -10,42 +10,30 @@
}, },
"private": true, "private": true,
"dependencies": { "dependencies": {
"@angular/animations": "~13.2.6", "@angular/animations": "~12.0.2",
"@angular/common": "~13.2.6", "@angular/common": "~12.0.2",
"@angular/compiler": "~13.2.6", "@angular/compiler": "~12.0.2",
"@angular/core": "~13.2.6", "@angular/core": "~12.0.2",
"@angular/forms": "~13.2.6", "@angular/forms": "~12.0.2",
"@angular/platform-browser": "~13.2.6", "@angular/platform-browser": "~12.0.2",
"@angular/platform-browser-dynamic": "~13.2.6", "@angular/platform-browser-dynamic": "~12.0.2",
"@angular/router": "~13.2.6", "@angular/router": "~12.0.2",
"@ngxs/storage-plugin": "^3.5.0",
"@ngxs/store": "^3.5.0",
"lazysizes": "^5.3.2",
"ng-lazyload-image": "^9.1.2",
"ngx-clipboard": "~15.1.0",
"primeflex": "~3.1.3",
"primeicons": "~5.0.0",
"primeng": "~13.2.1",
"quill": "^1.3.7",
"rxjs": "~6.6.0", "rxjs": "~6.6.0",
"tslib": "^2.1.0", "tslib": "^2.1.0",
"zone.js": "~0.11.4" "zone.js": "~0.11.4"
}, },
"devDependencies": { "devDependencies": {
"@angular-devkit/build-angular": "^13.2.6", "@angular-devkit/build-angular": "~12.0.2",
"@angular/cdk": "~13.2.6", "@angular/cli": "~12.0.2",
"@angular/cli": "~13.2.6", "@angular/compiler-cli": "~12.0.2",
"@angular/compiler-cli": "~13.2.6", "@types/jasmine": "~3.6.0",
"@angular/localize": "~13.2.6", "@types/node": "^12.11.1",
"@types/jasmine": "~3.10.3", "jasmine-core": "~3.7.0",
"@types/node": "^14.0.0",
"jasmine-core": "~4.0.1",
"karma": "~6.3.0", "karma": "~6.3.0",
"karma-chrome-launcher": "~3.1.0", "karma-chrome-launcher": "~3.1.0",
"karma-coverage": "~2.0.3", "karma-coverage": "~2.0.3",
"karma-jasmine": "~4.0.0", "karma-jasmine": "~4.0.0",
"karma-jasmine-html-reporter": "^1.5.0", "karma-jasmine-html-reporter": "^1.5.0",
"lite-server": "^2.6.1", "typescript": "~4.2.3"
"typescript": "~4.4.2"
} }
} }
pluginManagement {
repositories {
gradlePluginPortal ()
}
}
rootProject.name = 'ipmworks-web' rootProject.name = 'ipmworks-web'
import {NgModule, OnInit} from '@angular/core'; import { NgModule } from '@angular/core';
import {ActivatedRoute, Router, RouterModule, Routes} from '@angular/router'; import { RouterModule, Routes } from '@angular/router';
import {HomeComponent} from './component/home/home.component';
import {ResourceComponent} from "./component/resource/resource.component";
import {AddResourceComponent} from "./component/add-resource/add-resource.component";
import {ApproveResourceComponent} from "./component/approve-resource/approve-resource.component";
import {LoginComponent} from "./component/login/login.component";
import {AuthGuard} from "./guard/auth.guard";
import {ChangePasswordComponent} from "./component/change-password/change-password.component";
import {HelpComponent} from "./component/help/help.component";
import {AppComponent} from "./app.component";
const routes: Routes = [ const routes: Routes = [];
{path: '', component: HomeComponent, pathMatch: 'full'},
{path: 'export', component: HomeComponent, pathMatch: 'full',data:{header:"none"}},
{path: 'home', component: HomeComponent, pathMatch: 'full'},
{path:'resource/approve', component:ApproveResourceComponent, pathMatch:'full',canActivate:[AuthGuard]},
{path:'resource/add', component:AddResourceComponent, pathMatch:'full'},
{path:'resource/edit/:id',component:AddResourceComponent,pathMatch:'full',canActivate:[AuthGuard]},
{path:'resource/:id/:lang', component:ResourceComponent, pathMatch:'full'},
{path:'resource/:id', component:ResourceComponent, pathMatch:'full'},
{path:'login', component:LoginComponent, pathMatch:'full'},
{path:'help', component:HelpComponent, pathMatch:'full'},
{path:'changePassword/:token', component:ChangePasswordComponent, pathMatch:'full'}
];
@NgModule({ @NgModule({
imports: [RouterModule.forRoot(routes,{onSameUrlNavigation: 'reload', scrollPositionRestoration: 'enabled'})], imports: [RouterModule.forRoot(routes)],
exports: [RouterModule] exports: [RouterModule]
}) })
export class AppRoutingModule{ export class AppRoutingModule { }
}
File mode changed from 100755 to 100644
import {Component, OnDestroy, OnInit} from "@angular/core"; import { Component } from '@angular/core';
import {ActivatedRoute, NavigationEnd, Router} from "@angular/router";
@Component({ @Component({
selector: 'app-root', selector: 'app-root',
templateUrl: './app.component.html', templateUrl: './app.component.html',
styleUrls: ['./app.component.css'] styleUrls: ['./app.component.css']
}) })
export class AppComponent {
export class AppComponent implements OnInit{
title = 'ipmworks-web'; title = 'ipmworks-web';
hideheader?:string
constructor(public router:Router,public route:ActivatedRoute) {
}
ngOnInit(): void {
this.router.events.subscribe(e => {
this.hideheader = this.route.root.firstChild?.snapshot.data['header'];
});
}
} }
import {LOCALE_ID, NgModule} from '@angular/core'; import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser'; import { BrowserModule } from '@angular/platform-browser';
import { AppRoutingModule } from './app-routing.module'; import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component'; import { AppComponent } from './app.component';
import {MenubarModule} from 'primeng/menubar';
import {MenuModule} from 'primeng/menu';
import {ButtonModule} from 'primeng/button';
import {BrowserAnimationsModule} from "@angular/platform-browser/animations";
import {HomeComponent} from './component/home/home.component';
import {AccordionModule} from 'primeng/accordion';
import {MessageService, SharedModule} from "primeng/api";
import {CheckboxModule} from 'primeng/checkbox';
import {FormsModule, ReactiveFormsModule} from "@angular/forms";
import {DataViewModule} from "primeng/dataview";
import {RatingModule} from "primeng/rating";
import {HTTP_INTERCEPTORS, HttpClientModule} from "@angular/common/http";
import {MultiSelectModule} from 'primeng/multiselect';
import {DropdownModule} from "primeng/dropdown";
import {InputTextModule} from "primeng/inputtext";
import {TooltipModule} from "primeng/tooltip";
import {CardModule} from "primeng/card";
import {TagModule} from "primeng/tag";
import {ResourceComponent } from './component/resource/resource.component';
import {AddResourceComponent } from './component/add-resource/add-resource.component';
import {InputTextareaModule} from "primeng/inputtextarea";
import {RadioButtonModule} from "primeng/radiobutton";
import {FileUploadModule} from "primeng/fileupload";
import {ChipsModule} from 'primeng/chips';
import {MessagesModule} from 'primeng/messages';
import {MessageModule} from 'primeng/message';
import {ToastModule} from 'primeng/toast';
import {PanelModule} from "primeng/panel";
import {HashLocationStrategy, LocationStrategy} from "@angular/common";
import {CascadeSelectModule} from 'primeng/cascadeselect';
import {DialogModule} from 'primeng/dialog';
import { ApproveResourceComponent } from './component/approve-resource/approve-resource.component';
import {TableModule} from "primeng/table";
import { LoginComponent } from './component/login/login.component';
import {NgxsStoragePluginModule} from '@ngxs/storage-plugin';
import {NgxsModule} from '@ngxs/store';
import {UserState} from "./states/user.state";
import {environment} from "../environments/environment";
import {AuthInterceptor} from "./guard/auth.interceptor";
import { HeaderMenuComponent } from './component/header-menu/header-menu.component';
import {ImageModule} from "primeng/image";
import {ConfirmPopupModule} from 'primeng/confirmpopup';
import {ConfirmationService} from 'primeng/api';
import {ConfirmDialogModule} from "primeng/confirmdialog";
import {LazyLoadImageModule} from 'ng-lazyload-image';
import {FooterComponent } from './component/footer/footer.component';
import {ChangePasswordComponent } from './component/change-password/change-password.component';
import {CheckPasswordDirective } from './validator/check-password.directive';
import {BadgeModule} from "primeng/badge";
import {ClipboardModule } from 'ngx-clipboard';
import {AvatarModule} from 'primeng/avatar';
import {AvatarGroupModule} from 'primeng/avatargroup';
import {HelpComponent } from './component/help/help.component';
import {DividerModule} from 'primeng/divider';
import {ProgressSpinner, ProgressSpinnerModule} from "primeng/progressspinner";
import {TabViewModule} from 'primeng/tabview';
import {EditorModule} from "primeng/editor";
@NgModule({ @NgModule({
declarations: [ declarations: [
AppComponent, AppComponent
HomeComponent, ],
ResourceComponent, imports: [
AddResourceComponent, BrowserModule,
ApproveResourceComponent, AppRoutingModule
LoginComponent,
HeaderMenuComponent,
FooterComponent,
ChangePasswordComponent,
CheckPasswordDirective,
HelpComponent
], ],
imports: [ providers: [],
BrowserModule,
BrowserAnimationsModule,
AppRoutingModule,
MenubarModule,
ButtonModule,
MenuModule,
AccordionModule,
SharedModule,
FormsModule,
DataViewModule,
RatingModule,
HttpClientModule,
MultiSelectModule,
DropdownModule,
InputTextModule,
TooltipModule,
CardModule,
TagModule,
InputTextModule,
CheckboxModule,
ButtonModule,
RadioButtonModule,
InputTextareaModule,
FileUploadModule,
ChipsModule,
MessagesModule,
MessageModule,
ToastModule,
PanelModule,
CascadeSelectModule,
DialogModule,
TableModule,
NgxsModule.forRoot([UserState], {developmentMode: !environment.production}),
NgxsStoragePluginModule.forRoot(),
ReactiveFormsModule,
ToastModule,
ImageModule,
ConfirmPopupModule,
ConfirmDialogModule,
LazyLoadImageModule,
BadgeModule,
ClipboardModule,
AvatarModule,
AvatarGroupModule,
DividerModule,
ProgressSpinnerModule,
TabViewModule,
EditorModule
],
providers: [MessageService,ConfirmationService,
{provide: LocationStrategy, useClass: HashLocationStrategy},
{
provide: HTTP_INTERCEPTORS,
useClass: AuthInterceptor,
multi: true
}
],
bootstrap: [AppComponent] bootstrap: [AppComponent]
}) })
export class AppModule { } export class AppModule { }
File mode changed from 100755 to 100644
export const environment = { export const environment = {
production: true, production: true
baseUrl: 'https://ipmworks.net/ipmworks'
}; };
...@@ -3,10 +3,7 @@ ...@@ -3,10 +3,7 @@
// The list of file replacements can be found in `angular.json`. // The list of file replacements can be found in `angular.json`.
export const environment = { export const environment = {
production: false, production: false
// baseUrl: 'https://ipmworks.net/ipmworks'
baseUrl: 'http://localhost:8080/ipmworks'
}; };
/* /*
......
File mode changed from 100755 to 100644
...@@ -2,12 +2,10 @@ ...@@ -2,12 +2,10 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>IPMworks toolbox</title> <title>IpmworksWeb</title>
<base href="/"> <base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" href="assets/logo.png"> <link rel="icon" type="image/x-icon" href="favicon.ico">
<script defer data-domain="ipmworks.net/toolbox" src=https://plausible.io/js/script.js></script>
<script defer data-domain="ipmworks.net" src=https://plausible.io/js/script.js></script>
</head> </head>
<body> <body>
<app-root></app-root> <app-root></app-root>
......
File mode changed from 100755 to 100644
/***************************************************************************************************
* Load `$localize` onto the global scope - used if i18n tags appear in Angular templates.
*/
import '@angular/localize/init';
/** /**
* This file includes polyfills needed by Angular and is loaded before the app. * This file includes polyfills needed by Angular and is loaded before the app.
* You can add your own extra polyfills to this file. * You can add your own extra polyfills to this file.
......
*{ /* You can add global styles to this file, and also import other style files */
font-family: 'Roboto', sans-serif;
}
.container-fluid {
min-height: 100vh;
}
.p-menubar{
margin:-8px;
background-color:white !important;
min-height:170px;
border-bottom: 10px solid #71B532 !important;
justify-content: space-between !important;
align-items: baseline !important;
}
.p-menuitem-text{
text-transform: uppercase;
}
.p-menubar-root-list{
padding-left:120px !important;
}
.p-multiselect, .p-inputtext {
width: 100%;
}
.p-inputtext:enabled:focus{
box-shadow:unset !important;
border-color: rgba(0, 0, 0, 0.87) !important;
}
.p-button.p-button-text{
color:#00662e !important;
}
.p-card {
padding: 1rem;
margin-bottom: 2rem;
margin-right: 2rem;
}
.p-card-header {
display:block;
height:150px;
overflow:hidden;
position: relative;
}
.p-card-header img{
height:100%;
width:100%;
}
.p-card .p-card-footer {
display: flex;
justify-content: center;
}
.p-button.p-button-outlined{
color:#00662e !important;
}
.p-button:not(.p-button-outlined){
background-color:#00662e;
}
.p-grid {
display: flex;
flex-wrap: wrap;
margin-right: -0.5rem;
margin-left: -0.5rem;
margin-top: -0.5rem;
}
@media only screen and (max-width: 768px) {
.p-tag{
visibility: hidden;
}
}
.p-menuitem-text{
color: #003519 !important;
}
.p-message.p-message-info{
background:#71B532 !important;
color:white !important;
}
.p-message.p-message-info .p-message-icon{
color:white !important;
}
.p-message.p-message-info .p-message-close{
color:white !important;
}
.p-button.p-button-link{
background-color: transparent !important;
}
.p-badge{
font-size: 14px !important;
}
.p-avatar{
background-color: white !important;
}
File mode changed from 100755 to 100644
File mode changed from 100755 to 100644
File mode changed from 100755 to 100644
File mode changed from 100755 to 100644
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment