diff --git a/MiniScanner/Extensions/UIFont+Extensions.swift b/MiniScanner/Extensions/UIFont+Extensions.swift
index faf282ea5c0a916efcbc9461b8dc2cbe43dd7f63..be5be8a48dca22cd42c37264658426dd210ba33b 100644
--- a/MiniScanner/Extensions/UIFont+Extensions.swift
+++ b/MiniScanner/Extensions/UIFont+Extensions.swift
@@ -36,24 +36,49 @@ extension UIFont {
             case extralight = "Tajawal-ExtraLight"
         }
         
+        static let fonts: [SupportedLanguage: [UIFont.AppFont: String]] = {
+            let arabic = UIFont.AppFont.Arabic.self
+            let english = UIFont.AppFont.English.self
+            
+            var fonts: [SupportedLanguage: [UIFont.AppFont: String]] = [:]
+            
+            fonts[.english] = [.extrabold: english.bold.rawValue,
+                               .bold: english.bold.rawValue,
+                               .black: english.bold.rawValue,
+                               .medium: english.medium.rawValue,
+                               .regular: english.regular.rawValue,
+                               .light: english.regular.rawValue,
+                               .extralight: english.regular.rawValue]
+            
+            fonts[.arabic] = [.extrabold: arabic.extrabold.rawValue,
+                              .bold: arabic.bold.rawValue,
+                              .black: arabic.black.rawValue,
+                              .medium: arabic.medium.rawValue,
+                              .regular: arabic.regular.rawValue,
+                              .light: arabic.light.rawValue,
+                              .extralight: arabic.extralight.rawValue]
+            return fonts
+        }()
+        
         func font() -> String {
-            switch self {
-            case .bold:
-                return lang == .en ? English.bold.rawValue : Arabic.bold.rawValue
-            case .regular:
-                return lang == .en ? English.regular.rawValue : Arabic.regular.rawValue
-            case .medium:
-                return lang == .en ? English.medium.rawValue : Arabic.medium.rawValue
-            case .light:
-                return lang == .en ? English.regular.rawValue : Arabic.light.rawValue
-            case .extrabold:
-                return lang == .en ? English.bold.rawValue : Arabic.extrabold.rawValue
-            case .black:
-                return lang == .en ? English.bold.rawValue : Arabic.black.rawValue
-            case .extralight:
-                return lang == .en ? English.regular.rawValue : Arabic.extralight.rawValue
-
-            }
+            return UIFont.AppFont.fonts[SupportedLanguage.currentLanguage]![self]!
+            
+//            switch self {
+//            case .bold:
+//                return lang == .english ? English.bold.rawValue : Arabic.bold.rawValue
+//            case .regular:
+//                return lang == .english ? English.regular.rawValue : Arabic.regular.rawValue
+//            case .medium:
+//                return lang == .english ? English.medium.rawValue : Arabic.medium.rawValue
+//            case .light:
+//                return lang == .english ? English.regular.rawValue : Arabic.light.rawValue
+//            case .extrabold:
+//                return lang == .english ? English.bold.rawValue : Arabic.extrabold.rawValue
+//            case .black:
+//                return lang == .english ? English.bold.rawValue : Arabic.black.rawValue
+//            case .extralight:
+//                return lang == .english ? English.regular.rawValue : Arabic.extralight.rawValue
+//            }
         }
     }
 }
diff --git a/MiniScanner/Features/Common/Data/Model/SupportedLanguage.swift b/MiniScanner/Features/Common/Data/Model/SupportedLanguage.swift
index c40c440a0b0a5f337f7b4f32618d09e934821ec3..a518457d0ca2addc0a7af350c9ccad2e936c8ca4 100644
--- a/MiniScanner/Features/Common/Data/Model/SupportedLanguage.swift
+++ b/MiniScanner/Features/Common/Data/Model/SupportedLanguage.swift
@@ -18,7 +18,7 @@ enum SupportedLanguage: CaseIterable {
     var flag: String {
         switch self {
         case .device:
-            return deviceLanguage.flag
+            return SupportedLanguage.currentLanguage.flag
         case .english:
             return "🇺🇸"
         case .arabic:
@@ -26,8 +26,8 @@ enum SupportedLanguage: CaseIterable {
         }
     }
     
-    var deviceLanguage: SupportedLanguage {
-        .from(language: SupportedLanguage.device.language)
+    static var currentLanguage: SupportedLanguage {
+        .from(language: LanguageManager.shared.currentLanguage)
     }
 }