UNPKG

umay-render

Version:

Free, high-performance HTML to PDF and HTML to Image conversion SDK for both browser and Node.js

60 lines (59 loc) 3.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ErrorCodes = exports.UmayError = void 0; // src/errors.ts class UmayError extends Error { constructor( /** Standartlaştırılmış hata kodu (ErrorCodes'dan gelmeli) */ code, // Allow known codes or custom strings /** Hatanın geliştiriciye yönelik açıklaması veya iç mesaj */ message, /** API'den gelen veya SDK içinde oluşan ek detaylar (opsiyonel) */ details) { super(message); this.code = code; this.details = details; Object.setPrototypeOf(this, UmayError.prototype); this.name = "UmayError"; } } exports.UmayError = UmayError; /** * Standart Hata Kodları: Hem SDK içi hataları hem de Backend API'den beklenen hataları içerir. */ exports.ErrorCodes = { // --- SDK İç Hataları --- /** SDK'ya sağlanan girdinin validasyondan geçememesi. */ SDK_INVALID_INPUT: "SDK_INVALID_INPUT", /** SDK içinde girdi işlenirken beklenmedik bir hata oluşması. */ SDK_UNEXPECTED_PROCESSING_ERROR: "SDK_UNEXPECTED_PROCESSING_ERROR", // --- Ağ ve Bağlantı Hataları --- /** API isteği sırasında ağ hatası (örn. bağlantı kurulamadı). */ NETWORK_ERROR: "NETWORK_ERROR", /** API isteğinin zaman aşımına uğraması. */ TIMEOUT: "TIMEOUT", // Hem SDK timeout hem de backend timeout olabilir // --- Backend API Hataları (Backend'den gelen 'code' alanıyla eşleşmeli) --- /** API'nin genel bir hata döndürmesi (spesifik kod alınamadığında kullanılır). */ API_ERROR: "API_ERROR", /** API'nin bilinmeyen veya beklenmedik bir sunucu hatası vermesi. */ INTERNAL_SERVER_ERROR: "INTERNAL_SERVER_ERROR", /** Backend'in isteği doğrulayamaması (örn. eksik veya geçersiz parametre). */ VALIDATION_ERROR: "VALIDATION_ERROR", // Backend validasyon hatası /** İşlemin (navigasyon, bekleme vb.) zaman aşımına uğraması (Backend'den). */ TIMEOUT_ERROR: "TIMEOUT_ERROR", // Backend'den gelen timeout /** Belirtilen URL'ye gidilememesi (Backend'den). */ NAVIGATION_ERROR: "NAVIGATION_ERROR", /** Beklenen HTML seçicisinin bulunamaması (Backend'den). */ SELECTOR_NOT_FOUND: "SELECTOR_NOT_FOUND", /** Render işlemi sırasında sayfa bağlamının kaybolması (Backend'den). */ PAGE_CONTEXT_DESTROYED: "PAGE_CONTEXT_DESTROYED", /** Özel JS kodunun çalıştırılamaması (Backend'den). */ SCRIPT_EVAL_FAILED: "SCRIPT_EVAL_FAILED", /** Genel render/dönüştürme hatası (Backend'den). */ CONVERSION_ERROR: "CONVERSION_ERROR", /** Tarayıcı başlatılamadı (Backend'den). */ BROWSER_LAUNCH_FAILED: "BROWSER_LAUNCH_FAILED", /** Hizmet geçici olarak kullanılamıyor (örn. tarayıcı kapanıyor) (Backend'den). */ SERVICE_UNAVAILABLE: "SERVICE_UNAVAILABLE", // ... backend'den gelebilecek diğer spesifik kodlar buraya eklenebilir ... }; // 'as const' ile değerlerin string literal tipler olmasını sağlarız