JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 13
  • Score
    100M100P100Q43098F
  • License MIT

A simple and lightweight package to detect information for Iranian phone numbers (mobile and landline).

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).


English Document

🇮🇷 نسخه فارسی

این کتابخانه به شما کمک می‌کند تا با دریافت یک شماره تلفن به صورت رشته، اطلاعاتی مثل **نوع شماره (موبایل یا ثابت)**، اپراتور، کد شهر/پیش‌شماره و نام شهر را استخراج کنید.

🚀 نصب (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 type will 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.

📝 Author

👨‍💻 Ali Jazbi