1.0.3 • Published 7 years ago

codemeli v1.0.3

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

CodeMeli

Iranians national number (NID,SSN) parser & validator

CircleCI npm

Node.js

City codes

# Using Yarn
yarn add codemeli
# Using NPM
npm install --save codemeli

Browser

<script src="https://unpkg.com/codemeli@1.0.2" type='text/javascript'></script> 

API

This packages exports codemeli(code,returnObj) function

code

National number value. it can be string or number, both are supported.

return value

If for any reason input is invalid it will return null Otherwise It will return a formatted 10 digits code.

If returnObj is true (defaults to false) function will return an object with this fields instead:

  • code
  • parity
  • city_code
  • uid

Example

const codemeli = require('codemeli');

var inputValue='xxxxxxxxxx'; // TODO: Change this value

// Simple usage
const national_number = codemeli(inputValue);

console.log(national_number); // xxxxxxxxxx

// Object style
const national_number_obj = codemeli(inputValue, true);

/*
{
  code: 'xxxxxxxxxx',
  parity: 'x',
  city_code: 'xx',
  uid: 'xxxxxxx' 
}
*/
console.log(national_number_obj);

Algorithm

Parity checking algorithm extracted from an article from aliarash.com (Also available here)

City & State DB WIP

Unfortunately there is no public official db of city codes and there was typos in unofficial ones. I tried my best to detect typos by both comparing all of them and user comments. Here is the list of discovered references:

Please check docs/city_codes.json and docs/missing_cities.txt for more info.

Read More

Related projects

LICENSE

MIT License Copyright (c) 2017 Fandogh - Pooya Parsa

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago

1.0.0-alpha

7 years ago

0.0.0

7 years ago