1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-15 07:43:35 +00:00

[PM-25633] - [Defect] Fix premium badge in totp (#16373)

* fixes to premium upgrade

* revert change to dialog

* handle premium upgrade prompt redirect in AC

* use new input/output api
This commit is contained in:
Jordan Aasen
2025-09-11 12:15:29 -07:00
committed by GitHub
parent 31d5b639e9
commit db9061d120
5 changed files with 21 additions and 7 deletions

View File

@@ -1,4 +1,4 @@
import { Component } from "@angular/core";
import { Component, input, output } from "@angular/core";
import { JslibModule } from "@bitwarden/angular/jslib.module";
import { MessagingService } from "@bitwarden/common/platform/abstractions/messaging.service";
@@ -8,16 +8,24 @@ import { BadgeModule } from "@bitwarden/components";
selector: "app-premium-badge",
standalone: true,
template: `
<button type="button" *appNotPremium bitBadge variant="success" (click)="premiumRequired()">
<button type="button" *appNotPremium bitBadge variant="success" (click)="promptForPremium()">
{{ "premium" | i18n }}
</button>
`,
imports: [BadgeModule, JslibModule],
})
export class PremiumBadgeComponent {
/** Skip sending the premiumRequired message (default: false). */
skipMessaging = input(false);
onClick = output();
constructor(private messagingService: MessagingService) {}
premiumRequired() {
async promptForPremium() {
this.onClick.emit();
if (this.skipMessaging()) {
return;
}
this.messagingService.send("premiumRequired");
}
}

View File

@@ -124,7 +124,7 @@
<bit-label [appTextDrag]="totpCodeCopyObj?.totpCode">
<div class="tw-flex tw-items-center tw-gap-3">
{{ "verificationCodeTotp" | i18n }}
<app-premium-badge></app-premium-badge>
<app-premium-badge [skipMessaging]="true" (onClick)="getPremium()"></app-premium-badge>
</div>
</bit-label>
<input

View File

@@ -107,8 +107,8 @@ export class LoginCredentialsViewComponent implements OnChanges {
}
}
async getPremium(organizationId?: string) {
await this.premiumUpgradeService.promptForPremium(organizationId);
async getPremium() {
await this.premiumUpgradeService.promptForPremium(this.cipher.organizationId);
}
async pwToggleValue(passwordVisible: boolean) {