Package Exports
- iran-phone-info
- iran-phone-info/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (iran-phone-info) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
🕵️♂️ Detect Phone Number Info (Iran)
یک پکیج ساده و سبک برای تشخیص اطلاعات شماره تلفنهای ایران (موبایل و ثابت).
A simple and lightweight package for detecting information of Iranian phone numbers (mobile and landline).
🇮🇷 نسخه فارسی
این کتابخانه به شما کمک میکند تا با دریافت یک شماره تلفن به صورت رشته، اطلاعاتی مثل **نوع شماره (موبایل یا ثابت)**، اپراتور، کد شهر/پیششماره و نام شهر را استخراج کنید.
🚀 نصب (Installation)
# npm
npm install iran-phone-info✨ استفاده (Usage)
کار با این پکیج خیلی سادهست. فقط کافیه تابع detectPhoneNumberInfo رو وارد کرده و شماره تلفن رو بهش بدید.
import { detectPhoneNumberInfo } from "iran-phone-info";
// --- مثال برای شماره موبایل ---
const mobileNumber = "+989121234567";
const mobileInfo = detectPhoneNumberInfo(mobileNumber);
console.log(mobileInfo);
// خروجی:
// {
// type: "mobile",
// code: "912",
// operator: "MCI (Hamrah Aval)"
// }
// --- مثال برای شماره ثابت ---
const landlineNumber = "021-12345678";
const landlineInfo = detectPhoneNumberInfo(landlineNumber);
console.log(landlineInfo);
// خروجی:
// {
// type: "landline",
// code: "21",
// city: "Tehran"
// }📦 ورودی و خروجی (API)
ورودی (Input)
تابع یک ورودی از نوع string (رشته) قبول میکند.
این رشته میتونه شامل فاصله، خط تیره (-)، پرانتز () و پیششمارههای ایران (+98, 0098, 0) باشه. پکیج به طور خودکار اونها رو پاکسازی میکنه.
خروجی (Output)
خروجی یک object (شیء) یا null است.
فیلد (Field) |
نوع (Type) |
توضیح (Description) |
|---|---|---|
type |
string |
نوع شماره: "mobile"، "landline" یا "unknown" |
code |
string |
null |
operator |
string |
(برای موبایل) نام اپراتور |
city |
string |
(برای خط ثابت) نام شهر |
📝 نکات مهم (Notes)
- اگر ورودی نامعتبر، خالی یا خیلی کوتاه باشه، خروجی
nullخواهد بود. - اگر نوع شماره قابل تشخیص نباشه،
typeبرابر با"unknown"برگردانده میشه.
🤝 مشارکت و گزارش خطا (Contributing)
خوشحال میشم اگه پیشنهاد یا انتقادی دارید یا با خطایی مواجه شدید، اون رو از طریق بخش Issues در گیتهاب مطرح کنید.
📜 لایسنس (License)
این پروژه تحت لایسنس MIT منتشر شده است.
📝 توسعه دهنده
👨💻 Ali Jazbi
🇬🇧 English Version
A simple and lightweight package to detect information for Iranian phone numbers (mobile and landline).
🚀 Installation
# npm
npm install iran-phone-info✨ Usage
Using the package is straightforward. Just import the detectPhoneNumberInfo function and pass the phone number string to it.
import { detectPhoneNumberInfo } from "iran-phone-info";
// --- Mobile Number Example ---
const mobileNumber = "+989121234567";
const mobileInfo = detectPhoneNumberInfo(mobileNumber);
console.log(mobileInfo);
// Output:
// {
// type: "mobile",
// code: "912",
// operator: "MCI (Hamrahe Aval)"
// }
// --- Landline Number Example ---
const landlineNumber = "021-12345678";
const landlineInfo = detectPhoneNumberInfo(landlineNumber);
console.log(landlineInfo);
// Output:
// {
// type: "landline",
// code: "21",
// city: "Tehran"
// }📦 API
Input
The function accepts one argument of type string.
The input string can contain spaces, hyphens (-), parentheses (), and Iranian prefixes (+98, 0098, 0). The package automatically cleans these up.
Output
The function returns an object or null.
| Field | Type | Description |
|---|---|---|
type |
string |
The number type: "mobile", "landline", "unknown" |
code |
string |
null |
operator |
string |
(Optional) The name of the mobile operator. |
city |
string |
(Optional) The name of the city for landlines. |
📝 Notes
- If the input is invalid, empty, or too short, the function will return
null. - If the number type cannot be determined, the
typewill be"unknown".
🤝 Contributing
Feel free to open an issue in the GitHub Issues section if you have suggestions or encounter a bug.
📜 License
This project is licensed under the MIT License.