@mdevsky/idphone
v1.0.6
Published
Utilitas untuk mengecek provider dari nomor telepon.
Readme
idphone
idphone berfungsi untuk validasi nomor tlepon indonesia
Getting Started
Prerequisites
- Node.js 14+
✨ Fitur Utama
- 📝 Validasi Nomor - Verifikasi format nomor telepon Indonesia
- 🔄 Normalisasi Dinamis - Konversi otomatis ke format 62xxxxx, 08xxxxx, +62xxxxx
- 🏢 Cek Provider - Identifikasi operator seluler (Telkomsel, Indosat, XL, dll)
- ⚡ Performa Tinggi - Proses cepat dan efisien
- 🎯 Mudah Digunakan - Syntax sederhana
📋 Format yang Didukung
idphone mendukung berbagai format nomor telepon Indonesia:
- ✅
08xxxxxxxxxx(Format lokal) - ✅
62xxxxxxxxxx(Format internasional tanpa +) - ✅
+62xxxxxxxxxx(Format internasional dengan +)
📦 Instalasi
npm install idphoneatau menggunakan yarn:
yarn add idphone🚀 Cara Penggunaan
Import Module
import { IdPhone } from "idphone";Validasi Nomor
Cek apakah nomor telepon valid:
// Validasi nomor telepon
console.log(IdPhone.isValid("085878885384")); // true
console.log(IdPhone.isValid("0085878885384")); // false (format salah)
console.log(IdPhone.isValid("081234567890")); // trueCek Provider
Identifikasi operator seluler dari nomor:
let number = new IdPhone();
// Cek provider nomor
console.log(number.checkProvider("08xxxxxx", "08"));
/*
Output:
{
number: 08xxxxxx,
provider: [indosat],
normalize: 08xxxxxx,
isValid: true,
validMessage: number is valid
}
*/Contoh Penggunaan Lengkap
import { IdPhone } from "idphone";
const phone = new IdPhone();
// Validasi dan normalisasi
const phoneNumber = "085878885384";
if (IdPhone.isValid(phoneNumber)) {
console.log("Nomor valid!");
// Cek provider
const provider = phone.checkProvider(phoneNumber);
console.log("Provider:", provider.provider); // Indosat
} else {
console.log("Nomor tidak valid!");
}📚 API Reference
IdPhone.isValid(phoneNumber)
Memvalidasi apakah nomor telepon memiliki format yang benar.
Parameters:
phoneNumber(string): Nomor telepon yang akan divalidasi
Returns:
boolean:truejika valid,falsejika tidak valid
Example:
IdPhone.isValid("089999999999"); // truecheckProvider(phoneNumber, normalizeType)
Mengidentifikasi operator seluler dari nomor telepon.
Parameters:
phoneNumber(string): Nomor telepon yang akan diceknormalizeType(string)(opsional): type normalisasi nomor
Returns:
object: Objek berisi informasi nomorprovider(array): Nama operator (Telkomsel, Indosat, XL, Axis, Three, dll)number(string): nomor yang diidentifikasinormalize(string): nomor yang telah di normalisasiisValid(boolean): hasil validasi nomorvalidMessage(string): pesan valid
Example:
const phone = new IdPhone();
phone.checkProvider("08xxxxxx");🎯 Provider yang Didukung
idphone dapat mengenali berbagai operator seluler Indonesia:
- 📱 Telkomsel (0811, 0812, 0813, 0821, 0822, 0823, 0852, 0853)
- 📱 Indosat (0814, 0815, 0816, 0855, 0856, 0857, 0858)
- 📱 XL Axiata (0817, 0818, 0819, 0859, 0877, 0878)
- 📱 Axis (0838, 0831, 0832, 0833)
- 📱 Three (0895, 0896, 0897, 0898, 0899)
- 📱 Smartfren (0881, 0882, 0883, 0884, 0885, 0886, 0887, 0888, 0889)
🛠️ Teknologi
- Runtime: Node.js
- Language: JavaScript/ES6+
- Module System: ES Modules
💡 Contoh Kasus Penggunaan
1. Validasi Form Registrasi
import { IdPhone } from "idphone";
function validateRegistrationForm(data) {
if (!IdPhone.isValid(data.phoneNumber)) {
return {
valid: false,
message: "Nomor telepon tidak valid",
};
}
return { valid: true };
}3. Analisis Provider untuk Marketing
import { IdPhone } from "idphone";
function analyzeCustomerProviders(phoneNumbers) {
const phone = new IdPhone();
const providerStats = {};
phoneNumbers.forEach((number) => {
const { provider } = phone.checkProvider(number);
providerStats[provider] = (providerStats[provider] || 0) + 1;
});
return providerStats;
}🤝 Kontribusi
Kontribusi sangat diterima! Jika Anda ingin berkontribusi:
- Fork repository ini
- Buat branch fitur baru (
git checkout -b feature/AmazingFeature) - Commit perubahan Anda (
git commit -m 'Add some AmazingFeature') - Push ke branch (
git push origin feature/AmazingFeature) - Buat Pull Request
📝 Changelog
Version 1.0.0
- ✨ Fitur validasi nomor telepon
- ✨ Normalisasi dinamis ke berbagai format
- ✨ Pengecekan provider operator seluler
- ✨ Support format 08, 62, dan +62
📄 Lisensi
Distributed under the MIT License. See LICENSE for more information.
👨💻 Author
mdevSky
- GitHub: @mdevSky
