Skip to content

[pm-37288] feat: Add premium upsell offer to TOTP login item view#2829

Merged
morganzellers-bw merged 7 commits into
mainfrom
pm-37288-totp-premium-upsell-offer
Jun 26, 2026
Merged

[pm-37288] feat: Add premium upsell offer to TOTP login item view#2829
morganzellers-bw merged 7 commits into
mainfrom
pm-37288-totp-premium-upsell-offer

Conversation

@morganzellers-bw

Copy link
Copy Markdown
Contributor

🎟️ Tracking

https://bitwarden.atlassian.net/browse/PM-37288

📔 Objective

Adds an upgrade offer to the "Premium subscription required" text when tapped.

📸 Screenshots

Screens IMG_0011
ScreenRecording_06-24-2026.16-28-17_1.MP4

@morganzellers-bw morganzellers-bw self-assigned this Jun 24, 2026
@github-actions github-actions Bot added the app:password-manager Bitwarden Password Manager app context label Jun 24, 2026
@morganzellers-bw morganzellers-bw marked this pull request as ready for review June 24, 2026 22:01
@morganzellers-bw morganzellers-bw requested review from a team and matt-livefront as code owners June 24, 2026 22:01
@morganzellers-bw morganzellers-bw changed the title Pm 37288 totp premium upsell offer [pm-37288] feat: Add premium upsell offer to TOTP login item view Jun 24, 2026
@github-actions

github-actions Bot commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

🤖 Bitwarden Claude Code Review

Overall Assessment: APPROVE

Reviewed the addition of a Premium upsell flow to the TOTP field on the login item view (PM-37288). The change adds a new premiumSubscriptionRequiredTapped action, a totpPremiumRequired alert that routes to the existing navigateToPremiumUpgrade helper, a "Learn more" help icon linking to a new authenticatorHelp external URL, and restructures the field to use BitwardenField's content/footer initializer. Localization keys, button styles, icon assets, and the BitwardenField initializer all exist and are used correctly, and the reused [weak self] capture and premium-upgrade wiring match established patterns in the same processor.

Code Review Details

No findings. Unit tests cover the new action, alert content, both upgrade and cancel paths, and the button tap dispatch. Snapshot tests are intentionally disabled per project convention.

@codecov

codecov Bot commented Jun 25, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 98.64865% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 81.18%. Comparing base (bf94968) to head (08a2b8a).

Files with missing lines Patch % Lines
...tem/ViewItem/ViewLoginItem/ViewLoginItemView.swift 96.55% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2829      +/-   ##
==========================================
+ Coverage   80.95%   81.18%   +0.23%     
==========================================
  Files        1024     1024              
  Lines       65673    65713      +40     
==========================================
+ Hits        53163    53348     +185     
+ Misses      12510    12365     -145     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@fedemkr fedemkr left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❓ If user pays and then has their account premium, is the view automatically updated to reflect that? or will that be part of a future PR?

@morganzellers-bw morganzellers-bw merged commit 57a08de into main Jun 26, 2026
37 checks passed
@morganzellers-bw morganzellers-bw deleted the pm-37288-totp-premium-upsell-offer branch June 26, 2026 16:45
@morganzellers-bw

Copy link
Copy Markdown
Contributor Author

❓ If user pays and then has their account premium, is the view automatically updated to reflect that? or will that be part of a future PR?

I'll make a ticket for this and link here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

app:password-manager Bitwarden Password Manager app context t:feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants