1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-11-24 12:06:15 +01:00

[PM-4716] [PM-4717] [AC-1799] UI Bugs around Paid Plans (#6810)

* [PM-4717] Fixed teams starter typo in trial initiation

* [PM-4716] Fixed duplicated information in enterprise plan details

* [AC-1799] Resolved unresponsive "invite members" button when adding users to org
This commit is contained in:
Conner Turnbull 2023-11-06 14:42:08 -05:00 committed by GitHub
parent ac1ab0bdcc
commit e6a09082c4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 80 additions and 69 deletions

View File

@ -431,14 +431,14 @@ export class PeopleComponent
// Click on user email: Edit Flow // Click on user email: Edit Flow
// User attempting to invite new users in a free org with max users // User attempting to invite new users in a free org with max users
if (!user && this.allUsers.length === this.organization.seats) {
// Show org upgrade modal
if ( if (
this.organization.planProductType === ProductType.Free || !user &&
this.organization.planProductType === ProductType.TeamsStarter this.allUsers.length === this.organization.seats &&
(this.organization.planProductType === ProductType.Free ||
this.organization.planProductType === ProductType.TeamsStarter)
) { ) {
// Show org upgrade modal
await this.showSeatLimitReachedDialog(); await this.showSeatLimitReachedDialog();
}
return; return;
} }

View File

@ -139,7 +139,7 @@ export class TrialInitiationComponent implements OnInit, OnDestroy {
if (this.trialFlowOrgs.includes(qParams.org)) { if (this.trialFlowOrgs.includes(qParams.org)) {
this.org = qParams.org; this.org = qParams.org;
this.orgLabel = this.titleCasePipe.transform(this.org); this.orgLabel = this.titleCasePipe.transform(this.orgDisplayName);
this.useTrialStepper = true; this.useTrialStepper = true;
this.referenceData.flow = qParams.org; this.referenceData.flow = qParams.org;

View File

@ -52,7 +52,9 @@
<label class="form-check-label" for="product{{ selectableProduct.product }}"> <label class="form-check-label" for="product{{ selectableProduct.product }}">
{{ selectableProduct.nameLocalizationKey | i18n }} {{ selectableProduct.nameLocalizationKey | i18n }}
<small class="mb-1">{{ selectableProduct.descriptionLocalizationKey | i18n : "1" }}</small> <small class="mb-1">{{ selectableProduct.descriptionLocalizationKey | i18n : "1" }}</small>
<ng-container *ngIf="selectableProduct.product === productTypes.Enterprise"> <ng-container
*ngIf="selectableProduct.product === productTypes.Enterprise; else nonEnterprisePlans"
>
<small>• {{ "includeAllTeamsFeatures" | i18n }}</small> <small>• {{ "includeAllTeamsFeatures" | i18n }}</small>
<small *ngIf="selectableProduct.hasSelfHost">• {{ "onPremHostingOptional" | i18n }}</small> <small *ngIf="selectableProduct.hasSelfHost">• {{ "onPremHostingOptional" | i18n }}</small>
<small *ngIf="selectableProduct.hasSso">• {{ "includeSsoAuthentication" | i18n }}</small> <small *ngIf="selectableProduct.hasSso">• {{ "includeSsoAuthentication" | i18n }}</small>
@ -64,9 +66,11 @@
{{ "xDayFreeTrial" | i18n : selectableProduct.trialPeriodDays }} {{ "xDayFreeTrial" | i18n : selectableProduct.trialPeriodDays }}
</small> </small>
</ng-container> </ng-container>
<ng-template #nonEnterprisePlans>
<ng-container <ng-container
*ngIf=" *ngIf="
teamsStarterPlanFeatureFlagIsEnabled && selectableProduct.product === productTypes.Teams; teamsStarterPlanFeatureFlagIsEnabled &&
selectableProduct.product === productTypes.Teams;
else fullFeatureList else fullFeatureList
" "
> >
@ -87,7 +91,8 @@
selectableProduct.product != productTypes.TeamsStarter && selectableProduct.product != productTypes.TeamsStarter &&
selectableProduct.PasswordManager.maxSeats selectableProduct.PasswordManager.maxSeats
" "
>• {{ "addShareLimitedUsers" | i18n : selectableProduct.PasswordManager.maxSeats }}</small >•
{{ "addShareLimitedUsers" | i18n : selectableProduct.PasswordManager.maxSeats }}</small
> >
<small *ngIf="!selectableProduct.PasswordManager.maxSeats" <small *ngIf="!selectableProduct.PasswordManager.maxSeats"
>• {{ "addShareUnlimitedUsers" | i18n }}</small >• {{ "addShareUnlimitedUsers" | i18n }}</small
@ -110,15 +115,20 @@
<small *ngIf="selectableProduct.PasswordManager.baseStorageGb" <small *ngIf="selectableProduct.PasswordManager.baseStorageGb"
>• >•
{{ {{
"gbEncryptedFileStorage" | i18n : selectableProduct.PasswordManager.baseStorageGb + "GB" "gbEncryptedFileStorage"
| i18n : selectableProduct.PasswordManager.baseStorageGb + "GB"
}}</small }}</small
> >
<small *ngIf="selectableProduct.hasGroups">• {{ "controlAccessWithGroups" | i18n }}</small> <small *ngIf="selectableProduct.hasGroups"
>• {{ "controlAccessWithGroups" | i18n }}</small
>
<small *ngIf="selectableProduct.hasApi">• {{ "trackAuditLogs" | i18n }}</small> <small *ngIf="selectableProduct.hasApi">• {{ "trackAuditLogs" | i18n }}</small>
<small *ngIf="selectableProduct.hasDirectory" <small *ngIf="selectableProduct.hasDirectory"
>• {{ "syncUsersFromDirectory" | i18n }}</small >• {{ "syncUsersFromDirectory" | i18n }}</small
> >
<small *ngIf="selectableProduct.hasSelfHost">• {{ "onPremHostingOptional" | i18n }}</small> <small *ngIf="selectableProduct.hasSelfHost"
>• {{ "onPremHostingOptional" | i18n }}</small
>
<small *ngIf="selectableProduct.usersGetPremium">• {{ "usersGetPremium" | i18n }}</small> <small *ngIf="selectableProduct.usersGetPremium">• {{ "usersGetPremium" | i18n }}</small>
<small *ngIf="selectableProduct.product != productTypes.Free" <small *ngIf="selectableProduct.product != productTypes.Free"
>• {{ "priorityCustomerSupport" | i18n }}</small >• {{ "priorityCustomerSupport" | i18n }}</small
@ -128,6 +138,7 @@
{{ "xDayFreeTrial" | i18n : selectableProduct.trialPeriodDays }} {{ "xDayFreeTrial" | i18n : selectableProduct.trialPeriodDays }}
</small> </small>
</ng-template> </ng-template>
</ng-template>
<span *ngIf="selectableProduct.product != productTypes.Free"> <span *ngIf="selectableProduct.product != productTypes.Free">
<ng-container *ngIf="selectableProduct.PasswordManager.basePrice && !acceptingSponsorship"> <ng-container *ngIf="selectableProduct.PasswordManager.basePrice && !acceptingSponsorship">
{{ {{