From e327aaf2478123ccf8e0b5877852712f0c58957f Mon Sep 17 00:00:00 2001 From: Andre Rosado Date: Tue, 19 May 2026 16:00:56 +0100 Subject: [PATCH] Add fill-assist-targeting-rules feature flag --- .../com/bitwarden/core/data/manager/model/FlagKey.kt | 9 +++++++++ .../com/bitwarden/core/data/manager/model/FlagKeyTest.kt | 5 +++++ .../ui/platform/components/debug/FeatureFlagListItems.kt | 4 ++++ ui/src/main/res/values/strings_non_localized.xml | 1 + 4 files changed, 19 insertions(+) diff --git a/core/src/main/kotlin/com/bitwarden/core/data/manager/model/FlagKey.kt b/core/src/main/kotlin/com/bitwarden/core/data/manager/model/FlagKey.kt index b26088d31bc..fb154982fd7 100644 --- a/core/src/main/kotlin/com/bitwarden/core/data/manager/model/FlagKey.kt +++ b/core/src/main/kotlin/com/bitwarden/core/data/manager/model/FlagKey.kt @@ -44,6 +44,7 @@ sealed class FlagKey { V2EncryptionPassword, V2EncryptionTde, NewItemTypes, + FillAssistTargetingRules, ) } } @@ -171,6 +172,14 @@ sealed class FlagKey { override val defaultValue: Boolean = false } + /** + * Data object holding the feature flag key for the Fill Assist Targeting Rules feature. + */ + data object FillAssistTargetingRules : FlagKey() { + override val keyName: String = "fill-assist-targeting-rules" + override val defaultValue: Boolean = false + } + //region Dummy keys for testing /** * Data object holding the key for a [Boolean] flag to be used in tests. diff --git a/core/src/test/kotlin/com/bitwarden/core/data/manager/model/FlagKeyTest.kt b/core/src/test/kotlin/com/bitwarden/core/data/manager/model/FlagKeyTest.kt index 5237bdf06ea..1be7c0b15b6 100644 --- a/core/src/test/kotlin/com/bitwarden/core/data/manager/model/FlagKeyTest.kt +++ b/core/src/test/kotlin/com/bitwarden/core/data/manager/model/FlagKeyTest.kt @@ -60,6 +60,10 @@ class FlagKeyTest { FlagKey.NewItemTypes.keyName, "pm-32009-new-item-types", ) + assertEquals( + FlagKey.FillAssistTargetingRules.keyName, + "fill-assist-targeting-rules", + ) } @Test @@ -79,6 +83,7 @@ class FlagKeyTest { FlagKey.V2EncryptionPassword, FlagKey.V2EncryptionTde, FlagKey.NewItemTypes, + FlagKey.FillAssistTargetingRules, ).all { !it.defaultValue }, diff --git a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/debug/FeatureFlagListItems.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/debug/FeatureFlagListItems.kt index b462fc680a3..5a6a6e9d3ff 100644 --- a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/debug/FeatureFlagListItems.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/debug/FeatureFlagListItems.kt @@ -38,6 +38,7 @@ fun FlagKey.ListItemContent( FlagKey.V2EncryptionPassword, FlagKey.V2EncryptionTde, FlagKey.NewItemTypes, + FlagKey.FillAssistTargetingRules, -> { @Suppress("UNCHECKED_CAST") BooleanFlagItem( @@ -97,4 +98,7 @@ private fun FlagKey.getDisplayLabel(): String = when (this) { FlagKey.V2EncryptionPassword -> stringResource(BitwardenString.v2_encryption_password) FlagKey.V2EncryptionTde -> stringResource(BitwardenString.v2_encryption_tde) FlagKey.NewItemTypes -> stringResource(BitwardenString.new_item_types) + FlagKey.FillAssistTargetingRules -> { + stringResource(BitwardenString.fill_assist_targeting_rules) + } } diff --git a/ui/src/main/res/values/strings_non_localized.xml b/ui/src/main/res/values/strings_non_localized.xml index 6e5575e3183..7d0d5fed944 100644 --- a/ui/src/main/res/values/strings_non_localized.xml +++ b/ui/src/main/res/values/strings_non_localized.xml @@ -52,6 +52,7 @@ V2 Encryption - JIT Password V2 Encryption - Password New Item Types + Fill Assist Targeting Rules