Settings

data class Settings(val userName: String? = null, val useDynamicColor: Boolean = true, val darkThemeConfig: DarkThemeConfig = DarkThemeConfig.FOLLOW_SYSTEM, val language: Language = Language.ENGLISH)(source)

Domain model representing user-configurable application settings.

This model encapsulates all editable user preferences for themes, appearance, and localization. Settings are persisted in DataStore via UserDataPreferences and observed by the app's theme system in JetpackApp to apply user preferences across the entire application.

Settings data flow:

Mapping extensions for layer conversion:

Usage context:

See also

DataStore preferences model for persistence

Enum representing theme configuration options

Enum representing supported languages

Repository providing settings operations See SettingsViewModel for the UI consumer.

Constructors

Link copied to clipboard
constructor(userName: String? = null, useDynamicColor: Boolean = true, darkThemeConfig: DarkThemeConfig = DarkThemeConfig.FOLLOW_SYSTEM, language: Language = Language.ENGLISH)

Properties

Link copied to clipboard

Theme preference: follow system, light, or dark (default: FOLLOW_SYSTEM).

Link copied to clipboard

App language preference (default: ENGLISH).

Link copied to clipboard

Whether to enable Material You dynamic colors (default: true).

Link copied to clipboard

Optional user name displayed in settings (nullable for unauthenticated users).