UNPKG

documentid-checksum-validator

Version:
74 lines (54 loc) 1.82 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); exports['default'] = isValid; function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var _isSupportedDocIdJs = require('./isSupportedDocId.js'); var _isSupportedDocIdJs2 = _interopRequireDefault(_isSupportedDocIdJs); var _BRCpfJs = require('./BR/cpf.js'); var _BRCpfJs2 = _interopRequireDefault(_BRCpfJs); var _BRCnpjJs = require('./BR/cnpj.js'); var _BRCnpjJs2 = _interopRequireDefault(_BRCnpjJs); var _RUInnJs = require('./RU/inn.js'); var _RUInnJs2 = _interopRequireDefault(_RUInnJs); var _RUSsnJs = require('./RU/ssn.js'); var _RUSsnJs2 = _interopRequireDefault(_RUSsnJs); var _CASinJs = require('./CA/sin.js'); var _CASinJs2 = _interopRequireDefault(_CASinJs); var validatorMap = { BR: { cpf: _BRCpfJs2['default'], cnpj: _BRCnpjJs2['default'] }, RU: { inn: _RUInnJs2['default'], ssn: _RUSsnJs2['default'] }, CA: { sin: _CASinJs2['default'] } }; function getValidator(inputCountry, inputDocName) { var country = inputCountry.toUpperCase(); var docName = inputDocName.toLowerCase(); var validator = undefined; if (validatorMap.hasOwnProperty(country) && validatorMap[country].hasOwnProperty(docName)) { validator = validatorMap[country][docName]; } return validator; } function isValid(country, docName, docId) { if (!(0, _isSupportedDocIdJs2['default'])(country, docName)) { return false; // shd throw err? } if (isNaN(docId)) { return false; } var validator = getValidator(country, docName); if (validator !== undefined) { return validator(docId); } return false; // shd throw err? } module.exports = exports['default'];