tckn-utils
v1.0.0
Published
Türkiye Cumhuriyeti Kimlik Numarası (TCKN) doğrulama ve üretim araçları
Maintainers
Readme
tckn-utils
Türkiye Cumhuriyeti Kimlik Numarası (TCKN) doğrulama ve üretim araçları.
🚀 Kurulum
npm install tckn-utilsveya
bun add tckn-utils📖 Kullanım
import { verify, generate, format } from 'tckn-utils';
// TCKN Doğrulama
console.log(verify('12345678901')); // false - geçersiz TCKN
console.log(verify(12345678901)); // false - number olarak da kullanabilirsiniz
// Geçerli rastgele TCKN üretme
const randomTCKN = generate();
console.log(randomTCKN); // "98765432109" - rastgele geçerli TCKN
console.log(verify(randomTCKN)); // true - üretilen TCKN her zaman geçerlidir
// TCKN Temizleme
console.log(format('123-456-789-01')); // "12345678901" - sadece rakamlar
console.log(format('123 456 789 01')); // "12345678901" - boşluklar temizlenir🔧 API
verify(tckn: string | number): boolean
Verilen TCKN'nin geçerli olup olmadığını kontrol eder.
Parametreler:
tckn: Doğrulanacak TCKN (string veya number)
Döndürür:
boolean: TCKN geçerli isetrue, değilsefalse
Örnek:
verify('98765432109'); // true veya false
verify(98765432109); // number olarak da kabul edergenerate(): string
Geçerli rastgele bir TCKN üretir.
Döndürür:
string: 11 haneli geçerli TCKN
Örnek:
const newTCKN = generate();
console.log(newTCKN); // "12345678901" - rastgele geçerli TCKNformat(tckn: string | number): string
TCKN'yi temizler ve düzenler (sadece rakamları alır).
Parametreler:
tckn: Temizlenecek TCKN (string veya number)
Döndürür:
string: Temizlenmiş TCKN
Örnek:
format('12345678901'); // "12345678901"
format('123-456-789-01'); // "12345678901" - rakam olmayan karakterleri temizler
format('123 456 789 01'); // "12345678901" - boşlukları temizler🧮 TCKN Algoritması
TCKN algoritması şu kurallara göre çalışır:
- 11 haneli bir sayıdır
- İlk hane 0 olamaz
- 10. hane: 1, 3, 5, 7 ve 9. hanelerin toplamının 7 katından, 2, 4, 6 ve 8. hanelerin toplamının çıkarılmasıyla elde edilen değerin 10'a bölümünden kalan
- 11. hane: İlk 10 hanenin toplamının 10'a bölümünden kalan
🧪 Test
Projeyi test etmek için:
bun run dev🔨 Build
bun run build📄 Lisans
MIT
🤝 Katkıda Bulunma
Katkılarınızı bekliyoruz! Issue açabilir veya pull request gönderebilirsiniz.
