Compare commits

..

4 Commits

Author SHA1 Message Date
HardiReady 753b3ea682 Fix linting 2018-07-05 21:57:47 +02:00
HardiReady b8a8b1302d Use material icon button for add functionality 2018-07-05 21:56:32 +02:00
HardiReady 65015f701f redesign war list menu 2018-07-05 21:04:43 +02:00
HardiReady 8451952f4a redesign war list menu 2018-07-05 20:44:12 +02:00
16 changed files with 4286 additions and 4249 deletions

3503
api/package-lock.json generated

File diff suppressed because it is too large Load Diff

192
package-lock.json generated
View File

@ -10,10 +10,10 @@
"integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
"dev": true,
"requires": {
"co": "4.6.0",
"fast-deep-equal": "1.1.0",
"fast-json-stable-stringify": "2.0.0",
"json-schema-traverse": "0.3.1"
"co": "^4.6.0",
"fast-deep-equal": "^1.0.0",
"fast-json-stable-stringify": "^2.0.0",
"json-schema-traverse": "^0.3.0"
}
},
"ansi-styles": {
@ -22,7 +22,7 @@
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"dev": true,
"requires": {
"color-convert": "1.9.2"
"color-convert": "^1.9.0"
}
},
"asn1": {
@ -62,7 +62,7 @@
"dev": true,
"optional": true,
"requires": {
"tweetnacl": "0.14.5"
"tweetnacl": "^0.14.3"
}
},
"builtin-modules": {
@ -83,9 +83,9 @@
"integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==",
"dev": true,
"requires": {
"ansi-styles": "3.2.1",
"escape-string-regexp": "1.0.5",
"supports-color": "5.4.0"
"ansi-styles": "^3.2.1",
"escape-string-regexp": "^1.0.5",
"supports-color": "^5.3.0"
},
"dependencies": {
"supports-color": {
@ -94,7 +94,7 @@
"integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
"dev": true,
"requires": {
"has-flag": "3.0.0"
"has-flag": "^3.0.0"
}
}
}
@ -126,7 +126,7 @@
"integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
"dev": true,
"requires": {
"delayed-stream": "1.0.0"
"delayed-stream": "~1.0.0"
}
},
"commander": {
@ -141,15 +141,15 @@
"integrity": "sha512-6XiIYtYzmGEccNZFkih5JOH92jLA4ulZArAYy5j1uDSdrPLB3KzdE8GW7t2fHPcg9ry2+5LP9IEYzXzxw9lFdA==",
"dev": true,
"requires": {
"chalk": "2.4.1",
"chalk": "^2.4.1",
"commander": "2.6.0",
"date-fns": "1.29.0",
"lodash": "4.17.10",
"read-pkg": "3.0.0",
"date-fns": "^1.23.0",
"lodash": "^4.5.1",
"read-pkg": "^3.0.0",
"rx": "2.3.24",
"spawn-command": "0.0.2-1",
"supports-color": "3.2.3",
"tree-kill": "1.2.0"
"spawn-command": "^0.0.2-1",
"supports-color": "^3.2.3",
"tree-kill": "^1.1.0"
}
},
"core-js": {
@ -170,7 +170,7 @@
"integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
"dev": true,
"requires": {
"assert-plus": "1.0.0"
"assert-plus": "^1.0.0"
}
},
"date-fns": {
@ -192,7 +192,7 @@
"dev": true,
"optional": true,
"requires": {
"jsbn": "0.1.1"
"jsbn": "~0.1.0"
}
},
"error-ex": {
@ -201,7 +201,7 @@
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
"dev": true,
"requires": {
"is-arrayish": "0.2.1"
"is-arrayish": "^0.2.1"
}
},
"escape-string-regexp": {
@ -246,9 +246,9 @@
"integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
"dev": true,
"requires": {
"asynckit": "0.4.0",
"asynckit": "^0.4.0",
"combined-stream": "1.0.6",
"mime-types": "2.1.18"
"mime-types": "^2.1.12"
}
},
"getpass": {
@ -257,7 +257,7 @@
"integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
"dev": true,
"requires": {
"assert-plus": "1.0.0"
"assert-plus": "^1.0.0"
}
},
"graceful-fs": {
@ -278,8 +278,8 @@
"integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
"dev": true,
"requires": {
"ajv": "5.5.2",
"har-schema": "2.0.0"
"ajv": "^5.1.0",
"har-schema": "^2.0.0"
}
},
"has-flag": {
@ -306,9 +306,9 @@
"integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
"dev": true,
"requires": {
"assert-plus": "1.0.0",
"jsprim": "1.4.1",
"sshpk": "1.14.2"
"assert-plus": "^1.0.0",
"jsprim": "^1.2.2",
"sshpk": "^1.7.0"
}
},
"is-arrayish": {
@ -323,7 +323,7 @@
"integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
"dev": true,
"requires": {
"builtin-modules": "1.1.1"
"builtin-modules": "^1.0.0"
}
},
"is-typedarray": {
@ -356,11 +356,11 @@
"integrity": "sha1-M4WseQGSEwy+Iw6ALsAskhW7/to=",
"dev": true,
"requires": {
"hoek": "4.2.1",
"isemail": "2.2.1",
"items": "2.1.1",
"moment": "2.22.2",
"topo": "2.0.2"
"hoek": "4.x.x",
"isemail": "2.x.x",
"items": "2.x.x",
"moment": "2.x.x",
"topo": "2.x.x"
}
},
"jsbn": {
@ -412,10 +412,10 @@
"integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
"dev": true,
"requires": {
"graceful-fs": "4.1.11",
"parse-json": "4.0.0",
"pify": "3.0.0",
"strip-bom": "3.0.0"
"graceful-fs": "^4.1.2",
"parse-json": "^4.0.0",
"pify": "^3.0.0",
"strip-bom": "^3.0.0"
}
},
"lodash": {
@ -436,7 +436,7 @@
"integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
"dev": true,
"requires": {
"mime-db": "1.33.0"
"mime-db": "~1.33.0"
}
},
"minimist": {
@ -457,10 +457,10 @@
"integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
"dev": true,
"requires": {
"hosted-git-info": "2.6.1",
"is-builtin-module": "1.0.0",
"semver": "5.5.0",
"validate-npm-package-license": "3.0.3"
"hosted-git-info": "^2.1.4",
"is-builtin-module": "^1.0.0",
"semver": "2 || 3 || 4 || 5",
"validate-npm-package-license": "^3.0.1"
}
},
"oauth-sign": {
@ -475,8 +475,8 @@
"integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
"dev": true,
"requires": {
"error-ex": "1.3.2",
"json-parse-better-errors": "1.0.2"
"error-ex": "^1.3.1",
"json-parse-better-errors": "^1.0.1"
}
},
"path-type": {
@ -485,7 +485,7 @@
"integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
"dev": true,
"requires": {
"pify": "3.0.0"
"pify": "^3.0.0"
}
},
"performance-now": {
@ -518,9 +518,9 @@
"integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
"dev": true,
"requires": {
"load-json-file": "4.0.0",
"normalize-package-data": "2.4.0",
"path-type": "3.0.0"
"load-json-file": "^4.0.0",
"normalize-package-data": "^2.3.2",
"path-type": "^3.0.0"
}
},
"request": {
@ -529,26 +529,26 @@
"integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==",
"dev": true,
"requires": {
"aws-sign2": "0.7.0",
"aws4": "1.7.0",
"caseless": "0.12.0",
"combined-stream": "1.0.6",
"extend": "3.0.1",
"forever-agent": "0.6.1",
"form-data": "2.3.2",
"har-validator": "5.0.3",
"http-signature": "1.2.0",
"is-typedarray": "1.0.0",
"isstream": "0.1.2",
"json-stringify-safe": "5.0.1",
"mime-types": "2.1.18",
"oauth-sign": "0.8.2",
"performance-now": "2.1.0",
"qs": "6.5.2",
"safe-buffer": "5.1.2",
"tough-cookie": "2.3.4",
"tunnel-agent": "0.6.0",
"uuid": "3.3.2"
"aws-sign2": "~0.7.0",
"aws4": "^1.6.0",
"caseless": "~0.12.0",
"combined-stream": "~1.0.5",
"extend": "~3.0.1",
"forever-agent": "~0.6.1",
"form-data": "~2.3.1",
"har-validator": "~5.0.3",
"http-signature": "~1.2.0",
"is-typedarray": "~1.0.0",
"isstream": "~0.1.2",
"json-stringify-safe": "~5.0.1",
"mime-types": "~2.1.17",
"oauth-sign": "~0.8.2",
"performance-now": "^2.1.0",
"qs": "~6.5.1",
"safe-buffer": "^5.1.1",
"tough-cookie": "~2.3.3",
"tunnel-agent": "^0.6.0",
"uuid": "^3.1.0"
}
},
"rx": {
@ -587,8 +587,8 @@
"integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==",
"dev": true,
"requires": {
"spdx-expression-parse": "3.0.0",
"spdx-license-ids": "3.0.0"
"spdx-expression-parse": "^3.0.0",
"spdx-license-ids": "^3.0.0"
}
},
"spdx-exceptions": {
@ -603,8 +603,8 @@
"integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
"dev": true,
"requires": {
"spdx-exceptions": "2.1.0",
"spdx-license-ids": "3.0.0"
"spdx-exceptions": "^2.1.0",
"spdx-license-ids": "^3.0.0"
}
},
"spdx-license-ids": {
@ -619,15 +619,15 @@
"integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=",
"dev": true,
"requires": {
"asn1": "0.2.3",
"assert-plus": "1.0.0",
"bcrypt-pbkdf": "1.0.2",
"dashdash": "1.14.1",
"ecc-jsbn": "0.1.1",
"getpass": "0.1.7",
"jsbn": "0.1.1",
"safer-buffer": "2.1.2",
"tweetnacl": "0.14.5"
"asn1": "~0.2.3",
"assert-plus": "^1.0.0",
"bcrypt-pbkdf": "^1.0.0",
"dashdash": "^1.12.0",
"ecc-jsbn": "~0.1.1",
"getpass": "^0.1.1",
"jsbn": "~0.1.0",
"safer-buffer": "^2.0.2",
"tweetnacl": "~0.14.0"
}
},
"strip-bom": {
@ -642,7 +642,7 @@
"integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
"dev": true,
"requires": {
"has-flag": "1.0.0"
"has-flag": "^1.0.0"
},
"dependencies": {
"has-flag": {
@ -659,7 +659,7 @@
"integrity": "sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI=",
"dev": true,
"requires": {
"hoek": "4.2.1"
"hoek": "4.x.x"
}
},
"tough-cookie": {
@ -668,7 +668,7 @@
"integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==",
"dev": true,
"requires": {
"punycode": "1.4.1"
"punycode": "^1.4.1"
}
},
"tree-kill": {
@ -683,7 +683,7 @@
"integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
"dev": true,
"requires": {
"safe-buffer": "5.1.2"
"safe-buffer": "^5.0.1"
}
},
"tweetnacl": {
@ -705,8 +705,8 @@
"integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==",
"dev": true,
"requires": {
"spdx-correct": "3.0.0",
"spdx-expression-parse": "3.0.0"
"spdx-correct": "^3.0.0",
"spdx-expression-parse": "^3.0.0"
}
},
"verror": {
@ -715,9 +715,9 @@
"integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
"dev": true,
"requires": {
"assert-plus": "1.0.0",
"assert-plus": "^1.0.0",
"core-util-is": "1.0.2",
"extsprintf": "1.3.0"
"extsprintf": "^1.2.0"
}
},
"wait-on": {
@ -726,11 +726,11 @@
"integrity": "sha512-hDwJ674+7dfiiK/cxtYCwPxlnjXDjto/pCz1PF02sXUhqCqCWsgvxZln0699PReWqXXgkxqkF6DDo5Rj9sjNvw==",
"dev": true,
"requires": {
"core-js": "2.5.7",
"joi": "9.2.0",
"minimist": "1.2.0",
"request": "2.87.0",
"rx": "4.1.0"
"core-js": "^2.4.1",
"joi": "^9.2.0",
"minimist": "^1.2.0",
"request": "^2.78.0",
"rx": "^4.1.0"
},
"dependencies": {
"rx": {

4765
static/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -36,6 +36,7 @@
"jquery": "^3.1.0",
"jquery-ui": "^1.12.0",
"jquery-ui-bundle": "^1.11.4",
"material-design-icons": "^3.0.1",
"ngx-clipboard": "^11.1.1",
"ngx-cookie-service": "^1.0.9",
"ngx-infinite-scroll": "^0.5.2",

View File

@ -30,10 +30,9 @@ li {
}
.version-label {
position: relative;
margin-right: -30px;
position: absolute;
top: 27px;
left: -50px;
left: 115px;
font-size: 12px;
color: #bebebe;
}
@ -70,10 +69,6 @@ li {
background-color: orange;
}
unprocessed-child:hover {
background-color: orange;
}
/* Safari 4.0 - 8.0 */
@-webkit-keyframes color-blink {
from {

View File

@ -23,7 +23,7 @@ export class DecorationListComponent implements OnInit {
searchTerm = new FormControl();
radioModel: string = '';
radioModel = '';
readonly fraction = Fraction;

View File

@ -0,0 +1,13 @@
.interact-ico-container {
padding-right: 15px;
float: right;
display: grid;
}
.interact-ico-container > span {
font-size: 17px;
}
.interact-ico-container > span:last-child {
padding-top: 7px;
}

View File

@ -1,7 +1,7 @@
<div class="fade-in list-entry" [ngClass]="{selected : selected}" (click)="select()">
<div class="row">
<div [ngClass]="[loginService.hasPermission(3) ? 'col-xs-9' : 'col-xs-11']">
<div [ngClass]="[loginService.hasPermission(3) ? 'col-xs-10' : 'col-xs-11']">
<span>
<a>{{war.title}}</a>
</span>
@ -9,15 +9,10 @@
<small>vom {{war.date | date: 'dd.MM.yyyy'}}</small>
</div>
<div class="col-xs-3" *ngIf="loginService.hasPermission(3)">
<span (click)="delete(); $event.stopPropagation()"
title="Löschen"
class="glyphicon glyphicon-trash trash"></span>
<span (click)="edit(); $event.stopPropagation()"
style="padding-right: 10px;"
title="Bearbeiten"
class="glyphicon glyphicon-edit trash"></span>
</div>
<div *ngIf="loginService.hasPermission(3)"
class="interact-ico-container">
<span class="glyphicon glyphicon-edit" (click)="edit(); $event.stopPropagation()" title="Bearbeiten"></span>
<span class="glyphicon glyphicon-trash" (click)="delete(); $event.stopPropagation()" title="Löschen"></span>
</div>
</div>
</div>

View File

@ -25,6 +25,12 @@ mat-expansion-panel-header.mat-expansion-panel-header:focus {
background-color: #4e4e4e;
}
.select-list {
height: 120%;
background: #ececec;
box-shadow: 2px 1px 5px grey;
}
.select-list > div:last-child {
margin: 20px 0;
}
@ -40,7 +46,7 @@ mat-expansion-panel-header.mat-expansion-panel-header:focus {
}
.war-interaction-panel {
display: block;
display: contents;
}
.war-interaction-panel > span {

View File

@ -55,6 +55,7 @@
</mat-accordion>
<div class="fade-in list-entry"
style="background: white"
[ngClass]="{selected : selectedWarId == 'all'}" (click)="selectOverview('all')">
<div class="row">
<div class="col-xs-9">

View File

@ -30,7 +30,7 @@
}
:host /deep/ .mat-progress-spinner circle, .mat-spinner circle {
stroke: #000000 !important;
stroke: #303030 !important;
stroke-linecap: round;
}

View File

@ -6,3 +6,7 @@
width: 100%;
padding-bottom: 20px;
}
:host/deep/.material-icons {
font-size: 32px;
}

View File

@ -11,7 +11,9 @@
Ohne Squad
</mat-button-toggle>
</mat-button-toggle-group>
<a class="pull-right btn btn-success" (click)="openNewUserForm()">+</a>
<button mat-icon-button class="pull-right" style="padding-right: 30px;">
<mat-icon (click)="openNewUserForm()">add_circle</mat-icon>
</button>
</div>
<div class="input-group list-header">

View File

@ -24,7 +24,7 @@ export class UserListComponent implements OnInit {
searchTerm = new FormControl();
radioModel: string = '';
radioModel = '';
throttle = 300;

View File

@ -4,10 +4,14 @@ import {CommonModule} from '@angular/common';
import {SharedModule} from '../shared.module';
import {InfiniteScrollModule} from 'ngx-infinite-scroll';
import {MatButtonToggleModule} from '@angular/material';
import {MatButtonModule} from '@angular/material/button';
import {MatIconModule} from '@angular/material/icon';
@NgModule({
declarations: usersRoutingComponents,
imports: [CommonModule, SharedModule, MatButtonToggleModule, InfiniteScrollModule, usersRouterModule],
imports: [CommonModule, SharedModule, MatButtonToggleModule, MatButtonModule, MatIconModule,
InfiniteScrollModule, usersRouterModule],
})
export class UsersModule {
static routes = usersRouterModule;

View File

@ -1,4 +1,5 @@
@import "../node_modules/@angular/material/prebuilt-themes/deeppurple-amber.css";
@import "../node_modules/material-design-icons/iconfont/material-icons.css";
body {
padding-top: 50px;
@ -70,3 +71,8 @@ form {
border: 2px solid;
padding: 3px 10px;
}
/* Icon theme */
.mat-icon {
color: #c5c5c5;
}