iptdevs-design-system
Version:
Library common elements into IPT Plattform.
93 lines (83 loc) • 9.4 kB
JavaScript
import { Component, EventEmitter, Output } from '@angular/core';
import { Validators } from '@angular/forms';
import * as i0 from "@angular/core";
import * as i1 from "@angular/forms";
import * as i2 from "../../../core/utils/base-service/base.service";
import * as i3 from "../../atoms/button/button.component";
import * as i4 from "../../atoms/input/input.component";
export class LoginFormComponent {
constructor(fb, baseService) {
this.baseService = baseService;
this.isLogged = new EventEmitter();
this.loginForm = fb.group({
email: ['', [Validators.required]],
password: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(15)]],
});
}
login(data) {
this.baseService.webLogin(data.controls['email'].value, data.controls['password'].value).then((isLogged) => {
this.isLogged.emit(isLogged);
});
}
}
LoginFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LoginFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.BaseService }], target: i0.ɵɵFactoryTarget.Component });
LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: LoginFormComponent, selector: "ipt-login-form", outputs: { isLogged: "isLogged" }, ngImport: i0, template: `
<div class="form-container">
<h2 style="text-align: center;">IPT PLATFORM</h2>
<hr>
<form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
<ipt-input
[]="'text'"
[]="'Email'"
[]="'Debe ser @inglesparatodos.edu.co'"
[]="loginForm.controls['email']"
></ipt-input>
<ipt-input
[]="'password'"
[]="'Password'"
[]="loginForm.controls['password']"
></ipt-input>
</form>
<div class="button-container">
<ipt-button
[]="'Login'"
[]="true"
[]="loginForm.valid"
(onClick)="login(loginForm)"
></ipt-button>
</div>
</div>
`, isInline: true, styles: [".form-container{display:grid;grid-template-columns:1fr;justify-items:center;width:350px}.with-background{background-color:#fff;border-radius:25px;box-shadow:#32325d40 0 50px 100px -20px,#0000004d 0 30px 60px -30px}h2{color:#1c77f7}hr{width:80%}form{margin-bottom:60px;display:grid;grid-template-columns:1fr;gap:30px;width:100%}.button-container{margin-bottom:70px;align-items:center;display:flex;gap:50px}footer{background-color:#1c77f7;border-top-left-radius:25px;border-top-right-radius:25px;width:100%;height:100px;display:flex;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }, { kind: "component", type: i4.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal", "disabledSel"], outputs: ["dateSelected"] }] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LoginFormComponent, decorators: [{
type: Component,
args: [{ selector: 'ipt-login-form', template: `
<div class="form-container">
<h2 style="text-align: center;">IPT PLATFORM</h2>
<hr>
<form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
<ipt-input
[]="'text'"
[]="'Email'"
[]="'Debe ser @inglesparatodos.edu.co'"
[]="loginForm.controls['email']"
></ipt-input>
<ipt-input
[]="'password'"
[]="'Password'"
[]="loginForm.controls['password']"
></ipt-input>
</form>
<div class="button-container">
<ipt-button
[]="'Login'"
[]="true"
[]="loginForm.valid"
(onClick)="login(loginForm)"
></ipt-button>
</div>
</div>
`, styles: [".form-container{display:grid;grid-template-columns:1fr;justify-items:center;width:350px}.with-background{background-color:#fff;border-radius:25px;box-shadow:#32325d40 0 50px 100px -20px,#0000004d 0 30px 60px -30px}h2{color:#1c77f7}hr{width:80%}form{margin-bottom:60px;display:grid;grid-template-columns:1fr;gap:30px;width:100%}.button-container{margin-bottom:70px;align-items:center;display:flex;gap:50px}footer{background-color:#1c77f7;border-top-left-radius:25px;border-top-right-radius:25px;width:100%;height:100px;display:flex;align-items:center;justify-content:center}\n"] }]
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.BaseService }]; }, propDecorators: { isLogged: [{
type: Output
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9sb2dpbi1mb3JtL2xvZ2luLWZvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFpQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBd0NwRSxNQUFNLE9BQU8sa0JBQWtCO0lBTTdCLFlBQ0UsRUFBZSxFQUNQLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBTnhCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBUS9DLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUN4RixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQWU7UUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN6RyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OytHQXBCVSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5RkFuQ25COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JUOzJGQUlVLGtCQUFrQjtrQkFyQzlCLFNBQVM7K0JBQ0UsZ0JBQWdCLFlBQ2hCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JUOzRIQU1TLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3V0aWxzL2Jhc2Utc2VydmljZS9iYXNlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpcHQtbG9naW4tZm9ybScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tY29udGFpbmVyXCI+XG5cbiAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5JUFQgUExBVEZPUk08L2gyPlxuICAgICAgPGhyPlxuXG4gICAgICA8Zm9ybSAobmdTdWJtaXQpPVwibG9naW4obG9naW5Gb3JtKVwiIFtmb3JtR3JvdXBdPVwibG9naW5Gb3JtXCI+XG4gICAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidFbWFpbCdcIlxuICAgICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgc2VyIEBpbmdsZXNwYXJhdG9kb3MuZWR1LmNvJ1wiXG4gICAgICAgICAgW2NvbnRyb2xdPVwibG9naW5Gb3JtLmNvbnRyb2xzWydlbWFpbCddXCJcbiAgICAgICAgPjwvaXB0LWlucHV0PlxuXG4gICAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgICBbaW5wdXRUeXBlXT1cIidwYXNzd29yZCdcIlxuICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInUGFzc3dvcmQnXCJcbiAgICAgICAgICBbY29udHJvbF09XCJsb2dpbkZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ11cIlxuICAgICAgICA+PC9pcHQtaW5wdXQ+XG4gICAgICA8L2Zvcm0+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tY29udGFpbmVyXCI+XG4gICAgICAgIDxpcHQtYnV0dG9uXG4gICAgICAgICAgW2xhYmVsXT1cIidMb2dpbidcIlxuICAgICAgICAgIFtwcmltYXJ5XT1cInRydWVcIlxuICAgICAgICAgIFtpc0VuYWJsZWRdPVwibG9naW5Gb3JtLnZhbGlkXCJcbiAgICAgICAgICAob25DbGljayk9XCJsb2dpbihsb2dpbkZvcm0pXCJcbiAgICAgICAgPjwvaXB0LWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL2xvZ2luLWZvcm0uY3NzJ11cbn0pXG5cbmV4cG9ydCBjbGFzcyBMb2dpbkZvcm1Db21wb25lbnQge1xuXG4gIEBPdXRwdXQoKSBpc0xvZ2dlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBsb2dpbkZvcm0hOiBGb3JtR3JvdXA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgYmFzZVNlcnZpY2U6IEJhc2VTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmxvZ2luRm9ybSA9IGZiLmdyb3VwKHtcbiAgICAgIGVtYWlsOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICBwYXNzd29yZDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoMyksVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTUpXV0sXG4gICAgfSk7XG4gIH1cblxuICBsb2dpbihkYXRhOiBGb3JtR3JvdXApIHtcbiAgICB0aGlzLmJhc2VTZXJ2aWNlLndlYkxvZ2luKGRhdGEuY29udHJvbHNbJ2VtYWlsJ10udmFsdWUsIGRhdGEuY29udHJvbHNbJ3Bhc3N3b3JkJ10udmFsdWUpLnRoZW4oKGlzTG9nZ2VkKSA9PntcbiAgICAgIHRoaXMuaXNMb2dnZWQuZW1pdChpc0xvZ2dlZCk7XG4gICAgfSk7XG4gIH1cblxufVxuIl19