{"id":18467936,"url":"https://github.com/fdograph/rut-utilities","last_synced_at":"2025-09-12T03:06:46.105Z","repository":{"id":43455733,"uuid":"235178567","full_name":"fdograph/rut-utilities","owner":"fdograph","description":"@fdograph/rut-utilities - Utility functions to parse, validate and generate a Chilean R.U.T.","archived":false,"fork":false,"pushed_at":"2023-07-18T20:39:58.000Z","size":673,"stargazers_count":26,"open_issues_count":3,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-17T22:55:37.618Z","etag":null,"topics":["chile","chilean","javascript","npm","npm-package","rut","rut-utilities","typescript"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/@fdograph/rut-utilities","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fdograph.png","metadata":{"files":{"readme":"README-es.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-01-20T19:13:15.000Z","updated_at":"2025-03-14T20:25:19.000Z","dependencies_parsed_at":"2024-06-21T16:44:50.345Z","dependency_job_id":"1fc10d94-e7b3-493d-a1e9-2ab024ea4d65","html_url":"https://github.com/fdograph/rut-utilities","commit_stats":{"total_commits":100,"total_committers":3,"mean_commits":"33.333333333333336","dds":0.08999999999999997,"last_synced_commit":"997b673efc6bad6b7b29c28563c50b85445fb704"},"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fdograph%2Frut-utilities","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fdograph%2Frut-utilities/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fdograph%2Frut-utilities/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fdograph%2Frut-utilities/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fdograph","download_url":"https://codeload.github.com/fdograph/rut-utilities/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247824079,"owners_count":21002202,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chile","chilean","javascript","npm","npm-package","rut","rut-utilities","typescript"],"created_at":"2024-11-06T10:04:04.366Z","updated_at":"2025-04-08T10:32:19.020Z","avatar_url":"https://github.com/fdograph.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🇨🇱 Chilean Rut Utilities 🇨🇱\n\n![Coverage - Branches](badges/badge-branches.svg)\n![Coverage - Functions](badges/badge-functions.svg)\n![Coverage - Lines](badges/badge-lines.svg)\n![Coverage - Statements](badges/badge-statements.svg)\n\n## [:uk: English version](README.md)\n\n---\n\n\u003cdiv id=\"contents\"\u003e\u003c/div\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTabla de contenidos:\u003c/strong\u003e\u003c/summary\u003e\n  \n- \u003ca href=\"README.md\"\u003e:uk: English version\u003c/a\u003e\n- \u003ca href=\"#intro\"\u003e:speech_balloon: Introducción\u003c/a\u003e\n- \u003ca href=\"#getting-started\"\u003e:rocket: Cómo empezar\u003c/a\u003e\n- \u003ca href=\"#usage\"\u003e:wrench: Uso\u003c/a\u003e\n- \u003ca href=\"#license\"\u003e:page_facing_up: Licencia\u003c/a\u003e\n\u003c/details\u003e\n\n---\n\n\u003cdiv id=\"intro\"\u003e\u003c/div\u003e\n\n## :speech_balloon: Introducción\n\n\u003eSet de funciones utilitarias para generar, procesar y validar un [R.U.T. Chileno](https://es.wikipedia.org/wiki/Rol_%C3%9Anico_Tributario) completamente tipado.\n\u003e\n\u003ePensado para desarroladores que deseen interactuar, manipular of validar RUTs.\n\n\n\u003cdiv id=\"getting-started\"\u003e\u003c/div\u003e\n\n## :rocket: Cómo empezar\n\n### Npm \u0026 Yarn install:\n\n```bash\n$ npm install @fdograph/rut-utilities\n\n$ yarn add @fdograph/rut-utilities\n```\n\n\u003cdiv id=\"getting-started\"\u003e\u003c/div\u003e\n\n## :wrench: Uso\n\n\u003e `validateRut(rut?: string, noSuspicious = true) =\u003e boolean`\n\nRetorna `true` si el `string` dado corresponde a un R.U.T. válido. Esto es una cadena con forma de R.U.T. que pase la validacion de un patron the R.U.T. y que ademas pase la validacion hecha por el algoritmo matematico oficial y que no tenga el patron the un R.U.T. \"sospechoso\", estos son R.U.T. que se conforman por el mismo número repetido. Ejemplos: `44.444.444-4`, `22.222.222-2`, `3.333.333-3`, `9999999-9`\n\n\n```typescript\nimport { validateRut } from '@fdograph/rut-utilities';\n\nvalidateRut('18585543-0');\n\u003e true\n\nvalidateRut('18.585.543-0');\n\u003e true\n\nvalidateRut('9.999.999-9');\n\u003e false\n```\n\nPara evitar la validación de RUTs \"sospechosos\" es posible pasarle al método el segundo argumento como `false`. Esto cambiará el comportamiento por defecto y la validación solo tomará en cuenta el patrón de RUT básico y la validacion por el algoritmo oficial.\n\n```typescript\nimport { validateRut } from '@fdograph/rut-utilities';\n\nvalidateRut('18585543-0', false);\n\u003e true\n\nvalidateRut('18.585.543-0', false);\n\u003e true\n\nvalidateRut('9.999.999-9', false);\n\u003e true\n\nvalidateRut('44.444.444-4', false);\n\u003e true\n```\n\n---\n\n\u003e `validateRutList(ruts: Iterable\u003cstring\u003e, noSuspicious = true) =\u003e Map\u003cstring, boolean\u003e`\n\nRetorna un [Mapa](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Map) que contendrá el resultado de la validación indexada en base a cada rut.\n\n```typescript\nimport { validateRutList } from '@fdograph/rut-utilities';\n\nconst validRuts = ['7775735-k', '18585543-0', '18348353-6'];\nconst result = validateRutList(validRuts);\n\nresult.get('7775735-k');\n\u003e true\n\nresult.get(validRuts[1]);\n\u003e true\n\n```\n---\n\n\u003e `formatRut(rut?: string, format?: RutFormat = RutFormat.DASH) =\u003e string`\n\nDa formato a una cadena con `forma de rut` (Ej: `\"33.333.333-3\"`) de acuerdo al valor del parámetro `format`. En el caso de que `rut` tenga un patrón no válido se retornará la cadena intacta.\n\n```typescript\nenum RutFormat {\n\tDOTS,\n\tDASH,\n\tDOTS_DASH\n}\n```\n```typescript\nimport { formatRut, RutFormat } from '@fdograph/rut-utilities';\n\nformatRut('44.333.222-1');\n\u003e '44333222-1'\n\nformatRut('44333222-1', RutFormat.DOTS_DASH);\n\u003e '44.333.222-1'\n\nformatRut('44333222-1', RutFormat.DOTS);\n\u003e '44.333.2221'\n\nformatRut('jg7gk-1', RutFormat.DOTS);\n\u003e 'jg7gk-1'\n```\n\n---\n\n\u003e `deconstructRut(rut: string) =\u003e DeconstructedRut`\n\nDescompone un cadena con forma de RUT y retorna un objeto con los valores `digits` y `verifier`\n\n```typescript\ntype DeconstructedRut = {\n  digits: string;\n  verifier: string;\n}\n```\n\n```typescript\nimport { deconstructRut } from '@fdograph/rut-utilities';\n\nconst { digits, verifier } = deconstructRut('7775735-k');\n\nconsole.log(digits);\n\u003e '7775735'\n\nconsole.log(verifier);\n\u003e 'k'\n\n```\n---\n\nPuedes revisar el set completo de functiones utilitaria en los [Tests](src/tests/main.test.ts)\n\n\u003cdiv id=\"license\"\u003e\u003c/div\u003e\n\n## :page_facing_up: License\n\nThis project is licensed under the Apache 2.0 License - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffdograph%2Frut-utilities","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffdograph%2Frut-utilities","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffdograph%2Frut-utilities/lists"}