ngx-rutificador
Version:
1 lines • 13.3 kB
Source Map (JSON)
{"version":3,"file":"ngx-rutificador.mjs","sources":["../../../projects/ngx-rutificador/src/lib/ngx-rutificador.service.ts","../../../projects/ngx-rutificador/src/lib/ngx-rutificador.directive.ts","../../../projects/ngx-rutificador/src/lib/ngx-rutificador.pipe.ts","../../../projects/ngx-rutificador/src/lib/ngx-rutificador.component.ts","../../../projects/ngx-rutificador/src/lib/ngx-rutificador.component.html","../../../projects/ngx-rutificador/src/lib/ngx-rutificador.module.ts","../../../projects/ngx-rutificador/src/public-api.ts","../../../projects/ngx-rutificador/src/ngx-rutificador.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NgxRutificadorService {\r\n\r\n constructor() { }\r\n\r\n validateRut(params: string) {\r\n let value = this.cleanRut(params)\r\n let sum = 0;\r\n let rut = value.substring(0, value.length - 1);\r\n let dv = value.substring(value.length - 1);\r\n if (dv.toUpperCase() == 'K') {\r\n dv = '10'\r\n }\r\n let resultDv\r\n let arrRut = rut.split('')\r\n if (arrRut.length < 7) {\r\n return false\r\n } else {\r\n let b = 0\r\n let c = 0\r\n let arrResult: number[] = []\r\n var arrReverse = arrRut.reverse()\r\n arrReverse.map((value: string, index: number) => {\r\n if (index > 5) {\r\n arrResult[b] = Number(value) * (2 + c)\r\n c++\r\n } else {\r\n arrResult[b] = Number(value) * (2 + b)\r\n }\r\n b++\r\n })\r\n arrResult.map((value) => {\r\n sum += value\r\n })\r\n resultDv = 11 - (sum - Math.trunc(sum / 11) * 11)\r\n if (resultDv > 9 && dv == \"0\") {\r\n return true\r\n }\r\n if (resultDv == Number(dv)) {\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n }\r\n\r\n formatRut(value: string) {\r\n const rut: string = this.cleanRut(value);\r\n \r\n if (rut.length <= 1) {\r\n return rut;\r\n }\r\n \r\n let result: string = `${rut.slice(-4, -1)}-${rut.substr(rut.length - 1)}`;\r\n for (let i: number = 4; i < rut.length; i += 3) {\r\n result = `${rut.slice(-3 - i, -i)}.${result}`;\r\n }\r\n \r\n return result;\r\n }\r\n\r\n cleanRut(num: number | string): string {\r\n let value = num.toString().split('.').join('').split('-').join('')\r\n return value\r\n }\r\n}\r\n","import { Directive, EventEmitter, Output } from '@angular/core';\r\nimport { NgxRutificadorService } from './ngx-rutificador.service';\r\n\r\n@Directive({\r\n selector: '[ngxRutificador]',\r\n standalone: true,\r\n host: {\r\n '(input)': 'onChange($event)',\r\n '(blur)': 'onBlur($event)',\r\n '(focus)': 'onFocus($event)',\r\n }\r\n})\r\nexport class NgxRutificadorDirective {\r\n @Output() public valueChange: EventEmitter<any>\r\n\r\n constructor(\r\n private ngxRutificadorService: NgxRutificadorService\r\n ) { \r\n this.valueChange = new EventEmitter() \r\n }\r\n\r\n public onFocus(ev: Event){\r\n const htmlInputElement: HTMLInputElement = <HTMLInputElement> ev.target;\r\n htmlInputElement.value = this.ngxRutificadorService.cleanRut(htmlInputElement.value.trim())\r\n this.valueChange.emit(htmlInputElement.value)\r\n }\r\n\r\n public onBlur(ev: Event){\r\n const htmlInputElement: HTMLInputElement = <HTMLInputElement> ev.target;\r\n htmlInputElement.value = this.ngxRutificadorService.formatRut(htmlInputElement.value.trim())\r\n this.valueChange.emit(htmlInputElement.value)\r\n }\r\n\r\n public onChange(ev: Event){\r\n const htmlInputElement: HTMLInputElement = <HTMLInputElement> ev.target;\r\n htmlInputElement.value = this.ngxRutificadorService.cleanRut(htmlInputElement.value.trim())\r\n this.valueChange.emit(htmlInputElement.value)\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { NgxRutificadorService } from './ngx-rutificador.service';\r\n\r\n@Pipe({\r\n name: 'fotmatRut',\r\n standalone: true,\r\n})\r\nexport class NgxRutificadorPipe implements PipeTransform {\r\n\r\n constructor(\r\n private ngxRutificadorService: NgxRutificadorService\r\n ){}\r\n\r\n transform(value: string) {\r\n return this.ngxRutificadorService.formatRut(value) \r\n }\r\n\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgxRutificadorService } from './ngx-rutificador.service';\r\nimport { NgxRutificadorDirective } from './ngx-rutificador.directive';\r\n\r\n@Component({\r\n selector: 'input-rut',\r\n standalone: true,\r\n imports: [NgxRutificadorDirective],\r\n templateUrl: './ngx-rutificador.component.html',\r\n styleUrl: './ngx-rutificador.component.css'\r\n})\r\nexport class NgxRutificadorComponent {\r\n\r\n @Input() class: string = ''\r\n @Input() style: string = ''\r\n @Input() placeholder: string = ''\r\n @Output() isValidRut: EventEmitter<boolean> = new EventEmitter(false)\r\n\r\n constructor(\r\n private ngxRutificadorService: NgxRutificadorService,\r\n ){}\r\n\r\n\r\n validateRut(ev:any){ \r\n const isValid = this.ngxRutificadorService.validateRut(ev.target.value)\r\n this.isValidRut.emit(isValid)\r\n }\r\n}\r\n","<input type=\"text\" [class]=\"class\" [style]=\"style\" (keyup)=\"validateRut($event)\" [placeholder]=\"placeholder\" ngxRutificador>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgxRutificadorDirective } from './ngx-rutificador.directive';\r\nimport { NgxRutificadorPipe } from './ngx-rutificador.pipe';\r\nimport { NgxRutificadorComponent } from './ngx-rutificador.component';\r\n\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n NgxRutificadorComponent,\r\n NgxRutificadorDirective,\r\n NgxRutificadorPipe,\r\n CommonModule,\r\n ],\r\n exports: [\r\n NgxRutificadorComponent,\r\n NgxRutificadorDirective,\r\n NgxRutificadorPipe,\r\n ]\r\n})\r\nexport class NgxRutificadorModule { }\r\n","/*\r\n * Public API Surface of ngx-rutificador\r\n */\r\n\r\nexport * from './lib/ngx-rutificador.module';\r\nexport * from './lib/ngx-rutificador.directive';\r\nexport * from './lib/ngx-rutificador.pipe';\r\nexport * from './lib/ngx-rutificador.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NgxRutificadorService"],"mappings":"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"}