From d4eeeb8ed2879c3c9e5e5e2f7ae5ccbd4063a8a4 Mon Sep 17 00:00:00 2001 From: Alex Morask <144709477+amorask-bitwarden@users.noreply.github.com> Date: Wed, 3 Jul 2024 10:33:43 -0400 Subject: [PATCH] [AC-2805] Consolidated Billing UI Updates (#9893) * Add empty state for invoices * Make cards on create client dialog tabbable * Add space in $ / month per member * Mute text, remove (Monthly) and right align menu on clients table * Made used seats account for all users and fixed column sort for used/remaining * Resize pricing cards * Rename assignedSeats to occupiedSeats --- apps/web/src/locales/en/messages.json | 12 ++++--- .../providers/providers.module.ts | 2 +- .../create-client-dialog.component.html | 5 +-- .../clients/manage-clients.component.html | 16 ++++----- .../clients/manage-clients.component.ts | 2 ++ .../src/app/billing/providers/index.ts | 1 + libs/angular/src/billing/components/index.ts | 1 + .../invoices/invoices.component.html | 3 ++ .../invoices/no-invoices.component.ts | 36 +++++++++++++++++++ libs/angular/src/jslib.module.ts | 4 +++ .../provider-organization.response.ts | 4 +++ 11 files changed, 71 insertions(+), 15 deletions(-) create mode 100644 libs/angular/src/billing/components/invoices/no-invoices.component.ts diff --git a/apps/web/src/locales/en/messages.json b/apps/web/src/locales/en/messages.json index 8462697973c..60b5b313ac0 100644 --- a/apps/web/src/locales/en/messages.json +++ b/apps/web/src/locales/en/messages.json @@ -8511,14 +8511,18 @@ "downloadCSV": { "message": "Download CSV" }, - "billingHistoryDescription": { - "message": "Download a CSV to obtain client details for each billing date. Prorated charges are not included in the CSV and may vary from the linked invoice. For the most accurate billing details, refer to your monthly invoices.", - "description": "A paragraph on the Billing History page of the Provider Portal letting users know they can download a CSV report for their invoices that does not include prorations." - }, "monthlySubscriptionUserSeatsMessage": { "message": "Adjustments to your subscription will result in prorated charges to your billing totals on your next billing period. " }, "annualSubscriptionUserSeatsMessage": { "message": "Adjustments to your subscription will result in prorated charges on a monthly billing cycle. " + }, + "billingHistoryDescription": { + "message": "Download a CSV to obtain client details for each billing date. Prorated charges are not included in the CSV and may vary from the linked invoice. For the most accurate billing details, refer to your monthly invoices.", + "description": "A paragraph on the Billing History page of the Provider Portal letting users know they can download a CSV report for their invoices that does not include prorations." + }, + "noInvoicesToList": { + "message": "There are no invoices to list", + "description": "A paragraph on the Billing History page of the Provider Portal letting users know they can download a CSV report for their invoices that does not include prorations." } } diff --git a/bitwarden_license/bit-web/src/app/admin-console/providers/providers.module.ts b/bitwarden_license/bit-web/src/app/admin-console/providers/providers.module.ts index 46adf44d5a3..d17c973181f 100644 --- a/bitwarden_license/bit-web/src/app/admin-console/providers/providers.module.ts +++ b/bitwarden_license/bit-web/src/app/admin-console/providers/providers.module.ts @@ -19,8 +19,8 @@ import { ProviderPaymentMethodComponent, ProviderSelectPaymentMethodDialogComponent, ProviderSubscriptionComponent, + ProviderSubscriptionStatusComponent, } from "../../billing/providers"; -import { ProviderSubscriptionStatusComponent } from "../../billing/providers/subscription/provider-subscription-status.component"; import { AddOrganizationComponent } from "./clients/add-organization.component"; import { ClientsComponent } from "./clients/clients.component"; diff --git a/bitwarden_license/bit-web/src/app/billing/providers/clients/create-client-dialog.component.html b/bitwarden_license/bit-web/src/app/billing/providers/clients/create-client-dialog.component.html index 8a22e964d43..c4b5ec40462 100644 --- a/bitwarden_license/bit-web/src/app/billing/providers/clients/create-client-dialog.component.html +++ b/bitwarden_license/bit-web/src/app/billing/providers/clients/create-client-dialog.component.html @@ -17,6 +17,7 @@ *ngFor="let planCard of planCards" [ngClass]="getPlanCardContainerClasses(planCard.selected)" (click)="selectPlan(planCard.name)" + tabindex="0" >
{{ "selected" | i18n }}
-
+

{{ planCard.name }}

{{ planCard.cost | currency: "$" }} - /{{ "monthPerMember" | i18n }} + / {{ "monthPerMember" | i18n }}
diff --git a/bitwarden_license/bit-web/src/app/billing/providers/clients/manage-clients.component.html b/bitwarden_license/bit-web/src/app/billing/providers/clients/manage-clients.component.html index 2468f9df1af..caf07e49734 100644 --- a/bitwarden_license/bit-web/src/app/billing/providers/clients/manage-clients.component.html +++ b/bitwarden_license/bit-web/src/app/billing/providers/clients/manage-clients.component.html @@ -28,8 +28,8 @@ {{ "client" | i18n }} {{ "assigned" | i18n }} - {{ "used" | i18n }} - {{ "remaining" | i18n }} + {{ "used" | i18n }} + {{ "remaining" | i18n }} {{ "billingPlan" | i18n }} @@ -47,18 +47,18 @@ - {{ client.seats }} + {{ client.seats }} - {{ client.userCount }} + {{ client.assignedSeats }} - {{ client.seats - client.userCount }} + {{ client.remainingSeats }} - - {{ client.plan }} + + {{ removeMonthly(client.plan) }} - +