You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
90 lines
2.9 KiB
90 lines
2.9 KiB
<form #addAccountForm="ngForm" class="d-flex flex-column h-100">
|
|
<h1 *ngIf="data.account.id" i18n mat-dialog-title>Update account</h1>
|
|
<h1 *ngIf="!data.account.id" i18n mat-dialog-title>Add account</h1>
|
|
<div class="flex-grow-1 py-3" mat-dialog-content>
|
|
<div>
|
|
<mat-form-field appearance="outline" class="w-100">
|
|
<mat-label i18n>Name</mat-label>
|
|
<input matInput name="name" required [(ngModel)]="data.account.name" />
|
|
</mat-form-field>
|
|
</div>
|
|
<div>
|
|
<mat-form-field appearance="outline" class="w-100">
|
|
<mat-label i18n>Currency</mat-label>
|
|
<mat-select name="currency" required [(value)]="data.account.currency">
|
|
<mat-option *ngFor="let currency of currencies" [value]="currency"
|
|
>{{ currency }}</mat-option
|
|
>
|
|
</mat-select>
|
|
</mat-form-field>
|
|
</div>
|
|
<div>
|
|
<mat-form-field appearance="outline" class="w-100">
|
|
<mat-label i18n>Cash Balance</mat-label>
|
|
<input
|
|
matInput
|
|
name="balance"
|
|
required
|
|
type="number"
|
|
[(ngModel)]="data.account.balance"
|
|
/>
|
|
<span class="ml-2" matTextSuffix>{{ data.account.currency }}</span>
|
|
</mat-form-field>
|
|
</div>
|
|
<div [ngClass]="{ 'd-none': platforms?.length < 1 }">
|
|
<mat-form-field appearance="outline" class="w-100">
|
|
<mat-label i18n>Platform</mat-label>
|
|
<mat-select name="platformId" [(value)]="data.account.platformId">
|
|
<mat-option [value]="null"></mat-option>
|
|
<mat-option *ngFor="let platform of platforms" [value]="platform.id"
|
|
>{{ platform.name }}</mat-option
|
|
>
|
|
</mat-select>
|
|
</mat-form-field>
|
|
</div>
|
|
<div>
|
|
<mat-form-field appearance="outline" class="w-100">
|
|
<mat-label i18n>Note</mat-label>
|
|
<textarea
|
|
cdkAutosizeMinRows="2"
|
|
cdkTextareaAutosize
|
|
matInput
|
|
name="comment"
|
|
[(ngModel)]="data.account.comment"
|
|
(keyup.enter)="$event.stopPropagation()"
|
|
></textarea>
|
|
</mat-form-field>
|
|
</div>
|
|
<div class="mb-3 px-2">
|
|
<mat-checkbox
|
|
color="primary"
|
|
name="isExcluded"
|
|
[(ngModel)]="data.account.isExcluded"
|
|
>Exclude from Analysis</mat-checkbox
|
|
>
|
|
</div>
|
|
<div *ngIf="data.account.id">
|
|
<mat-form-field appearance="outline" class="w-100">
|
|
<mat-label i18n>Account ID</mat-label>
|
|
<input
|
|
disabled
|
|
matInput
|
|
name="accountId"
|
|
[(ngModel)]="data.account.id"
|
|
/>
|
|
</mat-form-field>
|
|
</div>
|
|
</div>
|
|
<div class="justify-content-end" mat-dialog-actions>
|
|
<button i18n mat-button (click)="onCancel()">Cancel</button>
|
|
<button
|
|
color="primary"
|
|
mat-flat-button
|
|
[disabled]="!addAccountForm.form.valid"
|
|
[mat-dialog-close]="data"
|
|
>
|
|
<ng-container i18n>Save</ng-container>
|
|
</button>
|
|
</div>
|
|
</form>
|