vOOice/VoiceInk/Services/UserDefaultsManager.swift

35 lines
1.2 KiB
Swift

import Foundation
extension UserDefaults {
enum Keys {
static let audioInputMode = "audioInputMode"
static let selectedAudioDeviceUID = "selectedAudioDeviceUID"
static let prioritizedDevices = "prioritizedDevices"
static let affiliatePromotionDismissed = "VoiceInkAffiliatePromotionDismissed"
}
// MARK: - Audio Input Mode
var audioInputModeRawValue: String? {
get { string(forKey: Keys.audioInputMode) }
set { setValue(newValue, forKey: Keys.audioInputMode) }
}
// MARK: - Selected Audio Device UID
var selectedAudioDeviceUID: String? {
get { string(forKey: Keys.selectedAudioDeviceUID) }
set { setValue(newValue, forKey: Keys.selectedAudioDeviceUID) }
}
// MARK: - Prioritized Devices
var prioritizedDevicesData: Data? {
get { data(forKey: Keys.prioritizedDevices) }
set { setValue(newValue, forKey: Keys.prioritizedDevices) }
}
// MARK: - Affiliate Promotion Dismissal
var affiliatePromotionDismissed: Bool {
get { bool(forKey: Keys.affiliatePromotionDismissed) }
set { setValue(newValue, forKey: Keys.affiliatePromotionDismissed) }
}
}