rut.ts 1.3.1 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.d.ts +5 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.min.js +1 -1
- package/dist/esm/index.d.ts +5 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.min.js +1 -1
- package/package.json +2 -2
package/dist/cjs/index.d.ts
CHANGED
|
@@ -2,12 +2,14 @@ type DecomposedRut = {
|
|
|
2
2
|
body: string;
|
|
3
3
|
verifier: string;
|
|
4
4
|
};
|
|
5
|
+
export declare const getInvalidRutError: (rut: string) => string;
|
|
6
|
+
export declare const getInvalidRutBodyError: (rutBody: string) => string;
|
|
5
7
|
declare const clean: (rut: string) => string;
|
|
6
|
-
declare const validate: (rut: string, strict?: boolean) => boolean;
|
|
7
|
-
declare const format: (rut: string, dots?: boolean) => string;
|
|
8
|
-
declare const calculateVerifier: (rut: string) => string;
|
|
9
8
|
declare const getBody: (rut: string) => string;
|
|
10
9
|
declare const getVerifier: (rut: string) => string;
|
|
11
10
|
declare const decompose: (rut: string) => DecomposedRut;
|
|
11
|
+
declare const calculateVerifier: (rutBody: string) => string;
|
|
12
|
+
declare const validate: (rut: string, strict?: boolean) => boolean;
|
|
13
|
+
declare const format: (rut: string, dots?: boolean) => string;
|
|
12
14
|
declare const generate: () => string;
|
|
13
15
|
export { validate, clean, format, calculateVerifier, getBody, getVerifier, decompose, generate };
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.generate=exports.decompose=exports.getVerifier=exports.getBody=exports.calculateVerifier=exports.format=exports.clean=exports.validate=void 0;const getInvalidRutError=e=>`String "${e}" is not valid as a RUT input
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.generate=exports.decompose=exports.getVerifier=exports.getBody=exports.calculateVerifier=exports.format=exports.clean=exports.validate=exports.getInvalidRutBodyError=exports.getInvalidRutError=void 0;const getInvalidRutError=e=>`String "${e}" is not valid as a RUT input`;exports.getInvalidRutError=getInvalidRutError;const getInvalidRutBodyError=e=>`String "${e}" is not valid as a RUT Body input`;exports.getInvalidRutBodyError=getInvalidRutBodyError;const MIN_RUT_LENGTH=8,MAX_RUT_LENGTH=9,patterns={cleaning:/^0+|[^0-9kK]+/g,rutLike:/^0*(\d{1,3}(\.?\d{3})*)-?([\dkK])$/,suspicious:/^(\d)\1?\.?(\1{3})\.?(\1{3})-?(\d|k)?$/},clean=e=>{const t=e.replace(patterns.cleaning,"").toUpperCase();if(t.length<8||t.length>9)throw new Error((0,exports.getInvalidRutError)(e));if(t.includes("K")&&t.indexOf("K")!==t.length-1)throw new Error((0,exports.getInvalidRutError)(e));return t};exports.clean=clean;const getBody=e=>clean(e).slice(0,-1);exports.getBody=getBody;const getVerifier=e=>clean(e).slice(-1);exports.getVerifier=getVerifier;const decompose=e=>({body:getBody(e),verifier:getVerifier(e)});exports.decompose=decompose;const isRutLike=e=>patterns.rutLike.test(e),isSuspicious=e=>patterns.suspicious.test(e),calculateVerifier=e=>{const t=clean(e);if(0===t.length)throw new Error((0,exports.getInvalidRutError)(e));const r=11-t.split("").reverse().reduce(((e,t,r)=>e+Number(t)*(r%6+2)),0)%11;return 11===r?"0":10===r?"K":r.toString()};exports.calculateVerifier=calculateVerifier;const validate=(e,t)=>{if(!isRutLike(e))return!1;if(t&&isSuspicious(e))return!1;const{body:r,verifier:o}=decompose(e);return calculateVerifier(r)===o};exports.validate=validate;const format=(e,t=!0)=>{if(0===e.length)return"";const r=clean(e);if(t){let e=r.slice(-4,-1)+"-"+r.substring(r.length-1);for(let t=4;t<r.length;t+=3)e=r.slice(-3-t,-t)+"."+e;return e}return r.slice(0,-1)+"-"+r.substring(r.length-1)};exports.format=format;const generate=()=>{const e=Math.floor(10000003+9e7*Math.random()).toString(),t=calculateVerifier(e);return format(e+t)};exports.generate=generate;
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -2,12 +2,14 @@ type DecomposedRut = {
|
|
|
2
2
|
body: string;
|
|
3
3
|
verifier: string;
|
|
4
4
|
};
|
|
5
|
+
export declare const getInvalidRutError: (rut: string) => string;
|
|
6
|
+
export declare const getInvalidRutBodyError: (rutBody: string) => string;
|
|
5
7
|
declare const clean: (rut: string) => string;
|
|
6
|
-
declare const validate: (rut: string, strict?: boolean) => boolean;
|
|
7
|
-
declare const format: (rut: string, dots?: boolean) => string;
|
|
8
|
-
declare const calculateVerifier: (rut: string) => string;
|
|
9
8
|
declare const getBody: (rut: string) => string;
|
|
10
9
|
declare const getVerifier: (rut: string) => string;
|
|
11
10
|
declare const decompose: (rut: string) => DecomposedRut;
|
|
11
|
+
declare const calculateVerifier: (rutBody: string) => string;
|
|
12
|
+
declare const validate: (rut: string, strict?: boolean) => boolean;
|
|
13
|
+
declare const format: (rut: string, dots?: boolean) => string;
|
|
12
14
|
declare const generate: () => string;
|
|
13
15
|
export { validate, clean, format, calculateVerifier, getBody, getVerifier, decompose, generate };
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,WAAW,GAAG,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const getInvalidRutError=e=>`String "${e}" is not valid as a RUT input
|
|
1
|
+
export const getInvalidRutError=e=>`String "${e}" is not valid as a RUT input`;export const getInvalidRutBodyError=e=>`String "${e}" is not valid as a RUT Body input`;const MIN_RUT_LENGTH=8,MAX_RUT_LENGTH=9,patterns={cleaning:/^0+|[^0-9kK]+/g,rutLike:/^0*(\d{1,3}(\.?\d{3})*)-?([\dkK])$/,suspicious:/^(\d)\1?\.?(\1{3})\.?(\1{3})-?(\d|k)?$/},clean=e=>{const t=e.replace(patterns.cleaning,"").toUpperCase();if(t.length<8||t.length>9)throw new Error(getInvalidRutError(e));if(t.includes("K")&&t.indexOf("K")!==t.length-1)throw new Error(getInvalidRutError(e));return t},getBody=e=>clean(e).slice(0,-1),getVerifier=e=>clean(e).slice(-1),decompose=e=>({body:getBody(e),verifier:getVerifier(e)}),isRutLike=e=>patterns.rutLike.test(e),isSuspicious=e=>patterns.suspicious.test(e),calculateVerifier=e=>{const t=clean(e);if(0===t.length)throw new Error(getInvalidRutError(e));const r=11-t.split("").reverse().reduce(((e,t,r)=>e+Number(t)*(r%6+2)),0)%11;return 11===r?"0":10===r?"K":r.toString()},validate=(e,t)=>{if(!isRutLike(e))return!1;if(t&&isSuspicious(e))return!1;const{body:r,verifier:i}=decompose(e);return calculateVerifier(r)===i},format=(e,t=!0)=>{if(0===e.length)return"";const r=clean(e);if(t){let e=r.slice(-4,-1)+"-"+r.substring(r.length-1);for(let t=4;t<r.length;t+=3)e=r.slice(-3-t,-t)+"."+e;return e}return r.slice(0,-1)+"-"+r.substring(r.length-1)},generate=()=>{const e=Math.floor(10000003+9e7*Math.random()).toString(),t=calculateVerifier(e);return format(e+t)};export{validate,clean,format,calculateVerifier,getBody,getVerifier,decompose,generate};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rut.ts",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "Handle chilean RUT values with ease.",
|
|
5
5
|
"author": "hansfpc",
|
|
6
6
|
"main": "./dist/cjs/index.min.js",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"build:cjs": "tsc --module commonjs --outDir dist/cjs",
|
|
14
14
|
"lint": "eslint \"{**/*,*}.{js,ts,jsx,tsx}\"",
|
|
15
15
|
"prettier": "prettier --write \"{src,tests,example/src}/**/*.{js,ts,jsx,tsx}\"",
|
|
16
|
-
"test": "jest --config
|
|
16
|
+
"test": "jest --config jest.config.js",
|
|
17
17
|
"prepare": "npm run build",
|
|
18
18
|
"prepublishOnly": "npm run test && npm run prettier && npm run lint",
|
|
19
19
|
"minify:esm": "terser dist/esm/index.js -o dist/esm/index.min.js -c -m",
|