Files
ihaleist/server/tr-text.mjs
T
hikmettan c701083642 fix: il adları kaynaklar arasında bölünüyordu (Ankara / ANKARA)
Sorun: ilan.gov.tr illeri 'Ankara' biçiminde, EKAP arşivi/DT 'ANKARA' biçiminde
veriyordu. İl filtresi birebir string karşılaştırdığı için kullanıcı 'Ankara'
seçtiğinde 161 'ANKARA' kaydı görünmüyordu. 81 ilin hepsi çift kayıtlıydı
(162 farklı il değeri).

- server/tr-text.mjs: Türkçe duyarlı titleCaseTr / normTr yardımcıları
- history-store + dt-store: il adı okunurken tek biçime indiriliyor
  (mevcut kayıtlar için de geçerli, yeniden tarama gerekmiyor)
- TenderList: il filtresi normalize karşılaştırma yapıyor (savunma katmanı)
2026-08-29 02:40:22 +03:00

22 lines
705 B
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* Türkçe metin yardımcıları.
* Kaynaklar il adını farklı yazıyor (ilan.gov.tr "Ankara", EKAP "ANKARA");
* tek biçime indirgemezsek il filtresi ve gruplamalar bölünüyor.
*/
/** "İSTANBUL" → "İstanbul", "şanlıurfa" → "Şanlıurfa" (Türkçe i/ı duyarlı) */
export function titleCaseTr(s) {
if (!s) return '';
return String(s)
.trim()
.toLocaleLowerCase('tr-TR')
.split(/(\s+|-)/)
.map((w) => (/^[\s-]*$/.test(w) ? w : w.charAt(0).toLocaleUpperCase('tr-TR') + w.slice(1)))
.join('');
}
/** Karşılaştırma için normalize (büyük harf, Türkçe duyarlı) */
export function normTr(s) {
return String(s || '').trim().toLocaleUpperCase('tr-TR');
}