form-aurora-stefanini 0.1.0 → 0.1.3
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/karma.conf.js +32 -0
- package/ng-package.json +7 -0
- package/package.json +17 -28
- package/src/lib/Components/from-aurora/form-aurora.component.css +117 -0
- package/src/lib/Components/from-aurora/form-aurora.component.html +343 -0
- package/src/lib/Components/from-aurora/form-aurora.component.spec.ts +25 -0
- package/src/lib/Components/from-aurora/form-aurora.component.ts +725 -0
- package/src/lib/Models/company-parameters.ts +16 -0
- package/src/lib/Models/company.ts +25 -0
- package/src/lib/Models/fill.ts +6 -0
- package/src/lib/Models/state.ts +5 -0
- package/src/lib/Models/step.ts +15 -0
- package/src/lib/Models/stepMethod.ts +9 -0
- package/src/lib/form-aurora.module.ts +18 -0
- package/src/lib/services/TemplateService.ts +84 -0
- package/src/lib/services/data.service.ts +83 -0
- package/src/lib/utils/regex.ts +51 -0
- package/src/public-api.ts +9 -0
- package/src/test.ts +21 -0
- package/tsconfig.lib.json +26 -0
- package/tsconfig.spec.json +17 -0
- package/tslint.json +17 -0
- package/bundles/form-aurora-stefanini.umd.js +0 -975
- package/bundles/form-aurora-stefanini.umd.js.map +0 -1
- package/bundles/form-aurora-stefanini.umd.min.js +0 -16
- package/bundles/form-aurora-stefanini.umd.min.js.map +0 -1
- package/esm2015/form-aurora-stefanini.js +0 -5
- package/esm2015/lib/fill.js +0 -3
- package/esm2015/lib/form-aurora.component.js +0 -681
- package/esm2015/lib/form-aurora.module.js +0 -22
- package/esm2015/public-api.js +0 -6
- package/esm5/form-aurora-stefanini.js +0 -5
- package/esm5/lib/fill.js +0 -7
- package/esm5/lib/form-aurora.component.js +0 -733
- package/esm5/lib/form-aurora.module.js +0 -25
- package/esm5/public-api.js +0 -6
- package/fesm2015/form-aurora-stefanini.js +0 -703
- package/fesm2015/form-aurora-stefanini.js.map +0 -1
- package/fesm5/form-aurora-stefanini.js +0 -758
- package/fesm5/form-aurora-stefanini.js.map +0 -1
- package/form-aurora-stefanini.d.ts +0 -4
- package/form-aurora-stefanini.metadata.json +0 -1
- package/lib/fill.d.ts +0 -6
- package/lib/form-aurora.component.d.ts +0 -106
- package/lib/form-aurora.module.d.ts +0 -2
- package/public-api.d.ts +0 -2
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"form-aurora-stefanini.js","sources":["ng://form-aurora-stefanini/lib/form-aurora.component.ts","ng://form-aurora-stefanini/lib/form-aurora.module.ts","ng://form-aurora-stefanini/public-api.ts","ng://form-aurora-stefanini/form-aurora-stefanini.ts"],"sourcesContent":["import {\r\n Component,\r\n Injectable,\r\n Input,\r\n ElementRef,\r\n OnInit,\r\n Renderer2,\r\n ViewChild,\r\n OnChanges,\r\n SimpleChanges,\r\n Output,\r\n EventEmitter\r\n} from '@angular/core';\r\nimport {FormGroup, FormControl, NgForm, Form} from '@angular/forms';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {Fill} from './fill';\r\n// import moment from 'moment';\r\nimport {NgbDateAdapter, NgbDateParserFormatter, NgbDateStruct, NgbDatepickerI18n} from '@ng-bootstrap/ng-bootstrap';\r\nimport * as moment_ from 'moment';\r\n\r\nconst moment = moment_;\r\n// import { regexType } from \"@app/_shared/_util/regex\";\r\n// import { ExternalService } from '@app/_shared/_services/external.service';\r\n// import { AuroraService } from '@app/_shared/_services/aurora.service';\r\n\r\n/**\r\n * This Service handles how the date is represented in scripts i.e. ngModel.\r\n */\r\n@Injectable()\r\nexport class CustomAdapter extends NgbDateAdapter<string> {\r\n\r\n readonly DELIMITER = '/';\r\n\r\n fromModel(value: string | null): NgbDateStruct | null {\r\n if (value) {\r\n const date = value.split(this.DELIMITER);\r\n return {\r\n day: parseInt(date[0], 10),\r\n month: parseInt(date[1], 10),\r\n year: parseInt(date[2], 10)\r\n };\r\n }\r\n return null;\r\n }\r\n\r\n toModel(date: NgbDateStruct | null): string | null {\r\n //return date ? date.day + this.DELIMITER + date.month + this.DELIMITER + date.year : null;\r\n return date ? (date.day < 10 ? 0 + date.day : date.day) + this.DELIMITER + (date.month < 10 ? 0 + date.month : date.month) + this.DELIMITER + date.year : '';\r\n }\r\n}\r\n\r\n/**\r\n * This Service handles how the date is rendered and parsed from keyboard i.e. in the bound input field.\r\n */\r\n@Injectable()\r\nexport class CustomDateParserFormatter extends NgbDateParserFormatter {\r\n\r\n readonly DELIMITER = '/';\r\n\r\n parse(value: string): NgbDateStruct | null {\r\n if (value) {\r\n const date = value.split(this.DELIMITER);\r\n return {\r\n day: parseInt(date[0], 10),\r\n month: parseInt(date[1], 10),\r\n year: parseInt(date[2], 10)\r\n };\r\n }\r\n return null;\r\n }\r\n\r\n format(date: NgbDateStruct | null): string {\r\n return date ? (date.day < 10 ? '0' + date.day : date.day) + this.DELIMITER + (date.month < 10 ? '0' + date.month : date.month) + this.DELIMITER + date.year : '';\r\n }\r\n}\r\n\r\nconst I18N_VALUES = {\r\n 'es': {\r\n weekdays: ['Lu', 'Ma', 'Mi', 'Ju', 'Vi', 'Sa', 'Do'],\r\n months: ['Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'],\r\n weekLabel: 'sem'\r\n }\r\n // other languages you would support\r\n};\r\n\r\n@Injectable()\r\nexport class I18n {\r\n language = 'es';\r\n}\r\n\r\n// Define custom service providing the months and weekdays translations\r\n@Injectable()\r\nexport class CustomDatepickerI18n extends NgbDatepickerI18n {\r\n constructor(private _i18n: I18n) {\r\n super();\r\n }\r\n\r\n getWeekdayLabel(weekday: number): string {\r\n return I18N_VALUES[this._i18n.language].weekdays[weekday - 1];\r\n }\r\n\r\n getWeekLabel(): string {\r\n return I18N_VALUES[this._i18n.language].weekLabel;\r\n }\r\n\r\n getMonthShortName(month: number): string {\r\n return I18N_VALUES[this._i18n.language].months[month - 1];\r\n }\r\n\r\n getMonthFullName(month: number): string {\r\n return this.getMonthShortName(month);\r\n }\r\n\r\n getDayAriaLabel(date: NgbDateStruct): string {\r\n return `${date.day}-${date.month}-${date.year}`;\r\n }\r\n\r\n getWeekdayShortName(weekday: number): string {\r\n return I18N_VALUES[this._i18n.language].weekdays[weekday - 1];\r\n };\r\n}\r\n\r\n\r\n@Component({\r\n selector: 'lib-FormAurora',\r\n templateUrl: './form-aurora.component.html',\r\n styleUrls: ['./form-aurora.component.css'],\r\n providers: [\r\n {provide: NgbDateAdapter, useClass: CustomAdapter},\r\n {provide: NgbDateParserFormatter, useClass: CustomDateParserFormatter},\r\n {provide: NgbDatepickerI18n, useClass: CustomDatepickerI18n},\r\n I18n\r\n ]\r\n})\r\nexport class FormAuroraComponent implements OnInit, OnChanges {\r\n\r\n @Input() dataClassCss: any;\r\n @Input() dataForm: any;\r\n @Input() clickSubmit: any;\r\n @Input() dataReloadForm: any;\r\n @Input() welcomeTitle: any;\r\n @Input() welcomeDescription: any;\r\n @Input() urlPdf: string;\r\n @Input() nameCompany: string;\r\n @Input() schedule: string;\r\n @Input() getTermsAndConditions: any;\r\n @Input() regexType: any;\r\n @Input() getIpAddress: any;\r\n @ViewChild('formDynamic', {static: true}) formDynamic: NgForm;\r\n @Output() response = new EventEmitter<any>();\r\n @Output() summit = new EventEmitter<any>();\r\n @Output() setAcceptanceDocument = new EventEmitter<any>();\r\n\r\n tipodocNumDoc: boolean = false;\r\n onSubmitEvent: any = false;\r\n countSubmit = 0;\r\n watchValid = false;\r\n watchRequired = false;\r\n captchaValid: boolean = false;\r\n displayMonths = 2;\r\n navigation = 'select';\r\n showWeekNumbers = false;\r\n outsideDays = 'visible';\r\n respServiceSegmentation: any = null;\r\n\r\n\r\n //emailPattern = \"^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$\";\r\n\r\n today = moment(new Date());\r\n maxYear = this.today.year();\r\n minYear = this.today.year() - 82;\r\n minDate = this.minYear.toString() + '-' + this.today.month().toString().padStart(2, '0') + '-' + this.today.date().toString().padStart(2, '0');// {year: this.minYear, month: this.today.month(), day: this.today.date()};\r\n maxDate = this.maxYear.toString() + '-' + (this.today.month() + 1).toString().padStart(2, '0') + '-' + this.today.date().toString().padStart(2, '0');// {year: this.maxYear, month: this.today.month() + 1, day: this.today.date()};\r\n\r\n //Revisar variables\r\n recharge: boolean = false;\r\n indicativo: string = '57';\r\n // @ViewChild(\"modalTurns\") myModal: ElementRef;\r\n @ViewChild('modalTurns', {static: false}) myModal: ElementRef;\r\n filldata: Fill;\r\n defaultDocType: string = 'Cédula de ciudadanía';\r\n\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n ngOnInit(): void {\r\n console.log('nueva version 0.1.0');\r\n this.minDate = new Date(this.minDate).toISOString().split('T')[0];\r\n setTimeout(() => {\r\n this.startComponent();\r\n }, 2000);\r\n }\r\n\r\n\r\n startComponent() {\r\n //ordena los campos\r\n if (this.dataForm != null && this.dataForm.formQuestions != undefined) {\r\n //Same row fields\r\n this.tipodocNumDoc = (this.dataForm.formQuestions.some(question => question.question.value === 'tipoDoc') && this.dataForm.formQuestions.some(question => question.question.value === 'numeroDoc')) ? true : false;\r\n\r\n this.dataForm.formQuestions = this.dataForm.formQuestions.sort(function(a, b) {\r\n return a.order - b.order;\r\n });\r\n let existcaptcha = this.dataForm.formQuestions.filter((item) => item.question.questionType.id == 6);\r\n\r\n if (existcaptcha.length == 0) {\r\n this.captchaValid = true;\r\n }\r\n\r\n for (const item of this.dataForm.formQuestions) {\r\n if (item.question.maxlength == null || item.question.maxlength == undefined || item.question.maxlength == 0) {\r\n item.question.maxlength = 524288; //defaultvalue\r\n }\r\n\r\n if (item.question.minLength == null || item.question.minLength == undefined) {\r\n item.question.minLength = 0;\r\n }\r\n\r\n this.dataReloadForm.forEach(element => {\r\n this.filldata = element;\r\n\r\n if ((item.question.questionType.id === 2 || item.question.questionType.id === 1 ||\r\n item.question.questionType.id === 3) && (this.filldata.data !== null &&\r\n this.filldata.data !== undefined) && item.question.id === this.filldata.id) {\r\n item.question.registred = this.filldata.data;\r\n }\r\n });\r\n\r\n if (item.question.registred == null || item.question.minLength == undefined) {\r\n item.question.registred = '';\r\n }\r\n }\r\n }\r\n }\r\n\r\n range = new FormGroup({\r\n start: new FormControl(),\r\n end: new FormControl(),\r\n });\r\n\r\n resolvedCaptcha(captchaResponse: string) {\r\n this.captchaValid = true;\r\n if (!this.formDynamic.form.value.captcha) {\r\n this.formDynamic.controls.captcha.setValue(captchaResponse);\r\n this.formDynamic.form.value.captcha = captchaResponse;\r\n document.getElementById('btnIng').style.opacity = !this.formDynamic.valid ? '0.65' : '1';\r\n }\r\n }\r\n\r\n //Forms\r\n //Metodo para evitar el render de los items del for\r\n public trackByIndex(index: number, obj: any): any {\r\n return index;\r\n }\r\n\r\n onChangeValidPatter(event, question) {\r\n if (question.pattern != undefined) {\r\n let valid = true;\r\n let keyvalid = [8, 32, 37, 38, 39, 40, 46, 9];\r\n //diferente de Backpsace\r\n //se deja catch por error no controlable en otro tiempo de ejecucion\r\n try {\r\n if (!keyvalid.includes(event.keyCode)) {\r\n const regex = new RegExp(question.pattern);\r\n valid = regex.test(event.key);\r\n }\r\n } catch (error) {\r\n }\r\n return valid;\r\n }\r\n\r\n document.getElementById('char' + question.value).setAttribute('hidden', 'true');\r\n\r\n //if temporal mientras se migran todos los tipos de campos al foreach\r\n if (question.questionType.id != 11 && question.questionType.id != 7) {\r\n if (this.validMinLength(this.formDynamic, question)) {\r\n document.getElementById(question.value).style.borderColor = '#FF0000';\r\n document.getElementById('ml' + question.value).removeAttribute('hidden');\r\n } else {\r\n document.getElementById(question.value).style.borderColor = '#E4E4E4';\r\n document.getElementById('ml' + question.value).setAttribute('hidden', 'true');\r\n }\r\n if (this.validMaxLength(this.formDynamic, question)) {\r\n document.getElementById(question.value).style.borderColor = '#FF0000';\r\n document.getElementById('mxl' + question.value).removeAttribute('hidden');\r\n } else {\r\n document.getElementById(question.value).style.borderColor = '#E4E4E4';\r\n document.getElementById('mxl' + question.value).setAttribute('hidden', 'true');\r\n }\r\n }\r\n\r\n\r\n this.dataForm.formQuestions.forEach(formQuestion => {\r\n switch (formQuestion.question.questionType.id) {\r\n //se valida campo de tipo calendario\r\n case 7:\r\n if (question.questionType.id == 7)\r\n this.calendarRulesValidate(formQuestion);\r\n break;\r\n //se valida campo de tipo email\r\n case 11:\r\n if (question.questionType.id == 11)\r\n this.emailRulesValidate(formQuestion);\r\n break;\r\n }\r\n });\r\n\r\n document.getElementById('btnIng').style.opacity = !this.formDynamic.valid ? '0.65' : '1';\r\n }\r\n\r\n validOnlyText(event) {\r\n let regex = /^[a-zA-Z\\u00C0-\\u017F]+$/g;\r\n if (event.charCode == 32) {\r\n return true;\r\n }\r\n let valid = regex.test(event.key);\r\n\r\n return valid;\r\n }\r\n\r\n validDate(event) {\r\n /*let pattern = /(?:0[1-9]|[12][0-9]|3[01])\\/(?:0[1-9]|1[0-2])\\/(?:19|20)[0-9]{2}/;\r\n const regex = new RegExp(pattern);\r\n valid = regex.test(event.key);\r\n */\r\n const matches = String(event.key).match(this.regexType.date.exp);\r\n let valid = true;\r\n if (matches === null)\r\n valid = false;\r\n\r\n // alert(valid);\r\n\r\n return valid;\r\n\r\n }\r\n\r\n onChangeValidDate(event) {\r\n\r\n //let pattern = /(?:0[1-9]|1[0-2])\\/(?:0[1-9]|[12][0-9]|3[01])\\/(?:19|20)[0-9]{2}/;\r\n let dateN = /[0-9]|\\//;\r\n let valid = true;\r\n const regex = new RegExp(dateN);\r\n valid = regex.test(event.key);\r\n return valid;\r\n\r\n }\r\n\r\n rediretoutside(event, question) {\r\n //se deja catch por error no controlable en otro tiempo de ejecucion\r\n try {\r\n event.preventDefault();\r\n window.open(question.value, '_blank');\r\n } catch (error) {\r\n }\r\n }\r\n\r\n /**\r\n * Dispatch submit event for validations exists\r\n * @param change\r\n */\r\n ngOnChanges(change: SimpleChanges) {\r\n this.countSubmit++;\r\n }\r\n\r\n //onSubmit(form: NgForm) {\r\n onSubmit() {\r\n let form = this.formDynamic;\r\n this.watchValid = true;\r\n this.watchRequired = true;\r\n\r\n if (form.valid) {\r\n if (!this.validRulesFields(form.controls['numeroDoc'].value.toString(), form.controls['celular'].value.toString(), form.controls['email'].value))\r\n return false;\r\n }\r\n\r\n if (this.validMinlenghtAllQuestions(form.value) && this.validMaxLengthAllQuestions(form.value) && form.valid) {\r\n if (this.dataForm.urlSend != '' && this.captchaValid) {\r\n this.http.post<any>(this.dataForm.urlSend, form.value).subscribe((resp) => this.response.emit(resp));\r\n } else if (form.valid && this.captchaValid) {\r\n this.summit.emit(form.value);\r\n }\r\n }\r\n }\r\n\r\n validRulesFields(numeroDoc: String, numeroCel: String, email: String): boolean {\r\n // Validaciones para celular en caso de indicativo en Colombia\r\n let cel = document.getElementById('charcelular');\r\n let doc = document.getElementById('charnumeroDoc');\r\n let valOk = true;\r\n if (this.indicativo == '+57' || this.indicativo == '57') {\r\n let stringOrdenado = this.orderString(numeroDoc);\r\n if (this.nameCompany.toUpperCase() !== 'CLARO') {//claro acepta nro consecutivos\r\n if (numeroDoc == stringOrdenado) {\r\n doc.style.borderColor = '#FF0000';\r\n doc.removeAttribute('hidden');\r\n doc.textContent = 'El numero documento No debe contener caracteres consecutivos';\r\n valOk = false;\r\n\r\n //this.msgErrorCampo = \"El numero documento No debe contener caracteres consecutivos\";\r\n //return false;\r\n }\r\n }\r\n if (numeroCel.substring(0, 1) != '3') {\r\n cel.style.borderColor = '#FF0000';\r\n cel.removeAttribute('hidden');\r\n cel.textContent = 'El primer carácter del celular debe ser 3';\r\n valOk = false;\r\n\r\n //this.msgErrorCampo = \"El primer carácter del celular debe ser 3\";\r\n //return false;\r\n }\r\n /*\r\n if (parseInt(numeroCel.substring(0, 3)) > 350) {\r\n cel.style.borderColor = \"#FF0000\";\r\n cel.removeAttribute(\"hidden\");\r\n cel.textContent = \"El prefijo del celular no debe ser mayor a 350\";\r\n valOk = false;\r\n //this.msgErrorCampo = \"El prefijo del celular no debe ser mayor a 350\";\r\n //return false;\r\n }\r\n */\r\n //En caso de que el número se repita, ejemplo 33333333\r\n let listnumber = numeroDoc.substring(0, 1);\r\n for (let index = 1; index < numeroDoc.length; index++) {\r\n listnumber = listnumber + numeroDoc.substring(0, 1);\r\n }\r\n\r\n if (numeroDoc == listnumber) {\r\n doc.style.borderColor = '#FF0000';\r\n doc.removeAttribute('hidden');\r\n doc.textContent = 'Caracteres numéricos no se pueden repetirse de manera continua ';\r\n valOk = false;\r\n\r\n //this.msgErrorCampo = \"Caracteres numéricos no se pueden repetirse de manera continua \";\r\n //return false;\r\n }\r\n\r\n // En caso de que el número se repita, ejemplo 33333333\r\n let arrayPhoneRepeat = Array.from(String(numeroCel), Number);\r\n let arrayPhoneOutRepeat = [...new Set(arrayPhoneRepeat)];\r\n if (arrayPhoneOutRepeat.length == 1) {\r\n cel.style.borderColor = '#FF0000';\r\n cel.removeAttribute('hidden');\r\n cel.textContent = 'El número que ingresa no es valido';\r\n valOk = false;\r\n //this.msgErrorCampo = \"El número que ingresa no es valido\";\r\n //return false;\r\n }\r\n } else if (this.indicativo == '+593' || this.indicativo == '593') {\r\n if (numeroCel.substring(0, 1) != '9') {\r\n cel.style.borderColor = '#FF0000';\r\n cel.removeAttribute('hidden');\r\n cel.textContent = 'El primer carácter del celular debe ser 9';\r\n valOk = false;\r\n //this.msgErrorCampo = \"El primer carácter del celular debe ser 9\";\r\n //return false;\r\n }\r\n }\r\n //se validan los campos por tipo de campo y no por value\r\n this.dataForm.formQuestions.forEach(formQuestion => {\r\n switch (formQuestion.question.questionType.id) {\r\n //se valida campo de tipo email\r\n case 11:\r\n valOk = this.emailRulesValidate(formQuestion);\r\n break;\r\n }\r\n });\r\n\r\n return valOk;\r\n }\r\n\r\n orderString(value: String) {\r\n let arrayNumber = [];\r\n for (let index = 0; index < value.length; index++) {\r\n arrayNumber.push(parseInt(value.substring(index, index + 1)));\r\n }\r\n //ordena el array\r\n arrayNumber.sort(function(a, b) {\r\n return a - b;\r\n });\r\n let numberOrder = '';\r\n numberOrder = arrayNumber[0];\r\n for (let index = 1; index < arrayNumber.length; index++) {\r\n numberOrder = numberOrder + (arrayNumber[0] + index).toString();\r\n }\r\n return numberOrder;\r\n }\r\n\r\n validMinlenghtAllQuestions(form: any): boolean {\r\n for (const item of this.dataForm.formQuestions) {\r\n if (item.question.questionType.id == 1 || item.question.questionType.id == 2) {\r\n let minLength = parseInt(item.question.minLength);\r\n let formValueLength = parseInt(form[item.question.value].toString().length);\r\n if (minLength > 0 && formValueLength != minLength && formValueLength < minLength) return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n validMaxLengthAllQuestions(form: any): boolean {\r\n for (const item of this.dataForm.formQuestions) {\r\n if (item.question.questionType.id == 1 || item.question.questionType.id == 2) {\r\n let maxLength = parseInt(item.question.maxLength);\r\n let formValueLength = parseInt(form[item.question.value].toString().length);\r\n if (maxLength > 0 && formValueLength != maxLength && formValueLength > maxLength) return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n validRequired(form: NgForm, question): Boolean {\r\n //se deja catch por error no controlable en otro tiempo de ejecucion\r\n try {\r\n if (question != undefined && question.value != undefined) {\r\n if (\r\n form.controls[question.value] != undefined &&\r\n form.controls[question.value].errors != null &&\r\n form.controls[question.value].errors.required\r\n ) {\r\n return true;\r\n }\r\n }\r\n } catch (error) {\r\n }\r\n return false;\r\n }\r\n\r\n validMinLength(form: NgForm, question): Boolean {\r\n //se deja catch por error no controlable en otro tiempo de ejecucion\r\n try {\r\n if (question != undefined && question.value != undefined) {\r\n if (question.minLength > form.controls[question.value].value.toLocaleString().length && question.minLength > 0) {\r\n return true;\r\n }\r\n }\r\n } catch (error) {\r\n }\r\n return false;\r\n }\r\n\r\n validMaxLength(form: NgForm, question): Boolean {\r\n //se deja catch por error no controlable en otro tiempo de ejecucion\r\n try {\r\n if (question != undefined && question.value != undefined) {\r\n if (question.maxLength > 0) {\r\n if (question.maxLength + 1 <= form.controls[question.value].value.toString().replace(/\\./g, '').length) {\r\n if (!this.formDynamic.controls[question.value].hasError('errorMaxLength')) {\r\n this.formDynamic.controls[question.value].setErrors({'errorMaxLength': true});\r\n }\r\n return true;\r\n }\r\n }\r\n }\r\n } catch (error) {\r\n }\r\n return false;\r\n }\r\n\r\n tycSelection(event) {\r\n event.preventDefault();\r\n let tyc = <HTMLInputElement> document.getElementById('txtPoliticas');\r\n tyc.style.color = '#A3AD32';\r\n\r\n\r\n // this.externalService.getTermsAndConditions().subscribe(resp => {\r\n let b64 = null;\r\n\r\n if (this.getTermsAndConditions && this.getTermsAndConditions.listaDocumentos) {\r\n b64 = this.getTermsAndConditions.listaDocumentos[0].contenidoDocumento;\r\n this.respServiceSegmentation = this.getTermsAndConditions.listaDocumentos[0];\r\n\r\n let pdfWindow = window.open('');\r\n pdfWindow.document.write(\r\n '<iframe width=\\'100%\\' height=\\'100%\\' src=\\'data:application/pdf;base64, ' +\r\n encodeURI(b64) + '\\'></iframe>'\r\n );\r\n }\r\n // })\r\n }\r\n\r\n openLabelUrl(event, question) {\r\n event.preventDefault();\r\n let tyc = <HTMLInputElement> document.getElementById('check' + question.id);\r\n tyc.style.color = '#A3AD32';\r\n window.open(question.urllabel, '_blank');\r\n }\r\n\r\n async checkTermsAndConditions(value): Promise<void> {\r\n if (value) {\r\n // let ipAddress = await this.auroraService.getIpAddress().toPromise();\r\n let ipAddress = await this.getIpAddress;\r\n\r\n let objToSend = {\r\n 'idDocumento': this.respServiceSegmentation.idDocumento || '',\r\n // \"idDocumento\": this.respServiceSegmentation?.idDocumento || \"\",\r\n 'nombrePortafolio': '0',\r\n 'aplicacion': 'ZP_OF',\r\n 'ip': ipAddress.ip,\r\n 'tipoIdAfil': 'CC',\r\n 'numeroIdAfil': this.formDynamic.controls['numeroDoc'].value.toString(),\r\n 'numeroCuentaPI': '0',\r\n 'transaccion': 'INICIO DE SESION_OF',\r\n 'conceptoAceptacion': 'HABEAS_DATA_USO_APP',\r\n 'respuesta': 'SI',\r\n 'usuarioCreacion': this.formDynamic.controls['numeroDoc'].value.toString()\r\n };\r\n let aceptaciones = {aceptaciones: [objToSend]};\r\n // this.externalService.setAcceptanceDocument(aceptaciones).subscribe(() => { })\r\n this.setAcceptanceDocument.emit(aceptaciones);\r\n }\r\n }\r\n\r\n cancellKeypress() {\r\n return false;\r\n }\r\n\r\n emailRulesValidate(formQuestion) {\r\n let valOk = true;\r\n try {\r\n let hasError = false;\r\n document.getElementById(formQuestion.question.id).setAttribute('hidden', 'true');\r\n let eml = document.getElementById(formQuestion.question.id);\r\n let email = formQuestion.question.registred;\r\n if (!hasError) {\r\n if (formQuestion.question.required && (email == '' || email == undefined || email == null)) {\r\n eml.style.borderColor = '#FF0000';\r\n eml.textContent = 'El correco eléctronico es requerido';\r\n eml.removeAttribute('hidden');\r\n valOk = false;\r\n hasError = true;\r\n }\r\n }\r\n if (!hasError) {\r\n if (this.validMinLength(undefined, formQuestion.question)) {\r\n eml.style.borderColor = '#FF0000';\r\n eml.textContent = 'Debe ser mínimo de ' + formQuestion.question.minLength + ' caracteres';\r\n document.getElementById(formQuestion.question.id).removeAttribute('hidden');\r\n valOk = false;\r\n hasError = true;\r\n }\r\n }\r\n if (!hasError) {\r\n if (this.validMaxLength(undefined, formQuestion.question)) {\r\n eml.style.borderColor = '#FF0000';\r\n eml.textContent = 'Debe ser maximo de ' + formQuestion.question.maxLength + ' caracteres';\r\n document.getElementById(formQuestion.question.id).removeAttribute('hidden');\r\n valOk = false;\r\n hasError = true;\r\n }\r\n }\r\n if (!hasError) {\r\n\r\n const matches = String(email).match(this.regexType.email.exp);\r\n if (matches == null) {\r\n eml.style.borderColor = '#FF0000';\r\n eml.textContent = 'Tu email es invalido';\r\n eml.removeAttribute('hidden');\r\n valOk = false;\r\n hasError = true;\r\n }\r\n }\r\n\r\n } catch (error) {\r\n\r\n }\r\n return valOk;\r\n }\r\n\r\n calendarRulesValidate(formQuestion) {\r\n let hasError = false;\r\n try {\r\n document.getElementById(formQuestion.question.id).setAttribute('hidden', 'true');\r\n let ecalendar = document.getElementById(formQuestion.question.id);\r\n //se valida que no sea null si es requerido\r\n let date = formQuestion.question.registred;\r\n if (formQuestion.question.required && (date == '' || date == undefined || date == null)) {\r\n ecalendar.style.borderColor = '#FF0000';\r\n ecalendar.textContent = 'La fecha es requerida';\r\n ecalendar.removeAttribute('hidden');\r\n }\r\n } catch (error) {\r\n\r\n }\r\n }\r\n\r\n validateNotSpace(event) {\r\n if (event.charCode == 32) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { FormAuroraComponent } from './form-aurora.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { RecaptchaModule, RecaptchaFormsModule } from 'ng-recaptcha';\r\n\r\n@NgModule({\r\n declarations: [FormAuroraComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n RecaptchaModule,\r\n RecaptchaFormsModule\r\n ],\r\n exports: [FormAuroraComponent]\r\n})\r\nexport class FormAuroraModule { }","/*\r\n * Public API Surface of form-aurora\r\n */\r\nexport * from './lib/form-aurora.component';\r\nexport * from './lib/form-aurora.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["tslib_1.__decorate"],"mappings":"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"}
|