UNPKG

ng-prime-tools

Version:

An advanced PrimeNG table for Angular

54 lines 13.4 kB
import { Component, EventEmitter, Input, Output } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; import * as i2 from "../pt-card/pt-card.component"; import * as i3 from "./pt-login-card/pt-login-card.component"; export class PTLoginPageComponent { constructor() { this.loginErrorMessage = null; this.loginSubmit = new EventEmitter(); this.defaultCardConfig = { borderRadius: '0', margin: '0', width: '100%', height: '100%', noBorder: true, alignContent: 'center', alignBodyContent: 'center', }; } ngOnInit() { this.applyDefaultConfigs(); } applyDefaultConfigs() { // Apply defaults to centerCardConfig this.loginPageConfig.centerCardConfig = this.applyDefaults(this.loginPageConfig.centerCardConfig); // Apply defaults to leftCardConfig this.loginPageConfig.leftCardConfig = this.applyDefaults(this.loginPageConfig.leftCardConfig); // Apply defaults to rightCardConfig this.loginPageConfig.rightCardConfig = this.applyDefaults(this.loginPageConfig.rightCardConfig); } applyDefaults(config) { return { ...this.defaultCardConfig, ...(config || {}), }; } onLoginSubmit(loginModel) { console.log('Login Submitted:', loginModel); this.loginSubmit.emit(loginModel); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTLoginPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTLoginPageComponent, selector: "pt-login-page", inputs: { loginPageConfig: "loginPageConfig", loginErrorMessage: "loginErrorMessage" }, outputs: { loginSubmit: "loginSubmit" }, ngImport: i0, template: "<!-- Center Position -->\n<ng-container>\n <div *ngIf=\"loginPageConfig.position === 'center'\" class=\"center-container\">\n <pt-card\n *ngIf=\"loginPageConfig.centerCardConfig\"\n [config]=\"loginPageConfig.centerCardConfig\"\n >\n <pt-login-card\n [loginErrorMessage]=\"loginErrorMessage\"\n [loginPageConfig]=\"loginPageConfig\"\n (loginSubmit)=\"onLoginSubmit($event)\"\n ></pt-login-card>\n </pt-card>\n </div>\n <!-- Left and Right Positions -->\n <div\n *ngIf=\"\n loginPageConfig.position === 'left' ||\n loginPageConfig.position === 'right'\n \"\n class=\"left-right-container\"\n >\n <!-- Left Card -->\n <pt-card\n *ngIf=\"loginPageConfig.leftCardConfig\"\n [config]=\"loginPageConfig.leftCardConfig\"\n >\n <pt-login-card\n *ngIf=\"loginPageConfig.position === 'left'\"\n [loginErrorMessage]=\"loginErrorMessage\"\n [loginPageConfig]=\"loginPageConfig\"\n (loginSubmit)=\"onLoginSubmit($event)\"\n ></pt-login-card>\n </pt-card>\n\n <!-- Right Card -->\n <pt-card\n *ngIf=\"loginPageConfig.rightCardConfig\"\n [config]=\"loginPageConfig.rightCardConfig\"\n >\n <pt-login-card\n *ngIf=\"loginPageConfig.position === 'right'\"\n [loginErrorMessage]=\"loginErrorMessage\"\n [loginPageConfig]=\"loginPageConfig\"\n (loginSubmit)=\"onLoginSubmit($event)\"\n ></pt-login-card>\n </pt-card>\n </div>\n</ng-container>\n", styles: [".left-right-container{display:flex;height:100vh;width:100%}.left-right-container pt-card{flex:1;max-width:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%}.center-container{display:flex;justify-content:center;align-items:center;height:100vh;width:100vw;margin:0;padding:0;box-sizing:border-box;overflow:hidden}.center-container pt-card{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;box-sizing:border-box}.center-container pt-card pt-login-card{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:16px;box-sizing:border-box;margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PTCardComponent, selector: "pt-card", inputs: ["config"] }, { kind: "component", type: i3.PTLoginCardComponent, selector: "pt-login-card", inputs: ["loginPageConfig", "loginErrorMessage"], outputs: ["loginSubmit"] }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTLoginPageComponent, decorators: [{ type: Component, args: [{ selector: 'pt-login-page', template: "<!-- Center Position -->\n<ng-container>\n <div *ngIf=\"loginPageConfig.position === 'center'\" class=\"center-container\">\n <pt-card\n *ngIf=\"loginPageConfig.centerCardConfig\"\n [config]=\"loginPageConfig.centerCardConfig\"\n >\n <pt-login-card\n [loginErrorMessage]=\"loginErrorMessage\"\n [loginPageConfig]=\"loginPageConfig\"\n (loginSubmit)=\"onLoginSubmit($event)\"\n ></pt-login-card>\n </pt-card>\n </div>\n <!-- Left and Right Positions -->\n <div\n *ngIf=\"\n loginPageConfig.position === 'left' ||\n loginPageConfig.position === 'right'\n \"\n class=\"left-right-container\"\n >\n <!-- Left Card -->\n <pt-card\n *ngIf=\"loginPageConfig.leftCardConfig\"\n [config]=\"loginPageConfig.leftCardConfig\"\n >\n <pt-login-card\n *ngIf=\"loginPageConfig.position === 'left'\"\n [loginErrorMessage]=\"loginErrorMessage\"\n [loginPageConfig]=\"loginPageConfig\"\n (loginSubmit)=\"onLoginSubmit($event)\"\n ></pt-login-card>\n </pt-card>\n\n <!-- Right Card -->\n <pt-card\n *ngIf=\"loginPageConfig.rightCardConfig\"\n [config]=\"loginPageConfig.rightCardConfig\"\n >\n <pt-login-card\n *ngIf=\"loginPageConfig.position === 'right'\"\n [loginErrorMessage]=\"loginErrorMessage\"\n [loginPageConfig]=\"loginPageConfig\"\n (loginSubmit)=\"onLoginSubmit($event)\"\n ></pt-login-card>\n </pt-card>\n </div>\n</ng-container>\n", styles: [".left-right-container{display:flex;height:100vh;width:100%}.left-right-container pt-card{flex:1;max-width:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%}.center-container{display:flex;justify-content:center;align-items:center;height:100vh;width:100vw;margin:0;padding:0;box-sizing:border-box;overflow:hidden}.center-container pt-card{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;box-sizing:border-box}.center-container pt-card pt-login-card{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:16px;box-sizing:border-box;margin:0}\n"] }] }], propDecorators: { loginPageConfig: [{ type: Input }], loginErrorMessage: [{ type: Input }], loginSubmit: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtbG9naW4tcGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LWxvZ2luLXBhZ2UvcHQtbG9naW4tcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LWxvZ2luLXBhZ2UvcHQtbG9naW4tcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVEvRSxNQUFNLE9BQU8sb0JBQW9CO0lBTGpDO1FBT1csc0JBQWlCLEdBQWtCLElBQUksQ0FBQztRQUN2QyxnQkFBVyxHQUNuQixJQUFJLFlBQVksRUFBYyxDQUFDO1FBRXpCLHNCQUFpQixHQUFlO1lBQ3RDLFlBQVksRUFBRSxHQUFHO1lBQ2pCLE1BQU0sRUFBRSxHQUFHO1lBQ1gsS0FBSyxFQUFFLE1BQU07WUFDYixNQUFNLEVBQUUsTUFBTTtZQUNkLFFBQVEsRUFBRSxJQUFJO1lBQ2QsWUFBWSxFQUFFLFFBQVE7WUFDdEIsZ0JBQWdCLEVBQUUsUUFBUTtTQUMzQixDQUFDO0tBa0NIO0lBaENDLFFBQVE7UUFDTixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLHFDQUFxQztRQUNyQyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQ3hELElBQUksQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQ3RDLENBQUM7UUFFRixtQ0FBbUM7UUFDbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FDdEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQ3BDLENBQUM7UUFFRixvQ0FBb0M7UUFDcEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FDdkQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQ3JDLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLE1BQW1CO1FBQ3ZDLE9BQU87WUFDTCxHQUFHLElBQUksQ0FBQyxpQkFBaUI7WUFDekIsR0FBRyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7U0FDbEIsQ0FBQztJQUNKLENBQUM7SUFFRCxhQUFhLENBQUMsVUFBc0I7UUFDbEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDOytHQS9DVSxvQkFBb0I7bUdBQXBCLG9CQUFvQixzTENSakMsaS9DQWlEQTs7NEZEekNhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxlQUFlOzhCQUtoQixlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9naW5Nb2RlbCwgTG9naW5QYWdlQ29uZmlnLCBDYXJkQ29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHQtbG9naW4tcGFnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wdC1sb2dpbi1wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHQtbG9naW4tcGFnZS5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFBUTG9naW5QYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgbG9naW5QYWdlQ29uZmlnITogTG9naW5QYWdlQ29uZmlnO1xuICBASW5wdXQoKSBsb2dpbkVycm9yTWVzc2FnZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIEBPdXRwdXQoKSBsb2dpblN1Ym1pdDogRXZlbnRFbWl0dGVyPExvZ2luTW9kZWw+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPExvZ2luTW9kZWw+KCk7XG5cbiAgcHJpdmF0ZSBkZWZhdWx0Q2FyZENvbmZpZzogQ2FyZENvbmZpZyA9IHtcbiAgICBib3JkZXJSYWRpdXM6ICcwJyxcbiAgICBtYXJnaW46ICcwJyxcbiAgICB3aWR0aDogJzEwMCUnLFxuICAgIGhlaWdodDogJzEwMCUnLFxuICAgIG5vQm9yZGVyOiB0cnVlLFxuICAgIGFsaWduQ29udGVudDogJ2NlbnRlcicsXG4gICAgYWxpZ25Cb2R5Q29udGVudDogJ2NlbnRlcicsXG4gIH07XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5hcHBseURlZmF1bHRDb25maWdzKCk7XG4gIH1cblxuICBwcml2YXRlIGFwcGx5RGVmYXVsdENvbmZpZ3MoKTogdm9pZCB7XG4gICAgLy8gQXBwbHkgZGVmYXVsdHMgdG8gY2VudGVyQ2FyZENvbmZpZ1xuICAgIHRoaXMubG9naW5QYWdlQ29uZmlnLmNlbnRlckNhcmRDb25maWcgPSB0aGlzLmFwcGx5RGVmYXVsdHMoXG4gICAgICB0aGlzLmxvZ2luUGFnZUNvbmZpZy5jZW50ZXJDYXJkQ29uZmlnXG4gICAgKTtcblxuICAgIC8vIEFwcGx5IGRlZmF1bHRzIHRvIGxlZnRDYXJkQ29uZmlnXG4gICAgdGhpcy5sb2dpblBhZ2VDb25maWcubGVmdENhcmRDb25maWcgPSB0aGlzLmFwcGx5RGVmYXVsdHMoXG4gICAgICB0aGlzLmxvZ2luUGFnZUNvbmZpZy5sZWZ0Q2FyZENvbmZpZ1xuICAgICk7XG5cbiAgICAvLyBBcHBseSBkZWZhdWx0cyB0byByaWdodENhcmRDb25maWdcbiAgICB0aGlzLmxvZ2luUGFnZUNvbmZpZy5yaWdodENhcmRDb25maWcgPSB0aGlzLmFwcGx5RGVmYXVsdHMoXG4gICAgICB0aGlzLmxvZ2luUGFnZUNvbmZpZy5yaWdodENhcmRDb25maWdcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseURlZmF1bHRzKGNvbmZpZz86IENhcmRDb25maWcpOiBDYXJkQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4udGhpcy5kZWZhdWx0Q2FyZENvbmZpZyxcbiAgICAgIC4uLihjb25maWcgfHwge30pLFxuICAgIH07XG4gIH1cblxuICBvbkxvZ2luU3VibWl0KGxvZ2luTW9kZWw6IExvZ2luTW9kZWwpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZygnTG9naW4gU3VibWl0dGVkOicsIGxvZ2luTW9kZWwpO1xuICAgIHRoaXMubG9naW5TdWJtaXQuZW1pdChsb2dpbk1vZGVsKTtcbiAgfVxufVxuIiwiPCEtLSBDZW50ZXIgUG9zaXRpb24gLS0+XG48bmctY29udGFpbmVyPlxuICA8ZGl2ICpuZ0lmPVwibG9naW5QYWdlQ29uZmlnLnBvc2l0aW9uID09PSAnY2VudGVyJ1wiIGNsYXNzPVwiY2VudGVyLWNvbnRhaW5lclwiPlxuICAgIDxwdC1jYXJkXG4gICAgICAqbmdJZj1cImxvZ2luUGFnZUNvbmZpZy5jZW50ZXJDYXJkQ29uZmlnXCJcbiAgICAgIFtjb25maWddPVwibG9naW5QYWdlQ29uZmlnLmNlbnRlckNhcmRDb25maWdcIlxuICAgID5cbiAgICAgIDxwdC1sb2dpbi1jYXJkXG4gICAgICAgIFtsb2dpbkVycm9yTWVzc2FnZV09XCJsb2dpbkVycm9yTWVzc2FnZVwiXG4gICAgICAgIFtsb2dpblBhZ2VDb25maWddPVwibG9naW5QYWdlQ29uZmlnXCJcbiAgICAgICAgKGxvZ2luU3VibWl0KT1cIm9uTG9naW5TdWJtaXQoJGV2ZW50KVwiXG4gICAgICA+PC9wdC1sb2dpbi1jYXJkPlxuICAgIDwvcHQtY2FyZD5cbiAgPC9kaXY+XG4gIDwhLS0gTGVmdCBhbmQgUmlnaHQgUG9zaXRpb25zIC0tPlxuICA8ZGl2XG4gICAgKm5nSWY9XCJcbiAgICAgIGxvZ2luUGFnZUNvbmZpZy5wb3NpdGlvbiA9PT0gJ2xlZnQnIHx8XG4gICAgICBsb2dpblBhZ2VDb25maWcucG9zaXRpb24gPT09ICdyaWdodCdcbiAgICBcIlxuICAgIGNsYXNzPVwibGVmdC1yaWdodC1jb250YWluZXJcIlxuICA+XG4gICAgPCEtLSBMZWZ0IENhcmQgLS0+XG4gICAgPHB0LWNhcmRcbiAgICAgICpuZ0lmPVwibG9naW5QYWdlQ29uZmlnLmxlZnRDYXJkQ29uZmlnXCJcbiAgICAgIFtjb25maWddPVwibG9naW5QYWdlQ29uZmlnLmxlZnRDYXJkQ29uZmlnXCJcbiAgICA+XG4gICAgICA8cHQtbG9naW4tY2FyZFxuICAgICAgICAqbmdJZj1cImxvZ2luUGFnZUNvbmZpZy5wb3NpdGlvbiA9PT0gJ2xlZnQnXCJcbiAgICAgICAgW2xvZ2luRXJyb3JNZXNzYWdlXT1cImxvZ2luRXJyb3JNZXNzYWdlXCJcbiAgICAgICAgW2xvZ2luUGFnZUNvbmZpZ109XCJsb2dpblBhZ2VDb25maWdcIlxuICAgICAgICAobG9naW5TdWJtaXQpPVwib25Mb2dpblN1Ym1pdCgkZXZlbnQpXCJcbiAgICAgID48L3B0LWxvZ2luLWNhcmQ+XG4gICAgPC9wdC1jYXJkPlxuXG4gICAgPCEtLSBSaWdodCBDYXJkIC0tPlxuICAgIDxwdC1jYXJkXG4gICAgICAqbmdJZj1cImxvZ2luUGFnZUNvbmZpZy5yaWdodENhcmRDb25maWdcIlxuICAgICAgW2NvbmZpZ109XCJsb2dpblBhZ2VDb25maWcucmlnaHRDYXJkQ29uZmlnXCJcbiAgICA+XG4gICAgICA8cHQtbG9naW4tY2FyZFxuICAgICAgICAqbmdJZj1cImxvZ2luUGFnZUNvbmZpZy5wb3NpdGlvbiA9PT0gJ3JpZ2h0J1wiXG4gICAgICAgIFtsb2dpbkVycm9yTWVzc2FnZV09XCJsb2dpbkVycm9yTWVzc2FnZVwiXG4gICAgICAgIFtsb2dpblBhZ2VDb25maWddPVwibG9naW5QYWdlQ29uZmlnXCJcbiAgICAgICAgKGxvZ2luU3VibWl0KT1cIm9uTG9naW5TdWJtaXQoJGV2ZW50KVwiXG4gICAgICA+PC9wdC1sb2dpbi1jYXJkPlxuICAgIDwvcHQtY2FyZD5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==