Tarayıcı doğrulama penceresi yerine inline onay mekanizması eklendi.
Kullanıcı dosya silmek için "Sil" butonuna ilk tıkladığında buton kırmızıya
dönerek "Emin misiniz?" sorusunu gösterir ve ikinci tıklamada silme işlemini
gerçekleştirir. Bu yaklaşım kullanıcı deneyimini iyileştirir ve uygulama
tutarlılığını artırır.
Mount işlemi için "Başlatılıyor" ara durumu eklenerek kullanıcı geri bildirimi
iyileştirildi. Sunucu tarafında log seviyeleri ayrıştırılarak gerçek hatalar
bilgi mesajlarından ayırt edildi ve arayüze yansıtıldı.
Disk doluluk oranını izleyen ve otomatik temizleme yapan akıllı cache sistemi
eklendi. Streaming performansı için buffer size, VFS read ahead ve chunk size
ayarları yapılandırılabilir hale getirildi. Rclone crash durumunda otomatik
yeniden başlatma mekanizması eklendi. UI'da disk kullanım bilgileri ve VFS
cache modu görüntülenmeye başlandı.
- Rclone RC API kullanılarak dosya yüklemelerinde anlık ilerleme çubuğu eklendi.
- Arayüz üzerinden `rclone.conf` dosyası düzenlenebilir hale getirildi.
- VFS cache boyutu/yaş sınırları ve otomatik temizleme ayarı eklendi.
- Manuel yetkilendirme alanları kaldırıldı.
Dockerfile ve docker-compose yapılandırması Rclone ve FUSE için güncellendi.
Backend API'leri Rclone durumunu, ayarlarını, yetkilendirmesini ve mount işlemlerini
yönetmek için eklendi. İndirmeler tamamlandığında (Torrent, YouTube, Mail.ru)
dosyaların otomatik veya manuel olarak Google Drive'a taşınması sağlandı.
Dosya sistemi hem yerel hem de mount edilmiş GDrive yollarını destekleyecek şekilde
güncellendi. Ayarlar ve Dosyalar arayüzüne ilgili kontroller eklendi.
Hedef yolu null veya undefined olduğunda işlemin erken sonlanmasını engeller.
Hedef etiketi eksik olduğunda "Home" varsayılan değerini kullanır ve
normalizePath işlemini boş string ile devam ettirir.
URL tabanlı konum yönetimini tek bir fonksiyon altında toplayarak
tarayıcı navigasyonu ve history API olaylarının tutarlı şekilde işlenmesini
sağla. pushState ve replaceState metodlarını patch ederek özel locationchange
olayı oluşturur ve bileşen yok edildiğinde patch işlemini geri alır.
Kullanıcı arayüzünde Anime sekmesi ve oynatıcı entegrasyonu eklendi.
Sunucu tarafında Anime için özel bir veri yapısı ve API uç noktaları oluşturuldu.
- Anime içerikleri için `_anime` klasöründe ayrı metadata saklama alanı eklendi.
- Kök dizindeki (root) dosyaların çöpe taşınması ve geri yüklenmesi için
'root-trash' sistemi tanımlandı.
- TVDB sorgularında Anime için İngilizce dil tercihi uygulandı.
- Mail.ru indirmelerinde anime kapsamı (scope) desteği eklendi.
- Dosya eşleştirme arayüzü bağımsız `MatchModal` bileşenine taşındı
- `Files.svelte` ve `Transfers.svelte` yeni bileşen kullanılarak güncellendi
- Mail.ru indirmeleri için dizi adı, sezon ve bölüm eşleştirme özelliği eklendi
- `POST /api/mailru/match` endpointi ile metadata eşleştirme backend desteği sağlandı
- Dosya isimleri "DiziAdi.S01E01.mp4" formatında kaydedilmeye başlandı
Mail.ru video URL'lerini desteklemek için sunucu ve istemci tarafında
gerekli değişiklikler yapıldı.
- Sunucu tarafında Mail.ru URL çözümleme (yt-dlp) ve indirme (aria2c)
işlevselliği eklendi.
- /api/mailru/download uç noktası oluşturuldu.
- Dockerfile'a aria2c bağımlılığı eklendi.
- Kullanıcı arayüzü Mail.ru URL'lerini kabul edecek ve indirme
ilerlemesini gösterecek şekilde güncellendi.
- İndirilen dosyalar için otomatik küçük resim oluşturma eklendi.
Müzik çalar durumunu yönetmek için global store oluştur.
Özel bir mini player bileşeni ile çalma listesi ve kontrolleri ekle.
Müzik çaların uygulama genelinde kalıcı olmasını sağla.
ensureSeriesData fonksiyonuna, veri bulunamadığında candidateKeys listesini kullanarak alternatif dosya yollarının kontrol edilmesi ve ilgili metadatanın yüklenmesi sağlandı.
DEBUG_CPU, DISABLE_MEDIA_PROCESSING ve AUTO_PAUSE_ON_COMPLETE
seçenekleriyle CPU profili, medya işlem kontrolü ve otomatik
duraklatma özellikleri ekle. WebSocket temizleme işlemini
Sidebar bileşeninde refactor et.
Müzik çalar özellikleri eklenmiş ve görüntüleme modları geliştirilmiştir:
- Tam kapsamlı müzik çalar implementasyonu (play, pause, next, previous)
- İlerleme çubuğu ve süre göstergesi
- Ses kontrolü ve sessiz alma özelliği
- Liste ve ızgara (grid) görünüm modları
- Oynatma göstergeleri ve animasyonlar
- Medya süresi bilgisi için sunucu desteği
- Reduce font sizes for names and folders for better visual hierarchy
- Remove scale and translate transforms on media cards during hover/selection
- Adjust line heights and max heights to accommodate new font sizes
- Simplify card transitions to box-shadow only for smoother interactions
Kullanıcıların YouTube indirme tercihlerini yapılandırabilmesi için ayarlar
arayüzüne yeni kontroller eklendi:
- Video çözünürlüğü seçimi (1080p, 720p, 480p, 360p, 240p, 144p)
- Sadece ses indirme seçeneği
- Ayarları kaydetme/yenileme butonları
- API ile entegrasyon için load/save fonksiyonları
WebSocket bağlantısı düştüğünde otomatik yeniden bağlanma ve
geçici polling ile veri akışını sürdürme yeteneği eklendi.
Bağlantı hatalarında konsola uyarı mesajı yazdırılır ve
component kaldırıldığında timer'lar temizlenir.
Medya içeriği olan kullanıcılar için menü yapılandırmasını iyileştir.
Artık Movies, TV Shows ve Music bağlantıları "Media" başlıklı ayrı bir
bölümde gruplandırılarak daha düzenli bir gezinme deneyimi sunuluyor.
Medya içeriği yoksa bu bölüm görünmez.
Medya içeriklerini (Filmler, Diziler, Müzik) kenar çubuğunda "Media" başlığı altında ayrı bir menü bölümünde grupla. Medya içeriği varsa sadece bu bölümü göstererek gezinme hiyerarşisini iyileştir.
Menü kapanışı artık API yanıtını beklemeden gerçekleşerek kullanıcı arayüzünün
yanıt vermesini engelleyen gecikme ortadan kaldırıldı. Bu sayede geri yükleme
işlemi sırasında arayüz kilitlenmiyor ve kullanıcılar akıcı bir deneyim
yaşıyor.
Files.svelte'deki dosya işlemlerini, film ve dizi sayılarının yanı sıra çöp kutusu öğelerinin sayısını da yenileyecek şekilde günceller.
Bu, dosyalar silindiğinde veya taşındığında çöp kutusu sayısının senkronize kalmasını sağlar.
Daha güvenilir güncellemeler için sayım tabanlı depolama yerine sürüm tabanlı yenileme mekanizması kullanıldı.
Belirli TV kök dizinlerini hedeflemeyi ve seçici önbellek temizlemeyi desteklemek için medya yeniden tarama sistemi geliştirildi.
Yalnızca etkilenen dizinler için yeniden taramaları tetiklemek üzere çöp kutusu işlemleri iyileştirildi, böylece gereksiz işleme azaltıldı.