Remove virtualScroll for favorites list
This commit is contained in:
parent
c12ceb4877
commit
d71219caa9
|
@ -23,125 +23,123 @@
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</div>
|
</div>
|
||||||
<ng-container *ngIf="ciphers && ciphers.length && !showSearching()">
|
<ng-container *ngIf="ciphers && ciphers.length && !showSearching()">
|
||||||
<cdk-virtual-scroll-viewport itemSize="46">
|
<div class="box list" *ngIf="favoriteCiphers">
|
||||||
<div class="box list" *ngIf="favoriteCiphers">
|
<div class="box-header">
|
||||||
<div class="box-header">
|
{{'favorites' | i18n}}
|
||||||
{{'favorites' | i18n}}
|
<span class="flex-right">{{favoriteCiphers.length}}</span>
|
||||||
<span class="flex-right">{{favoriteCiphers.length}}</span>
|
|
||||||
</div>
|
|
||||||
<div class="box-content">
|
|
||||||
<app-cipher-row *cdkVirtualFor="let favoriteCipher of favoriteCiphers" [cipher]="favoriteCipher"
|
|
||||||
title="{{'viewItem' | i18n}}" (onSelected)="selectCipher($event)"
|
|
||||||
(launchEvent)="launchCipher($event)"></app-cipher-row>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="box list">
|
<div class="box-content">
|
||||||
<div class="box-header">
|
<app-cipher-row *ngFor="let favoriteCipher of favoriteCiphers" [cipher]="favoriteCipher"
|
||||||
{{'types' | i18n}}
|
title="{{'viewItem' | i18n}}" (onSelected)="selectCipher($event)"
|
||||||
<span class="flex-right">4</span>
|
(launchEvent)="launchCipher($event)"></app-cipher-row>
|
||||||
</div>
|
|
||||||
<div class="box-content single-line">
|
|
||||||
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Login)">
|
|
||||||
<div class="row-main">
|
|
||||||
<div class="icon"><i class="fa fa-fw fa-lg fa-globe"></i></div>
|
|
||||||
<span class="text">{{'typeLogin' | i18n}}</span>
|
|
||||||
</div>
|
|
||||||
<span class="row-sub-label">{{typeCounts.get(cipherType.Login) || 0}}</span>
|
|
||||||
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Card)">
|
|
||||||
<div class="row-main">
|
|
||||||
<div class="icon"><i class="fa fa-fw fa-lg fa-credit-card"></i></div>
|
|
||||||
<span class="text">{{'typeCard' | i18n}}</span>
|
|
||||||
</div>
|
|
||||||
<span class="row-sub-label">{{typeCounts.get(cipherType.Card) || 0}}</span>
|
|
||||||
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Identity)">
|
|
||||||
<div class="row-main">
|
|
||||||
<div class="icon"><i class="fa fa-fw fa-lg fa-id-card-o"></i></div>
|
|
||||||
<span class="text">{{'typeIdentity' | i18n}}</span>
|
|
||||||
</div>
|
|
||||||
<span class="row-sub-label">{{typeCounts.get(cipherType.Identity) || 0}}</span>
|
|
||||||
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="box-content-row" appStopClick appBlurClick
|
|
||||||
(click)="selectType(cipherType.SecureNote)">
|
|
||||||
<div class="row-main">
|
|
||||||
<div class="icon"><i class="fa fa-fw fa-lg fa-sticky-note-o"></i></div>
|
|
||||||
<span class="text">{{'typeSecureNote' | i18n}}</span>
|
|
||||||
</div>
|
|
||||||
<span class="row-sub-label">{{typeCounts.get(cipherType.SecureNote) || 0}}</span>
|
|
||||||
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="box list" *ngIf="nestedFolders?.length">
|
</div>
|
||||||
<div class="box-header">
|
<div class="box list">
|
||||||
{{'folders' | i18n}}
|
<div class="box-header">
|
||||||
<span class="flex-right">{{folderCount}}</span>
|
{{'types' | i18n}}
|
||||||
</div>
|
<span class="flex-right">4</span>
|
||||||
<div class="box-content single-line">
|
</div>
|
||||||
<a *ngFor="let f of nestedFolders" href="#" class="box-content-row" appStopClick appBlurClick
|
<div class="box-content single-line">
|
||||||
(click)="selectFolder(f.node)">
|
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Login)">
|
||||||
<div class="row-main">
|
<div class="row-main">
|
||||||
<div class="icon">
|
<div class="icon"><i class="fa fa-fw fa-lg fa-globe"></i></div>
|
||||||
<i class="fa fa-fw fa-lg"
|
<span class="text">{{'typeLogin' | i18n}}</span>
|
||||||
[ngClass]="{'fa-folder-open': f.node.id, 'fa-folder-open-o': !f.node.id}"></i>
|
</div>
|
||||||
</div>
|
<span class="row-sub-label">{{typeCounts.get(cipherType.Login) || 0}}</span>
|
||||||
<span class="text">{{f.node.name}}</span>
|
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
||||||
|
</a>
|
||||||
|
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Card)">
|
||||||
|
<div class="row-main">
|
||||||
|
<div class="icon"><i class="fa fa-fw fa-lg fa-credit-card"></i></div>
|
||||||
|
<span class="text">{{'typeCard' | i18n}}</span>
|
||||||
|
</div>
|
||||||
|
<span class="row-sub-label">{{typeCounts.get(cipherType.Card) || 0}}</span>
|
||||||
|
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
||||||
|
</a>
|
||||||
|
<a href="#" class="box-content-row" appStopClick appBlurClick (click)="selectType(cipherType.Identity)">
|
||||||
|
<div class="row-main">
|
||||||
|
<div class="icon"><i class="fa fa-fw fa-lg fa-id-card-o"></i></div>
|
||||||
|
<span class="text">{{'typeIdentity' | i18n}}</span>
|
||||||
|
</div>
|
||||||
|
<span class="row-sub-label">{{typeCounts.get(cipherType.Identity) || 0}}</span>
|
||||||
|
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
||||||
|
</a>
|
||||||
|
<a href="#" class="box-content-row" appStopClick appBlurClick
|
||||||
|
(click)="selectType(cipherType.SecureNote)">
|
||||||
|
<div class="row-main">
|
||||||
|
<div class="icon"><i class="fa fa-fw fa-lg fa-sticky-note-o"></i></div>
|
||||||
|
<span class="text">{{'typeSecureNote' | i18n}}</span>
|
||||||
|
</div>
|
||||||
|
<span class="row-sub-label">{{typeCounts.get(cipherType.SecureNote) || 0}}</span>
|
||||||
|
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="box list" *ngIf="nestedFolders?.length">
|
||||||
|
<div class="box-header">
|
||||||
|
{{'folders' | i18n}}
|
||||||
|
<span class="flex-right">{{folderCount}}</span>
|
||||||
|
</div>
|
||||||
|
<div class="box-content single-line">
|
||||||
|
<a *ngFor="let f of nestedFolders" href="#" class="box-content-row" appStopClick appBlurClick
|
||||||
|
(click)="selectFolder(f.node)">
|
||||||
|
<div class="row-main">
|
||||||
|
<div class="icon">
|
||||||
|
<i class="fa fa-fw fa-lg"
|
||||||
|
[ngClass]="{'fa-folder-open': f.node.id, 'fa-folder-open-o': !f.node.id}"></i>
|
||||||
</div>
|
</div>
|
||||||
<span class="row-sub-label">{{folderCounts.get(f.node.id) || 0}}</span>
|
<span class="text">{{f.node.name}}</span>
|
||||||
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
</div>
|
||||||
</a>
|
<span class="row-sub-label">{{folderCounts.get(f.node.id) || 0}}</span>
|
||||||
</div>
|
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
||||||
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="box list" *ngIf="nestedCollections && nestedCollections.length">
|
</div>
|
||||||
<div class="box-header">
|
<div class="box list" *ngIf="nestedCollections && nestedCollections.length">
|
||||||
{{'collections' | i18n}}
|
<div class="box-header">
|
||||||
<span class="flex-right">{{nestedCollections.length}}</span>
|
{{'collections' | i18n}}
|
||||||
</div>
|
<span class="flex-right">{{nestedCollections.length}}</span>
|
||||||
<div class="box-content single-line">
|
|
||||||
<a *ngFor="let nestedCollection of nestedCollections" href="#" class="box-content-row"
|
|
||||||
appStopClick appBlurClick (click)="selectCollection(nestedCollection.node)">
|
|
||||||
<div class="row-main">
|
|
||||||
<div class="icon"><i class="fa fa-fw fa-lg fa-cube"></i></div>
|
|
||||||
<span class="text">{{nestedCollection.node.name}}</span>
|
|
||||||
</div>
|
|
||||||
<span class="row-sub-label">{{collectionCounts.get(nestedCollection.node.id) || 0}}</span>
|
|
||||||
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="box list" *ngIf="showNoFolderCiphers">
|
<div class="box-content single-line">
|
||||||
<div class="box-header">
|
<a *ngFor="let nestedCollection of nestedCollections" href="#" class="box-content-row"
|
||||||
{{'noneFolder' | i18n}}
|
appStopClick appBlurClick (click)="selectCollection(nestedCollection.node)">
|
||||||
<div class="flex-right">{{noFolderCiphers.length}}</div>
|
<div class="row-main">
|
||||||
</div>
|
<div class="icon"><i class="fa fa-fw fa-lg fa-cube"></i></div>
|
||||||
<div class="box-content">
|
<span class="text">{{nestedCollection.node.name}}</span>
|
||||||
<app-cipher-row *ngFor="let noFolderCipher of noFolderCiphers" [cipher]="noFolderCipher"
|
</div>
|
||||||
title="{{'viewItem' | i18n}}" (onSelected)="selectCipher($event)"
|
<span class="row-sub-label">{{collectionCounts.get(nestedCollection.node.id) || 0}}</span>
|
||||||
(launchEvent)="launchCipher($event)"></app-cipher-row>
|
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
||||||
</div>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="box list" *ngIf="deletedCount">
|
</div>
|
||||||
<div class="box-header">
|
<div class="box list" *ngIf="showNoFolderCiphers">
|
||||||
{{'trash' | i18n}}
|
<div class="box-header">
|
||||||
<span class="flex-right">{{deletedCount}}</span>
|
{{'noneFolder' | i18n}}
|
||||||
</div>
|
<div class="flex-right">{{noFolderCiphers.length}}</div>
|
||||||
<div class="box-content single-line">
|
|
||||||
<a href="#" class="box-content-row" appStopClick appBlurClick
|
|
||||||
(click)="selectTrash()">
|
|
||||||
<div class="row-main">
|
|
||||||
<div class="icon"><i class="fa fa-fw fa-lg fa-trash-o"></i></div>
|
|
||||||
<span class="text">{{'trash' | i18n}}</span>
|
|
||||||
</div>
|
|
||||||
<span class="row-sub-label">{{deletedCount}}</span>
|
|
||||||
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</cdk-virtual-scroll-viewport>
|
<div class="box-content">
|
||||||
|
<app-cipher-row *ngFor="let noFolderCipher of noFolderCiphers" [cipher]="noFolderCipher"
|
||||||
|
title="{{'viewItem' | i18n}}" (onSelected)="selectCipher($event)"
|
||||||
|
(launchEvent)="launchCipher($event)"></app-cipher-row>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="box list" *ngIf="deletedCount">
|
||||||
|
<div class="box-header">
|
||||||
|
{{'trash' | i18n}}
|
||||||
|
<span class="flex-right">{{deletedCount}}</span>
|
||||||
|
</div>
|
||||||
|
<div class="box-content single-line">
|
||||||
|
<a href="#" class="box-content-row" appStopClick appBlurClick
|
||||||
|
(click)="selectTrash()">
|
||||||
|
<div class="row-main">
|
||||||
|
<div class="icon"><i class="fa fa-fw fa-lg fa-trash-o"></i></div>
|
||||||
|
<span class="text">{{'trash' | i18n}}</span>
|
||||||
|
</div>
|
||||||
|
<span class="row-sub-label">{{deletedCount}}</span>
|
||||||
|
<span><i class="fa fa-chevron-right fa-lg row-sub-icon"></i></span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-container *ngIf="showSearching()">
|
<ng-container *ngIf="showSearching()">
|
||||||
<div class="no-items" *ngIf="!ciphers || !ciphers.length">
|
<div class="no-items" *ngIf="!ciphers || !ciphers.length">
|
||||||
|
|
Loading…
Reference in New Issue