1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-15 15:53:27 +00:00

[PM-15535] User with Edit* permission can permanently delete item from more actions menu on extension (#12234)

* Added conditional to check if a cipher can be delete by user

* Added change detection on push

* Added directive to check if user can delete a cipher

* Added directive to check if user can delete a cipher

* Replaced check with directive

* removed takeUntilDestroyed
This commit is contained in:
SmithThe4th
2024-12-04 11:57:03 -05:00
committed by GitHub
parent 7e934bc6d3
commit 45db17627e
5 changed files with 50 additions and 4 deletions

View File

@@ -30,7 +30,7 @@
<button type="button" bitMenuItem (click)="restore(cipher)">
{{ "restore" | i18n }}
</button>
<button type="button" bitMenuItem (click)="delete(cipher)">
<button type="button" bitMenuItem *appCanDeleteCipher="cipher" (click)="delete(cipher)">
{{ "deleteForever" | i18n }}
</button>
</bit-menu>

View File

@@ -1,5 +1,5 @@
import { CommonModule } from "@angular/common";
import { Component, Input } from "@angular/core";
import { ChangeDetectionStrategy, Component, Input } from "@angular/core";
import { Router } from "@angular/router";
import { JslibModule } from "@bitwarden/angular/jslib.module";
@@ -17,7 +17,7 @@ import {
ToastService,
TypographyModule,
} from "@bitwarden/components";
import { PasswordRepromptService } from "@bitwarden/vault";
import { CanDeleteCipherDirective, PasswordRepromptService } from "@bitwarden/vault";
@Component({
selector: "app-trash-list-items-container",
@@ -29,10 +29,12 @@ import { PasswordRepromptService } from "@bitwarden/vault";
JslibModule,
SectionComponent,
SectionHeaderComponent,
CanDeleteCipherDirective,
MenuModule,
IconButtonModule,
TypographyModule,
],
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class TrashListItemsContainerComponent {
/**

View File

@@ -1,5 +1,5 @@
import { CommonModule } from "@angular/common";
import { Component } from "@angular/core";
import { ChangeDetectionStrategy, Component } from "@angular/core";
import { JslibModule } from "@bitwarden/angular/jslib.module";
import { CalloutModule, NoItemsModule } from "@bitwarden/components";
@@ -27,6 +27,7 @@ import { TrashListItemsContainerComponent } from "./trash-list-items-container/t
CalloutModule,
NoItemsModule,
],
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class TrashComponent {
protected deletedCiphers$ = this.vaultPopupItemsService.deletedCiphers$;