2018-04-05 16:29:11 +02:00
|
|
|
<header>
|
|
|
|
<div class="left">
|
2018-04-05 21:35:56 +02:00
|
|
|
<app-pop-out></app-pop-out>
|
2018-04-05 16:29:11 +02:00
|
|
|
</div>
|
|
|
|
<div class="center">
|
|
|
|
<span class="title">{{'myVault' | i18n}}</span>
|
|
|
|
</div>
|
|
|
|
<div class="right">
|
2018-04-05 23:27:31 +02:00
|
|
|
<button appBlurClick (click)="addCipher()" title="{{'addItem' | i18n}}">
|
|
|
|
<i class="fa fa-plus fa-lg"></i>
|
|
|
|
</button>
|
2018-04-05 16:29:11 +02:00
|
|
|
</div>
|
|
|
|
</header>
|
|
|
|
<content>
|
|
|
|
<p *ngIf="!loaded" class="text-muted">{{'loading' | i18n}}</p>
|
|
|
|
<ng-container *ngIf="loaded">
|
2018-04-05 23:27:31 +02:00
|
|
|
<div class="box list" *ngIf="favoriteCiphers">
|
2018-04-05 16:29:11 +02:00
|
|
|
<div class="box-header">
|
2018-04-05 23:27:31 +02:00
|
|
|
{{'favorites' | i18n}}
|
|
|
|
<span class="flex-right">{{favoriteCiphers.length}}</span>
|
2018-04-05 16:29:11 +02:00
|
|
|
</div>
|
|
|
|
<div class="box-content">
|
2018-04-05 23:27:31 +02:00
|
|
|
<app-ciphers-list [ciphers]="favoriteCiphers" title="{{'viewItem' | i18n}}"></app-ciphers-list>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="box list">
|
|
|
|
<div class="box-header">
|
|
|
|
{{'types' | i18n}}
|
|
|
|
<span class="flex-right">4</span>
|
|
|
|
</div>
|
|
|
|
<div class="box-content single-line">
|
|
|
|
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Login)">
|
|
|
|
<div class="icon"><i class="fa fa-fw fa-lg fa-globe"></i></div>
|
|
|
|
{{'typeLogin' | i18n}}
|
|
|
|
<div class="flex-right">
|
|
|
|
<span class="row-sub-label">{{typeCounts.get(cipherType.Login) || 0}}</span>
|
|
|
|
<i class="fa fa-chevron-right fa-lg"></i>
|
|
|
|
</div>
|
|
|
|
</a>
|
|
|
|
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Card)">
|
|
|
|
<div class="icon"><i class="fa fa-fw fa-lg fa-credit-card"></i></div>
|
|
|
|
{{'typeCard' | i18n}}
|
|
|
|
<div class="flex-right">
|
|
|
|
<span class="row-sub-label">{{typeCounts.get(cipherType.Card) || 0}}</span>
|
|
|
|
<i class="fa fa-chevron-right fa-lg"></i>
|
|
|
|
</div>
|
|
|
|
</a>
|
|
|
|
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Identity)">
|
|
|
|
<div class="icon"><i class="fa fa-fw fa-lg fa-id-card-o"></i></div>
|
|
|
|
{{'typeIdentity' | i18n}}
|
|
|
|
<div class="flex-right">
|
|
|
|
<span class="row-sub-label">{{typeCounts.get(cipherType.Identity) || 0}}</span>
|
|
|
|
<i class="fa fa-chevron-right fa-lg"></i>
|
|
|
|
</div>
|
|
|
|
</a>
|
|
|
|
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.SecureNote)">
|
|
|
|
<div class="icon"><i class="fa fa-fw fa-lg fa-sticky-note-o"></i></div>
|
|
|
|
{{'typeSecureNote' | i18n}}
|
|
|
|
<div class="flex-right">
|
|
|
|
<span class="row-sub-label">{{typeCounts.get(cipherType.SecureNote) || 0}}</span>
|
|
|
|
<i class="fa fa-chevron-right fa-lg"></i>
|
|
|
|
</div>
|
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="box list">
|
|
|
|
<div class="box-header">
|
|
|
|
{{'folders' | i18n}}
|
|
|
|
<span class="flex-right">{{folderCount}}</span>
|
|
|
|
</div>
|
|
|
|
<div class="box-content single-line">
|
2018-04-05 16:29:11 +02:00
|
|
|
<a *ngFor="let f of folders" href="#" class="box-content-row" appStopClick appBlurClick
|
|
|
|
(click)="selectFolder(f)">
|
2018-04-05 23:27:31 +02:00
|
|
|
<div class="icon">
|
|
|
|
<i class="fa fa-fw fa-lg" [ngClass]="{'fa-folder-open': f.id, 'fa-folder-open-o': !f.id}"></i>
|
|
|
|
</div>
|
2018-04-05 16:29:11 +02:00
|
|
|
{{f.name}}
|
2018-04-05 23:27:31 +02:00
|
|
|
<div class="flex-right">
|
|
|
|
<span class="row-sub-label">{{folderCounts.get(f.id) || 0}}</span>
|
|
|
|
<i class="fa fa-chevron-right fa-lg"></i>
|
|
|
|
</div>
|
2018-04-05 16:29:11 +02:00
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
2018-04-05 23:27:31 +02:00
|
|
|
<div class="box list">
|
2018-04-05 16:29:11 +02:00
|
|
|
<div class="box-header">
|
|
|
|
{{'collections' | i18n}}
|
2018-04-05 23:27:31 +02:00
|
|
|
<span class="flex-right">{{collections.length}}</span>
|
2018-04-05 16:29:11 +02:00
|
|
|
</div>
|
2018-04-05 23:27:31 +02:00
|
|
|
<div class="box-content single-line">
|
2018-04-05 16:29:11 +02:00
|
|
|
<a *ngFor="let c of collections" href="#" class="box-content-row" appStopClick appBlurClick
|
2018-04-05 21:56:52 +02:00
|
|
|
(click)="selectCollection(c)">
|
2018-04-05 23:27:31 +02:00
|
|
|
<div class="icon"><i class="fa fa-fw fa-lg fa-cube"></i></div>
|
2018-04-05 16:29:11 +02:00
|
|
|
{{c.name}}
|
2018-04-05 23:27:31 +02:00
|
|
|
<div class="flex-right">
|
|
|
|
<span class="row-sub-label">{{collectionCounts.get(c.id) || 0}}</span>
|
|
|
|
<i class="fa fa-chevron-right fa-lg"></i>
|
|
|
|
</div>
|
2018-04-05 16:29:11 +02:00
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
2018-04-05 23:27:31 +02:00
|
|
|
<div class="box list" *ngIf="showNoFolderCiphers">
|
|
|
|
<div class="box-header">
|
|
|
|
{{'noneFolder' | i18n}}
|
|
|
|
<div class="flex-right">{{noFolderCiphers.length}}</div>
|
|
|
|
</div>
|
|
|
|
<div class="box-content">
|
|
|
|
<app-ciphers-list [ciphers]="noFolderCiphers" title="{{'viewItem' | i18n}}"></app-ciphers-list>
|
|
|
|
</div>
|
|
|
|
</div>
|
2018-04-05 16:29:11 +02:00
|
|
|
</ng-container>
|
|
|
|
</content>
|