* feat(billing): update cart-summary logic
Add functionality to hide breakdown and allow translation params
* tests(cart-summary): update tests and stories
* feat(pricing): Add quantity support to discount labels
* feat(pricing): discount quantity story
* Revert "feat(pricing): discount quantity story"
This reverts commit 2c00891f1f.
* Revert "feat(pricing): Add quantity support to discount labels"
This reverts commit 8350fdd90f.
* fix(cart-summary): Adjust discount text styling
* feat(pricing): adds support for hidden discount amounts
Allows hiding the formatted amount for discounts in the cart summary.
This is useful for scenarios where the discount amount is displayed
elsewhere or is not relevant to the user.
Updates the storybook to include a story demonstrating this feature.
* feat(pricing): conditionally format currency amounts to show or hide decimals
* Revert "feat(pricing): adds support for hidden discount amounts"
This reverts commit 076724276c.
* Revert "fix(cart-summary): Adjust discount text styling"
This reverts commit d02c12fc2a.
* Revert "discount translation"
* feat(pricing): add credit type to cart summary
* feat(pricing-card): Add i18n and icon component infrastructure
* feat(pricing-card): Apply i18n pipe to pricing card template
* refactor(pricing-card): Replace `<i>` tags with `<bit-icon>` in template
* test(pricing-card): Update tests for i18n and icon component changes
* docs(pricing-card): Enhance Storybook and documentation for new features
* feat(pricing-card): Adds "per user" translation key
* refactor(pricing-card): use property binding for bit-icon name
* docs(pricing-card): expand price cadence options in MDX
* fix(icon): update exports for icon types
* feat(billing): Use strongly typed BitwardenIcon for pricing card buttons
* refactor(pricing): Remove unused I18nService from PricingCardComponent
* fix(pricing): Improve pricing card button icon template null-safety
* fix(pricing-card): format update
Clarifies the description of the `price` property within the PricingCard component documentation.
No functional code changes are included.
* refactor: Update discount label typography in cart summary
* refactor(stories): Rename account credit translation key to premium subscription credit
* feat(pricing-card): update spacing for card without button
* refactor(pricing): misc
- Remove unused test file
* refactor(pricing): discount-badge.component
- Introduce new Discount union type
- Introduce Maybe type helper for T | null | undefined
- Use Discount type in the discount-badge.component
- Update the user-subscription.component to pass Discount type into the discount-badge.component
- Update spec, stories and mdx
* refactor(pricing): pricing-card.component
- Support changeDetection: ChangeDetectionStrategy.OnPush
- Update spec and mdx files
* refactor(pricing): cart-summary.component
- Introduce new Cart type
- Use Cart type as main input in cart-summary.component
- Support optional custom header template in cart-summary.component
- Support optional cart-level Discount type in cart-summary.component
- Update upgrade-payment.component to pass in new Cart type to cart-summary.component
- Update spec file, stories and mdx file
* feat(subscription): misc
- Remove unused test file
- Update jest.config.js
- Add test.setup.ts
* feat(subscription): subscription-card.component
- Add BitwardenSubscription type
- Add subscription-card.component
- Add translations
- Add spec file, stories and MDX file
* feat(subscription): storage-card.component
- Add standalone Storage type
- Add storage-card.component
- Add spec file, stories and MDX file
* feat(subscription): additional-options-card.component
- Add additional-options-card.component
- Add spec file, stories and MDX file
* fix(pricing): cart-summary.component.stories.ts lint
* fix(pricing): discount-badge.component.stories.ts lint
* fix(web): Resolve estimatedTax$ toSignal for use in cart on upgrade-payment.component
* feedback(design): Fix design issues
* Kyle's feedback
* Kyle's feedback
* cleanup: Use SubscriptionStatuses instead of string values
* feat: Add CTA disabling input to storage-card.component
* feat: Add CTA disabling input to additional-options-card.component
* The discount badge implementation
* Use existing flag
* Added the top spaces as requested
* refactor: move discount-badge to pricing library and consolidate discount classes
* fix: add CommonModule import to discount-badge component and simplify discounted amount calculation
- Add CommonModule import to discount-badge component for *ngIf directive
- Simplify discountedSubscriptionAmount to use upcomingInvoice.amount from server instead of manual calculation
* Fix the lint errors
* Story update
---------
Co-authored-by: Alex Morask <amorask@bitwarden.com>
* created shared card directive
* WIP
* use base card in anon layout
* use bit-card for pricing card component
* add base card to integration cards
* add base card to reports cards
* add base card to integration card
* use card content on report card
* use base card directive on base component
* update dirt card to use bit-card
* run prettier. fix whitespace
* add missing imports to report list stories
* add base card story and docs
* Remove legacy provider files
* Removing index files to make file re-org easier
* Move manage-clients.component and associated API invocation to AC
* Move add-existing-organization-dialog.component to AC
* Move manage-client-name-dialog.component and associated API call to AC
* Move misc clients files to AC
* Move create-client-dialog.component and associated API call to AC
* Move manage-client-subscription-dialog.component to AC
* Update provider-layout.component
* Cleanup
* Fix linting
* Add initial changes for thenew premium design
* Add the messages
* Add the new dialog modal
* Resolve the flag issue
* Added changes for redirect
* Fix the unitest errors
* Resolve the badge issue
* refactor the code base pr comments
* fix: update component with localized messages and data-testids
* fix: update documentation and mock localization logic
* fix: add new messages for cart-summary component
* feature(billing): add cart-summary component
* tests(billing): add tests for component
* feature(billing): add stories and documentation for storybook
* feature(billing): export component
* fix: add localization and remove null coalescing for PM
* fix: import localization pipe and update story for I18n Service
remove service
* fix(billing): add IconButtonModule and use lineitem name
* fix(billing): Update story props and add Family and Premium examples
* fix(billing): Add examples and table of contents do to docs
* fix(billing): update aria properties
* fix(billing): add figma link and description
* fix(billing): update docs
* fix(billing): remove optional chaining since property is already checked
* fix(billing): Update fonts and button padding
* fix(billing): Update bitIconButton size to small
* create the pricing library
* Create pricing-card.component
* Refactor the code
* feat: Add pricing card component library
* Fix the test failing error
* Address billing pr comments
* feat: Add Storybook documentation and stories for pricing-card component
* Fix some ui feedback
* Changes from the display and sizes
* feat(billing): refactor pricing card with flexible title slots and active badge
* Enhance pricing card with flexible design and button icons
* refactor: organize pricing card files into dedicated folder
* Complete pricing card enhancements with Chromatic feedback fixes
* refactor base on pr coments
* Fix the button alignment
* Update all the card to have the same height
* Fix the slot issue on the title
* Fix the Lint format issue
* Add the header in the stories book