cpf-check
Version:
Validador de CPF Moderno, Isomórfico e Super Leve.
2 lines (1 loc) • 799 B
JavaScript
var r=/^(\d{3})(.|-)?(\d{3})(.|-)?(\d{3})(.|-)?(\d{2})$/;function t(r){var t=r.map(function(t,n){return(r.length+1-n)*t}).reduce(function(r,t){return r+t},0)%11;return t<2?0:11-t}function n(r){return(""+r).replace(/\D/g,"")}function e(t){var e=n(t).substr(0,11).replace(r,"$1.$3.$5-$7");return 14===e.length?e:""}function a(r){var e=n(r);if(11!==e.length)return!1;var a=e.split("").map(function(r){return parseInt(r,10)});return!a.every(function(r){return r===a[0]})&&a[9]===t(a.slice(0,9))&&a[10]===t(a.slice(0,10))}function u(r){var n=Array(9).fill(0).map(function(){return Math.floor(9*Math.random())}),a=t(n),u=""+n.join("")+a+t(n.concat(a));return r?e(u):u}var o={strip:n,format:e,validate:a,generate:u};exports.strip=n,exports.format=e,exports.validate=a,exports.generate=u,exports.default=o;