import { Component, Input, OnInit } from "@angular/core"; import { MasterPasswordPolicyOptions } from "@bitwarden/common/admin-console/models/domain/master-password-policy-options"; import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.service"; import { CalloutTypes } from "@bitwarden/components"; /** * @deprecated use the CL's `CalloutComponent` instead */ @Component({ selector: "app-callout", templateUrl: "callout.component.html", }) export class DeprecatedCalloutComponent implements OnInit { @Input() type: CalloutTypes = "info"; @Input() icon: string; @Input() title: string; @Input() enforcedPolicyOptions: MasterPasswordPolicyOptions; @Input() enforcedPolicyMessage: string; @Input() useAlertRole = false; calloutStyle: string; constructor(private i18nService: I18nService) {} ngOnInit() { this.calloutStyle = this.type; if (this.enforcedPolicyMessage === undefined) { this.enforcedPolicyMessage = this.i18nService.t("masterPasswordPolicyInEffect"); } } getPasswordScoreAlertDisplay() { if (this.enforcedPolicyOptions == null) { return ""; } let str: string; switch (this.enforcedPolicyOptions.minComplexity) { case 4: str = this.i18nService.t("strong"); break; case 3: str = this.i18nService.t("good"); break; default: str = this.i18nService.t("weak"); break; } return str + " (" + this.enforcedPolicyOptions.minComplexity + ")"; } }