
- Removed YuMi/Library/ (138 MB, not tracked) - Removed YuMi/Resources/ (23 MB, not tracked) - Removed old version assets (566 files, not tracked) - Excluded Pods/, xcuserdata/ and other build artifacts - Clean repository optimized for company server deployment
62 lines
2.1 KiB
Objective-C
62 lines
2.1 KiB
Objective-C
//
|
|
// YMLanguageConfig.m
|
|
// YuMi
|
|
//
|
|
// Created by Linus on 2024/12/19.
|
|
//
|
|
|
|
#import "YMLanguageConfig.h"
|
|
|
|
@implementation YMLanguageConfig
|
|
|
|
+ (NSArray<NSDictionary *> *)supportedLanguages {
|
|
static NSArray<NSDictionary *> *languages = nil;
|
|
static dispatch_once_t onceToken;
|
|
dispatch_once(&onceToken, ^{
|
|
languages = @[
|
|
@{@"code": @"en", @"localizationCode": @"en", @"displayName": @"English", @"isRTL": @NO},
|
|
@{@"code": @"zh-Hant", @"localizationCode": @"zh-Hant", @"displayName": @"繁體中文", @"isRTL": @NO},
|
|
@{@"code": @"ar", @"localizationCode": @"ar", @"displayName": @"العربية", @"isRTL": @YES},
|
|
@{@"code": @"tr", @"localizationCode": @"tr", @"displayName": @"Türkçe", @"isRTL": @NO},
|
|
@{@"code": @"pt-BR", @"localizationCode": @"pt-BR", @"displayName": @"Português (Brasil)", @"isRTL": @NO},
|
|
@{@"code": @"es", @"localizationCode": @"es", @"displayName": @"Español", @"isRTL": @NO},
|
|
@{@"code": @"ru", @"localizationCode": @"ru", @"displayName": @"Русский", @"isRTL": @NO},
|
|
@{@"code": @"uz-UZ", @"localizationCode": @"uz-UZ", @"displayName": @"O'zbek", @"isRTL": @NO}
|
|
];
|
|
});
|
|
return languages;
|
|
}
|
|
|
|
+ (NSString *)displayNameForLanguageCode:(NSString *)languageCode {
|
|
for (NSDictionary *language in [self supportedLanguages]) {
|
|
if ([language[@"code"] isEqualToString:languageCode]) {
|
|
return language[@"displayName"];
|
|
}
|
|
}
|
|
return @"English"; // 默认返回英文
|
|
}
|
|
|
|
+ (NSString *)localizationCodeForLanguageCode:(NSString *)languageCode {
|
|
for (NSDictionary *language in [self supportedLanguages]) {
|
|
if ([language[@"code"] isEqualToString:languageCode]) {
|
|
return language[@"localizationCode"];
|
|
}
|
|
}
|
|
return @"en"; // 默认返回英文
|
|
}
|
|
|
|
+ (BOOL)isRTLanguage:(NSString *)languageCode {
|
|
for (NSDictionary *language in [self supportedLanguages]) {
|
|
if ([language[@"code"] isEqualToString:languageCode]) {
|
|
return [language[@"isRTL"] boolValue];
|
|
}
|
|
}
|
|
return NO;
|
|
}
|
|
|
|
+ (NSString *)defaultLanguage {
|
|
return @"en";
|
|
}
|
|
|
|
@end
|