Nusantara valid adalah validator data untuk memvalidasi data sipil Indonesia seperti NIK (Nomor Induk Kewarganegaraan), NIP (Nomor Induk Pegawai Negeri Sipil), dan lain-lain.
Read in English
- Nomor ATM (Nomor Rekening)
- Nomor Seluler
- Nomor Kartu Kredit
- NIK (Nomor Induk Kependudukan)
- NIP (Nomor Induk Pegawai Negeri Sipil)
- NISN (Nomor Induk Siswa Nasional)
- NPWP (Nomor Pokok Wajib Pajak)
- TNKB (Tanda Nomor Kendaraan Bermotor)
- Nomor Telepon
- Kode Pos
Ada beberapa cara untuk meng-import paket
-
Clone repositori:
git clone https://github.com/agraris/nusantara-valid.git
-
Install menggunakan npm:
npm install nusantara-valid
-
CDN dari jsDelivr
https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/nusantara-valid.min.js
Paket berisi beberapa format untuk mendukung beberapa proses.
- /cjs/nusantara-valid.js - Modul CommonJS.
- /esm/nusantara-valid.js - Modul ES.
- /umd/nusantara-valid.js - Modul UMD. Dapat digunagan di browser menggunakan tag
script
Kami menyediakan Javascript yang sudah di-compile (nusantara-valid.js
), serta versi mini (nusantara-valid.min.js
) disetiap jenis modul. Versi Extended (nusantara-valid.extended.js
and versi mini nusantara-valid.extended.min.js
) berisi tambahan PROVINCE_DATA seperti kabupaten dan kecamatan juga beberapa tambahan API.
nusantara-valid/
└── dist/
├── cjs/
│ ├── nusantara-valid.extended.js
│ ├── nusantara-valid.extended.js.map
│ ├── nusantara-valid.extended.min.js
│ ├── nusantara-valid.extended.min.js.map
│ ├── nusantara-valid.js
│ ├── nusantara-valid.js.map
│ ├── nusantara-valid.min.js
│ └── nusantara-valid.min.js.map
├── esm/
│ ├── nusantara-valid.extended.js
│ ├── nusantara-valid.extended.js.map
│ ├── nusantara-valid.extended.min.js
│ ├── nusantara-valid.extended.min.js.map
│ ├── nusantara-valid.js
│ ├── nusantara-valid.js.map
│ ├── nusantara-valid.min.js
│ └── nusantara-valid.min.js.map
└── umd/
├── nusantara-valid.extended.js
├── nusantara-valid.extended.js.map
├── nusantara-valid.extended.min.js
├── nusantara-valid.extended.min.js.map
├── nusantara-valid.js
├── nusantara-valid.js.map
├── nusantara-valid.min.js
└── nusantara-valid.min.js.map
const NusantaraValid = require('nusantara-valid')
import NusantaraValid from './node_modules/nusantara-valid/dist/esm/nusantara-valid.js'
Lokal
<script src="../dist/umd/nusantara-valid.min.js"></script>
CDN
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/nusantara-valid.min.js"></script>
Nomor ATM (Nomor Rekening)
Result:
isValidATMNumber(atm: string);
isValidATMNumberWithComparison(atm: string, bankKey: string); isValidATMNumber('87.800.000.00');
// true
isValidATMNumberWithComparison('1230005123000', 'MDRK');
// true |
Bank
getDataBank(bankKey: string);
getDataBanks(); Result: getDataBank('BCAK');
// { key: 'BCAK', name: 'Bank Central Asia' }
getDataBanks();
// [
// { key: 'BCAK', name: 'Bank Central Asia' },
// { key: 'BCAS', name: 'Bank Central Asia Syariah' },
// { key: 'BNIK', name: 'Bank Negara Indonesia' },
// ...
// ] |
Nomor Seluler
isValidCellularNumber(cel: string);
isValidCellularNumberWithComparison(cel: string, providerKey: string);
getDataCellularNumber(cel: string);
formatCellularNumber(cel: string, int:boolean = false) Result: isValidCellularNumber('081212341234');
// true
isValidCellularNumberWithComparison('081212341234', 'TELKOMSEL');
// true
getDataCellularNumber('085612341234');
// {
// "number": "0856-1234-1234",
// "provider": {
// "key": "INDOSAT",
// "name": "Indosat Ooredoo"
// }
// }
formatCellularNumber('+6281812341234');
// '0818-1234-1234'
formatCellularNumber('085612341234', true);
// '+62856-1234-1234' |
Penyedia Layanan Seluler
getDataCellularProvider(key: string);
getDataCellularProviders(); Result: getDataCellularProvider('TELKOMSEL');
// { "key": "TELKOMSEL", "name": "Telkomsel" }
getDataCellularProviders();
// [
// { key: 'TELKOMSEL', name: 'Telkomsel' },
// { key: 'INDOSAT', name: 'Indosat Ooredoo' },
// { key: 'XL', name: 'XL Axiata' },
// ...
// ] |
Nomor Kartu Kredit
isValidCCNumber(cc: string);
formatCCNumber(cc: string); Result: isValidCCNumber('4000123456789010');
// true
isValidCCNumber('5000 1234 5678 9010');
// true
formatCCNumber('4000123456789010');
// '4000 1234 5678 9010'
formatCCNumber('5000 1234 5678 9010');
// '5000 1234 5678 9010' |
Nomor Induk Kependudukan (NIK)
isValidNIK(nik: string);
isValidNIKWithComparison(nik: string, comparison: { provinceKy?: string, birthday?: string });
getDataNIK(nik: string); Result: isValidNIK('3101011212930001');
// true
isValidNIKWithComparison('3101011212930001', { provinceKey: '31', birthday: '1993-12-12' });
// true
getDataNIK('3101011212930001');
// {
// nik: '3101011212930001',
// birthday: 2006-12-20T00:00:00.000Z,
// sex: 'Male',
// province: {
// key: '31',
// name: 'Jakarta'
// }
// } |
Nomor Induk Pegawai Negeri Sipil (NIP)
isValidNIP(nip: string); Result: isValidNIP('198512262000051001');
// true |
Nomor Induk Siswa Nasional (NISN)
isValidNISN(nisn: string); Result: isValidNISN('0061230001');
// true |
Nomor Pokok Wajib Pajak (NPWP)
isValidNPWP(npwp: string);
formatNPWP(npwp: string); Result: isValidNPWP('09.123.123.1-123.123');
// true
isValidNPWP('091231231123123');
// true
formatNPWP('091231231123123');
// '09.123.123.1-123.123' |
Provinsi
getDataProvince(key: string);
getDataProvinces(); Result: getDataProvince('34');
// { key: '34', name: 'Yogyakarta' }
getDataProvinces();
// [
// { bpsCode: '11', name: 'Aceh' },
// { bpsCode: '12', name: 'Sumatra Utara' },
// { bpsCode: '13', name: 'Sumatra Barat' },
// ...
// ] |
Tanda Nomor Kendaraan Bermotor (TNKB)
isValidTNKB(tnkb: string);
getDataTNKB(tnkb: string); Result: isValidTNKB('AB1234XYZ');
// true
getDataTNKB('AB1234XYZ');
// {
// areaCode: 'AB',
// index: 1234,
// detailedAreaCode: 'XYZ',
// province: {
// key: '34',
// name: 'Yogyakarta'
// }
// } |
Nomor Telepon
isValidTelephoneNumber(tel: string);
getDataTelephoneNumber(cel: string);
formatTelephoneNumber(tel: string, int:boolean = false) Result: isValidTelephoneNumber('0274123123');
// true
getDataTelephoneNumber('0274123123');
// {
// "number": "0274-123123",
// "origin": {
// "key": "34",
// "name": "Yogyakarta"
// }
// }
formatTelephoneNumber('0274123123');
// '0274-123123'
formatTelephoneNumber('0274123123', true);
// '+62274-123123' |
Kode Pos
isValidZIP(zip: string | number);
isValidZIPWithComparison(zip: string | number, comparison: { provinceKy?: string }); Result: isValidZIP('55264');
// true
isValidZIP(55264);
// true
isValidZIPWithComparison('55264', { provinceKey: '34' });
// true
isValidZIPWithComparison(55264, { provinceKey: '34' });
// true |
Provinsi
getDataRegenciesInProvince(provinceBPSCode: string);
getDataDistrictsInRegency(regencyBPSCode: string); Result: getDataRegenciesInProvince('31'); // Regencies and City (Kabupaten dan Kota) in Jakarta
// [
// { bpsCode: '31.01', name: 'Kepulauan Seribu' },
// { bpsCode: '31.71', name: 'Jakarta Pusat' },
// { bpsCode: '31.72', name: 'Jakarta Utara' },
// ...
// ]
getDataDistrictsInRegency('31.71'); // Districts (Kecamatan) in Jakarta Pusat
// [
// { name: 'Gambir', bpsCode: '31.71.01' },
// { name: 'Sawah Besar', bpsCode: '31.71.02' },
// { name: 'Kemayoran', bpsCode: '31.71.03' },
// ...
// ] |
Hak cipta (c) 2020 - Fajar Setya Budi.
Nusantara Valid dirilis menggunakan lisensi MIT.