{"_id":"jquery.rut","_rev":"7-e797aa5310fb1cde7a0f5df6ed7f0087","name":"jquery.rut","description":"Plugin de jQuery para formateo y validación de RUTs.","dist-tags":{"latest":"1.1.2"},"versions":{"1.0.4":{"name":"jquery.rut","version":"1.0.4","description":"Formato y validación de RUT","main":"jquery.rut.js","repository":{"type":"git","url":"https://github.com/pablomarambio/jquery.rut"},"keywords":["jquery","rut","format","validation"],"author":{"name":"Pablo Marambio","url":"http://www.pablomarambio.cl/"},"contributors":[{"name":"Jonathan Delgado Zamorano","email":"jonad.correo@gmail.com","url":"http://jonad.in/"}],"license":"MIT","bugs":{"url":"https://github.com/pablomarambio/jquery.rut/issues"},"devDependencies":{"jquery":"2.1.1"},"homepage":"https://github.com/pablomarambio/jquery.rut","_id":"jquery.rut@1.0.4","_shasum":"bb15dc011aeb6493e3a048312ffe3729539b35af","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"alfa30","email":"jonad.correo@gmail.com"},"maintainers":[{"name":"alfa30","email":"jonad.correo@gmail.com"}],"dist":{"shasum":"bb15dc011aeb6493e3a048312ffe3729539b35af","tarball":"https://registry.npmjs.org/jquery.rut/-/jquery.rut-1.0.4.tgz","integrity":"sha512-37Jw3ZTdeDPuU+8BugsOeE2tcXEk7He8Y6crl288ERaca9FR8juvKwouLTjbrmuZr7w9toJyG0/E5hssD4w0og==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQagnBq7rEh//LC//eU2z4VUR4AEW5+6KFX+vxX2/+5wIhANYRoZ/wRHq/64oHhD63l1fxu5/XZwnM4uAnEgJvonw+"}]}},"1.1.2":{"name":"jquery.rut","version":"1.1.2","description":"Plugin de jQuery para formateo y validación de RUTs.","main":"jquery.rut.js","scripts":{"test":"karma start karma.conf.js"},"repository":{"type":"git","url":"git+https://github.com/pablomarambio/jquery.rut.git"},"keywords":["rut","chile","validate","forms"],"author":{"name":"Pablo Andrés Marambio Cathalifaud","url":"https://github.com/pablomarambio"},"contributors":[{"name":"Jonathan Delgado","url":"https://github.com/alfa30"},{"name":"Felipe Lavín Z.","url":"https://github.com/felipelavinz"},{"name":"Gerardo Buenrostro González","url":"https://github.com/blogcraft"}],"license":"MIT","bugs":{"url":"https://github.com/pablomarambio/jquery.rut/issues"},"homepage":"https://github.com/pablomarambio/jquery.rut#readme","dependencies":{},"devDependencies":{"jasmine-core":"^2.5.2","jasmine-jquery":"^2.1.1","karma":"^1.3.0","karma-chrome-launcher":"^2.0.0","karma-firefox-launcher":"^1.0.0","karma-jasmine":"^1.0.2","karma-safari-launcher":"^1.0.0","grunt":"^0.4.5","grunt-contrib-uglify":"^0.5.0","grunt-contrib-watch":"^0.6.1"},"gitHead":"859012e6d1e3d47ba0c8f8d2f9d0b7bfa59e957d","_id":"jquery.rut@1.1.2","_shasum":"d61f3df97133b0bd90aee19ebdbc644114997126","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.0.0","_npmUser":{"name":"jondotsoy","email":"hi@jon.soy"},"dist":{"shasum":"d61f3df97133b0bd90aee19ebdbc644114997126","tarball":"https://registry.npmjs.org/jquery.rut/-/jquery.rut-1.1.2.tgz","integrity":"sha512-SStieAvTmpkEloLJzMH47iKXwGCPfc2V4lT3lDOc5Dqd//CpzWbwgIHdlLZNm0SH82wh7yuo/FxyfOg7qWlT+Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3pzQsIzulNcmU/+hl+djXiuTwvqYNSEDngx6yGNGQHAIhAJx34iM0mL8WXx9jwjZ+AVofz4Slx9xyWaGHmkBhtgaH"}]},"maintainers":[{"name":"alfa30","email":"hi@jon.soy"},{"name":"jondotsoy","email":"hi@jon.soy"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/jquery.rut-1.1.2.tgz_1480510678638_0.8370935772545636"}}},"readme":"## jQuery.rut [![Code Climate](https://codeclimate.com/github/pablomarambio/jquery.rut.png)](https://codeclimate.com/github/pablomarambio/jquery.rut) [![TravisCI](https://travis-ci.org/pablomarambio/jquery.rut.svg?branch=master)](https://travis-ci.org/pablomarambio/jquery.rut/)\n\nPlugin de jQuery para formateo y validación de RUTs. Puede validar y decorar el rut *en vivo*, mientras se escribe. Testeado en distintos browsers [de forma automática](https://travis-ci.org/pablomarambio/jquery.rut/).\n\n### TL; DR (Muy largo, me da lata leer)\nBaja el archivo `jquery.rut.js` y déjalo en la raíz de tu proyecto. Linkéalo a tu html pegando esto en el head: `<script src=\"jquery.rut.js\"></script>`. Asumiendo que tu página tiene un `<input type=\"test\" id=\"rut\" name=\"rut\" />`, donde el usuario escribe el rut, puedes formatear y validar su contenido incluyendo este código al final de tu página:\n```javascript\n<script>\n$(funciton() {\n    $(\"#rut\").rut().on('rutValido', function(e, rut, dv) {\n        alert(\"El rut \" + rut + \"-\" + dv + \" es correcto\");\n    }, { minimumLength: 7} );\n}\n</script>\n```\n\n### Uso en input\n\n**Ejemplos.** Para probar la funcionalidad, descarga `jquery.rut.js` y `demo.html` en una misma carpeta y abre `demo.html`en un browser.\n\n**General.** Para activar la funcionalidad, basta invocar el método `.rut()` en objeto jQuery\n\n```javascript\n// asumiendo que la página cuenta con un input[type='text'] con \n// id \"rut\", la siguiente línea activa el plugin en dicho input.\n$(\"input#rut\").rut();\n```\n\n**Formateo y validación.** Por omisión, el plugin formatea cuando se gatilla el evento 'blur' del input, esto es, cuando pierde foco. Para formatear o validar en otro evento, el plugin debe invocarse con un valor distinto de `'blur'` para las opciones `'formatOn'` y `'validateOn'`. \n\n*Importante: Sólo se ha testeado para los eventos `'blur'` y `'keyup'`. Además, se sabe que el formato no funcionará en `'keypress'`*\n\n```javascript\n// formateará el RUT cada vez que se escriba en el campo y\n// validará cuando el texto haya cambiado\n$(\"input#rut\").rut({\n\tformatOn: 'keyup',\n    minimumLength: 8, // validar largo mínimo; default: 2\n\tvalidateOn: 'change' // si no se quiere validar, pasar null\n});\n\n// es posible pasar varios eventos separados por espacio, útil\n// para validar el rut aún cuando el browser autocomplete el campo\n$(\"input#rut\").rut({validateOn: 'change keyup'});\n\n// si no se quiere mostrar el punto para separador de miles, \n// pasar la opción useThousandsSeparator : false\n$(\"input#rut\").rut({useThousandsSeparator : false}); //formateará '145694841' como '14569484-1'\n```\n\n**Validación del largo mínimo.** Es posible parametrizar la validación del largo mínimo del RUT. Esta opción acepta un entero (por defecto su valor es `2`) o un booleano (al utilizar `true` se utiliza el valor por defecto `2`). Técnicamente, el RUT `1-9` es válido; y existen RUTs válidos de personas vivas de 3 caracteres.\n\n**Teclas omitidas.** Si se formatea en `keyup`, el sistema omite las teclas de control: flechas, borrar, shift, etc. Si no se quiere omitir esas teclas, usar la opción `ignoreControlKeys: false`.\n\nLa opción `ignoreControlKeys: false` **no** afecta la validación del RUT.\n\n```javascript\n// El sistema formateará el RUT incluso cuando se presionen teclas de control\n$(\"input#rut\").rut({formatOn: 'keyup', ignoreControlKeys: false});\n```\n\n**Eventos.** Cuando el plugin valida el RUT, gatilla uno de dos eventos: `rutValido` y `rutInvalido`. La página puede responder a estos eventos de la manera que encuentre apropiada. Por ejemplo,\n\n```javascript\n// muestra un mensaje de error cuando el rut es inválido\n$(\"input#rut\").rut().on('rutInvalido', function(e) {\n\talert(\"El rut \" + $(this).val() + \" es inválido\");\n});\n```\n\n```javascript\n// muestra un mensaje de alerta con el rut y el dígito \n// verificador cuando el RUT es válido\n$(\"input#rut\").rut().on('rutValido', function(e, rut, dv) {\n\talert(\"El rut \" + rut + \"-\" + dv + \" es correcto\");\n});\n```\n\nNotar que cuando el rut es válido, la función recibe dos argumentos adicionales, el RUT y el dígito verificador. En este caso, el RUT no vendrá formateado.\n\n### Uso con string\n\nTambién es posible formatear y validar strings que contienen un RUT.\n\n**Formateo.** Invocar la función `formatRut`, la que recibe el RUT a formatear.\n\n```javascript\nvar rut = \"145694841\";\n$.formatRut(rut); // => \"14.569.484-1\";\n\n// el segundo argumento opcional permite omitir los puntos\n$.formatRut(rut, false); // => \"14569484-1\";\n```\n\n**Validación.** Invocar la función `validateRut`, la que recibe el RUT a testear y, opcionalmente, una función para procesar el rut separado de su dígito verificador.\n\n```javascript\nvar rut = \"145694841\";\n// retorna true si es válido\nif($.validateRut(rut)) {\n\talert(\"El rut es válido!\");\n}\n// callback para recibir el RUT dividido en partes\n$.validateRut(rut, function(r, dv) {\n\t// esta función sólo se invoca si el RUT es válido\n\talert(\"El RUT es \" + r +  \"y su DV es \" + dv);\n});\n\n// la función acepta un tercer parámetro como objeto que se puede\n// utilizar para condicionar la validación del largo mínimo\nvar isValid = $.validateRut(rut, null, { minimumLength: 4 });\n\n$.validateRut(\"1-9\", function(r, dv) {\n\talert(\"nunca me verás\"); // este mensaje no aparecerá ...\n}, { minimumLength: 4 }); // ... porque los ruts de largo inferior a 4 no se consideran válidos\n```\n\n### Requisitos y limitaciones\n\n- Para usar el plugin, inclúyelo en una página que cuente con jQuery 1.4+\n- Sólo funciona con inputs de tipo texto\n\n### Contribuir\n**Lista de bugs e ideas.** Si encontraste un bug, por favor [regístralo acá](https://github.com/pablomarambio/jquery.rut/issues). El mismo lugar sirve para discutir nuevas ideas.\n\n**Patches.** Si quieres incluir un cambio tú mismo, eres bienvenido! Simplemente [crea un pull request](https://github.com/pablomarambio/jquery.rut/pulls). \n\n**Tests.** El repositorio cuenta con más de 50 tests que se corren de manera automática en Safari, Firefox y Chrome. Para correrlos, haz:\n```sh\nnpm install\nnpm test\n```\n\nPara ejecutar los tests debes tener node.js y Firefox, Chrome y Safari. Si no quieres probar en todos los browsers, puedes cambiar la lista de browsers a probar en `/karma.conf.js`.\n\nSi vas a hacer un cambio, éste debe pasar todos los tests y *debe incluir sus propios tests*. Al menos deben pasar en Firefox38, que es el browser usado por [Travis](https://travis-ci.org/pablomarambio/jquery.rut/).\n\n### Licencia\n\nEste plugin y todo el código contenido en este repositorio está regido por la licencia MIT\n\n","maintainers":[{"name":"alfa30","email":"hi@jon.soy"},{"name":"jondotsoy","email":"hi@jon.soy"}],"time":{"modified":"2022-06-19T05:23:31.264Z","created":"2014-07-14T02:25:30.596Z","1.0.4":"2014-07-14T02:25:30.596Z","1.1.2":"2016-11-30T12:57:58.857Z"},"homepage":"https://github.com/pablomarambio/jquery.rut#readme","keywords":["rut","chile","validate","forms"],"repository":{"type":"git","url":"git+https://github.com/pablomarambio/jquery.rut.git"},"contributors":[{"name":"Jonathan Delgado","url":"https://github.com/alfa30"},{"name":"Felipe Lavín Z.","url":"https://github.com/felipelavinz"},{"name":"Gerardo Buenrostro González","url":"https://github.com/blogcraft"}],"author":{"name":"Pablo Andrés Marambio Cathalifaud","url":"https://github.com/pablomarambio"},"bugs":{"url":"https://github.com/pablomarambio/jquery.rut/issues"},"license":"MIT","readmeFilename":"README.md","users":{"jondotsoy":true}}