mobile-ios/CovidSafe/Feedback/Sources/LanguageInfoExtension.swift

32 lines
892 B
Swift
Raw Normal View History

2020-05-08 07:49:14 +00:00
// Copyright © 2020 Australian Government All rights reserved.
import Foundation
extension NSLocale {
class var languageDisplayNameOrNil: String? {
// Consider going to NSBundle preferredLocalizations to get language the user is actually seeing in the running app.
guard let languageCode = preferredLanguages[safe: 0] else {
return nil
}
return current.localizedString(forLanguageCode: languageCode)
}
class var preferredLanguageDisplayName: String? {
guard let languageDisplayName = languageDisplayNameOrNil else {
return nil
}
return languageDisplayName
}
class var infoAsDictionary: [String: NSObject] {
return ["language": preferredLanguageDisplayName as NSObject? ?? "" as NSObject]
}
}
extension Array {
fileprivate subscript (safe index: UInt) -> Element? {
return Int(index) < count ? self[Int(index)] : nil
}
}