Add button to edit application.

This commit is contained in:
2021-08-07 23:24:33 +02:00
parent e53f4fd89d
commit 82053e4002
5 changed files with 93 additions and 56 deletions

View File

@@ -1,13 +1,13 @@
<div class="application-list" *ngIf="applicationsStatus?.length; else noAnyApp"> <div class="application-list" *ngIf="applicationsStatus?.length; else noAnyApp">
<app-application-card *ngFor="let applicationStatus of applicationsStatus" [applicationStatus]="applicationStatus"></app-application-card> <app-application-card *ngFor="let applicationStatus of applicationsStatus"
[applicationStatus]="applicationStatus"></app-application-card>
</div> </div>
<ng-template #noAnyApp> <ng-template #noAnyApp>
<div class="no-any-app"> <div class="no-any-app">
<p> <p>There is no any application.</p>
There is no any application. <p>
</p> Add one by clicking here:
<p> <app-add-application-button></app-add-application-button>
Add one by clicking here: <app-add-application-button></app-add-application-button> </p>
</p> </div>
</div>
</ng-template> </ng-template>

View File

@@ -2,6 +2,11 @@
<div class="logo"> <div class="logo">
<img [src]="applicationStatus?.application?.image" /> <img [src]="applicationStatus?.application?.image" />
<div class="status {{applicationStatus?.status?.toLowerCase()}}" matTooltip="This application is running"></div> <div class="status {{applicationStatus?.status?.toLowerCase()}}" matTooltip="This application is running"></div>
<button class="icon secondary"
(click)="edit()"
matTooltip="Edit the application details">
<mat-icon>edit</mat-icon>
</button>
</div> </div>
<div class="name">{{applicationStatus?.application?.name}}</div> <div class="name">{{applicationStatus?.application?.name}}</div>
</div> </div>

View File

@@ -7,6 +7,12 @@
.logo { .logo {
position: relative; position: relative;
&:hover {
button {
opacity: 1;
}
}
img { img {
width: 164px; width: 164px;
@@ -34,6 +40,14 @@
border: 2px solid #770000; border: 2px solid #770000;
} }
} }
button {
position: absolute;
top: 5px;
right: 5px;
opacity: 0;
transition: opacity .2s ease;
}
} }

View File

@@ -2,6 +2,7 @@ import { Component, Input, OnInit } from '@angular/core';
import { Application } from '../../entities/Application'; import { Application } from '../../entities/Application';
import { ApplicationStatus } from '../../entities/ApplicationStatus'; import { ApplicationStatus } from '../../entities/ApplicationStatus';
import { ApplicationService } from '../../services/application.service'; import { ApplicationService } from '../../services/application.service';
import { ModalService } from '../../services/modal.service';
interface AppDisplaying { interface AppDisplaying {
name: string, name: string,
@@ -18,6 +19,11 @@ export class ApplicationCardComponent {
@Input() applicationStatus: ApplicationStatus | undefined; @Input() applicationStatus: ApplicationStatus | undefined;
constructor( constructor(
private _applicationService: ApplicationService private _applicationService: ApplicationService,
private _modalService: ModalService
) {} ) {}
edit(): void {
// this._modalService.open();
}
} }

View File

@@ -1,50 +1,62 @@
@import '../colors.scss'; @import "../colors.scss";
button, a.button {
background-image: linear-gradient(
$btn-primary-background-top,
$btn-primary-background-bottom
);
color: white;
border: solid 1px $btn-primary-background-bottom;
display: flex;
justify-content: center;
align-items: center;
min-width: 5rem;
border-radius: 0.3rem;
padding: 0.15rem 1rem;
font-weight: 600;
margin: 0.2rem 0.5rem;
&:active {
border-color: $btn-primary-active-border;
background-image: linear-gradient(
$btn-primary-active-background-top,
$btn-primary-active-background-bottom
);
}
&.secondary {
background-image: none;
background-color: $btn-secondary-background;
border-color: $btn-secondary-border;
color: #222;
font-weight: 500;
button {
// background-color: $blue;
background-image: linear-gradient($btn-primary-background-top, $btn-primary-background-bottom);
color: white;
border: solid 1px $btn-primary-background-bottom;
display: flex;
justify-content: center;
align-items: center;
min-width: 5rem;
border-radius: .3rem;
padding: .15rem 1rem;
font-weight: 600;
margin: .2rem .5rem;
&:active { &:active {
border-color: $btn-primary-active-border; background-color: $btn-secondary-active-background;
background-image: linear-gradient($btn-primary-active-background-top, $btn-primary-active-background-bottom); border-color: $btn-secondary-active-border;
} }
}
&.secondary {
background-image: none; &.help {
background-color: $btn-secondary-background; border-radius: 10em;
border-color: $btn-secondary-border; padding: 0;
color: #222; background-image: none;
font-weight: 500; background-color: #eeeeee;
color: #333;
&:active { border-color: #bbb;
background-color: $btn-secondary-active-background; min-width: min-content;
border-color: $btn-secondary-active-border; width: 1.5rem;
} height: 1.5rem;
&:hover {
background-color: #dddddd;
} }
}
&.help {
border-radius: 10em; &.icon {
padding: 0; padding-left: 0;
background-image: none; padding-right: 0;
background-color: #eeeeee; min-width: 25px;
color: #333; width: 25px;
border-color: #bbb; }
min-width: min-content; }
width: 1.5rem;
height: 1.5rem;
&:hover {
background-color: #dddddd;
}
}
}