validate-chilean-rut
Validate chilean ruts as easy as abc. A zero dependencies, lightweight library that normalized and validates chilean ruts. Written in typescript.
Getting started
Just install
with npm:
npm install validate-chilean-rut
yarn
yarn add validate-chilean-rut
or in a html environment with unpkg
<script crossorigin src="https://unpkg.com/validate-chilean-rut"><script/>
Documentation
validateRut: (rut: number | string) => boolean
Receives either a number or string rut and returns whether it is a valid rut or not
import { validateRut } from "validate-chilean-rut";
console.log(validateRut("96.591.760-8"));
console.log(validateRut("96591760-8"));
console.log(validateRut("965917608"));
console.log(validateRut(965917608));
console.log(validateRut("96.591.760-7"));
clearRut: (rut: number | string) => string
Receives either a number or string rut and returns a normalized rut (string)
import { clearRut } from "validate-chilean-rut";
console.log(clearRut("96.591.760-8"));
console.log(clearRut("96591760-8"));
console.log(clearRut(965917608));
getCheckDigit: (rutWithoutCheckDigit: number | string) => string
Receives rut body (everything but the "- checkDigit") either as a number or string rut and returns the check digit as string
import { getCheckDigit } from "validate-chilean-rut";
console.log(getCheckDigit("96.591.760"));
console.log(getCheckDigit(96591760));
formatRut: (rut: number | string) => string
Receives either a number or string rut and returns a formatted rut (string) with dots and dash.
import { formatRut } from "validate-chilean-rut";
console.log(formatRut("96.591.760-8"));
console.log(formatRut("96591760-8"));
console.log(formatRut(965917608));
If the rut is not valid, it will format it anyway.
Internal functions (you probably won't use them)
splitRut: (cleanRut: string) => { checkDigit: string; inverseRut: string[];}
Receives a normalized rut and returns the checkDigit and the inverse rut body as an string array
getRutSum: (stringDigitArray: string[]) => number
Receives the inverse rut body (string array) and returns the multiplication sum
getCheckDigitFromSum: (sum: number) => string
Receives the multiplication sum and returns the check digit