[PR #6852] [PM-32808] feat: Add Driver's License item type #55136

Open
opened 2026-05-01 21:05:48 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/bitwarden/android/pull/6852
Author: @SaintPatrck
Created: 4/29/2026
Status: 🔄 Open

Base: new-item-types/PM-32810_bank-accountHead: new-item-types/PM-32808_drivers-license


📝 Commits (1)

📊 Changes

34 files changed (+1370 additions, -8 deletions)

View changed files

📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchNavigation.kt (+4 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchViewModel.kt (+26 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/model/SearchType.kt (+5 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/util/SearchTypeDataExtensions.kt (+8 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/util/SearchTypeExtensions.kt (+1 -0)
app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditDriversLicenseItems.kt (+190 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditItemContent.kt (+9 -1)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditScreen.kt (+6 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditViewModel.kt (+125 -0)
app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/handlers/VaultAddEditDriversLicenseTypeHandlers.kt (+119 -0)
app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemDriversLicenseContent.kt (+290 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemScreen.kt (+20 -7)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemViewModel.kt (+57 -0)
app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/handlers/VaultDriversLicenseItemTypeHandlers.kt (+32 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingNavigation.kt (+4 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingViewModel.kt (+24 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/model/ListingItemOverflowAction.kt (+13 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/util/VaultItemListingDataExtensions.kt (+18 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/util/VaultItemListingStateExtensions.kt (+8 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/util/VaultItemListingTypeExtensions.kt (+4 -0)

...and 14 more files

📄 Description

🎟️ Tracking

PM-32808 — second Android Story under epic PM-32009 (New Item Types).

Stacked on #6851 (PM-32810 Bank Account). Review and merge order: PM-32810 → PM-32808 → PM-32806 → PM-34123 → PM-35396.

📔 Objective

Second vertical slice of the New Item Types epic for Android. Adds the Driver's License cipher type's Add/Edit form, View screen, vault listing entry, search support, and a single quick-copy overflow action ("Copy license number") on top of the Bank Account slice.

The vault list trailing action is a single quick-copy button gated on the SDK's CopyableCipherFields.DRIVERS_LICENSE_* flag (TODO(PM-32009) until the SDK exposes it). The vault list row subtitle is intentionally not formatted client-side — CipherListView.subtitle stays SDK-owned.

This Android slice consumes the canonical phase-01-04 data model with split fields (firstName/middleName/lastName, separate expirationMonth/Day/Year, issuingCountry/issuingState).

SDK dependency

The Bitwarden SDK (currently 2.0.0-6484-a19b6544) does not yet expose CipherType.DRIVERS_LICENSE, CipherListViewType.DriversLicense, or CopyableCipherFields.DRIVERS_LICENSE_*. Affected sites carry TODO(PM-32009) markers documenting the additions required before this Story can ship to production. AddEdit form, View screen, ViewModel actions, search/listing wiring, and the overflow action data class are live today and exercised by tests against synthetic state.

📸 Screenshots

UI screenshots will be added before this PR is moved out of draft.


🔄 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/6852 **Author:** [@SaintPatrck](https://github.com/SaintPatrck) **Created:** 4/29/2026 **Status:** 🔄 Open **Base:** `new-item-types/PM-32810_bank-account` ← **Head:** `new-item-types/PM-32808_drivers-license` --- ### 📝 Commits (1) - [`a563225`](https://github.com/bitwarden/android/commit/a5632251c68c103322b47baec4def6f154c711dd) [PM-32808] feat: Add Driver's License item type ### 📊 Changes **34 files changed** (+1370 additions, -8 deletions) <details> <summary>View changed files</summary> 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchNavigation.kt` (+4 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchViewModel.kt` (+26 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/model/SearchType.kt` (+5 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/util/SearchTypeDataExtensions.kt` (+8 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/util/SearchTypeExtensions.kt` (+1 -0) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditDriversLicenseItems.kt` (+190 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditItemContent.kt` (+9 -1) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditScreen.kt` (+6 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditViewModel.kt` (+125 -0) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/handlers/VaultAddEditDriversLicenseTypeHandlers.kt` (+119 -0) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemDriversLicenseContent.kt` (+290 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemScreen.kt` (+20 -7) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemViewModel.kt` (+57 -0) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/handlers/VaultDriversLicenseItemTypeHandlers.kt` (+32 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingNavigation.kt` (+4 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingViewModel.kt` (+24 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/model/ListingItemOverflowAction.kt` (+13 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/util/VaultItemListingDataExtensions.kt` (+18 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/util/VaultItemListingStateExtensions.kt` (+8 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/util/VaultItemListingTypeExtensions.kt` (+4 -0) _...and 14 more files_ </details> ### 📄 Description ## 🎟️ Tracking [PM-32808](https://bitwarden.atlassian.net/browse/PM-32808) — second Android Story under epic [PM-32009](https://bitwarden.atlassian.net/browse/PM-32009) (New Item Types). > Stacked on [#6851 (PM-32810 Bank Account)](https://github.com/bitwarden/android/pull/6851). Review and merge order: PM-32810 → **PM-32808** → PM-32806 → PM-34123 → PM-35396. ## 📔 Objective Second vertical slice of the New Item Types epic for Android. Adds the Driver's License cipher type's Add/Edit form, View screen, vault listing entry, search support, and a single quick-copy overflow action ("Copy license number") on top of the Bank Account slice. The vault list trailing action is a single quick-copy button gated on the SDK's `CopyableCipherFields.DRIVERS_LICENSE_*` flag (`TODO(PM-32009)` until the SDK exposes it). The vault list row subtitle is intentionally not formatted client-side — `CipherListView.subtitle` stays SDK-owned. This Android slice consumes the canonical phase-01-04 data model with split fields (`firstName`/`middleName`/`lastName`, separate `expirationMonth`/`Day`/`Year`, `issuingCountry`/`issuingState`). ## SDK dependency The Bitwarden SDK (currently `2.0.0-6484-a19b6544`) does not yet expose `CipherType.DRIVERS_LICENSE`, `CipherListViewType.DriversLicense`, or `CopyableCipherFields.DRIVERS_LICENSE_*`. Affected sites carry `TODO(PM-32009)` markers documenting the additions required before this Story can ship to production. AddEdit form, View screen, ViewModel actions, search/listing wiring, and the overflow action data class are live today and exercised by tests against synthetic state. ## 📸 Screenshots UI screenshots will be added before this PR is moved out of draft. [PM-32808]: https://bitwarden.atlassian.net/browse/PM-32808?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ [PM-32009]: https://bitwarden.atlassian.net/browse/PM-32009?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ --- <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-05-01 21:05:48 -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#55136