mirror of
https://github.com/bitwarden/browser
synced 2025-12-16 08:13:42 +00:00
revert changes to reports
This commit is contained in:
@@ -24,12 +24,12 @@
|
|||||||
<div class="mt-4" *ngIf="!form.loading && checkedUsername">
|
<div class="mt-4" *ngIf="!form.loading && checkedUsername">
|
||||||
<p *ngIf="error">{{ "reportError" | i18n }}...</p>
|
<p *ngIf="error">{{ "reportError" | i18n }}...</p>
|
||||||
<ng-container *ngIf="!error">
|
<ng-container *ngIf="!error">
|
||||||
<bit-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!breachedAccounts.length">
|
<app-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!breachedAccounts.length">
|
||||||
{{ "breachUsernameNotFound" | i18n: checkedUsername }}
|
{{ "breachUsernameNotFound" | i18n: checkedUsername }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
<bit-callout type="danger" title="{{ 'breachFound' | i18n }}" *ngIf="breachedAccounts.length">
|
<app-callout type="danger" title="{{ 'breachFound' | i18n }}" *ngIf="breachedAccounts.length">
|
||||||
{{ "breachUsernameFound" | i18n: checkedUsername : breachedAccounts.length }}
|
{{ "breachUsernameFound" | i18n: checkedUsername : breachedAccounts.length }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
<ul class="list-group list-group-breach" *ngIf="breachedAccounts.length">
|
<ul class="list-group list-group-breach" *ngIf="breachedAccounts.length">
|
||||||
<li *ngFor="let a of breachedAccounts" class="list-group-item min-height-fix">
|
<li *ngFor="let a of breachedAccounts" class="list-group-item min-height-fix">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|||||||
@@ -11,13 +11,13 @@
|
|||||||
<span class="sr-only">{{ "loading" | i18n }}</span>
|
<span class="sr-only">{{ "loading" | i18n }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-4" *ngIf="hasLoaded">
|
<div class="mt-4" *ngIf="hasLoaded">
|
||||||
<bit-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!ciphers.length">
|
<app-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!ciphers.length">
|
||||||
{{ "noInactive2fa" | i18n }}
|
{{ "noInactive2fa" | i18n }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
<ng-container *ngIf="ciphers.length">
|
<ng-container *ngIf="ciphers.length">
|
||||||
<bit-callout type="danger" title="{{ 'inactive2faFound' | i18n }}">
|
<app-callout type="danger" title="{{ 'inactive2faFound' | i18n }}">
|
||||||
{{ "inactive2faFoundReportDesc" | i18n: (ciphers.length | number) : vaultMsg }}
|
{{ "inactive2faFoundReportDesc" | i18n: (ciphers.length | number) : vaultMsg }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
<bit-toggle-group
|
<bit-toggle-group
|
||||||
*ngIf="showFilterToggle && !isAdminConsoleActive"
|
*ngIf="showFilterToggle && !isAdminConsoleActive"
|
||||||
[selected]="filterOrgStatus$ | async"
|
[selected]="filterOrgStatus$ | async"
|
||||||
@@ -31,74 +31,71 @@
|
|||||||
</bit-toggle>
|
</bit-toggle>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</bit-toggle-group>
|
</bit-toggle-group>
|
||||||
<bit-table [dataSource]="dataSource">
|
<table class="table table-hover table-list table-ciphers">
|
||||||
<ng-container header *ngIf="!isAdminConsoleActive">
|
<thead
|
||||||
|
class="tw-border-0 tw-border-b-2 tw-border-solid tw-border-secondary-300 tw-font-bold tw-text-muted"
|
||||||
|
*ngIf="!isAdminConsoleActive"
|
||||||
|
>
|
||||||
<tr>
|
<tr>
|
||||||
<th></th>
|
<th></th>
|
||||||
<th>{{ "name" | i18n }}</th>
|
<th>{{ "name" | i18n }}</th>
|
||||||
<th>{{ "owner" | i18n }}</th>
|
<th>{{ "owner" | i18n }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
</ng-container>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<ng-template body let-rows$>
|
<tr *ngFor="let c of ciphers">
|
||||||
<tr bitRow *ngFor="let r of rows$ | async">
|
<td class="table-list-icon">
|
||||||
<td bitCell>
|
<app-vault-icon [cipher]="c"></app-vault-icon>
|
||||||
<app-vault-icon [cipher]="r"></app-vault-icon>
|
</td>
|
||||||
</td>
|
<td class="reduced-lh wrap">
|
||||||
<td class="reduced-lh wrap">
|
<a href="#" appStopClick (click)="selectCipher(c)" title="{{ 'editItem' | i18n }}">{{
|
||||||
<a
|
c.name
|
||||||
href="#"
|
}}</a>
|
||||||
appStopClick
|
<ng-container *ngIf="!organization && c.organizationId">
|
||||||
(click)="selectCipher(r)"
|
<i
|
||||||
title="{{ 'editItem' | i18n }}"
|
class="bwi bwi-collection"
|
||||||
>{{ r.name }}</a
|
|
||||||
>
|
|
||||||
<ng-container *ngIf="!organization && r.organizationId">
|
|
||||||
<i
|
|
||||||
class="bwi bwi-collection"
|
|
||||||
appStopProp
|
|
||||||
title="{{ 'shared' | i18n }}"
|
|
||||||
aria-hidden="true"
|
|
||||||
></i>
|
|
||||||
<span class="sr-only">{{ "shared" | i18n }}</span>
|
|
||||||
</ng-container>
|
|
||||||
<ng-container *ngIf="r.hasAttachments">
|
|
||||||
<i
|
|
||||||
class="bwi bwi-paperclip"
|
|
||||||
appStopProp
|
|
||||||
title="{{ 'attachments' | i18n }}"
|
|
||||||
aria-hidden="true"
|
|
||||||
></i>
|
|
||||||
<span class="sr-only">{{ "attachments" | i18n }}</span>
|
|
||||||
</ng-container>
|
|
||||||
<br />
|
|
||||||
<small>{{ r.subTitle }}</small>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<app-org-badge
|
|
||||||
*ngIf="!organization"
|
|
||||||
[disabled]="disabled"
|
|
||||||
[organizationId]="r.organizationId"
|
|
||||||
[organizationName]="r.organizationId | orgNameFromId: (organizations$ | async)"
|
|
||||||
appStopProp
|
appStopProp
|
||||||
>
|
title="{{ 'shared' | i18n }}"
|
||||||
</app-org-badge>
|
aria-hidden="true"
|
||||||
</td>
|
></i>
|
||||||
<td class="text-right">
|
<span class="sr-only">{{ "shared" | i18n }}</span>
|
||||||
<a
|
</ng-container>
|
||||||
bitBadge
|
<ng-container *ngIf="c.hasAttachments">
|
||||||
href="{{ cipherDocs.get(r.id) }}"
|
<i
|
||||||
target="_blank"
|
class="bwi bwi-paperclip"
|
||||||
rel="noreferrer"
|
appStopProp
|
||||||
*ngIf="cipherDocs.has(r.id)"
|
title="{{ 'attachments' | i18n }}"
|
||||||
>
|
aria-hidden="true"
|
||||||
{{ "instructions" | i18n }}</a
|
></i>
|
||||||
>
|
<span class="sr-only">{{ "attachments" | i18n }}</span>
|
||||||
</td>
|
</ng-container>
|
||||||
</tr>
|
<br />
|
||||||
</ng-template>
|
<small>{{ c.subTitle }}</small>
|
||||||
</tbody></bit-table
|
</td>
|
||||||
>
|
<td>
|
||||||
|
<app-org-badge
|
||||||
|
*ngIf="!organization"
|
||||||
|
[disabled]="disabled"
|
||||||
|
[organizationId]="c.organizationId"
|
||||||
|
[organizationName]="c.organizationId | orgNameFromId: (organizations$ | async)"
|
||||||
|
appStopProp
|
||||||
|
>
|
||||||
|
</app-org-badge>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<a
|
||||||
|
bitBadge
|
||||||
|
href="{{ cipherDocs.get(c.id) }}"
|
||||||
|
target="_blank"
|
||||||
|
rel="noreferrer"
|
||||||
|
*ngIf="cipherDocs.has(c.id)"
|
||||||
|
>
|
||||||
|
{{ "instructions" | i18n }}</a
|
||||||
|
>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</div>
|
</div>
|
||||||
<ng-template #cipherAddEdit></ng-template>
|
<ng-template #cipherAddEdit></ng-template>
|
||||||
|
|||||||
@@ -11,13 +11,13 @@
|
|||||||
<span class="sr-only">{{ "loading" | i18n }}</span>
|
<span class="sr-only">{{ "loading" | i18n }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-4" *ngIf="hasLoaded">
|
<div class="mt-4" *ngIf="hasLoaded">
|
||||||
<bit-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!ciphers.length">
|
<app-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!ciphers.length">
|
||||||
{{ "noReusedPasswords" | i18n }}
|
{{ "noReusedPasswords" | i18n }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
<ng-container *ngIf="ciphers.length">
|
<ng-container *ngIf="ciphers.length">
|
||||||
<bit-callout type="danger" title="{{ 'reusedPasswordsFound' | i18n }}">
|
<app-callout type="danger" title="{{ 'reusedPasswordsFound' | i18n }}">
|
||||||
{{ "reusedPasswordsFoundReportDesc" | i18n: (ciphers.length | number) : vaultMsg }}
|
{{ "reusedPasswordsFoundReportDesc" | i18n: (ciphers.length | number) : vaultMsg }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
|
|
||||||
<bit-toggle-group
|
<bit-toggle-group
|
||||||
*ngIf="showFilterToggle && !isAdminConsoleActive"
|
*ngIf="showFilterToggle && !isAdminConsoleActive"
|
||||||
@@ -33,33 +33,36 @@
|
|||||||
</ng-container>
|
</ng-container>
|
||||||
</bit-toggle-group>
|
</bit-toggle-group>
|
||||||
|
|
||||||
<bit-table [dataSource]="dataSource">
|
<table class="table table-hover table-list table-ciphers">
|
||||||
<ng-container header *ngIf="!isAdminConsoleActive">
|
<thead
|
||||||
|
class="tw-border-0 tw-border-b-2 tw-border-solid tw-border-secondary-300 tw-font-bold tw-text-muted"
|
||||||
|
*ngIf="!isAdminConsoleActive"
|
||||||
|
>
|
||||||
<tr>
|
<tr>
|
||||||
<th></th>
|
<th></th>
|
||||||
<th>{{ "name" | i18n }}</th>
|
<th>{{ "name" | i18n }}</th>
|
||||||
<th>{{ "owner" | i18n }}</th>
|
<th>{{ "owner" | i18n }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
</ng-container>
|
</thead>
|
||||||
<ng-template body let-rows$>
|
<tbody>
|
||||||
<tr bitRow *ngFor="let r of rows$ | async">
|
<tr *ngFor="let c of ciphers">
|
||||||
<td bitCell>
|
<td class="table-list-icon">
|
||||||
<app-vault-icon [cipher]="r"></app-vault-icon>
|
<app-vault-icon [cipher]="c"></app-vault-icon>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td class="reduced-lh wrap">
|
||||||
<ng-container *ngIf="!organization || canManageCipher(r); else cantManage">
|
<ng-container *ngIf="!organization || canManageCipher(c); else cantManage">
|
||||||
<a
|
<a
|
||||||
href="#"
|
href="#"
|
||||||
appStopClick
|
appStopClick
|
||||||
(click)="selectCipher(r)"
|
(click)="selectCipher(c)"
|
||||||
title="{{ 'editItem' | i18n }}"
|
title="{{ 'editItem' | i18n }}"
|
||||||
>{{ r.name }}</a
|
>{{ c.name }}</a
|
||||||
>
|
>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #cantManage>
|
<ng-template #cantManage>
|
||||||
<span>{{ r.name }}</span>
|
<span>{{ c.name }}</span>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-container *ngIf="!organization && r.organizationId">
|
<ng-container *ngIf="!organization && c.organizationId">
|
||||||
<i
|
<i
|
||||||
class="bwi bwi-collection"
|
class="bwi bwi-collection"
|
||||||
appStopProp
|
appStopProp
|
||||||
@@ -68,7 +71,7 @@
|
|||||||
></i>
|
></i>
|
||||||
<span class="sr-only">{{ "shared" | i18n }}</span>
|
<span class="sr-only">{{ "shared" | i18n }}</span>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-container *ngIf="r.hasAttachments">
|
<ng-container *ngIf="c.hasAttachments">
|
||||||
<i
|
<i
|
||||||
class="bwi bwi-paperclip"
|
class="bwi bwi-paperclip"
|
||||||
appStopProp
|
appStopProp
|
||||||
@@ -78,26 +81,26 @@
|
|||||||
<span class="sr-only">{{ "attachments" | i18n }}</span>
|
<span class="sr-only">{{ "attachments" | i18n }}</span>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<br />
|
<br />
|
||||||
<small>{{ r.subTitle }}</small>
|
<small>{{ c.subTitle }}</small>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<app-org-badge
|
<app-org-badge
|
||||||
*ngIf="!organization"
|
*ngIf="!organization"
|
||||||
[disabled]="disabled"
|
[disabled]="disabled"
|
||||||
[organizationId]="r.organizationId"
|
[organizationId]="c.organizationId"
|
||||||
[organizationName]="r.organizationId | orgNameFromId: (organizations$ | async)"
|
[organizationName]="c.organizationId | orgNameFromId: (organizations$ | async)"
|
||||||
appStopProp
|
appStopProp
|
||||||
>
|
>
|
||||||
</app-org-badge>
|
</app-org-badge>
|
||||||
</td>
|
</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
<span bitBadge variant="warning">
|
<span bitBadge variant="warning">
|
||||||
{{ "reusedXTimes" | i18n: passwordUseMap.get(r.login.password) }}
|
{{ "reusedXTimes" | i18n: passwordUseMap.get(c.login.password) }}
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</ng-template>
|
</tbody>
|
||||||
</bit-table>
|
</table>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</div>
|
</div>
|
||||||
<ng-template #cipherAddEdit></ng-template>
|
<ng-template #cipherAddEdit></ng-template>
|
||||||
|
|||||||
@@ -11,13 +11,13 @@
|
|||||||
<span class="sr-only">{{ "loading" | i18n }}</span>
|
<span class="sr-only">{{ "loading" | i18n }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-4" *ngIf="hasLoaded">
|
<div class="mt-4" *ngIf="hasLoaded">
|
||||||
<bit-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!ciphers.length">
|
<app-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!ciphers.length">
|
||||||
{{ "noUnsecuredWebsites" | i18n }}
|
{{ "noUnsecuredWebsites" | i18n }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
<ng-container *ngIf="ciphers.length">
|
<ng-container *ngIf="ciphers.length">
|
||||||
<bit-callout type="danger" title="{{ 'unsecuredWebsitesFound' | i18n }}">
|
<app-callout type="danger" title="{{ 'unsecuredWebsitesFound' | i18n }}">
|
||||||
{{ "unsecuredWebsitesFoundReportDesc" | i18n: (ciphers.length | number) : vaultMsg }}
|
{{ "unsecuredWebsitesFoundReportDesc" | i18n: (ciphers.length | number) : vaultMsg }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
|
|
||||||
<bit-toggle-group
|
<bit-toggle-group
|
||||||
*ngIf="showFilterToggle && !isAdminConsoleActive"
|
*ngIf="showFilterToggle && !isAdminConsoleActive"
|
||||||
@@ -32,24 +32,27 @@
|
|||||||
</bit-toggle>
|
</bit-toggle>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</bit-toggle-group>
|
</bit-toggle-group>
|
||||||
<bit-table [dataSource]="dataSource">
|
<table class="table table-hover table-list table-ciphers">
|
||||||
<ng-container header *ngIf="!isAdminConsoleActive">
|
<thead
|
||||||
|
class="tw-border-0 tw-border-b-2 tw-border-solid tw-border-secondary-300 tw-font-bold tw-text-muted"
|
||||||
|
*ngIf="!isAdminConsoleActive"
|
||||||
|
>
|
||||||
<tr>
|
<tr>
|
||||||
<th></th>
|
<th></th>
|
||||||
<th>{{ "name" | i18n }}</th>
|
<th>{{ "name" | i18n }}</th>
|
||||||
<th>{{ "owner" | i18n }}</th>
|
<th>{{ "owner" | i18n }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
</ng-container>
|
</thead>
|
||||||
<ng-template body let-rows$>
|
<tbody>
|
||||||
<tr bitRow *ngFor="let r of rows$ | async">
|
<tr *ngFor="let c of ciphers">
|
||||||
<td bitCell>
|
<td class="table-list-icon">
|
||||||
<app-vault-icon [cipher]="r"></app-vault-icon>
|
<app-vault-icon [cipher]="c"></app-vault-icon>
|
||||||
</td>
|
</td>
|
||||||
<td class="reduced-lh wrap">
|
<td class="reduced-lh wrap">
|
||||||
<a href="#" appStopClick (click)="selectCipher(r)" title="{{ 'editItem' | i18n }}">{{
|
<a href="#" appStopClick (click)="selectCipher(c)" title="{{ 'editItem' | i18n }}">{{
|
||||||
r.name
|
c.name
|
||||||
}}</a>
|
}}</a>
|
||||||
<ng-container *ngIf="!organization && r.organizationId">
|
<ng-container *ngIf="!organization && c.organizationId">
|
||||||
<i
|
<i
|
||||||
class="bwi bwi-collection"
|
class="bwi bwi-collection"
|
||||||
appStopProp
|
appStopProp
|
||||||
@@ -58,7 +61,7 @@
|
|||||||
></i>
|
></i>
|
||||||
<span class="sr-only">{{ "shared" | i18n }}</span>
|
<span class="sr-only">{{ "shared" | i18n }}</span>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-container *ngIf="r.hasAttachments">
|
<ng-container *ngIf="c.hasAttachments">
|
||||||
<i
|
<i
|
||||||
class="bwi bwi-paperclip"
|
class="bwi bwi-paperclip"
|
||||||
appStopProp
|
appStopProp
|
||||||
@@ -68,21 +71,21 @@
|
|||||||
<span class="sr-only">{{ "attachments" | i18n }}</span>
|
<span class="sr-only">{{ "attachments" | i18n }}</span>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<br />
|
<br />
|
||||||
<small>{{ r.subTitle }}</small>
|
<small>{{ c.subTitle }}</small>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<app-org-badge
|
<app-org-badge
|
||||||
*ngIf="!organization"
|
*ngIf="!organization"
|
||||||
[disabled]="disabled"
|
[disabled]="disabled"
|
||||||
[organizationId]="r.organizationId"
|
[organizationId]="c.organizationId"
|
||||||
[organizationName]="r.organizationId | orgNameFromId: (organizations$ | async)"
|
[organizationName]="c.organizationId | orgNameFromId: (organizations$ | async)"
|
||||||
appStopProp
|
appStopProp
|
||||||
>
|
>
|
||||||
</app-org-badge>
|
</app-org-badge>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</ng-template>
|
</tbody>
|
||||||
</bit-table>
|
</table>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</div>
|
</div>
|
||||||
<ng-template #cipherAddEdit></ng-template>
|
<ng-template #cipherAddEdit></ng-template>
|
||||||
|
|||||||
@@ -11,13 +11,13 @@
|
|||||||
<span class="sr-only">{{ "loading" | i18n }}</span>
|
<span class="sr-only">{{ "loading" | i18n }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-4" *ngIf="hasLoaded">
|
<div class="mt-4" *ngIf="hasLoaded">
|
||||||
<bit-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!ciphers.length">
|
<app-callout type="success" title="{{ 'goodNews' | i18n }}" *ngIf="!ciphers.length">
|
||||||
{{ "noWeakPasswords" | i18n }}
|
{{ "noWeakPasswords" | i18n }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
<ng-container *ngIf="ciphers.length">
|
<ng-container *ngIf="ciphers.length">
|
||||||
<bit-callout type="danger" title="{{ 'weakPasswordsFound' | i18n }}">
|
<app-callout type="danger" title="{{ 'weakPasswordsFound' | i18n }}">
|
||||||
{{ "weakPasswordsFoundReportDesc" | i18n: (ciphers.length | number) : vaultMsg }}
|
{{ "weakPasswordsFoundReportDesc" | i18n: (ciphers.length | number) : vaultMsg }}
|
||||||
</bit-callout>
|
</app-callout>
|
||||||
<bit-toggle-group
|
<bit-toggle-group
|
||||||
*ngIf="showFilterToggle && !isAdminConsoleActive"
|
*ngIf="showFilterToggle && !isAdminConsoleActive"
|
||||||
[selected]="filterOrgStatus$ | async"
|
[selected]="filterOrgStatus$ | async"
|
||||||
@@ -31,33 +31,36 @@
|
|||||||
</bit-toggle>
|
</bit-toggle>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</bit-toggle-group>
|
</bit-toggle-group>
|
||||||
<bit-table [dataSource]="dataSource">
|
<table class="table table-hover table-list table-ciphers">
|
||||||
<ng-container header *ngIf="!isAdminConsoleActive">
|
<thead
|
||||||
|
class="tw-border-0 tw-border-b-2 tw-border-solid tw-border-secondary-300 tw-font-bold tw-text-muted"
|
||||||
|
*ngIf="!isAdminConsoleActive"
|
||||||
|
>
|
||||||
<tr>
|
<tr>
|
||||||
<th></th>
|
<th></th>
|
||||||
<th>{{ "name" | i18n }}</th>
|
<th>{{ "name" | i18n }}</th>
|
||||||
<th>{{ "owner" | i18n }}</th>
|
<th>{{ "owner" | i18n }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
</ng-container>
|
</thead>
|
||||||
<ng-template body let-rows$>
|
<tbody>
|
||||||
<tr bitRow *ngFor="let r of rows$ | async">
|
<tr *ngFor="let c of ciphers">
|
||||||
<td bitCell>
|
<td class="table-list-icon">
|
||||||
<app-vault-icon [cipher]="r"></app-vault-icon>
|
<app-vault-icon [cipher]="c"></app-vault-icon>
|
||||||
</td>
|
</td>
|
||||||
<td class="reduced-lh wrap">
|
<td class="reduced-lh wrap">
|
||||||
<ng-container *ngIf="!organization || canManageCipher(r); else cantManage">
|
<ng-container *ngIf="!organization || canManageCipher(c); else cantManage">
|
||||||
<a
|
<a
|
||||||
href="#"
|
href="#"
|
||||||
appStopClick
|
appStopClick
|
||||||
(click)="selectCipher(r)"
|
(click)="selectCipher(c)"
|
||||||
title="{{ 'editItem' | i18n }}"
|
title="{{ 'editItem' | i18n }}"
|
||||||
>{{ r.name }}</a
|
>{{ c.name }}</a
|
||||||
>
|
>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #cantManage>
|
<ng-template #cantManage>
|
||||||
<span>{{ r.name }}</span>
|
<span>{{ c.name }}</span>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-container *ngIf="!organization && r.organizationId">
|
<ng-container *ngIf="!organization && c.organizationId">
|
||||||
<i
|
<i
|
||||||
class="bwi bwi-collection"
|
class="bwi bwi-collection"
|
||||||
appStopProp
|
appStopProp
|
||||||
@@ -66,7 +69,7 @@
|
|||||||
></i>
|
></i>
|
||||||
<span class="sr-only">{{ "shared" | i18n }}</span>
|
<span class="sr-only">{{ "shared" | i18n }}</span>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-container *ngIf="r.hasAttachments">
|
<ng-container *ngIf="c.hasAttachments">
|
||||||
<i
|
<i
|
||||||
class="bwi bwi-paperclip"
|
class="bwi bwi-paperclip"
|
||||||
appStopProp
|
appStopProp
|
||||||
@@ -76,26 +79,26 @@
|
|||||||
<span class="sr-only">{{ "attachments" | i18n }}</span>
|
<span class="sr-only">{{ "attachments" | i18n }}</span>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<br />
|
<br />
|
||||||
<small>{{ r.subTitle }}</small>
|
<small>{{ c.subTitle }}</small>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<app-org-badge
|
<app-org-badge
|
||||||
*ngIf="!organization"
|
*ngIf="!organization"
|
||||||
[disabled]="disabled"
|
[disabled]="disabled"
|
||||||
[organizationId]="r.organizationId"
|
[organizationId]="c.organizationId"
|
||||||
[organizationName]="r.organizationId | orgNameFromId: (organizations$ | async)"
|
[organizationName]="c.organizationId | orgNameFromId: (organizations$ | async)"
|
||||||
appStopProp
|
appStopProp
|
||||||
>
|
>
|
||||||
</app-org-badge>
|
</app-org-badge>
|
||||||
</td>
|
</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
<span bitBadge [variant]="passwordStrengthMap.get(r.id)[1]">
|
<span bitBadge [variant]="passwordStrengthMap.get(c.id)[1]">
|
||||||
{{ passwordStrengthMap.get(r.id)[0] | i18n }}
|
{{ passwordStrengthMap.get(c.id)[0] | i18n }}
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</ng-template>
|
</tbody>
|
||||||
</bit-table>
|
</table>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</div>
|
</div>
|
||||||
<ng-template #cipherAddEdit></ng-template>
|
<ng-template #cipherAddEdit></ng-template>
|
||||||
|
|||||||
Reference in New Issue
Block a user