Proje: Okul B2B App · Hub: Okul B2B App — Conventions
Hata Mesajı Yönetimi — Türkçe Hata Map’leri
SimpleErrorHandler
utils/SimpleErrorHandler.ts — Herhangi bir hata tipinden kullanıcıya Türkçe mesaj:
import { SimpleErrorHandler } from '@/utils/SimpleErrorHandler';
const userMessage = SimpleErrorHandler.getErrorMessage(error);
// İngilizce/teknik mesajları Türkçe'ye çevirirHTTP status → mesaj map:
401: “Oturum süreniz dolmuş, lütfen tekrar giriş yapın”403: “Bu işlem için yetkiniz bulunmuyor”404: “İstenen kaynak bulunamadı”422: “Gönderilen bilgilerde hata var”429: “Çok fazla istek gönderildi, lütfen bekleyin”500: “Sunucuda bir hata oluştu”ConnectionError: “İnternet bağlantınızı kontrol edin”TimeoutError: “İstek zaman aşımına uğradı, lütfen tekrar deneyin”
AuthErrorHandler
utils/AuthErrorHandler.ts — Auth akışı için özelleşmiş hata handler:
- Field priority:
['email', 'phone', 'otp', 'password', 'code'] - API’dan gelen validation hataları önceliğe göre sıralanır
Toastile gösterim için{ title, message, duration }formatı döner
Validation Hata Önceliği
Login/OTP hatalarında birden fazla field hatası olabilir. AuthErrorHandler en öncelikli alanın hatasını gösterir (email > phone > otp > password > code).
ErrorMessages.ts
utils/ErrorMessages.ts — Global hata mesajı sözlüğü. Kodda tekrar etmemek için merkezi tanım.
Related
- error-handling-pattern — servis seviyesi hata yönetimi
- network-manager-hata-siniflar — hata sınıfları