1.1.3 • Published 2 years ago

persian-names v1.1.3

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Persian FirstName (JSON) 🇮🇷

Package of all Iranian (and Arabic) names

پکیج تمامی اسامی ایرانی (و عربی)

Using:

install:

npm install persian-names
yarn install persian-names

import:

import { PersianNames } from 'persian-names';

require:

const { PersianNames } = require('persian-names');

new class:

const persianName = new PersianNames(); //using default json file

const persianName = new PersianNames('./assets/firstname.json'); //using custom json

Examples

Validation Persian Name:

const is_name = persianName.validation('آرش');
console.log(is_name); //true  or  false

using options

const is_name = persianName.validation('امیر', {
  convertToPersian: true,
  typeCheck: 'exact',
  trimName: true,
});
console.log(is_name); //true  or  false

Get All FirstName:

const get_names = persianName.getNames();
console.log(get_names);

/*
[
   { id: 1, name: 'اَبدەَ', gender: 1, rate: 3 },
   { id: 2, name: 'اَبیش', gender: 1, rate: 3 },
   ...
]
*/

using options:

const get_names = persianName.getNames({
  genderType: 'stringFa',
  rateType: 'stringFa',
  getParamsData: {
    id: false,
    name: true,
    gender: true,
    rate: true,
  },
});
console.log(get_names);
/*
[
    { name: 'اَبدەَ', gender: 'مرد', rate: 'بسیار نادر' }
   { name: 'اَبیش', gender: 'مرد', rate: 'بسیار نادر' },
   ...
]
*/

Find Name:

const find_name = persianName.findName('زهرا');
console.log(find_name);
// return { id: 2887, name: 'زهرا', gender: 2, rate: 1 }

using options:

const find_name = persianName.findName('علی', {
  myTypeGender: {
    male: 'مردانه',
  },
  typeCheck: 'include',
});

Get Gender Name:

const get_gender_name = persianName.getGenderName('سارا', {
  genderType: 'stringFa',
});
console.log(get_gender_name);
// return { gender: 'زن' }

Include Name:

const include_name = persianName.includeName(
  'سلام من رضا هستم به همراه علی و احمد',
  {
    // options
  }
);
console.log(include_name);
/**  return {
  originalStr: 'سلام من رضا هستم به همراه علی و احمد',
  findNamesToStr: 'سلام من "رضا" هستم به همراه "علی" و "احمد"',
  names: [
    { id: 634, name: 'احمد', gender: 'male', rate: 1 },
    { id: 2399, name: 'رضا', gender: 'male', rate: 1 },
    { id: 3652, name: 'علی', gender: 'male', rate: 1 }
  ],
  length: 3
}
*/

options:

OptionsDescriptiontype supportDefault
convertToPersianconvert alphabet arabic to persianboolean,undefinedfalse
typeCheckinclude type or exact type for find name'exact','include'exact
trimNametrim name before validation (remove space and A-Z characters and emojis and ...)boolean,undefinedfalse
myTypeGendercustom gender (male,female,both) show in resultundefined, male:string, female:string, both:string,undefined
genderTypeconvert gender name for showundefined, genderTypeFa, genderTypeNumber, genderTypeArb,genderTypeNumber
rateTypeconvert rate name for showundefined, rateTypeNumber, rateTypeFarateTypeNumber
getParamsDataitems that can be displayed in the outputundefined, id:bool, name:bool, gender:bool, rate:bool,undefined

Rate Types:

valuenumberstringFa
11پر کاربردی
22معمولی
33بسیار نادر

Gender Types:

valueNumberFaArb
11مردمذکر
22زنمونث
33هردوهردو

نکات

1- ممکن است یک سری از نام ها در این کتابخانه وجود نداشته باشد. که شما می توانید از طریق این لینک پروژه تبدیل کننده آن را دریافت کنید: project که این پروژه شامل فایل اکسل آماده اسامی + کد های جاوااسکریپت برای تبدیل فایل اکسل به json است.

2- بعضی از اسامی مانند حشمت و یا احسان و... هم در مردان و هم در زنان استفاده می شود پس این کتابخانه در جواب آن به شما پاسخ 3 و یا هردو و... میدهد.

3-این کتابخانه برای سهولت در توسعه و کار کردن با آن از دیتابیس داخلی یعنی json استفاده می کند.

4- این کتابخانه تا به الان شامل 6179 عدد نام مرد و زن (عربی و فارسی) است.

5- نام هایی مثل محمد و محمدرضا و یا محمدمهدی جدا هستند و جدا حساب می شوند.


مشتاق به دریافت پیشنهادات و نظرات دوستان هستم.

✉️ email : hejazi00831@gmail.com

🌐 github : https://github.com/mohammadhejazirad