diff --git a/src/app/vault/ciphers.component.html b/src/app/vault/ciphers.component.html
index 734ebaf183..dd49be7a88 100644
--- a/src/app/vault/ciphers.component.html
+++ b/src/app/vault/ciphers.component.html
@@ -2,19 +2,6 @@
0">
-
-
-
-
-
- |
|
@@ -22,12 +9,23 @@
-
- {{c.name}}
-
-
-
- {{c.subTitle}}
+ {{c.name}}
+
+
+ {{c.subTitle}}
+ |
+
+
+
+
+
|
diff --git a/src/app/vault/groupings.component.html b/src/app/vault/groupings.component.html
index 5fbc44ff9a..6300cbe611 100644
--- a/src/app/vault/groupings.component.html
+++ b/src/app/vault/groupings.component.html
@@ -3,7 +3,8 @@
Filters
-
+
-
diff --git a/src/app/vault/groupings.component.ts b/src/app/vault/groupings.component.ts
index d3ce89619f..3e95a96b90 100644
--- a/src/app/vault/groupings.component.ts
+++ b/src/app/vault/groupings.component.ts
@@ -1,4 +1,8 @@
-import { Component } from '@angular/core';
+import {
+ Component,
+ EventEmitter,
+ Output,
+} from '@angular/core';
import { CollectionService } from 'jslib/abstractions/collection.service';
import { FolderService } from 'jslib/abstractions/folder.service';
@@ -10,7 +14,14 @@ import { GroupingsComponent as BaseGroupingsComponent } from 'jslib/angular/comp
templateUrl: 'groupings.component.html',
})
export class GroupingsComponent extends BaseGroupingsComponent {
+ @Output() onSearchTextChanged = new EventEmitter();
+ searchText: string = '';
+
constructor(collectionService: CollectionService, folderService: FolderService) {
super(collectionService, folderService);
}
+
+ searchTextChanged() {
+ this.onSearchTextChanged.emit(this.searchText);
+ }
}
diff --git a/src/app/vault/vault.component.html b/src/app/vault/vault.component.html
index cc37c17018..b3b9d9908f 100644
--- a/src/app/vault/vault.component.html
+++ b/src/app/vault/vault.component.html
@@ -37,7 +37,8 @@
(onFolderClicked)="filterFolder($event.id)"
(onAddFolder)="addFolder()"
(onEditFolder)="editFolder($event.id)"
- (onCollectionClicked)="filterCollection($event.id)">
+ (onCollectionClicked)="filterCollection($event.id)"
+ (onSearchTextChanged)="filterSearchText($event)">
diff --git a/src/app/vault/vault.component.ts b/src/app/vault/vault.component.ts
index 1c488fb3e2..4af132f398 100644
--- a/src/app/vault/vault.component.ts
+++ b/src/app/vault/vault.component.ts
@@ -128,6 +128,10 @@ export class VaultComponent implements OnInit {
this.go();
}
+ filterSearchText(searchText: string) {
+ this.ciphersComponent.searchText = searchText;
+ }
+
editCipherAttachments(cipher: CipherView) {
if (this.modal != null) {
this.modal.close();
diff --git a/src/scss/styles.scss b/src/scss/styles.scss
index 3450fc7804..a5f958c76b 100644
--- a/src/scss/styles.scss
+++ b/src/scss/styles.scss
@@ -92,29 +92,25 @@ app-vault {
}
tr:hover {
- td:first-child {
- background-color: $body-bg;
+ td:last-child .dropdown button {
+ visibility: initial;
}
}
td {
vertical-align: middle;
- a {
+ small {
display: block;
+ color: $text-muted;
}
}
td:first-child {
- width: 65px;
- border: none;
- }
-
- td:nth-child(2) {
width: 25px;
}
- td:nth-child(3) {
+ td:nth-child(2) {
width: 25px;
text-align: center;
@@ -123,5 +119,14 @@ app-vault {
@extend .img-fluid;
}
}
+
+ td:last-child {
+ width: 65px;
+ text-align: right;
+
+ .dropdown:not(.show) button {
+ visibility: hidden;
+ }
+ }
}
}