[PR #3596] [CLOSED] [PM-6702] Email verification feature #41362

Closed
opened 2026-04-23 20:09:05 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/bitwarden/android/pull/3596
Author: @andrebispo5
Created: 7/22/2024
Status: Closed

Base: mainHead: pm-6702/registration-flows


📝 Commits (10+)

  • 6994ced [PM-6701] Extract environment selector to its own file for reusability
  • 6f7b6fe [PM-6701] Add start registration screen and all the navigation logic necessary in landing screen
  • 9094f6f [PM-6701] Add Complete Registration screen
  • 363998a [PM-8947] Add marketing toggle and rewrite terms and conditions UI
  • 066a352 [PM-6702] Add Check your email screen used for cloud registration flow.
  • 37822f4 [PM-6702] Fix password strength indicator component package name
  • 51f9e3f [PM-6702] Fix clickable text font weight
  • 12db5ee [PM-6702] Add AppLink support to open links sent to email to complete account registration
  • ec8c1e3 [Pm-6702] Fix AppLink flow to complete registration
  • 75c2f0e [Pm-6702] Pass arguments from AppLink to Complete registration. Compute region from url domain

📊 Changes

63 files changed (+4545 additions, -115 deletions)

View changed files

📝 app/src/main/AndroidManifest.xml (+11 -0)
📝 app/src/main/java/com/x8bit/bitwarden/MainViewModel.kt (+10 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/disk/AuthDiskSource.kt (+11 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/disk/AuthDiskSourceImpl.kt (+20 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/IdentityApi.kt (+9 -0)
app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/RegisterFinishRequestJson.kt (+64 -0)
app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/SendVerificationEmailRequestJson.kt (+24 -0)
app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/SendVerificationEmailResponseJson.kt (+44 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/IdentityService.kt (+13 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/IdentityServiceImpl.kt (+24 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/auth/repository/AuthRepository.kt (+11 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/auth/repository/AuthRepositoryImpl.kt (+62 -14)
app/src/main/java/com/x8bit/bitwarden/data/auth/repository/model/SendVerificationEmailResult.kt (+22 -0)
app/src/main/java/com/x8bit/bitwarden/data/auth/util/CompleteRegistrationDataUtils.kt (+25 -0)
app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/CompleteRegistrationData.kt (+18 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/SpecialCircumstance.kt (+9 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/platform/manager/util/SpecialCircumstanceExtensions.kt (+2 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/platform/repository/EnvironmentRepository.kt (+11 -0)
📝 app/src/main/java/com/x8bit/bitwarden/data/platform/repository/EnvironmentRepositoryImpl.kt (+11 -1)
📝 app/src/main/java/com/x8bit/bitwarden/ui/auth/feature/auth/AuthNavigation.kt (+32 -0)

...and 43 more files

📄 Description

🎟️ Tracking

PM-6701 Self-host registration
PM-6702 Cloud flow registration
PM-8947 Add support for marketing email consent

📔 Objective

Feature to separate the account creation into 2 separate steps. First step the user enter the email, name and marketing consent. The second step is the password setup. If the app is configured for a BW cloud environment, the user will receive an email to complete the registration process and access the 2 step of the flow.

📸 Screenshots

image image image

Reminders before review

  • Contributor guidelines followed
  • All formatters and local linters executed and passed
  • Written new unit and / or integration tests where applicable
  • Used internationalization (i18n) for all UI strings
  • CI builds passed
  • Communicated to DevOps any deployment requirements
  • Updated any necessary documentation or informed the documentation team

🦮 Reviewer guidelines

  • 👍 (:+1:) or similar for great changes
  • 📝 (:memo:) or ℹ️ (:information_source:) for notes or general info
  • (:question:) for questions
  • 🤔 (:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed
    issue and could potentially benefit from discussion
  • 🎨 (:art:) for suggestions / improvements
  • (:x:) or ⚠️ (:warning:) for more significant problems or concerns needing attention
  • 🌱 (:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt
  • ⛏ (:pick:) for minor or nitpick changes

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/bitwarden/android/pull/3596 **Author:** [@andrebispo5](https://github.com/andrebispo5) **Created:** 7/22/2024 **Status:** ❌ Closed **Base:** `main` ← **Head:** `pm-6702/registration-flows` --- ### 📝 Commits (10+) - [`6994ced`](https://github.com/bitwarden/android/commit/6994ced5d257f4e547e6dcb8dd02c40a95673509) [PM-6701] Extract environment selector to its own file for reusability - [`6f7b6fe`](https://github.com/bitwarden/android/commit/6f7b6fea6d3b8020b6f7055a8b33edd74049634d) [PM-6701] Add start registration screen and all the navigation logic necessary in landing screen - [`9094f6f`](https://github.com/bitwarden/android/commit/9094f6f1d0ced09416a945a014d1389304e8a625) [PM-6701] Add Complete Registration screen - [`363998a`](https://github.com/bitwarden/android/commit/363998a624860441278ce202a55fc65ace134b4c) [PM-8947] Add marketing toggle and rewrite terms and conditions UI - [`066a352`](https://github.com/bitwarden/android/commit/066a3520952ce9d52700b07e10ff372d1aba6203) [PM-6702] Add Check your email screen used for cloud registration flow. - [`37822f4`](https://github.com/bitwarden/android/commit/37822f48f5721c4072673a030db4df7b4e0aa017) [PM-6702] Fix password strength indicator component package name - [`51f9e3f`](https://github.com/bitwarden/android/commit/51f9e3f24c46d0b8e6eb574e5b8e8a94d2bcc2c2) [PM-6702] Fix clickable text font weight - [`12db5ee`](https://github.com/bitwarden/android/commit/12db5ee6109590153e106503e8ddd52bd7decd69) [PM-6702] Add AppLink support to open links sent to email to complete account registration - [`ec8c1e3`](https://github.com/bitwarden/android/commit/ec8c1e36b6d483faf062dbf2f9d33524f75f4444) [Pm-6702] Fix AppLink flow to complete registration - [`75c2f0e`](https://github.com/bitwarden/android/commit/75c2f0e97ed09762ea2743025b506d70ab6f71f2) [Pm-6702] Pass arguments from AppLink to Complete registration. Compute region from url domain ### 📊 Changes **63 files changed** (+4545 additions, -115 deletions) <details> <summary>View changed files</summary> 📝 `app/src/main/AndroidManifest.xml` (+11 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/MainViewModel.kt` (+10 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/disk/AuthDiskSource.kt` (+11 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/disk/AuthDiskSourceImpl.kt` (+20 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/IdentityApi.kt` (+9 -0) ➕ `app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/RegisterFinishRequestJson.kt` (+64 -0) ➕ `app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/SendVerificationEmailRequestJson.kt` (+24 -0) ➕ `app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/SendVerificationEmailResponseJson.kt` (+44 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/IdentityService.kt` (+13 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/IdentityServiceImpl.kt` (+24 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/auth/repository/AuthRepository.kt` (+11 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/auth/repository/AuthRepositoryImpl.kt` (+62 -14) ➕ `app/src/main/java/com/x8bit/bitwarden/data/auth/repository/model/SendVerificationEmailResult.kt` (+22 -0) ➕ `app/src/main/java/com/x8bit/bitwarden/data/auth/util/CompleteRegistrationDataUtils.kt` (+25 -0) ➕ `app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/CompleteRegistrationData.kt` (+18 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/SpecialCircumstance.kt` (+9 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/platform/manager/util/SpecialCircumstanceExtensions.kt` (+2 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/platform/repository/EnvironmentRepository.kt` (+11 -0) 📝 `app/src/main/java/com/x8bit/bitwarden/data/platform/repository/EnvironmentRepositoryImpl.kt` (+11 -1) 📝 `app/src/main/java/com/x8bit/bitwarden/ui/auth/feature/auth/AuthNavigation.kt` (+32 -0) _...and 43 more files_ </details> ### 📄 Description ## 🎟️ Tracking <!-- Paste the link to the Jira or GitHub issue or otherwise describe / point to where this change is coming from. --> [PM-6701 Self-host registration](https://bitwarden.atlassian.net/browse/PM-6701) [PM-6702 Cloud flow registration](https://bitwarden.atlassian.net/browse/PM-6702) [PM-8947 Add support for marketing email consent ](https://bitwarden.atlassian.net/browse/PM-8947) ## 📔 Objective <!-- Describe what the purpose of this PR is, for example what bug you're fixing or new feature you're adding. --> Feature to separate the account creation into 2 separate steps. First step the user enter the email, name and marketing consent. The second step is the password setup. If the app is configured for a BW cloud environment, the user will receive an email to complete the registration process and access the 2 step of the flow. ## 📸 Screenshots <!-- Required for any UI changes; delete if not applicable. Use fixed width images for better display. --> <img width="361" alt="image" src="https://github.com/user-attachments/assets/60b00062-1f44-469b-bf2d-88faa474cbfe"> <img width="362" alt="image" src="https://github.com/user-attachments/assets/3e101bd6-7591-4036-a20e-2d0db2fac5b1"> <img width="360" alt="image" src="https://github.com/user-attachments/assets/fb4612c4-deb9-46b3-9d01-7f84ae998b20"> ## ⏰ Reminders before review - Contributor guidelines followed - All formatters and local linters executed and passed - Written new unit and / or integration tests where applicable - Used internationalization (i18n) for all UI strings - CI builds passed - Communicated to DevOps any deployment requirements - Updated any necessary documentation or informed the documentation team ## 🦮 Reviewer guidelines <!-- Suggested interactions but feel free to use (or not) as you desire! --> - 👍 (`:+1:`) or similar for great changes - 📝 (`:memo:`) or ℹ️ (`:information_source:`) for notes or general info - ❓ (`:question:`) for questions - 🤔 (`:thinking:`) or 💭 (`:thought_balloon:`) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion - 🎨 (`:art:`) for suggestions / improvements - ❌ (`:x:`) or ⚠️ (`:warning:`) for more significant problems or concerns needing attention - 🌱 (`:seedling:`) or ♻️ (`:recycle:`) for future improvements or indications of technical debt - ⛏ (`:pick:`) for minor or nitpick changes --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-23 20:09:05 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/android#41362